![]() |
|
|
Generated: 8 Jan 2009 |
00001 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/HbookCnv/src/PersSvc.h,v 1.7 2006/11/30 14:59:27 mato Exp $ 00002 #ifndef HBOOKCNV_PERSSVC_H 00003 #define HBOOKCNV_PERSSVC_H 1 00004 00005 00006 // Include files 00007 #include "GaudiKernel/ConversionSvc.h" 00008 00009 00010 // Forward declarations 00011 template <class TYPE> class SvcFactory; 00012 00013 00014 //------------------------------------------------------------------------------ 00015 // 00016 // ClassName: HbookCnv::PersSvc 00017 // 00018 // Description: Persistency service - to store histograms in HBOOK format 00019 // 00020 // Author: Pavel Binko 00021 // 00022 //------------------------------------------------------------------------------ 00023 00024 00025 namespace HbookCnv { 00026 00027 class PersSvc : public ConversionSvc { 00028 00029 friend class SvcFactory<PersSvc>; 00030 00031 public: 00033 virtual StatusCode initialize(); 00034 00036 virtual StatusCode finalize(); 00037 00039 virtual StatusCode createRep( DataObject* pObject, 00040 IOpaqueAddress*& refpAddr); 00042 virtual StatusCode fillRepRefs( IOpaqueAddress* pAddr, 00043 DataObject* pObject); 00044 00046 PersSvc( const std::string& name, ISvcLocator* svc ); 00047 00049 virtual ~PersSvc(); 00050 00051 private: 00052 std::string m_persistencySvc; 00053 std::string m_defFileName; 00054 std::string m_rowWisePolicy; 00055 int m_NPAWC; 00056 int m_NREC; 00057 int m_RECL; 00058 00060 bool m_histDo; 00061 }; 00062 00063 } // namespace HbookCnv 00064 00065 00066 #endif // HBOOKCNV_PERSSVC_H