home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / C / Samples / CSAPE32.ARJ / INCLUDE / FRWDECL.H < prev    next >
C/C++ Source or Header  |  1990-03-28  |  1KB  |  50 lines

  1. /*
  2.     frwdecl.h
  3.  
  4.     % Generic file read/write includes and definitions.
  5.  
  6.     5/02/89  by Ted.
  7.  
  8.     OWL 1.2
  9.     Copyright (c) 1989 by Oakland Group, Inc.
  10.     ALL RIGHTS RESERVED.
  11.  
  12.     Revision History:
  13.     -----------------
  14.     12/11/89 jmd    removed includes
  15.      3/28/90 jmd    ansi-fied
  16. */
  17. /* -------------------------------------------------------------------------- */
  18.  
  19. #include "bfdecl.h"            /* for bfile stuff */
  20.  
  21. /* -------------------------------------------------------------------------- */
  22. /* File Read/Write Structure */
  23.  
  24. typedef struct frw_struct {
  25.     unsigned     isbfile:1;
  26.     unsigned     writemode:1;
  27.     FILE        *fd;
  28.     bfile_type    bfile;
  29.  
  30.     byte        *buf;
  31.     SIZE_T         bufsize;
  32.     SIZE_T         bufptr;
  33.     SIZE_T         bufend;
  34. } *frw_type;
  35.  
  36. #define FRW_WRITEMODE    TRUE
  37. #define FRW_READMODE    FALSE
  38. /* -------------------------------------------------------------------------- */
  39.  
  40. /* FRW.C */
  41. extern boolean    frw_openbuf(struct frw_struct *frw, SIZE_T bufsize, boolean writemode);
  42. extern void        frw_closebuf(struct frw_struct *frw);
  43. extern SIZE_T   frw_read(struct frw_struct *frw, VOID *buf, SIZE_T n);
  44. extern unsigned frw_readb(struct frw_struct *frw);
  45. extern SIZE_T   frw_write(struct frw_struct *frw, VOID *buf, SIZE_T n);
  46. extern boolean    frw_writeb(struct frw_struct *frw, byte b);
  47.  
  48. /* -------------------------------------------------------------------------- */
  49.  
  50.