BOSS 7.0.4
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/RawDataCnv/RawDataCnv-00-04-37/RawDataCnv/RawDataEmcDigiCnv.h
Go to the documentation of this file.
1//====================================================================
2// RawDataEmcDigiCnv.h
3//====================================================================
4//
5// Description:
6// RawDataEmcDigiCnv is the concrete converter for
7// the event header on the TDS /Event
8//
9//--------------------------------------------------------------------
10
11#ifndef RAWDATA_EMCDIGI_CNV_H
12#define RAWDATA_EMCDIGI_CNV_H
13
14// Include files.
15#include "RawDataCnv/ClassID_temp.h"
16#include "RawDataCnvBase/RawDataBaseCnv.h"
17
18// Forward declarations.
19class IOpaqueAddress;
20class DataObject;
21class StatusCode;
24class EmcConverter;
25
26// Converter Factory to create instances of this class.
27template <class TYPE> class CnvFactory;
28
30{
31
32 // Declaration of a Converter Factory to create instances of this class.
33 friend class CnvFactory<RawDataEmcDigiCnv>;
34protected:
35 // Standard Constructor.
36 RawDataEmcDigiCnv(ISvcLocator* svc);
38public:
39 StatusCode initialize();
40
41 // Return the class type of this converter.
42 static const CLID& classID();
43
44 virtual long repSvcType() const {
46 }
47
48 static const unsigned char storageType() {
50 }
51
52 // Create a converted object in the Transient Data Store.
53 StatusCode createObj(IOpaqueAddress* pAddr, DataObject*& pObj);
54
55 /// override the RawDataBaseCnv version
56 virtual StatusCode updateObj(IOpaqueAddress*, DataObject*);
57
58 virtual StatusCode createRep(DataObject* pObj, IOpaqueAddress*& pAddr);
59
60private:
61 IRawDataInputSvc* m_inputSvc;
62 /// Define the interface to raw data cnv
63 PackedRawDataCnvSvc* m_RawDataAccess;
64 /// Emc converter for unpacking or packing data
65 EmcConverter* m_cnv;
66};
67
68#endif // RAWDATA_EMCDIGI_CNV_H
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
Convert the transient object to the requested representation.
static const CLID & classID()
StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
virtual StatusCode updateObj(IOpaqueAddress *, DataObject *)
override the RawDataBaseCnv version