00001 #ifndef SCTDATA_IO_TF1STREAMER_H 00002 #define SCTDATA_IO_TF1STREAMER_H 00003 00004 #include "Sct/Streamer.h" 00005 #include "Sct/Exception.h" 00006 00007 using namespace Sct; 00008 00009 namespace SctData { 00010 namespace IO { 00022 class TF1Streamer_v1 : public virtual Streamer { 00023 public: 00024 //Streamer_v1 overrides 00025 virtual void write(OStream& out, const Streamable& ob, const IOManager& manager) const throw(LogicError, IoError); 00026 virtual void read(IStream& in, Streamable& ob, const IOManager& manager) const throw(LogicError, IoError); 00027 00031 virtual shared_ptr<Streamable> read(IStream& in, const IOManager& manager) const throw(LogicError, IoError); 00032 virtual unsigned getVersion() const throw() {return s_version;} 00033 00034 private: 00035 TF1Streamer_v1() throw(); 00036 static unsigned s_version; 00037 static bool inMap; //True if in IOManager map 00038 }; 00039 00040 } 00041 } 00042 #endif // #ifndef SCTDATA_IO_TF1STREAMER_H