12#include "GaudiKernel/Converter.h"
13#include "GaudiKernel/MsgStream.h"
15#include "GaudiKernel/ThreadGaudi.h"
18#include "EventModel/Event.h"
19#include "RawDataCnv/RawDataCnv.h"
20#include "RawDataCnv/RawDataAddress.h"
21#include "RawDataCnv/RawDataInputSvc.h"
22#include "RawDataCnv/EventManagement/RAWEVENT.h"
38 if( sc.isFailure() )
return sc;
40 std::string PackedRawDataCnvSvc_Name(
"PackedRawDataCnvSvc");
41 std::string RawDataInputSvc_Name(
"RawDataInputSvc");
42 std::string RawDataCnv_Name(
"RawDataCnv");
48 SmartIF<IService> pCnvSvc(conversionSvc());
49 if (isGaudiThreaded(pCnvSvc->name())){
50 PackedRawDataCnvSvc_Name += getGaudiThreadIDfromName(pCnvSvc->name());
51 RawDataInputSvc_Name += getGaudiThreadIDfromName(pCnvSvc->name());
52 RawDataCnv_Name += getGaudiThreadIDfromName(pCnvSvc->name());
57 MsgStream log(messageService(), RawDataCnv_Name.c_str());
68 sc = serviceLocator()->getService(RawDataInputSvc_Name.c_str(), svc);
69 if(sc != StatusCode::SUCCESS ) {
70 log<<MSG::WARNING <<
" Cant get RawDataInputSvc " <<endreq;
75 if(m_inputSvc == 0 ) {
76 log<<MSG::WARNING <<
" Cant cast to RawDataInputSvc " <<endreq;
77 return StatusCode::FAILURE ;
80 return StatusCode::SUCCESS;
96 return Converter::updateObj(pAddr, pObj);
110 if (evt == NULL)
return StatusCode::FAILURE;
111 return StatusCode::SUCCESS;
114 return StatusCode::FAILURE;
122 std::string RawDataCnv_Name(
"RawDataCnv");
126 SmartIF<IService> pCnvSvc(conversionSvc());
127 if (isGaudiThreaded(pCnvSvc->name())){
128 RawDataCnv_Name += getGaudiThreadIDfromName(pCnvSvc->name());
131 MsgStream log(
msgSvc(), RawDataCnv_Name.c_str());
132 log << MSG::DEBUG <<
"RawDataCnv::createRep()" << endreq;
134 log << MSG::ERROR <<
"Could not downcast Event" << endreq;
135 return StatusCode::FAILURE;
138 return StatusCode::SUCCESS;
unsigned const long PACKEDRAWEVENT_StorageType
virtual StatusCode updateObj(IOpaqueAddress *, DataObject *)
override the RawDataBaseCnv version
StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
Convert the transient object to the requested representation.
static const CLID & classID()
RawDataCnv(ISvcLocator *svc)