/*
Copyright (c) 1993 Xerox Corporation. All rights reserved.
*/
/*
$Id$
$Date$
*
*/
#ifndef __PCR_EmuAstdioFile_h
#define __PCR_EmuAstdioFile_h
#include
#include
#include
struct PCR_StdioFile_StreamRep {
PCR_Stdio_Stream fstr_str;
int fstr_fd;
/* file descriptor -- may be local or global */
int fstr_gfd;
/* globalized version of fd -- valid even if fd is local */
FILE * fstr_lclNext;
PCR_Th_T * fstr_lclOwner;
/* per-thread stream list with local fd values */
unsigned char * fstr_buf;
int fstr_bufSize;
/* i/o buffer */
unsigned char *fstr_readLim;
/* delimiter for valid input data in i/o buffer */
PCR_Th_ML fstr_writeLock;
/* write lock necessary because of flushing */
};
typedef struct PCR_StdioFile_StreamRep PCR_StdioFile_Stream;
extern PCR_StdioFile_Stream * PCR_StdioFile_streams;
#endif /* !__PCR_EmuAstdioFile_h */
/*
$Log$
*/
|