![]() |
|
|
Generated: 8 Jan 2009 |
00001 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/HbookCnv/src/HConverter.h,v 1.8 2005/10/03 15:42:55 hmd Exp $ 00002 #ifndef HBOOKCNV_HCONVERTER_H 00003 #define HBOOKCNV_HCONVERTER_H 1 00004 00005 #include <map> 00006 00007 // Include files 00008 #include "GaudiKernel/Converter.h" 00009 00010 // Forward declarations 00011 class ISvcLocator; 00012 00013 //==================================================================== 00014 // HConverter class definition 00015 //-------------------------------------------------------------------- 00016 // 00017 // Package : HbookCnv ( The LHCb Offline System) 00018 // Author : M.Frank 00019 // 00020 //==================================================================== 00021 00022 00023 namespace HbookCnv { 00024 00047 class HConverter : public Converter { 00048 00049 public: 00051 virtual StatusCode book(IOpaqueAddress* /* pAddr */, DataObject* /* pObj*/) { 00052 return StatusCode::FAILURE; 00053 } 00055 virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& refpAddress); 00057 virtual StatusCode writeObject(const std::string& loc, long id); 00059 StatusCode readObject(const std::string& loc, long id); 00061 StatusCode createAddress(const std::string& rzdir, const CLID& clid, const std::string& title, IOpaqueAddress*& refpAddress); 00063 StatusCode createAddress(const std::string& rzdir, const CLID& clid, long id, IOpaqueAddress*& refpAddress); 00065 std::string diskDirectory(const std::string& loc); 00067 std::string directory(const std::string& loc); 00069 void setDirectory(const std::string& loc); 00071 void setDiskDirectory(const std::string& loc); 00073 StatusCode createDirectory(const std::string& loc); 00075 StatusCode createDiskDirectory(const std::string& loc); 00077 StatusCode createSubDirs(const std::string& top, const std::string& loc); 00078 00080 static long storageType(); 00081 long repSvcType() const { 00082 return i_repSvcType(); 00083 } 00084 00085 protected: 00087 HConverter( const CLID& clid, ISvcLocator* svc ); 00089 virtual ~HConverter(); 00091 std::string m_prefix; 00093 bool m_deleteAfterSave; 00094 00095 }; 00096 00097 }; // namespace HbookCnv 00098 00099 00100 #endif // HBOOKCNV_HCONVERTER_H