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