00001 #ifndef SIO_SIORandomAccessHandler_H 00002 #define SIO_SIORandomAccessHandler_H 1 00003 00004 //#include <string> 00005 00006 #include "LCIORandomAccessMgr.h" 00007 #include "SIO_block.h" 00008 00009 namespace SIO { 00010 00016 class SIORandomAccessHandler : public SIO_block{ 00017 00018 protected: 00019 SIORandomAccessHandler() : SIO_block("UNKNOWN") { /* no default c'tor*/ ;} 00020 00021 public: 00022 00023 SIORandomAccessHandler(const SIORandomAccessHandler&) = delete; 00024 SIORandomAccessHandler& operator=(const SIORandomAccessHandler&) = delete ; 00025 00028 SIORandomAccessHandler(const std::string& name, LCIORandomAccessMgr* raMgr) ; 00029 00030 // SIORandomAccessHandler(const std::string& name, LCIORandomAccess** raP) ; 00031 virtual ~SIORandomAccessHandler() ; 00032 00033 // interface from SIO_block 00034 virtual unsigned int xfer( SIO_stream*, SIO_operation, unsigned int ) ; 00035 virtual unsigned int version() ; 00036 00037 private: 00038 00039 LCIORandomAccessMgr* _raMgr{NULL} ; 00040 00041 }; // class 00042 00043 } // namespace 00044 00045 #endif /* ifndef SIO_SIORUNHEADERHANDLER_H */