#ifndef _DAVIS_VFILE_H_
#define _DAVIS_VFILE_H_

typedef struct
{
   char *buf;			       /* buffer for stream */
   char *bmax;			       /* pointer to end buffer */
   char *bp;			       /* current pointer in stream */
   char *eof;			       /* EOF if non NULL */
   int fd;			       /* file descrip for stream */
   unsigned int size;		       /* default buffer size */
} VFILE;

extern char *vgets(VFILE *, unsigned int *);
extern VFILE *vopen(char *, unsigned int);
extern void vclose(VFILE *);
extern VFILE *vstream(int fd, unsigned int size);

#endif
