|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef IROBDATAPROVIDERSVC_H
6 #define IROBDATAPROVIDERSVC_H
8 #include "GaudiKernel/IInterface.h"
10 #include "GaudiKernel/EventContext.h"
14 #include <string_view>
38 virtual void addROBData(
const EventContext& context,
const std::vector<uint32_t>& robIds,
const std::string_view callerName=
"UNKNOWN") = 0;
44 virtual void getROBData(
const EventContext& context,
const std::vector<uint32_t>& robIds,
VROBFRAG& robFragments,
const std::string_view callerName=
"UNKNOWN") = 0;
60 const std::function<
void(
const ROBF* )>&
fn )
const = 0;
virtual uint32_t getEventStatus(const EventContext &context)=0
Retrieve the status for the event.
virtual const RawEvent * getEvent(const EventContext &context)=0
Retrieve the whole event.
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
virtual void getROBData(const EventContext &context, const std::vector< uint32_t > &robIds, VROBFRAG &robFragments, const std::string_view callerName="UNKNOWN")=0
Retrieve ROBFragments for given ROB ids from cache.
virtual bool isEventComplete(const EventContext &) const =0
Check if complete event data are already in cache.
virtual void processCachedROBs(const EventContext &context, const std::function< void(const ROBF *)> &fn) const =0
Interface to access cache of ROBs (it is a full event in case of offline) In online implementation th...
OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment ROBF
virtual int collectCompleteEventData(const EventContext &context, const std::string_view callerName="UNKNOWN")=0
Collect all data for an event from the ROS and put them into the cache.
Interface class for managing ROB for both online and offline.
virtual void setNextEvent(const EventContext &context, const RawEvent *re)=0
Add all ROBFragments of a RawEvent to cache.
virtual void setNextEvent(const EventContext &context, const std::vector< ROBF > &result)=0
Add a given LVL1/LVL2 ROBFragment to cache.
std::vector< const ROBF * > VROBFRAG
virtual void addROBData(const EventContext &context, const std::vector< uint32_t > &robIds, const std::string_view callerName="UNKNOWN")=0
Add ROBFragments to cache for given ROB ids, ROB fragments may be retrieved with DataCollector.
virtual void setEventStatus(const EventContext &context, uint32_t)=0
Store the status for the event.
const boost::regex re(r_e)
DeclareInterfaceID(IROBDataProviderSvc, 1, 1)
Retrieve interface ID.