![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Gaudi Conversion Service class for ByteStream Persistency.
More...
#include <ByteStreamCnvSvc.h>
|
std::vector< std::string > | m_initCnvs |
|
Gaudi::Property< std::vector< std::string > > | m_ROD2ROBmap {this,"ROD2ROBmap",{},"","OrderedSet<std::string>"} |
|
|
virtual StatusCode | createAddress (long svc_type, const CLID &clid, const std::string *par, const unsigned long *ip, IOpaqueAddress *&refpAddress) |
| Create a Generic address using explicit arguments to identify a single object. More...
|
|
virtual StatusCode | createAddress (long svc_type, const CLID &clid, const std::string &refAddress, IOpaqueAddress *&refpAddress) |
| Convert an address in string form to object form. More...
|
|
virtual StatusCode | convertAddress (const IOpaqueAddress *pAddress, std::string &refAddress) |
| Convert an address to string form. More...
|
|
virtual SmartIF< IAddressCreator > & | addressCreator () |
| Retrieve address creation interface. More...
|
|
virtual IConverter * | createConverter (long typ, const CLID &clid, const ICnvFactory *fac) |
| Create new Converter using factory. More...
|
|
virtual StatusCode | configureConverter (long typ, const CLID &clid, IConverter *cnv) |
| Configure the new converter before initialize is called. More...
|
|
virtual StatusCode | initializeConverter (long typ, const CLID &clid, IConverter *cnv) |
| Initialize the new converter. More...
|
|
virtual StatusCode | activateConverter (long typ, const CLID &clid, IConverter *cnv) |
| Activate the new converter after initialization. More...
|
|
virtual void | loadConverter (DataObject *pObject) |
| Load converter or dictionary needed by the converter. More...
|
|
StatusCode | makeCall (int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject) |
|
SmartIF< IDataProviderSvc > | m_dataSvc |
| Pointer to data provider service. More...
|
|
SmartIF< IAddressCreator > | m_addressCreator |
| Pointer to the address creation service interface. More...
|
|
SmartIF< IConversionSvc > | m_cnvSvc |
| Pointer to the IConversionSvc interface of this. More...
|
|
long | m_type |
| Conversion service type. More...
|
|
Workers | m_workers |
| List of conversion workers. More...
|
|
CallMutex | m_conv_mut |
|
typedef std::recursive_mutex | CallMutex |
| Mutex to protect Converter creation. More...
|
|
Gaudi Conversion Service class for ByteStream Persistency.
This class is responsible for converting data object to and from BS format It inherits from ByteStreamCnvSvcBase, which is used by HLT in online.
When reading the ByteStream data, the ByteStream converters are called, which in turn call IRODDataProviderSvc to retrieve the raw data.
When writing the object data to ByteStream, an FullEventFragment is assembled from lower level fragments using FullEventAssembler, and written out to BS in commitOutput method through ByteStreamOutputSvc.
Definition at line 34 of file ByteStreamCnvSvc.h.
◆ CallMutex
◆ FEAMap_t
◆ FEAPtr_t
◆ Workers
◆ ByteStreamCnvSvc()
ByteStreamCnvSvc::ByteStreamCnvSvc |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
svc |
|
) |
| |
◆ ~ByteStreamCnvSvc()
ByteStreamCnvSvc::~ByteStreamCnvSvc |
( |
| ) |
|
|
virtual |
◆ activateConverter()
StatusCode AthCnvSvc::activateConverter |
( |
long |
typ, |
|
|
const CLID & |
clid, |
|
|
IConverter * |
cnv |
|
) |
| |
|
protectedvirtualinherited |
Activate the new converter after initialization.
Definition at line 536 of file AthCnvSvc.cxx.
540 return StatusCode::SUCCESS;
542 return Status::NO_CONVERTER;
◆ addConverter() [1/2]
StatusCode AthCnvSvc::addConverter |
( |
const CLID & |
clid | ) |
|
|
virtualinherited |
Add converter object to conversion service.
Definition at line 336 of file AthCnvSvc.cxx.
341 if ( 0 != pConverter ) {
343 if (
status.isSuccess() ) {
345 if (
status.isSuccess() ) {
347 if (
status.isSuccess() ) {
348 long conv_typ = pConverter->repSvcType();
349 const CLID& conv_clid = pConverter->objType();
350 typ = (typ<0xFF) ? typ : typ&0xFFFFFF00;
351 conv_typ = (conv_typ<0xFF) ? conv_typ : conv_typ&0xFFFFFF00;
352 if ( conv_typ == typ && conv_clid == clid ) {
358 pConverter->release();
360 return Status::NO_CONVERTER;
◆ addConverter() [2/2]
StatusCode AthCnvSvc::addConverter |
( |
IConverter * |
pConverter | ) |
|
|
virtualinherited |
Add converter object to conversion service.
Definition at line 365 of file AthCnvSvc.cxx.
367 if ( 0 != pConverter ) {
368 const CLID& clid = pConverter->objType();
370 m_workers.insert (std::make_pair(clid,WorkerEntry(clid, pConverter)));
371 pConverter->addRef();
372 return StatusCode::SUCCESS;
374 return Status::NO_CONVERTER;
◆ addressCreator() [1/2]
virtual SmartIF<IAddressCreator>& AthCnvSvc::addressCreator |
( |
| ) |
|
|
inlineprotectedvirtualinherited |
Retrieve address creation interface.
Definition at line 300 of file AthCnvSvc.h.
◆ addressCreator() [2/2]
SmartIF< IAddressCreator > & AthCnvSvc::addressCreator |
( |
| ) |
const |
|
virtualinherited |
Retrieve address creator facility.
Definition at line 261 of file AthCnvSvc.cxx.
◆ commitOutput()
StatusCode ByteStreamCnvSvc::commitOutput |
( |
const std::string & |
outputConnection, |
|
|
bool |
b |
|
) |
| |
|
overridevirtual |
Implements ConversionSvc's commitOutput.
Reimplemented from AthCnvSvc.
Definition at line 190 of file ByteStreamCnvSvc.cxx.
193 const EventContext& ctx = Gaudi::Hive::currentContext();
194 SlotData& slot = *
m_slots.get(ctx);
198 return(StatusCode::FAILURE);
206 std::vector<uint32_t>
buffer (rawSize);
208 if (
count != rawSize) {
210 return(StatusCode::FAILURE);
215 rawEvent.check_tree();
217 ATH_MSG_ERROR(
"commitOutput failed, because FullEventFragment invalid");
218 return(StatusCode::FAILURE);
220 ATH_MSG_DEBUG(
"commitOutput: Size of Event (words) = " << rawEvent.fragment_size_word());
229 if (!itSvc->second->putEvent(&rawEvent)) {
231 return(StatusCode::FAILURE);
236 return(StatusCode::SUCCESS);
◆ configureConverter()
StatusCode AthCnvSvc::configureConverter |
( |
long |
typ, |
|
|
const CLID & |
clid, |
|
|
IConverter * |
cnv |
|
) |
| |
|
protectedvirtualinherited |
Configure the new converter before initialize is called.
Definition at line 510 of file AthCnvSvc.cxx.
514 cnv->setConversionSvc(
this).ignore();
516 cnv->setDataProvider(
m_dataSvc).ignore();
517 return StatusCode::SUCCESS;
519 return Status::NO_CONVERTER;
◆ connectOutput() [1/2]
StatusCode ByteStreamCnvSvc::connectOutput |
( |
const std::string & |
output | ) |
|
|
overridevirtual |
Connect the output file to the service.
Reimplemented from AthCnvSvc.
Definition at line 104 of file ByteStreamCnvSvc.cxx.
107 const EventContext& ctx = Gaudi::Hive::currentContext();
108 SlotData& slot = *
m_slots.get(ctx);
113 uint64_t event = evtInfo->eventNumber();
114 uint32_t run_no = evtInfo->runNumber();
115 uint32_t bc_time_sec = evtInfo->timeStamp();
116 uint32_t bc_time_ns = evtInfo->timeStampNSOffset();
118 uint32_t lvl1_id = evtInfo->extendedLevel1ID();
122 uint8_t lvl1_type = evtInfo->level1TriggerType();
124 uint16_t lumi_block = evtInfo->lumiBlock();
128 eformat::helper::SourceIdentifier sid = eformat::helper::SourceIdentifier(eformat::FULL_SD_EVENT, nevt);
129 RawEventWrite*
re =
setRawEvent (std::make_unique<RawEventWrite>(sid.code(), bc_time_sec, bc_time_ns, global_id,
run_type, run_no, lumi_block, lvl1_id, bc_id, lvl1_type));
132 std::vector<eformat::helper::StreamTag> on_streamTags;
133 for (
const auto& sTag : evtInfo->streamTags()) {
134 on_streamTags.emplace_back(sTag.name(), sTag.type(), sTag.obeysLumiblock(), sTag.robs(), detsOnline(sTag.dets()));
136 uint32_t nStreamTagWords = eformat::helper::size_word(on_streamTags);
137 slot.m_tagBuff.resize (nStreamTagWords);
139 re->stream_tag(nStreamTagWords, slot.m_tagBuff.data());
143 return StatusCode::SUCCESS;
148 if (
m_evtStore->retrieve(trigDecision,
"xTrigDecision") != StatusCode::SUCCESS) {
149 ATH_MSG_WARNING(
"Property " <<
m_fillTriggerBits.name() <<
" set to True but failed to retrieve xAOD::TrigDecision. Leaving empty trigger bits in the event header.");
150 return StatusCode::SUCCESS;
154 const std::vector<uint32_t> &tbp = trigDecision->tbp();
155 const std::vector<uint32_t> &
tap = trigDecision->tap();
156 const std::vector<uint32_t> &tav = trigDecision->tav();
157 const size_t l1TotSize = tbp.size() +
tap.size() + tav.size();
159 slot.m_l1Buff.resize (l1TotSize);
162 slot.m_l1Buff[l1Size++] =
tb;
165 slot.m_l1Buff[l1Size++] =
tb;
168 slot.m_l1Buff[l1Size++] =
tb;
170 re->lvl1_trigger_info(l1TotSize, slot.m_l1Buff.data());
174 const std::vector<uint32_t>& lvl2PP = trigDecision->lvl2PassedPhysics();
175 if (lvl2PP.size() > 0) {
176 slot.m_l2Buff = lvl2PP;
177 re->lvl2_trigger_info(lvl2PP.size(), slot.m_l2Buff.data());
181 const std::vector<uint32_t>& efPP = trigDecision->efPassedPhysics();
182 if (efPP.size() > 0) {
183 slot.m_efBuff = efPP;
184 re->event_filter_info(efPP.size(), slot.m_efBuff.data());
187 return(StatusCode::SUCCESS);
◆ connectOutput() [2/2]
StatusCode ByteStreamCnvSvc::connectOutput |
( |
const std::string & |
t, |
|
|
const std::string & |
mode |
|
) |
| |
|
overridevirtual |
◆ conversionSvc()
SmartIF< IConversionSvc > & AthCnvSvc::conversionSvc |
( |
| ) |
const |
|
virtualinherited |
◆ convertAddress()
StatusCode AthCnvSvc::convertAddress |
( |
const IOpaqueAddress * |
pAddress, |
|
|
std::string & |
refAddress |
|
) |
| |
|
virtualinherited |
◆ converter()
IConverter * AthCnvSvc::converter |
( |
const CLID & |
wanted | ) |
|
|
virtualinherited |
Retrieve converter from list.
Definition at line 394 of file AthCnvSvc.cxx.
399 return worker->second.converter();
404 return worker->second.converter();
407 ATH_MSG_INFO(
"problem adding converter for CLID [" << clid <<
"]");
◆ createAddress() [1/2]
StatusCode AthCnvSvc::createAddress |
( |
long |
svc_type, |
|
|
const CLID & |
clid, |
|
|
const std::string & |
refAddress, |
|
|
IOpaqueAddress *& |
refpAddress |
|
) |
| |
|
virtualinherited |
◆ createAddress() [2/2]
StatusCode AthCnvSvc::createAddress |
( |
long |
svc_type, |
|
|
const CLID & |
clid, |
|
|
const std::string * |
par, |
|
|
const unsigned long * |
ip, |
|
|
IOpaqueAddress *& |
refpAddress |
|
) |
| |
|
virtualinherited |
◆ createConverter()
IConverter * AthCnvSvc::createConverter |
( |
long |
typ, |
|
|
const CLID & |
clid, |
|
|
const ICnvFactory * |
fac |
|
) |
| |
|
protectedvirtualinherited |
Create new Converter using factory.
Reimplemented in Athena::NtupleCnvSvc, Athena::xAODCnvSvc, and Athena::RootCnvSvc.
Definition at line 491 of file AthCnvSvc.cxx.
496 std::unique_ptr<IConverter> cnv{Converter::Factory::create
497 (ConverterID(typ,clid), serviceLocator().
get() )};
500 typ = (typ<0xFF) ? typ : typ&0xFFFFFF00;
501 cnv = Converter::Factory::create
502 (ConverterID(typ,clid), serviceLocator().
get() );
504 return cnv.release();
◆ createObj()
StatusCode AthCnvSvc::createObj |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject *& |
refpObject |
|
) |
| |
|
virtualinherited |
◆ createRep()
StatusCode AthCnvSvc::createRep |
( |
DataObject * |
pObject, |
|
|
IOpaqueAddress *& |
refpAddress |
|
) |
| |
|
virtualinherited |
◆ dataProvider()
SmartIF< IDataProviderSvc > & AthCnvSvc::dataProvider |
( |
| ) |
const |
|
virtualinherited |
Implementation of IConverter: Get Data provider service.
- Returns
- Pointer to data provider service
Definition at line 212 of file AthCnvSvc.cxx.
217 const_cast<SmartIF<IDataProviderSvc>&
>(
m_dataSvc);
◆ disconnectOutput()
StatusCode AthCnvSvc::disconnectOutput |
( |
const std::string & |
output | ) |
|
|
virtualinherited |
◆ fillObjRefs()
StatusCode AthCnvSvc::fillObjRefs |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject * |
pObject |
|
) |
| |
|
virtualinherited |
◆ fillRepRefs()
StatusCode AthCnvSvc::fillRepRefs |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject * |
pObject |
|
) |
| |
|
virtualinherited |
◆ finalize()
StatusCode ByteStreamCnvSvc::finalize |
( |
| ) |
|
|
overridevirtual |
◆ getFullEventAssembler()
template<class T >
StatusCode ByteStreamCnvSvc::getFullEventAssembler |
( |
T *& |
t, |
|
|
const std::string & |
nm |
|
) |
| |
Access to FullEventAssembler.
Definition at line 121 of file ByteStreamCnvSvc.h.
123 const EventContext& ctx = Gaudi::Hive::currentContext();
127 T*
p =
dynamic_cast<T*
>(fea.get());
130 return(StatusCode::FAILURE);
133 return(StatusCode::SUCCESS);
137 auto ptr = std::make_unique<T>();
139 fea = std::move (ptr);
140 return(StatusCode::SUCCESS);
◆ getRawEvent()
◆ handle()
void ByteStreamCnvSvcBase::handle |
( |
const Incident & |
| ) |
|
|
overridevirtualinherited |
Implementation of IIncidentListener: Handle for EndEvent incidence.
Definition at line 63 of file ByteStreamCnvSvcBase.cxx.
65 if (!clidSvc.retrieve().isSuccess()) {
73 if (!clidSvc->getIDOfTypeName(cnv,
id).isSuccess()) {
◆ initialize()
StatusCode ByteStreamCnvSvc::initialize |
( |
| ) |
|
|
overridevirtual |
Gaudi Service Interface method implementations:
Initialize the service.
Reimplemented from ByteStreamCnvSvcBase.
Definition at line 48 of file ByteStreamCnvSvc.cxx.
51 return(StatusCode::FAILURE);
61 if (
it == ioSvcNames.end()) {
65 if (ioSvcNames.size() != 0) {
68 itSvc != itSvcE; ++itSvc) {
72 if (!service(*itSvc,
svc).isSuccess()) {
74 return(StatusCode::FAILURE);
79 return(StatusCode::FAILURE);
82 std::string bsOutputStreamName;
83 SimpleProperty<std::string> propBSO(
"BSOutputStreamName", bsOutputStreamName);
84 if (!ioSvc->getProperty(&propBSO).isSuccess()) {
85 ATH_MSG_FATAL(
"Cannot get BSOutputStreamName from " << *itSvc);
86 return(StatusCode::FAILURE);
88 bsOutputStreamName = propBSO.value();
93 return(StatusCode::SUCCESS);
◆ initializeConverter()
StatusCode AthCnvSvc::initializeConverter |
( |
long |
typ, |
|
|
const CLID & |
clid, |
|
|
IConverter * |
cnv |
|
) |
| |
|
protectedvirtualinherited |
Initialize the new converter.
Definition at line 525 of file AthCnvSvc.cxx.
529 return cnv->initialize();
531 return Status::NO_CONVERTER;
◆ interfaceID()
const InterfaceID & ByteStreamCnvSvc::interfaceID |
( |
| ) |
|
|
static |
Should rather be in IByteStreamSvc.h if we had one.
Definition at line 266 of file ByteStreamCnvSvc.cxx.
267 static const InterfaceID IDByteStreamCnvSvc(
"ByteStreamCnvSvc", 1, 0);
268 return IDByteStreamCnvSvc;
◆ loadConverter()
void AthCnvSvc::loadConverter |
( |
DataObject * |
pObject | ) |
|
|
protectedvirtualinherited |
Load converter or dictionary needed by the converter.
Definition at line 547 of file AthCnvSvc.cxx.
◆ makeCall()
StatusCode AthCnvSvc::makeCall |
( |
int |
typ, |
|
|
bool |
ignore_add, |
|
|
bool |
ignore_obj, |
|
|
bool |
update, |
|
|
IOpaqueAddress *& |
pAddress, |
|
|
DataObject *& |
pObject |
|
) |
| |
|
protectedinherited |
Definition at line 553 of file AthCnvSvc.cxx.
560 if ( 0 != pAddress || ignore_add ) {
561 if ( 0 != pObject || ignore_obj ) {
562 const CLID& obj_class =
563 (0 != pObject && !ignore_obj) ? pObject->clID()
564 : (0 != pAddress && !ignore_add)
568 if ( !cnv && pObject ) {
578 status = cnv->createObj(pAddress, pObject);
581 status = cnv->fillObjRefs(pAddress, pObject);
584 status = cnv->updateObj(pAddress, pObject);
587 status = cnv->updateObjRefs(pAddress, pObject);
590 status = cnv->createRep(pObject, pAddress);
593 status = cnv->fillRepRefs(pAddress, pObject);
596 status = cnv->updateRep(pAddress, pObject);
599 status = cnv->updateRepRefs(pAddress, pObject);
602 status = StatusCode::FAILURE;
611 msg(MSG::INFO) <<
"No converter for object ";
612 if ( pObject != 0 ) {
613 msg(MSG::INFO) << System::typeinfoName(
typeid(*pObject));
615 msg(MSG::INFO) <<
" CLID= " << obj_class <<
endmsg;
616 return Status::NO_CONVERTER;
618 return Status::INVALID_OBJECT;
620 return Status::INVALID_ADDRESS;
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ objType()
◆ queryInterface()
StatusCode ByteStreamCnvSvc::queryInterface |
( |
const InterfaceID & |
riid, |
|
|
void ** |
ppvInterface |
|
) |
| |
|
overridevirtual |
◆ removeConverter()
StatusCode AthCnvSvc::removeConverter |
( |
const CLID & |
clid | ) |
|
|
virtualinherited |
Remove converter object from conversion service (if present).
Definition at line 379 of file AthCnvSvc.cxx.
383 worker->second.converter()->finalize().ignore();
384 worker->second.converter()->release();
387 return StatusCode::SUCCESS;
389 return Status::NO_CONVERTER;
◆ repSvcType()
long AthCnvSvc::repSvcType |
( |
| ) |
const |
|
virtualinherited |
Retrieve the class type of the data store the converter uses.
Definition at line 172 of file AthCnvSvc.cxx.
◆ setAddressCreator()
StatusCode AthCnvSvc::setAddressCreator |
( |
IAddressCreator * |
creator | ) |
|
|
virtualinherited |
Set address creator facility.
Definition at line 243 of file AthCnvSvc.cxx.
249 IConverter* cnv =
i->second.converter();
256 return StatusCode::SUCCESS;
◆ setConversionSvc()
StatusCode AthCnvSvc::setConversionSvc |
( |
IConversionSvc * |
svc | ) |
|
|
virtualinherited |
Implementation of IConverter: Set conversion service the converter is connected to.
Definition at line 224 of file AthCnvSvc.cxx.
226 return StatusCode::FAILURE;
◆ setDataProvider()
StatusCode AthCnvSvc::setDataProvider |
( |
IDataProviderSvc * |
pDataSvc | ) |
|
|
virtualinherited |
Implementation of IConverter: Set Data provider service.
- Returns
- Status code indicating success or failure
- Parameters
-
pService | Pointer to data provider service |
Definition at line 189 of file AthCnvSvc.cxx.
191 if ( !pDataSvc )
return StatusCode::SUCCESS;
198 IConverter* cnv =
i->second.converter();
200 if (cnv->setDataProvider(
m_dataSvc).isFailure()) {
205 return StatusCode::SUCCESS;
◆ setRawEvent()
◆ updateObj()
StatusCode AthCnvSvc::updateObj |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject * |
refpObject |
|
) |
| |
|
virtualinherited |
◆ updateObjRefs()
StatusCode AthCnvSvc::updateObjRefs |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject * |
pObject |
|
) |
| |
|
virtualinherited |
◆ updateRep()
StatusCode AthCnvSvc::updateRep |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject * |
pObject |
|
) |
| |
|
virtualinherited |
◆ updateRepRefs()
StatusCode AthCnvSvc::updateRepRefs |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject * |
pObject |
|
) |
| |
|
virtualinherited |
◆ updateServiceState()
StatusCode ByteStreamCnvSvcBase::updateServiceState |
( |
IOpaqueAddress * |
pAddress | ) |
|
|
overridevirtualinherited |
Checks whether an IOpaqueAddress is a GenericAddress.
Reimplemented from AthCnvSvc.
Definition at line 53 of file ByteStreamCnvSvcBase.cxx.
55 GenericAddress* pAddr =
dynamic_cast<GenericAddress*
>(pAddress);
57 return(StatusCode::SUCCESS);
60 return(StatusCode::FAILURE);
◆ writeFEA()
void ByteStreamCnvSvc::writeFEA |
( |
SlotData & |
slot | ) |
|
|
private |
Write the FEA to RawEvent.
Definition at line 239 of file ByteStreamCnvSvc.cxx.
243 for (
auto&
p : feaMap) {
245 p.second->fill(slot.m_rawEventWrite.get(),
log);
◆ m_addressCreator
SmartIF<IAddressCreator> AthCnvSvc::m_addressCreator |
|
protectedinherited |
Pointer to the address creation service interface.
Definition at line 315 of file AthCnvSvc.h.
◆ m_cnvSvc
SmartIF<IConversionSvc> AthCnvSvc::m_cnvSvc |
|
protectedinherited |
Pointer to the IConversionSvc interface of this.
Definition at line 317 of file AthCnvSvc.h.
◆ m_conv_mut
◆ m_dataSvc
SmartIF<IDataProviderSvc> AthCnvSvc::m_dataSvc |
|
protectedinherited |
Pointer to data provider service.
Definition at line 313 of file AthCnvSvc.h.
◆ m_evtStore
◆ m_fillTriggerBits
Gaudi::Property<bool> ByteStreamCnvSvc::m_fillTriggerBits {this, "FillTriggerBits", true, "Read in xTrigDecision and use it to fill Trigger bits in event header"} |
|
private |
◆ m_initCnvs
std::vector<std::string> ByteStreamCnvSvcBase::m_initCnvs |
|
protectedinherited |
◆ m_ioSvcMap
◆ m_ioSvcName
std::string ByteStreamCnvSvc::m_ioSvcName |
|
private |
◆ m_ioSvcNameList
Gaudi::Property<std::vector<std::string> > ByteStreamCnvSvc::m_ioSvcNameList { this, "ByteStreamOutputSvcList", {}, "", "OrderedSet<T>"} |
|
private |
◆ m_isCalibration
Gaudi::Property<bool> ByteStreamCnvSvcBase::m_isCalibration {this, "IsCalibration", false} |
|
privateinherited |
◆ m_isSimulation
Gaudi::Property<bool> ByteStreamCnvSvcBase::m_isSimulation {this, "IsSimulation", false} |
|
privateinherited |
◆ m_isTestbeam
Gaudi::Property<bool> ByteStreamCnvSvcBase::m_isTestbeam {this, "IsTestbeam", false} |
|
privateinherited |
◆ m_ROD2ROBmap
Gaudi::Property<std::vector<std::string> > ByteStreamCnvSvcBase::m_ROD2ROBmap {this,"ROD2ROBmap",{},"","OrderedSet<std::string>"} |
|
protectedinherited |
◆ m_slots
◆ m_type
◆ m_userType
std::string ByteStreamCnvSvc::m_userType |
|
private |
◆ m_workers
List of conversion workers.
Definition at line 321 of file AthCnvSvc.h.
The documentation for this class was generated from the following files:
JetConstituentVector::iterator iterator
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
ByteStreamCnvSvcBase(const std::string &name, ISvcLocator *pSvcLocator)
Standard Service Constructor.
OFFLINE_FRAGMENTS_NAMESPACE_WRITE::FullEventFragment RawEventWrite
data type for writing raw event
virtual StatusCode finalize()
virtual StatusCode removeConverter(const CLID &clid)
Remove converter object from conversion service (if present).
std::string find(const std::string &s)
return a remapped string
std::map< std::string, ByteStreamOutputSvc * > m_ioSvcMap
Services for writing output.
virtual StatusCode activateConverter(long typ, const CLID &clid, IConverter *cnv)
Activate the new converter after initialization.
virtual StatusCode updateServiceState(IOpaqueAddress *pAddress)
Update state of the service.
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
ServiceHandle< StoreGateSvc > m_evtStore
Event store.
SmartIF< IAddressCreator > m_addressCreator
Pointer to the address creation service interface.
SG::SlotSpecificObj< SlotData > m_slots
std::unique_ptr< FullEventAssemblerBase > FEAPtr_t
common FEA, indexed by string key
virtual StatusCode queryInterface(const InterfaceID &riid, void **ppvInterface) override
Required of all Gaudi services: see Gaudi documentation for details.
std::string m_ioSvcName
name of the service
std::map< std::string, FEAPtr_t > FEAMap_t
virtual StatusCode configureConverter(long typ, const CLID &clid, IConverter *cnv)
Configure the new converter before initialize is called.
The Athena Transient Store API.
POOL::TEvent event(POOL::TEvent::kClassAccess)
msgSvc
Provide convenience handles for various services.
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< std::string > m_initCnvs
SmartIF< IConversionSvc > m_cnvSvc
Pointer to the IConversionSvc interface of this.
std::string m_userType
user type
static const InterfaceID & interfaceID()
Should rather be in IByteStreamSvc.h if we had one.
AthROOTErrorHandlerSvc * svc
uint32_t CLID
The Class ID type.
Workers m_workers
List of conversion workers.
virtual StatusCode initializeConverter(long typ, const CLID &clid, IConverter *cnv)
Initialize the new converter.
virtual StatusCode addConverter(const CLID &clid)
Add converter object to conversion service.
Class describing the basic event information.
virtual IConverter * createConverter(long typ, const CLID &clid, const ICnvFactory *fac)
Create new Converter using factory.
virtual IConverter * converter(const CLID &wanted)
Retrieve converter from list.
void writeFEA(SlotData &slot)
Write the FEA to RawEvent.
Gaudi::Property< bool > m_fillTriggerBits
fill trigger bits
#define ATH_MSG_WARNING(x)
const boost::regex re(r_e)
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
virtual void loadConverter(DataObject *pObject)
Load converter or dictionary needed by the converter.
SmartIF< IDataProviderSvc > m_dataSvc
Pointer to data provider service.
This class provides the base class to services to write bytestream data. The concrete class can provi...
#define ATLAS_THREAD_SAFE
RawEventWrite * setRawEvent(std::unique_ptr< RawEventWrite > rawEventWrite)
virtual StatusCode connectOutput(const std::string &t, const std::string &mode) override
Implements ConversionSvc's connectOutput.
Gaudi::Property< std::vector< std::string > > m_ioSvcNameList
list of service names
def encode(data, use_base64=True)
virtual long repSvcType() const
Retrieve the class type of the data store the converter uses.
Interface to the raw trigger decision information of the event.
long m_type
Conversion service type.
virtual StatusCode initialize() override
Required of all Gaudi Services.