7#include "GaudiKernel/MsgStream.h"
25 m_tool(
"RecMuCTPIByteStreamTool" ),
54 MsgStream log( msgSvc(),
"RecMuCTPIByteStreamCnv" );
55 log << MSG::DEBUG <<
"RecMuCTPIByteStreamCnv in initialize()" <<
endmsg;
61 log << MSG::DEBUG <<
"Connected to RecMuCTPIByteStreamTool" <<
endmsg;
67 log << MSG::DEBUG <<
"Connected to ROBDataProviderSvc" <<
endmsg;
69 return StatusCode::SUCCESS;
79 MsgStream log( msgSvc(),
"RecMuCTPIByteStreamCnv" );
80 log << MSG::DEBUG <<
"executing createObj()" <<
endmsg;
85 log << MSG::ERROR <<
" Cannot cast to ByteStreamAddress " <<
endmsg ;
86 return StatusCode::FAILURE;
89 log << MSG::DEBUG <<
" Creating Objects " << *( pBS_Addr->par() ) <<
endmsg;
94 std::vector< uint32_t > vID;
95 vID.push_back( robId );
102 if ( robFrags.size() == 0 ) {
105 uint32_t newRobId = robId;
106 newRobId |= 0x00000b;
107 vID[0] = ( newRobId );
110 if ( robFrags.size() != 1 ) {
111 log << MSG::WARNING <<
" Number of ROB fragments for source ROB ID " << MSG::hex << newRobId <<
" (ROD ID "
112 <<
m_srcIdMap.getRodID() << MSG::dec <<
") is " << robFrags.size() <<
endmsg;
115 return StatusCode::SUCCESS;
119 IROBDataProviderSvc::VROBFRAG::const_iterator it = robFrags.begin();
125 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
uint32_t CLID
The Class ID type.
Defines the ROB data entity. The ROB data is an abstract entity that is used to decouple the raw even...
ROBData_T< OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment, OFFLINE_FRAGMENTS_NAMESPACE::PointerType > ROBData
convert to and from a SG storable
IOpaqueAddress for ByteStreamCnvSvc, with ROB ids.
static constexpr long storageType()
std::vector< const ROBF * > VROBFRAG
Reconstruction Input Object of the MuCTPI hardware and simulation.
virtual StatusCode initialize() override
Function connecting to all the needed services/tools.
ToolHandle< RecMuCTPIByteStreamTool > m_tool
Tool doing the actual conversion.
static long storageType()
Function needed by the framework.
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Service used when reading the BS data.
RecMuCTPIByteStreamCnv(ISvcLocator *svcloc)
Standard constructor.
static const CLID & classID()
Function needed by the framework.
MuCTPISrcIdMap m_srcIdMap
Object storing the various IDs of the MuCTPI fragment.
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj) override
Function creating the MuCTPI_RIO object from a MuCTPI ROB fragment.
DataObject * asStorable(SG::DataObjectSharedPtr< T > pObject)