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