home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ctb_291.zip / include / stream.hpp < prev    next >
C/C++ Source or Header  |  1996-08-14  |  881b  |  43 lines

  1. /*
  2. ** Module   :STREAM.HPP
  3. ** Abstract :Simple file i/o streams
  4. **
  5. ** Copyright (C) Sergey I. Yevtushenko
  6. ** Log:
  7. ** Update : Sat  11-05-96
  8. ** Update : Thu  09-03-95
  9. ** Update : Wed  07-01-92
  10. */
  11.  
  12. #ifndef __STREAM_HPP
  13. #define __STREAM_HPP
  14.  
  15. class File
  16. {
  17.     protected:
  18.         char *buff;
  19.         char *fname;
  20.         int count;
  21.         int pos;
  22.         int hnd;
  23.         int mode;
  24.     public:
  25.         File(){fname = 0; buff = 0; count = pos = mode = 0;hnd = -1;}
  26.         File(char *name,int mode){open(name,"",mode);}
  27.         File(char *name,char *ext,int mode){open(name,ext,mode);}
  28.         ~File();
  29.         int open(char *name,char *def,int mode);
  30.         int get();
  31.         int put(int);
  32.         int put(char *);
  33.         int ok(){return mode;}
  34.         char *name(){return fname;}
  35. };
  36. enum open_mode
  37. {
  38.     BAD,RD,WR,EOFILE = -1
  39. };
  40.  
  41. #endif
  42.  
  43.