************************* MASTER CODE ***************************************

The name of the first file in this disk's directory identifies the volume,
issue number and revision of the disk. The format of this filename is:

    !CDmvvii.rrr

where

    ! = the '!' character
    m =   C for C Users Journal, W for Windows/DOS Developer's Journal
    vv =  volume
    ii =  issue
    rrr = revision (001 for initial release, 002 for next update, etc.)

The file UPDATE.DOC contains information about any additions or
corrections to material on the disk since the original magazine
publication.

If you have obtained this code from a floppy diskette or from CompuServe, the 
headings under the column "FILENAME" represent the names of .ZIP files.  All 
files listed under the filename are archived in the .ZIP file.

If you have obtained this code from UUNET, the headings under the column 
"FILENAME" represent the names of subdirectories.  All files listed under the
"filename" are included in a subdirectory of that name.
Keywords: Nov95 C C+ Multithreading Mutex POSIX Critical ODBC Texture

The code listings for the Nov 1995 issue of C/C++ Users Journal include
source code for Jim Dugger's mutex classes, John Rogers' readers/writers
lock classes, Matt Weisfeld's critical-section classes, Dwayne Phillips'
texture detection operators (Part 15 of his image processing series),
Kevin Gilhooly's Windows response time measuring utility.  Also included
are listings from P.J. Plauger's column, Standard C/C++, Dan Saks'
column, Stepping Up to C++, and Bobby Schmidt's column, The Learning
C/C++urve.

*************************  FILE DESCRIPTION **********************************

The following files are included in the disk:

FILENAME		AUTHOR-NAME	TITLE			       PAGE
(Zip archive/
subdirectory name)
-------------------------------------------------------------------------------
plauger			P.J. Plauger	Standard C/C++: Implementing	8
					<complex>

    complex.cpp	 - listing 1, An implementation of the header <complex>

dugger			Jim Dugger	Multithreading in C++		23

    mutex.h	 - listing 1, mutex class definition
    mutex.cpp	 - listing 2, mutex class implementation
    event.h	 - listing 3, event class definition
    event.cpp	 - listing 4, event class implementation

rogers			John Rogers	Locking without Deadlocks	35

    rwlock.h	 - listing 1, Header for readers/writers lock
    rwlock.c	 - listing 2, Readers/writers lock routines

weisfeld		Matt Weisfeld	A Synchronization Class Using	45
					Critical-Sections

    sema.h	 - listing 1, Definition for semaphore class
    defines.h	 - listing 2, Constants for semaphore class
    sema.cpp	 - listing 3, Using semaphores and critical-sectins to
			      synchronize processes
    tsema.cpp	 - listing 4, Test routine for semaphore class
    demo	 - listing 5, UNIX script demo

phillips		Dwayne Phillips	Image Processing in C, Part 15:	55
					Basic Texture Operations

    diff.c	 - listing 1, The Difference operator
    amean.c	 - listing 2, The Mean operator
    hurst.c	 - listing 3, The Hurst operator
    
phillips2		Dwayne Phillips	Image Processing in C, Part 15: 55
					Basic Texture Operations

			Complete source listings (69 files)

gilhooly		Kevin Gilhooly	Pulse -- Measuring Windows	69
					Response Time

    mainwnd.c	 - listing 1, Main window procedure for Pulse

gilhool2		Kevin Gilhooly	Pulse -- Measuring Windows	69
					Response Time

			Complete source listings

    mainwnd.c	 - listing 1, Main window procedure for Pulse
    pulse.c	 - not listed, Main entry point for Pulse program
    inifile.c	 - not listed, WIN.INI processing routines
    pulse.h	 - not listed, Defines globals, constants for Pulse
    pulse.def	 - not listed, Module definition file
    pulse.mak	 - not listed, Makefile for Visual C++

schmidt			Bobby Schmidt	The Learning C/C++urve: Living	99
					in Two Worlds

    undef.c	 - listing 1, C constructs yielding undefined behavior
    impdef.c	 - listing 2, Examples of implementation defined
			      behavior
    linkage.cpp	 - listing 3, Linkage as seen by C and C++
    linkage2.cpp - listing 4, Listing 3 annotated for duration
    decldef.cpp	 - listing 5, C and C++ declarations and definitions
   

*******************************************************************************

If you have questions regarding to the disk, please call or write us.

-----------------------------------------------------------------------------
                           R&D Publications, Inc.
                        1601 W. 23rd St. Suite 200
                            Lawrence, KS 66046
                              (913) 841-1631
-----------------------------------------------------------------------------

