Main Page   Modules   Namespace List   Class Hierarchy   Data Structures   File List   Namespace Members   Data Fields   Globals   Related Pages  

Streamer.h

Go to the documentation of this file.
00001 #ifndef SCT_STREAMER_H
00002 #define SCT_STREAMER_H
00003 
00004 #include <boost/shared_ptr.hpp>
00005 #include "OStream.h"
00006 #include "IStream.h"
00007 #include "IOManager.h"
00008 #include "Streamable.h"
00009 
00010 //All these #includes for convenience
00011 
00012 using boost::shared_ptr;
00013 
00014 namespace Sct {
00015 
00016 class Streamer {
00017 public:
00018     virtual ~Streamer() {}
00019     
00027     virtual void write(OStream& out, const Streamable& ob, const IOManager& manager) const = 0;
00028 
00036     virtual shared_ptr<Streamable> read(IStream& in, const IOManager& manager) const = 0;
00037 
00045     virtual void read(IStream& in, Streamable& ob, const IOManager& manager) const = 0;
00046 };
00047 
00048 }
00049 
00050 #endif //SCT_STREAMER_H

Generated on Mon Dec 15 19:36:18 2003 for SCT DAQ/DCS Software by doxygen1.3-rc3