#include <RawDataDigiCnv.h>
Inheritance diagram for RawDataDigiCnv:
Public Types | |
typedef Ty2 | destination |
typedef Ty2 | destination |
typedef Ty1 | source |
typedef Ty1 | source |
Public Member Functions | |
StatusCode | createObj (IOpaqueAddress *pAddr, DataObject *&pObj) |
StatusCode | createObj (IOpaqueAddress *pAddr, DataObject *&pObj) |
virtual StatusCode | createRep (DataObject *pObj, IOpaqueAddress *&pAddr) |
Convert the transient object to the requested representation. | |
virtual StatusCode | createRep (DataObject *pObj, IOpaqueAddress *&pAddr) |
Convert the transient object to the requested representation. | |
void | declareObject (const std::string &fullPath, const CLID &clid, const std::string &bank, long par=0) |
Store TDS path to link a particular converter to an object on the TDS. | |
void | declareObject (const std::string &fullPath, const CLID &clid, const std::string &bank, long par=0) |
Store TDS path to link a particular converter to an object on the TDS. | |
virtual StatusCode | fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) |
Resolve the references of the converted object. | |
virtual StatusCode | fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) |
Resolve the references of the converted object. | |
virtual StatusCode | finalize () |
virtual StatusCode | finalize () |
StatusCode | initialize () |
StatusCode | initialize () |
destination * | operator (const source &) const |
destination * | operator (const source &) const |
virtual long | repSvcType () const |
virtual long | repSvcType () const |
virtual StatusCode | updateObj (IOpaqueAddress *, DataObject *) |
override the RawDataBaseCnv version | |
virtual StatusCode | updateObj (IOpaqueAddress *, DataObject *) |
override the RawDataBaseCnv version | |
virtual StatusCode | updateRep (IOpaqueAddress *pAddress, DataObject *pObject) |
Update the converted representation of a transient object. | |
virtual StatusCode | updateRep (IOpaqueAddress *pAddress, DataObject *pObject) |
Update the converted representation of a transient object. | |
virtual StatusCode | updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) |
Update the references of an already converted object. | |
virtual StatusCode | updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) |
Update the references of an already converted object. | |
Static Public Member Functions | |
const CLID & | classID () |
const CLID & | classID () |
const unsigned char | storageType () |
const unsigned char | storageType () |
Protected Member Functions | |
virtual destination * | convert (const source &) const =0 |
virtual destination * | convert (const source &) const =0 |
RawDataDigiCnv (ISvcLocator *svc) | |
RawDataDigiCnv (ISvcLocator *svc) | |
Protected Attributes | |
IRawDataCnvSvc * | m_CnvSvc |
Pointer to event conversion service interface. | |
IRawDataCnvSvc * | m_CnvSvc |
Pointer to event conversion service interface. | |
std::vector< IRawDataCnvSvc::Leaf > | m_leaves |
Leaf objects giving the locations of the objects in the data store. | |
std::vector< IRawDataCnvSvc::Leaf > | m_leaves |
Leaf objects giving the locations of the objects in the data store. | |
Private Attributes | |
IRawDataInputSvc * | m_inputSvc |
IRawDataInputSvc * | m_inputSvc |
IRawDataCnvSvc * | m_RawDataAccess |
Define the interface to raw data cnv. | |
IRawDataCnvSvc * | m_RawDataAccess |
Define the interface to raw data cnv. | |
Friends | |
class | CnvFactory<RawDataDigiCnv> |
|
|
|
|
|
|
|
|
|
00031 : 00032 RawDataBaseCnv(PACKEDRAWEVENT_StorageType, classID(), svc) 00033 { 00034 //init(); 00035 }
|
|
|
|
Reimplemented from RawDataBaseCnv. |
|
Reimplemented from RawDataBaseCnv. 00040 {
00041 return CLID_DigiEvent;
00042 }
|
|
|
|
|
|
|
|
00108 { 00109 MsgStream log(msgSvc(), "RawDataDigiCnv"); 00110 //RawDataAddress *pEFAddr; 00111 00112 // Purpose and Method: This converter will create an empty EventHeader on 00113 // the TDS. 00114 DigiEvent *digi = new DigiEvent(); 00115 // Set fromMc to false 00116 digi->initialize(false); 00117 pObj = digi; 00118 return StatusCode::SUCCESS; 00119 00120 }
|
|
Convert the transient object to the requested representation.
Reimplemented from RawDataBaseCnv. |
|
Convert the transient object to the requested representation.
Reimplemented from RawDataBaseCnv. 00123 { 00124 // convert Raws in the container into ByteStream 00125 StatusCode sc = StatusCode::SUCCESS ; 00126 //MsgStream log(messageService(), "RawDataDigiCnv"); 00127 00128 //WriteRawEvent* re = static_cast<WriteRawEvent*>(m_RawDataAccess->getRawEvent()); 00129 00130 00131 std::string nm = pObj->registry()->name(); 00132 00133 RawDataAddress* addr = new RawDataAddress(classID(), nm, ""); 00134 00135 pAddr = addr; 00136 00137 return StatusCode::SUCCESS; 00138 00139 }
|
|
Store TDS path to link a particular converter to an object on the TDS.
|
|
Store TDS path to link a particular converter to an object on the TDS.
00082 { 00083 // Purpose and Method: Save the path on the TDS, in the m_leaves vector, 00084 // corresponding to the DataObject that the converter handles. 00085 // m_leaves.push_back(IRawDataCnvSvc::Leaf(path, cl, bank, par)); 00086 }
|
|
Resolve the references of the converted object.
|
|
Resolve the references of the converted object.
00030 { 00031 // Purpose and Method: Resolve the references of the converted object. 00032 // It is expected that derived classes will override this method. 00033 return StatusCode::SUCCESS; 00034 }
|
|
|
|
00073 { 00074 if ( m_CnvSvc ) { 00075 m_CnvSvc->release(); 00076 m_CnvSvc = 0; 00077 } 00078 return Converter::finalize(); 00079 }
|
|
Reimplemented from RawDataBaseCnv. |
|
Reimplemented from RawDataBaseCnv. 00045 { 00046 std::string PackedRawDataCnvSvc_Name("PackedRawDataCnvSvc"); 00047 std::string RawDataInputSvc_Name("RawDataInputSvc"); 00048 std::string RawDataDigiCnv_Name("RawDataDigiCnv"); 00049 00050 // for Mutil-thread by tianhl 00051 ConversionSvc* pCnvSvc = 0; 00052 if (pCnvSvc = dynamic_cast<ConversionSvc*>(conversionSvc())){ 00053 if (isGaudiThreaded(pCnvSvc->name())){ 00054 PackedRawDataCnvSvc_Name += getGaudiThreadIDfromName(pCnvSvc->name()); 00055 RawDataInputSvc_Name += getGaudiThreadIDfromName(pCnvSvc->name()); 00056 RawDataDigiCnv_Name += getGaudiThreadIDfromName(pCnvSvc->name()); 00057 } 00058 } 00059 // for Mutil-thread by tianhl 00060 StatusCode sc = RawDataBaseCnv::initialize(); 00061 if(StatusCode::SUCCESS!=sc) 00062 { 00063 return sc; 00064 } 00065 00066 MsgStream log(messageService(), RawDataDigiCnv_Name.c_str()); 00067 00068 IService* svc = 0; 00069 sc = serviceLocator()->service(PackedRawDataCnvSvc_Name.c_str(), svc); 00070 if (sc != StatusCode::SUCCESS) { 00071 log << MSG::ERROR << "Can't get RawDataAccess interface" << endreq; 00072 return StatusCode::FAILURE; 00073 } 00074 00075 m_RawDataAccess = dynamic_cast<PackedRawDataCnvSvc*> (svc); 00076 if (m_RawDataAccess == 0 ) { 00077 log << MSG::ERROR << "RawDataCnv: Cant cast to RawDataCnvSvc" << endreq; 00078 return StatusCode::FAILURE; 00079 } 00080 00081 sc = serviceLocator()->getService(RawDataInputSvc_Name.c_str(), svc); 00082 if(sc != StatusCode::SUCCESS ) { 00083 log << MSG::WARNING << "Cant get RawDataInputSvc " << endreq; 00084 return sc ; 00085 } 00086 00087 m_inputSvc = dynamic_cast<RawDataInputSvc*> (svc); 00088 if(m_inputSvc == 0 ) { 00089 log << MSG::ERROR << "Cant cast to RawDataInputSvc" << endreq; 00090 return StatusCode::FAILURE ; 00091 } 00092 00093 return StatusCode::SUCCESS; 00094 }
|
|
|
|
|
|
Reimplemented from RawDataBaseCnv. 00043 {
00044 return PACKEDRAWEVENT_StorageType;
00045 }
|
|
Reimplemented from RawDataBaseCnv. 00043 {
00044 return PACKEDRAWEVENT_StorageType;
00045 }
|
|
Reimplemented from RawDataBaseCnv. 00047 {
00048 return PACKEDRAWEVENT_StorageType;
00049 }
|
|
Reimplemented from RawDataBaseCnv. 00047 {
00048 return PACKEDRAWEVENT_StorageType;
00049 }
|
|
override the RawDataBaseCnv version
|
|
override the RawDataBaseCnv version
00097 { 00098 // Purpose and Method: This method does nothing other than announce it has 00099 // been called. 00100 00101 //MsgStream log(msgSvc(), "RawDataDigiCnv"); 00102 //log << MSG::DEBUG << "RawDataDigiCnv::updateObj" << endreq; 00103 return Converter::updateObj(pAddr, pObj); 00104 }
|
|
Update the converted representation of a transient object.
|
|
Update the converted representation of a transient object.
00037 { 00038 // Purpose and Method: Update the converted representation of a transient 00039 // object. It is expected that derived classes will override this. 00040 return StatusCode::SUCCESS; 00041 }
|
|
Update the references of an already converted object.
|
|
Update the references of an already converted object.
00044 { 00045 // Purpose and Method: Update the references of an already converted object. 00046 // It is expected that derived classes will override this method. 00047 return StatusCode::SUCCESS; 00048 }
|
|
|
|
Pointer to event conversion service interface.
|
|
Pointer to event conversion service interface.
|
|
|
|
|
|
Leaf objects giving the locations of the objects in the data store.
|
|
Leaf objects giving the locations of the objects in the data store.
|
|
Define the interface to raw data cnv.
|
|
Define the interface to raw data cnv.
|