![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef BYTESTREAMCNVSVCBASE_ROBDATAPROVIDERSVC_H
6 #define BYTESTREAMCNVSVCBASE_ROBDATAPROVIDERSVC_H
30 #include "eformat/SourceIdentifier.h"
50 virtual void addROBData(
const std::vector<uint32_t>& robIds,
const std::string_view callerName=
"UNKNOWN")
override;
59 virtual void getROBData(
const std::vector<uint32_t>& robIds, std::vector<const ROBF*>& robFragments,
const std::string_view callerName=
"UNKNOWN")
override;
72 virtual void addROBData(
const EventContext& context,
const std::vector<uint32_t>& robIds,
const std::string_view callerName=
"UNKNOWN")
override;
73 virtual void setNextEvent(
const EventContext& context,
const std::vector<OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment>&
result)
override;
75 virtual void getROBData(
const EventContext& context,
const std::vector<uint32_t>& robIds, VROBFRAG& robFragments,
76 const std::string_view callerName=
"UNKNOWN")
override;
82 const std::function<
void(
const ROBF* )>&
fn )
const override;
84 virtual bool isEventComplete(
const EventContext& )
const override {
return true; }
92 typedef std::map<uint32_t, std::unique_ptr<const ROBF>, std::less<uint32_t> >
ROBMAP;
virtual const RawEvent * getEvent() override
Retrieve the whole event.
SimpleProperty< std::vector< std::pair< int, int > > > ArrayPairIntProperty
Remaining attributes are for configuration vector of Source ids and status words to be ignored for th...
virtual void setEventStatus(uint32_t status) override
Store the status for the event.
virtual uint32_t getEventStatus() override
Retrieve the status for the event.
virtual void addROBData(const std::vector< uint32_t > &robIds, const std::string_view callerName="UNKNOWN") override
Add ROBFragments to cache for given ROB ids, ROB fragments may be retrieved with DataCollector.
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
ArrayPairIntProperty m_filterRobWithStatus
std::map< eformat::SubDetector, std::vector< uint32_t > > FilterSubDetMap
map of Sub Det Source ids and status words to be ignored for the ROB map
virtual void getROBData(const EventContext &context, const std::vector< uint32_t > &robIds, VROBFRAG &robFragments, const std::string_view callerName="UNKNOWN") override
virtual void getROBData(const std::vector< uint32_t > &robIds, std::vector< const ROBF * > &robFragments, const std::string_view callerName="UNKNOWN") override
Retrieve ROBFragments for given ROB ids from cache.
OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment ROBF
ROB Fragment class.
virtual StatusCode initialize() override
initialize the service
Maintain a set of objects, one per slot.
::StatusCode StatusCode
StatusCode definition for legacy code.
std::map< uint32_t, std::unique_ptr< const ROBF >, std::less< uint32_t > > ROBMAP
vector of ROBFragment class
std::map< uint32_t, std::vector< uint32_t > > FilterRobMap
map of full ROB Source ids and status words to be ignored for the ROB map
ROBDataProviderSvc(const std::string &name, ISvcLocator *svcloc)
Constructor.
virtual void setNextEvent(const std::vector< ROBF > &result) override
Add a given LVL1/LVL2 ROBFragment to cache.
virtual bool isEventComplete(const EventContext &) const override
BooleanProperty m_filterEmptyROB
Filter out empty ROB fragments which are send by the ROS.
FilterSubDetMap m_filterSubDetMap
const boost::regex re(r_e)
virtual int collectCompleteEventData(const EventContext &, const std::string_view) override
static void robmapClear(ROBMAP &toclear)
Maintain a set of objects, one per slot.
FilterRobMap m_filterRobMap
virtual void processCachedROBs(const EventContext &context, const std::function< void(const ROBF *)> &fn) const override
SG::SlotSpecificObj< EventCache > m_eventsCache
bool filterRobWithStatus(const ROBF *rob)
method to filter ROBs with given Status code
ArrayPairIntProperty m_filterSubDetWithStatus