28 m_tool(
"LArRawDataContByteStreamTool"),
46 ATH_CHECK( AthConstConverter::initialize() );
48 if (
m_rdpSvc.retrieve().isFailure()) {
49 ATH_MSG_WARNING(
" Can't get ByteStreamInputSvc interface Reading of ByteStream Data not possible. " );
58 return StatusCode::SUCCESS;
64 ATH_MSG_VERBOSE(
"Executing CreateObj method for LArCalibDigitContainer " );
67 ATH_MSG_ERROR(
" ROBDataProviderSvc not loaded. Can't read ByteStream." );
68 return StatusCode::FAILURE;
77 ATH_MSG_ERROR(
"Could not get raw event from ByteStreamInputSvc" );
78 return StatusCode::FAILURE;
80 const std::string& key = *(pAddr->par());
86 else if (key==
"MEDIUM")
91 ATH_MSG_DEBUG(
"Converting LArCalibDigits (from ByteStream). key=" << key <<
" ,gain=" << gain );
95 if (!*calibLineMapping || !*onOffIdMapping) {
97 return StatusCode::FAILURE;
101 StatusCode
sc=
m_tool->convert(
re,CalibDigitContainer,gain,
104 if (
sc!=StatusCode::SUCCESS) {
105 ATH_MSG_WARNING(
"Conversion tool returned an error. LArCalibDigitContainer might be empty." );
109 return StatusCode::SUCCESS;
115 ATH_MSG_VERBOSE(
"Execute CreateRep method of LArCalibDigitContainer " );
121 if (!
SG::fromStorable (pObj, CalibDigitContainer) || !CalibDigitContainer) {
122 ATH_MSG_ERROR(
"Cannot get LArCalibDigitContainer for DataObject. Key=" << pObj->registry()->name() );
123 return StatusCode::FAILURE;
126 std::string nm = pObj->registry()->name();
131 return StatusCode::SUCCESS;
const boost::regex re(r_e)
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
uint32_t CLID
The Class ID type.
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
convert to and from a SG storable
AthConstConverter(long storage_type, const CLID &class_type, ISvcLocator *svc, const std::string &name)
const std::string & name() const
IOpaqueAddress for ByteStreamCnvSvc, with ROB ids.
const EventContext & getEventContext() const
Template class for assembling a full atlas raw event from subfragments.
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Convert the transient object to the requested representation.
ToolHandle< BYTESTREAMTOOL > m_tool
SG::ReadCondHandleKey< LArOnOffIdMapping > m_onOffIdMappingKey
LArCalibDigitContByteStreamCnv(ISvcLocator *svcloc)
static long storageType()
virtual StatusCode initialize() override
ServiceHandle< IByteStreamCnvSvc > m_byteStreamCnvSvc
SG::ReadCondHandleKey< LArCalibLineMapping > m_calibLineMappingKey
ServiceHandle< IROBDataProviderSvc > m_rdpSvc
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create the transient representation of an object.
virtual ~LArCalibDigitContByteStreamCnv()
Container class for LArCalibDigit.
bool fromStorable(DataObject *pDObj, T *&pTrans, bool quiet=false, IRegisterTransient *irt=0, bool isConst=true)
DataObject * asStorable(SG::DataObjectSharedPtr< T > pObject)
static constexpr CLID ID()