/* 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$ */