![]() |
|
|
Generated: 24 Nov 2008 |
00001 // $Header: /local/reps/Gaudi/HbookCnv/src/HFileCnv.h,v 1.4 2006/11/30 14:59:27 mato Exp $ 00002 #ifndef HBOOKCNV_HFILECNV_H 00003 #define HBOOKCNV_HFILECNV_H 1 00004 00005 00006 // Include files 00007 #include "HDirectoryCnv.h" 00008 00009 00010 // Forward declarations 00011 class ISvcLocator; 00012 00013 //==================================================================== 00014 // NTuple converter 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 HFileCnv : public HDirectoryCnv { 00048 00049 friend class CnvFactory<HFileCnv>; 00050 00051 public: 00053 virtual StatusCode createObj ( IOpaqueAddress* pAddress, DataObject*& refpObject ); 00055 virtual StatusCode createRep( DataObject* pObject, IOpaqueAddress*& refpAddress ); 00057 virtual StatusCode updateRep(IOpaqueAddress* pAddress, DataObject* pObject); 00059 static const CLID& classID() { 00060 return CLID_NTupleFile; 00061 } 00062 00063 virtual StatusCode initialize() ; 00064 00066 HFileCnv( ISvcLocator* svc ) 00067 : HDirectoryCnv(svc, CLID_NTupleFile) 00068 , m_LRECL ( 1024 ) 00069 , m_NRECL ( -1 ) 00070 , m_MODE ( "P" ) 00071 {} 00073 virtual ~HFileCnv(){} 00074 00075 private: 00076 int m_LRECL ; 00077 int m_NRECL ; 00078 std::string m_MODE ; 00079 }; 00080 00081 }; // namespace HbookCnv 00082 00083 00084 #endif // HBOOKCNV_HFILECNV_H