/* Copyright (c) 1993 Xerox Corporation. All rights reserved. */ /* $Id$ $Date$ * */ #ifndef ←←PCR←EmuAstdioFile←h #define ←←PCR←EmuAstdioFile←h #include <th/PCR←Th.h> #include <stdio.h> #include <emu/PCR←EmuAstdioPvt.h> 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$ */