16#include "GaudiKernel/MsgStream.h"
17#include "GaudiKernel/StatusCode.h"
18#include "GaudiKernel/DataObject.h"
19#include "GaudiKernel/IRegistry.h"
29#include "GaudiKernel/IToolSvc.h"
38 m_tool(
"LArRawDataContByteStreamTool"),
54 ATH_CHECK( AthConstConverter::initialize() );
56 if (
m_rdpSvc.retrieve().isFailure()) {
57 ATH_MSG_WARNING(
" Can't get ByteStreamInputSvc interface Reading of ByteStream Data not possible. " );
63 return StatusCode::SUCCESS;
69 ATH_MSG_VERBOSE(
"Executing CreateObj method for LArAccumulatedCalibDigitContainer " );
73 ATH_MSG_ERROR(
" ROBDataProviderSvc not loaded. Can't read ByteStream." );
74 return StatusCode::FAILURE;
79 ATH_MSG_ERROR(
"dynamic_cast of OpaqueAdress to ByteStreamAddress failed!" );
80 return StatusCode::FAILURE;
85 ATH_MSG_ERROR(
"Could not get raw event from ByteStreamInputSvc" );
87 const std::string& key = *(pAddr->par());
92 else if (key==
"MEDIUM")
100 ATH_MSG_DEBUG(
"Converting LArAccumulatedCalibDigits (from ByteStream). key=" << key <<
" ,gain=" << gain );
102 if (not *calibLineMapping){
103 delete DigitContainer;
104 ATH_MSG_ERROR(
"LArAccumulatedCalibDigitContByteStreamCnv::createObjConst: nullptr.");
105 return StatusCode::FAILURE;
107 StatusCode
sc=
m_tool->convert(
re,DigitContainer,gain,
109 if (
sc!=StatusCode::SUCCESS) {
110 ATH_MSG_WARNING(
"Conversion tool returned an error. LArAccumulatedCalibDigitContainer might be empty." );
115 return StatusCode::SUCCESS;
122 ATH_MSG_ERROR(
"CreateRep method of LArAccumulatedCalibDigitContainer not implemented" );
123 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)
macros to associate a CLID to a type
uint32_t CLID
The Class ID type.
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
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.
LArAccumulatedCalibDigitContByteStreamCnv(ISvcLocator *svcloc)
virtual StatusCode createObjConst(IOpaqueAddress *pAddr, DataObject *&pObj) const override
Create the transient representation of an object.
static const CLID & classID()
virtual StatusCode createRepConst(DataObject *pObj, IOpaqueAddress *&pAddr) const override
Convert the transient object to the requested representation.
ServiceHandle< IROBDataProviderSvc > m_rdpSvc
virtual StatusCode initialize() override
virtual ~LArAccumulatedCalibDigitContByteStreamCnv()
ToolHandle< BYTESTREAMTOOL > m_tool
SG::ReadCondHandleKey< LArCalibLineMapping > m_calibLineMappingKey
static long storageType()
Container class for LArAccumulatedCalibDigit.
void setDelayScale(const double scale)
set the delay Scale
DataObject * asStorable(SG::DataObjectSharedPtr< T > pObject)