3#include "Gaudi/Interfaces/IOptionsSvc.h"
4#include "GaudiKernel/Parsers.h"
6#include "MdcRawEvent/MdcDigi.h"
7#include "RawDataCnv/Util/MdcConverter.h"
26 MsgStream log(
msgSvc(),
"RawDataMdcDigiCnv" );
27 log << MSG::INFO <<
"RawDataMdcDigiCnv::initialize()" << endmsg;
32 log << MSG::ERROR <<
"Failed to initialize RawDataBaseCnv" << endmsg;
36 auto jobSvc = serviceLocator()->service<Gaudi::Interfaces::IOptionsSvc>(
"JobOptionsSvc" );
37 Gaudi::Parsers::parse( m_runFrom, jobSvc->get(
"RawDataMdcDigiCnv.ExWireFromRun",
"0" ) );
38 Gaudi::Parsers::parse( m_runTo, jobSvc->get(
"RawDataMdcDigiCnv.ExWireToRun",
"999999" ) );
41 m_cnv->init(
m_inputSvc->config(
"MDCID_FIX" ) );
43 return StatusCode::SUCCESS;
48 StatusCode
createObj( IOpaqueAddress* pAddr, DataObject*& pObj ) {
61 return StatusCode::FAILURE;
65 m_cnv->setRunId( runId );
69 return m_cnv->convert( mdcBuf, digiCol );
72 StatusCode
createRep( DataObject* pObj, IOpaqueAddress*& pAddr ) {
74 MsgStream log(
msgSvc(),
"RawDataMdcDigiCnv" );
79 log <<
" get RawEvent failed !" << endmsg;
80 return StatusCode::FAILURE;
86 log <<
"no MdcDigiCol found" << endmsg;
87 return StatusCode::FAILURE;
90 return m_cnv->convert( digiCol, re );
const CLID & CLID_MdcDigiCol
eformat::write::FullEventFragment WriteRawEvent
ObjectVector< MdcDigi > MdcDigiCol
const CLID & CLID_MdcDigiCol
static MdcConverter * instance(int runMode=2)
const BufferHolder & getMdcBuf() const
const RawEventHeader & eventHeader() const
IRawDataCnvSvc * m_cnvSvc
IRawDataInputSvc * m_inputSvc
RawDataBaseCnv(long storageType, const CLID &clid, ISvcLocator *svc)
StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
StatusCode initialize() override
StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr)
static const CLID & classID()
RawDataMdcDigiCnv(ISvcLocator *svc)
_EXTERN_ std::string MdcDigiCol