ATLAS Offline Software
|
This class is the EventSelector for event data. More...
#include <DoubleEventSelectorAthenaPool.h>
Public Member Functions | |
DoubleEventSelectorAthenaPool (const std::string &name, ISvcLocator *pSvcLocator) | |
Standard Service Constructor. More... | |
virtual | ~DoubleEventSelectorAthenaPool () |
Destructor. More... | |
virtual StatusCode | initialize () override |
Initialize function. More... | |
virtual StatusCode | next (IEvtSelector::Context &ctxt) const override |
virtual StatusCode | next (IEvtSelector::Context &ctxt, int jump) const override |
virtual StatusCode | seek (Context &ctxt, int evtNum) const override |
Seek to a given event number. More... | |
virtual int | size (Context &ctxt) const override |
Return the size of the collection. More... | |
virtual void | handle (const Incident &incident) override |
Incident service handle listening for BeginProcessing and EndProcessing. More... | |
virtual StatusCode | start () override |
virtual StatusCode | stop () override |
virtual StatusCode | finalize () override |
virtual StatusCode | createContext (IEvtSelector::Context *&ctxt) const override |
create context More... | |
virtual StatusCode | previous (IEvtSelector::Context &ctxt) const override |
virtual StatusCode | previous (IEvtSelector::Context &ctxt, int jump) const override |
virtual StatusCode | last (IEvtSelector::Context &ctxt) const override |
virtual StatusCode | rewind (IEvtSelector::Context &ctxt) const override |
virtual StatusCode | createAddress (const IEvtSelector::Context &ctxt, IOpaqueAddress *&iop) const override |
virtual StatusCode | releaseContext (IEvtSelector::Context *&ctxt) const override |
virtual StatusCode | resetCriteria (const std::string &criteria, IEvtSelector::Context &ctxt) const override |
Set a selection criteria. More... | |
virtual int | curEvent (const Context &ctxt) const override |
Return the current event number. More... | |
virtual StatusCode | makeServer (int num) override |
Make this a server. More... | |
virtual StatusCode | makeClient (int num) override |
Make this a client. More... | |
virtual StatusCode | share (int evtnum) override |
Request to share a given event number. More... | |
virtual StatusCode | readEvent (int maxevt) override |
Read the next maxevt events. More... | |
virtual StatusCode | io_reinit () override |
Callback method to reinitialize the internal state of the component for I/O purposes (e.g. upon fork(2) ) More... | |
virtual StatusCode | io_finalize () override |
Callback method to finalize the internal state of the component for I/O purposes (e.g. before fork(2) ) More... | |
Protected Member Functions | |
virtual StatusCode | nextHandleFileTransition (IEvtSelector::Context &ctxt) const override |
Handle file transition at the next iteration. More... | |
virtual StatusCode | nextWithSkip (IEvtSelector::Context &ctxt) const override |
Go to next event and skip if necessary. More... | |
virtual StatusCode | fillAttributeList (coral::AttributeList *attrList, const std::string &suffix, bool copySource) const override |
Fill AttributeList with specific items from the selector and a suffix. More... | |
virtual bool | disconnectIfFinished (const SG::SourceID &fid) const override |
Private Types | |
typedef std::mutex | CallMutex |
Private Member Functions | |
virtual StatusCode | recordAttributeList () const override |
Record AttributeList in StoreGate. More... | |
StoreGateSvc * | eventStore () const |
Return pointer to active event SG. More... | |
StatusCode | reinit () const |
Reinitialize the service when a fork() occured/was-issued. More... | |
PoolCollectionConverter * | getCollectionCnv (bool throwIncidents=false) const |
Return pointer to new PoolCollectionConverter. More... | |
int | findEvent (int evtNum) const |
Search for event with number evtNum. More... | |
void | fireEndFileIncidents (bool isLastFile) const |
Fires the EndInputFile incident (if there is an open file) at end of selector. More... | |
void | inputCollectionsHandler (Gaudi::Details::PropertyBase &) |
Private Attributes | |
ServiceHandle< ISecondaryEventSelector > | m_secondarySelector {this, "SecondaryEventSelector", "SecondaryEventSelector", ""} |
Gaudi::Property< std::string > | m_secondaryAttrListSuffix {this, "SecondaryAttrListSuffix", "secondary", ""} |
bool | m_secondaryByteStream {} |
SG::SlotSpecificObj< SG::SourceID > | m_sourceID1 |
SG::SlotSpecificObj< SG::SourceID > | m_sourceID2 |
EventContextAthenaPool * | m_endIter {} |
PoolCollectionConverter *m_poolCollectionConverter | ATLAS_THREAD_SAFE {} |
pool::ICollectionCursor *m_headerIterator | ATLAS_THREAD_SAFE {} |
Guid m_guid | ATLAS_THREAD_SAFE {} |
std::map< SG::SourceID, int > m_activeEventsPerSource | ATLAS_THREAD_SAFE |
std::vector< std::string >::const_iterator m_inputCollectionsIterator | ATLAS_THREAD_SAFE |
bool m_inputCollectionsChanged | ATLAS_THREAD_SAFE |
flag to notify the EvSel that the inputs were changed and reinit() needs to be called ASAP More... | |
ToolHandleArray< IAthenaSelectorTool > m_helperTools | ATLAS_THREAD_SAFE {this} |
HelperTools, vector of names of AlgTools that are executed by the EventSelector. More... | |
std::vector< int > m_numEvt | ATLAS_THREAD_SAFE |
std::vector< int > m_firstEvt | ATLAS_THREAD_SAFE |
std::vector< std::pair< long, long > > m_skipEventRanges | ATLAS_THREAD_SAFE |
ServiceHandle< IAthenaPoolCnvSvc > | m_athenaPoolCnvSvc {this, "AthenaPoolCnvSvc", "AthenaPoolCnvSvc", ""} |
ServiceHandle< IIncidentSvc > | m_incidentSvc {this, "IncidentSvc", "IncidentSvc", ""} |
Gaudi::Property< bool > | m_isSecondary {this, "IsSecondary", false, ""} |
IsSecondary, know if this is an instance of secondary event selector. More... | |
Gaudi::Property< bool > | m_processMetadata {this, "ProcessMetadata", true, ""} |
ProcessMetadata, switch on firing of FileIncidents which will trigger processing of metadata: default = true. More... | |
Gaudi::Property< std::string > | m_collectionType {this, "CollectionType", "ImplicitROOT", ""} |
CollectionType, type of the collection: default = "ImplicitROOT". More... | |
Gaudi::Property< std::string > | m_collectionTree {this, "CollectionTree", APRDefaults::TTreeNames::DataHeader, ""} |
CollectionTree, prefix of the collection TTree: default = "POOLContainer". More... | |
Gaudi::Property< std::string > | m_connection {this, "Connection", "", ""} |
Connection, connection string. More... | |
Gaudi::Property< std::string > | m_refName {this, "RefName", "", ""} |
RefName, attribute name. More... | |
Gaudi::Property< std::string > | m_attrListKey {this, "AttributeListKey", "Input", ""} |
AttributeList SG key. More... | |
Gaudi::Property< std::vector< std::string > > | m_inputCollectionsProp {this, "InputCollections", {}, ""} |
InputCollections, vector with names of the input collections. More... | |
Gaudi::Property< std::string > | m_query {this, "Query", "", ""} |
Query string passed to APR when opening DataHeader container (kind of useless). More... | |
Gaudi::Property< bool > | m_keepInputFilesOpen {this, "KeepInputFilesOpen", false, ""} |
KeepInputFilesOpen, boolean flag to keep files open after PoolCollection reaches end: default = false. More... | |
ToolHandle< IAthenaSelectorTool > | m_counterTool {this, "CounterTool", "", ""} |
ToolHandle< IAthenaIPCTool > | m_eventStreamingTool {this, "SharedMemoryTool", "", ""} |
IntegerProperty | m_makeStreamingToolClient {this,"MakeStreamingToolClient",0} |
Make this instance a Streaming Client during first iteration automatically. More... | |
Gaudi::CheckedProperty< int > | m_runNo {this, "RunNumber", 0, ""} |
The following are included for compatibility with McEventSelector and are not really used. More... | |
Gaudi::CheckedProperty< int > | m_oldRunNo {this, "OldRunNumber", 0, ""} |
Gaudi::Property< bool > | m_overrideRunNumber {this, "OverrideRunNumber", false, ""} |
Gaudi::Property< bool > | m_overrideRunNumberFromInput {this, "OverrideRunNumberFromInput", false, ""} |
Gaudi::CheckedProperty< int > | m_firstEventNo {this, "FirstEvent", 1, ""} |
Gaudi::CheckedProperty< int > | m_eventsPerRun {this, "EventsPerRun", 1000000, ""} |
Gaudi::CheckedProperty< int > | m_firstLBNo {this, "FirstLB", 0, ""} |
Gaudi::CheckedProperty< int > | m_eventsPerLB {this, "EventsPerLB", 1000, ""} |
Gaudi::CheckedProperty< int > | m_initTimeStamp {this, "InitialTimeStamp", 0, ""} |
Gaudi::Property< int > | m_timeStampInterval {this, "TimeStampInterval", 0, ""} |
std::atomic_long | m_curCollection {} |
Gaudi::Property< int > | m_skipEvents {this, "SkipEvents", 0, ""} |
SkipEvents, numbers of events to skip: default = 0. More... | |
Gaudi::Property< std::vector< long > > | m_skipEventSequenceProp {this, "SkipEventSequence", {}, ""} |
Gaudi::Property< std::string > | m_skipEventRangesProp {this, "SkipEventRanges", {}, ""} |
Skip Events - comma separated list of event to skip, ranges with '-': <start> - <end> More... | |
std::atomic_int | m_evtCount {} |
std::atomic_bool | m_firedIncident {} |
CallMutex | m_callLock |
SG::SlotSpecificObj< SG::SourceID > | m_sourceID |
This class is the EventSelector for event data.
Definition at line 26 of file DoubleEventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 247 of file EventSelectorAthenaPool.h.
DoubleEventSelectorAthenaPool::DoubleEventSelectorAthenaPool | ( | const std::string & | name, |
ISvcLocator * | pSvcLocator | ||
) |
Standard Service Constructor.
Definition at line 28 of file DoubleEventSelectorAthenaPool.cxx.
|
virtual |
|
overridevirtualinherited |
ctxt | [IN] current event context. |
iop | [OUT] pointer to IOpaqueAddress reference of selection context. |
Definition at line 768 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
create context
Definition at line 468 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Return the current event number.
ctxt | [IN/OUT] current event context. |
Definition at line 872 of file EventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Definition at line 1228 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Return pointer to active event SG.
Definition at line 85 of file EventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Fill AttributeList with specific items from the selector and a suffix.
Definition at line 1092 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Definition at line 427 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
|
privateinherited |
Fires the EndInputFile incident (if there is an open file) at end of selector.
Definition at line 410 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Return pointer to new PoolCollectionConverter.
Definition at line 1030 of file EventSelectorAthenaPool.cxx.
|
overridevirtual |
Incident service handle listening for BeginProcessing and EndProcessing.
Reimplemented from EventSelectorAthenaPool.
Definition at line 199 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtual |
Initialize function.
Reimplemented from EventSelectorAthenaPool.
Definition at line 37 of file DoubleEventSelectorAthenaPool.cxx.
|
privateinherited |
Definition at line 76 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Callback method to finalize the internal state of the component for I/O purposes (e.g. before fork(2)
)
Definition at line 1172 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Callback method to reinitialize the internal state of the component for I/O purposes (e.g. upon fork(2)
)
Definition at line 1120 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
ctxt | [IN/OUT] current event context is interated to last event. |
Definition at line 754 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
|
overridevirtualinherited |
|
overridevirtual |
ctxt | [IN/OUT] current event context is interated to next event. |
Reimplemented from EventSelectorAthenaPool.
Definition at line 50 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtual |
ctxt | [IN/OUT] current event context is interated to next event. |
jump | [IN] number of events to jump (currently not supported). |
Reimplemented from EventSelectorAthenaPool.
Definition at line 110 of file DoubleEventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Handle file transition at the next iteration.
Definition at line 619 of file EventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
|
overridevirtualinherited |
ctxt | [IN/OUT] current event context is interated to previous event. |
Definition at line 739 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
ctxt | [IN/OUT] current event context is interated to previous event. |
jump | [IN] number of events to jump (currently not supported). |
Definition at line 744 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Read the next maxevt events.
evtnum | [IN] The number of events to read. |
Definition at line 977 of file EventSelectorAthenaPool.cxx.
|
overrideprivatevirtual |
Record AttributeList in StoreGate.
Reimplemented from EventSelectorAthenaPool.
Definition at line 153 of file DoubleEventSelectorAthenaPool.cxx.
|
privateinherited |
Reinitialize the service when a fork()
occured/was-issued.
Definition at line 247 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
ctxt | [IN] current event context is released. |
Definition at line 795 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Set a selection criteria.
criteria | filter predicate (SQL-style WHERE clause) |
ctxt | [IN] current event context. |
Definition at line 799 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
ctxt | [IN/OUT] current event context is rewound to first event. |
Definition at line 762 of file EventSelectorAthenaPool.cxx.
|
overridevirtual |
Seek to a given event number.
ctxt | [IN/OUT] current event context. |
evtNum | [IN] The event number to which to seek. |
Reimplemented from EventSelectorAthenaPool.
Definition at line 127 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Request to share a given event number.
evtnum | [IN] The event number to share. |
Definition at line 949 of file EventSelectorAthenaPool.cxx.
|
overridevirtual |
Return the size of the collection.
ctxt | [IN/OUT] current event context. |
Reimplemented from EventSelectorAthenaPool.
Definition at line 138 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Definition at line 370 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Definition at line 398 of file EventSelectorAthenaPool.cxx.
|
mutableprivateinherited |
Definition at line 171 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 172 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 173 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 174 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 198 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
flag to notify the EvSel that the inputs were changed and reinit() needs to be called ASAP
Definition at line 201 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
HelperTools, vector of names of AlgTools that are executed by the EventSelector.
Definition at line 211 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 234 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 235 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 242 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 176 of file EventSelectorAthenaPool.h.
|
privateinherited |
AttributeList SG key.
Definition at line 194 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 248 of file EventSelectorAthenaPool.h.
|
privateinherited |
CollectionTree, prefix of the collection TTree: default = "POOLContainer".
Definition at line 187 of file EventSelectorAthenaPool.h.
|
privateinherited |
CollectionType, type of the collection: default = "ImplicitROOT".
Definition at line 185 of file EventSelectorAthenaPool.h.
|
privateinherited |
Connection, connection string.
Definition at line 190 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 212 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 233 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 168 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 229 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 227 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 213 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 244 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 245 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 225 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 228 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 177 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 230 of file EventSelectorAthenaPool.h.
|
privateinherited |
InputCollections, vector with names of the input collections.
Definition at line 197 of file EventSelectorAthenaPool.h.
|
privateinherited |
IsSecondary, know if this is an instance of secondary event selector.
Definition at line 181 of file EventSelectorAthenaPool.h.
|
privateinherited |
KeepInputFilesOpen, boolean flag to keep files open after PoolCollection reaches end: default = false.
Needed for PilUp to run without PoolFileCatalog. Relies on POOL to close files when reaching DB_AGE_LIMIT.
Definition at line 208 of file EventSelectorAthenaPool.h.
|
privateinherited |
Make this instance a Streaming Client during first iteration automatically.
Definition at line 215 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 221 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 222 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 223 of file EventSelectorAthenaPool.h.
|
privateinherited |
ProcessMetadata, switch on firing of FileIncidents which will trigger processing of metadata: default = true.
Definition at line 183 of file EventSelectorAthenaPool.h.
|
privateinherited |
Query string passed to APR when opening DataHeader container (kind of useless).
Definition at line 204 of file EventSelectorAthenaPool.h.
|
privateinherited |
RefName, attribute name.
Definition at line 192 of file EventSelectorAthenaPool.h.
|
privateinherited |
The following are included for compatibility with McEventSelector and are not really used.
However runNo, oldRunNo and overrideRunNumberFromInput are used to reset run number for simulated events, needed to use condition
Definition at line 220 of file EventSelectorAthenaPool.h.
|
private |
Definition at line 67 of file DoubleEventSelectorAthenaPool.h.
|
private |
Definition at line 70 of file DoubleEventSelectorAthenaPool.h.
|
private |
Definition at line 65 of file DoubleEventSelectorAthenaPool.h.
|
privateinherited |
Skip Events - comma separated list of event to skip, ranges with '-': <start> - <end>
Definition at line 241 of file EventSelectorAthenaPool.h.
|
privateinherited |
SkipEvents, numbers of events to skip: default = 0.
Definition at line 238 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 239 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 250 of file EventSelectorAthenaPool.h.
|
private |
Definition at line 72 of file DoubleEventSelectorAthenaPool.h.
|
private |
Definition at line 73 of file DoubleEventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 231 of file EventSelectorAthenaPool.h.