00001 #ifndef DYBSVC_DYBDATASVC_H 00002 #define DYBSVC_DYBDATASVC_H 00003 00004 #include "GaudiKernel/DataSvc.h" 00005 00006 class IConversionSvc; 00007 00008 00015 class DybDataSvc : public DataSvc { 00016 friend class SvcFactory<DybDataSvc>; 00017 00018 public: 00019 virtual StatusCode initialize(); 00020 virtual StatusCode reinitialize(); 00021 virtual StatusCode finalize(); 00022 00024 DybDataSvc(const std::string& name, ISvcLocator* svc); 00025 00027 virtual ~DybDataSvc(); 00028 00030 IDataProviderSvc* archiveSvc() const; 00031 00033 StatusCode setRoot(const std::string& root_path, 00034 DataObject* pRootObj); 00035 StatusCode setRoot(const std::string& root_path, 00036 IOpaqueAddress* pRootAddr); 00037 00038 StatusCode loadObject(IConversionSvc* pLoader, 00039 IRegistry* pRegistry); 00040 StatusCode registerAddress(IRegistry* parentObj, 00041 const std::string& objPath, 00042 IOpaqueAddress* pAddress); 00043 StatusCode registerObject(DataObject* parentObj, 00044 const std::string& objPath, 00045 DataObject* pObject); 00046 00047 private: 00048 00049 StatusCode archiveObject(DataObject* pObject); 00050 00051 StatusCode sequenceObject(DataObject* pObject); 00052 00053 StringProperty m_regSeqPath; 00054 00055 IDataProviderSvc* m_archiveSvc; 00056 IConversionSvc* m_cnvSvc; 00057 bool m_useAes; 00058 00059 }; 00060 #endif // DYBSVC_DYBDATASVC_H 00061 // Local Variables: 00062 // c-basic-offset: 2 00063 // End: 00064