00001 #ifndef SCT_IS_IOMANAGERIS_H
00002 #define SCT_IS_IOMANAGERIS_H
00003
00004 #include <is/isinfo.h>
00005 #include "../IOManager.h"
00006 #include "../IoExceptions.h"
00007 #include "../LogicErrors.h"
00008
00009 namespace Sct {
00010 namespace IS {
00012 class IOManagerIS : public IOManager {
00013 public:
00014 static IOManagerIS& instance() throw();
00015
00016 virtual void write(const Serializable& ob, const IOParams* params = 0) const throw(LogicError, IoError);
00017 virtual shared_ptr<Serializable> read(const string& name, const IOParams* params = 0) const throw(LogicError, IoError);
00018 virtual shared_ptr<Serializable> read(const ISCallbackInfo& info) const throw(LogicError, IoError);
00019 virtual shared_ptr<Serializable> read(ISInfoIterator& it) const throw(LogicError, IoError);
00020
00021 protected:
00022 IOManagerIS() throw();
00023 };
00024
00027 class IOParamsIS : public IOParams {
00028 public:
00029 IOParamsIS(const string& serverName) : serverName(serverName) {}
00030
00031 string serverName;
00032 };
00033
00034 }
00035 }
00036
00037 #endif //SCT_IS_IOMANAGERIS_H