00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _util_state_state_file_h
00029 #define _util_state_state_file_h
00030
00031 #ifdef __GNUC__
00032 #pragma interface
00033 #endif
00034
00035 #include <stdlib.h>
00036 #include <iostream>
00037 #include <iomanip>
00038
00039 #include <util/state/state.h>
00040 #include <util/state/statein.h>
00041 #include <util/state/stateout.h>
00042
00045 class StateOutFile: public StateOut {
00046 private:
00047
00048 StateOutFile(const StateOutFile&);
00049 void operator=(const StateOutFile&);
00050 protected:
00051 int opened_;
00052 std::streambuf *buf_;
00053 public:
00055 StateOutFile();
00057 StateOutFile(std::ostream& s);
00059 StateOutFile(const char *name);
00060
00061 ~StateOutFile();
00062
00064 virtual int open(const char *name);
00066 virtual void flush();
00068 virtual void close();
00069 };
00070
00073 class StateInFile: public StateIn {
00074 private:
00075
00076 StateInFile(const StateInFile&);
00077 void operator=(const StateInFile&);
00078 protected:
00079 int opened_;
00080 std::streambuf *buf_;
00081 public:
00083 StateInFile();
00085 StateInFile(std::istream& s);
00087 StateInFile(const char *name);
00088
00089 ~StateInFile();
00090
00092 virtual int open(const char *name);
00094 virtual void close();
00095 };
00096
00097 #endif
00098
00099
00100
00101
00102