00001 #ifndef SCT_ARCHIVEFILE_IOMANAGERARCHIVEFILE_H 00002 #define SCT_ARCHIVEFILE_IOMANAGERARCHIVEFILE_H 00003 00004 #include "IOManagerArchive.h" 00005 #include "../IoExceptions.h" 00006 #include "../LogicErrors.h" 00007 #include <iostream> 00008 00009 namespace Sct{ 00010 namespace Archive { 00018 class IOManagerArchiveFile : public IOManagerArchive { 00019 public: 00021 static IOManagerArchiveFile& instance(); 00023 virtual void write(const Serializable& ob, const IOParams* params = 0) const; 00025 virtual shared_ptr<Serializable> read(const string& name, const IOParams* params = 0) const; 00027 virtual std::string status() const; 00028 private: 00029 IOManagerArchiveFile() throw(); 00030 static IOManagerArchiveFile* s_man; 00031 }; 00032 } 00033 } 00034 #endif //SCT_ARCHIVEFILE_IOMANAGERARCHIVEFILE_H