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
00043
namespace sc {
00044
00047 class StateOutFile:
public StateOut {
00048
private:
00049
00050
StateOutFile(
const StateOutFile&);
00051
void operator=(
const StateOutFile&);
00052
protected:
00053
int opened_;
00054 std::streambuf *buf_;
00055
public:
00057
StateOutFile();
00059
StateOutFile(std::ostream& s);
00061
StateOutFile(
const char *name);
00062
00063 ~
StateOutFile();
00064
00066
virtual int open(
const char *name);
00068
virtual void flush();
00070
virtual void close();
00071 };
00072
00075 class StateInFile:
public StateIn {
00076
private:
00077
00078
StateInFile(
const StateInFile&);
00079
void operator=(
const StateInFile&);
00080
protected:
00081
int opened_;
00082 std::streambuf *buf_;
00083
public:
00085
StateInFile();
00087
StateInFile(std::istream& s);
00089
StateInFile(
const char *name);
00090
00091 ~
StateInFile();
00092
00094
virtual int open(
const char *name);
00096
virtual void close();
00097 };
00098
00099 }
00100
00101
#endif
00102
00103
00104
00105
00106