00001 #ifndef RAWDATA_ZDD_EVENT_CNV_H 00002 #define RAWDATA_ZDD_EVENT_CNV_H 00003 00004 #include "RawDataCnvBase/RawDataBaseCnv.h" 00005 #include "RawDataCnv/ClassID_temp.h" 00006 00007 // Forward declarations. 00008 class IRawDataInputSvc; 00009 class ZddConverter; 00010 00011 // Converter Factory to create instances of this class. 00012 template <class TYPE> class CnvFactory; 00013 00014 class RawDataZddEventCnv : public RawDataBaseCnv 00015 { 00016 protected : 00017 // Standard Constructor. 00018 RawDataZddEventCnv(ISvcLocator* svc); 00019 virtual ~RawDataZddEventCnv(); 00020 00021 public : 00022 00023 StatusCode initialize(); 00024 00025 // Return the class type of this converter. 00026 static const CLID& classID(); 00027 00028 virtual long repSvcType() const { 00029 return PACKEDRAWEVENT_StorageType; 00030 } 00031 00032 static const unsigned char storageType() { 00033 return PACKEDRAWEVENT_StorageType; 00034 } 00035 00036 // Create a converted object in the Transient Data Store. 00037 StatusCode createObj(IOpaqueAddress* pAddr, DataObject*& pObj); 00038 00040 virtual StatusCode updateObj(IOpaqueAddress*, DataObject*); 00041 00042 virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& pAddr); 00043 00044 private: 00045 00046 IRawDataInputSvc* m_inputSvc; 00048 //IRawDataCnvSvc* m_RawDataAccess; 00049 00050 ZddConverter* m_cnv; 00051 friend class CnvFactory<RawDataZddEventCnv>; 00052 }; 00053 00054 #endif