![]() |
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. | |
| virtual | ~DoubleEventSelectorAthenaPool () |
| Destructor. | |
| virtual StatusCode | initialize () override |
| Initialize function. | |
| 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. | |
| virtual int | size (Context &ctxt) const override |
| Return the size of the collection. | |
| virtual void | handle (const Incident &incident) override |
| Incident service handle listening for BeginProcessing and EndProcessing. | |
| virtual StatusCode | start () override |
| virtual StatusCode | stop () override |
| virtual StatusCode | finalize () override |
| virtual StatusCode | createContext (IEvtSelector::Context *&ctxt) const override |
| create context | |
| 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. | |
| virtual int | curEvent (const Context &ctxt) const override |
| Return the current event number. | |
| virtual StatusCode | io_reinit () override |
Callback method to reinitialize the internal state of the component for I/O purposes (e.g. upon fork(2)). | |
| virtual StatusCode | io_finalize () override |
Callback method to finalize the internal state of the component for I/O purposes (e.g. before fork(2)). | |
Protected Member Functions | |
| virtual StatusCode | nextHandleFileTransition (IEvtSelector::Context &ctxt) const override |
| Handle file transition at the next iteration. | |
| virtual StatusCode | nextWithSkip (IEvtSelector::Context &ctxt) const override |
| Go to next event and skip if necessary. | |
| 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. | |
| virtual bool | disconnectIfFinished (const SG::SourceID &fid) const override |
| Disconnect DB if all events from the source FID were processed and the Selector moved to another file. | |
Private Types | |
| typedef std::mutex | CallMutex |
Private Member Functions | |
| virtual StatusCode | recordAttributeList () const override |
| Record AttributeList in StoreGate. | |
| StoreGateSvc * | eventStore () const |
| Return pointer to active event SG. | |
| StatusCode | reinit () const |
Reinitialize the service when a fork() occurred/was-issued. | |
| std::unique_ptr< pool::Collection > | getCollection (bool throwIncidents=false) const |
| Return pointer to new Collection. | |
| StatusCode | openCollection (std::string &inputCollection, std::unique_ptr< pool::Collection > &poolCollection, std::string *lastError=nullptr) const |
| Open a collection by name. | |
| void | disconnectCollection () const |
| Disconnect current collection DB if open. | |
| int | findEvent (int evtNum) const |
| Search for event with number evtNum. | |
| 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 {} |
| std::unique_ptr< pool::Collection > m_poolCollection | ATLAS_THREAD_SAFE {} |
| std::string m_curCollectionName | ATLAS_THREAD_SAFE |
| std::unique_ptr< pool::CollectionCursor > m_headerIterator | ATLAS_THREAD_SAFE {} |
| Guid m_guid | ATLAS_THREAD_SAFE {} |
| std::map< SG::SourceID, int > m_activeEventsPerSource | ATLAS_THREAD_SAFE |
| std::optional< InputFileIncidentGuard > m_inputFileGuard | ATLAS_THREAD_SAFE |
| RAII guard: guarantees a matching EndInputFile for every BeginInputFile. | |
| 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 | |
| ToolHandleArray< IAthenaSelectorTool > m_helperTools | ATLAS_THREAD_SAFE {this, "HelperTools", {}, ""} |
| HelperTools, vector of names of AlgTools that are executed by the EventSelector. | |
| 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, "ConversionService", "AthenaPoolCnvSvc", ""} |
| ServiceHandle< IPoolSvc > | m_poolSvc {this, "PoolSvc", "PoolSvc", ""} |
| 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. | |
| Gaudi::Property< bool > | m_processMetadata {this, "ProcessMetadata", true, ""} |
| ProcessMetadata, switch on firing of FileIncidents which will trigger processing of metadata: default = true. | |
| std::string | m_attrListKey {"Input"} |
| AttributeList SG key. | |
| Gaudi::Property< std::vector< std::string > > | m_inputCollectionsProp {this, "InputCollections", {}, ""} |
| InputCollections, vector with names of the input collections. | |
| Gaudi::Property< bool > | m_keepInputFilesOpen {this, "KeepInputFilesOpen", false, ""} |
| KeepInputFilesOpen, boolean flag to keep files open after PoolCollection reaches end: default = false. | |
| ToolHandle< IAthenaSelectorTool > | m_counterTool {this, "CounterTool", "", ""} |
| Gaudi::CheckedProperty< uint32_t > | m_runNo {this, "RunNumber", 0, ""} |
| The following are included for compatibility with McEventSelector and are not really used. | |
| Gaudi::CheckedProperty< uint32_t > | m_oldRunNo {this, "OldRunNumber", 0, ""} |
| Gaudi::Property< bool > | m_overrideRunNumber {this, "OverrideRunNumber", false, ""} |
| Gaudi::Property< bool > | m_overrideRunNumberFromInput {this, "OverrideRunNumberFromInput", false, ""} |
| Gaudi::CheckedProperty< uint64_t > | m_firstEventNo {this, "FirstEvent", 1, ""} |
| Gaudi::CheckedProperty< uint64_t > | m_eventsPerRun {this, "EventsPerRun", 1000000, ""} |
| Gaudi::CheckedProperty< uint32_t > | m_firstLBNo {this, "FirstLB", 0, ""} |
| Gaudi::CheckedProperty< uint32_t > | m_eventsPerLB {this, "EventsPerLB", 1000, ""} |
| Gaudi::CheckedProperty< uint32_t > | m_initTimeStamp {this, "InitialTimeStamp", 0, ""} |
| Gaudi::Property< uint32_t > | 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. | |
| 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>. | |
| 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 227 of file EventSelectorAthenaPool.h.
| DoubleEventSelectorAthenaPool::DoubleEventSelectorAthenaPool | ( | const std::string & | name, |
| ISvcLocator * | pSvcLocator ) |
Standard Service Constructor.
Definition at line 23 of file DoubleEventSelectorAthenaPool.cxx.
|
virtual |
|
overridevirtualinherited |
| ctxt | [IN] current event context. |
| iop | [OUT] pointer to IOpaqueAddress reference of selection context. |
Definition at line 556 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
create context
Definition at line 336 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Return the current event number.
| ctxt | [IN/OUT] current event context. |
Definition at line 650 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Disconnect current collection DB if open.
Definition at line 722 of file EventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Disconnect DB if all events from the source FID were processed and the Selector moved to another file.
Definition at line 912 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Return pointer to active event SG.
Definition at line 69 of file EventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Fill AttributeList with specific items from the selector and a suffix.
Definition at line 790 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Definition at line 318 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Search for event with number evtNum.
Definition at line 658 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Return pointer to new Collection.
Definition at line 733 of file EventSelectorAthenaPool.cxx.
|
overridevirtual |
Incident service handle listening for BeginProcessing and EndProcessing.
Reimplemented from EventSelectorAthenaPool.
Definition at line 191 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtual |
Initialize function.
Reimplemented from EventSelectorAthenaPool.
Definition at line 32 of file DoubleEventSelectorAthenaPool.cxx.
|
privateinherited |
Definition at line 60 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 857 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 816 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
| ctxt | [IN/OUT] current event context is interated to last event. |
Definition at line 542 of file EventSelectorAthenaPool.cxx.
|
overridevirtual |
| ctxt | [IN/OUT] current event context is interated to next event. |
Reimplemented from EventSelectorAthenaPool.
Definition at line 45 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 105 of file DoubleEventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Handle file transition at the next iteration.
Definition at line 414 of file EventSelectorAthenaPool.cxx.
|
overrideprotectedvirtualinherited |
Go to next event and skip if necessary.
Definition at line 489 of file EventSelectorAthenaPool.cxx.
|
privateinherited |
Open a collection by name.
Definition at line 697 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
| ctxt | [IN/OUT] current event context is interated to previous event. |
Definition at line 527 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 532 of file EventSelectorAthenaPool.cxx.
|
overrideprivatevirtual |
Record AttributeList in StoreGate.
Reimplemented from EventSelectorAthenaPool.
Definition at line 148 of file DoubleEventSelectorAthenaPool.cxx.
|
privateinherited |
Reinitialize the service when a fork() occurred/was-issued.
Definition at line 181 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
| ctxt | [IN] current event context is released. |
Definition at line 579 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Set a selection criteria.
| criteria | filter predicate (SQL-style WHERE clause) |
| ctxt | [IN] current event context. |
Definition at line 583 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
| ctxt | [IN/OUT] current event context is rewound to first event. |
Definition at line 550 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 122 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtual |
Return the size of the collection.
| ctxt | [IN/OUT] current event context. |
Reimplemented from EventSelectorAthenaPool.
Definition at line 133 of file DoubleEventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Definition at line 284 of file EventSelectorAthenaPool.cxx.
|
overridevirtualinherited |
Definition at line 305 of file EventSelectorAthenaPool.cxx.
|
mutableprivateinherited |
Definition at line 222 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 215 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 214 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
HelperTools, vector of names of AlgTools that are executed by the EventSelector.
Definition at line 194 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 187 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 184 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
RAII guard: guarantees a matching EndInputFile for every BeginInputFile.
Definition at line 167 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 165 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 164 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 163 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 162 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 161 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 169 of file EventSelectorAthenaPool.h.
|
privateinherited |
|
mutableprivateinherited |
Definition at line 228 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 195 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 213 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 160 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 209 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 207 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 224 of file EventSelectorAthenaPool.h.
|
mutableprivateinherited |
Definition at line 225 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 205 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 208 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 171 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 210 of file EventSelectorAthenaPool.h.
|
privateinherited |
InputCollections, vector with names of the input collections.
Definition at line 183 of file EventSelectorAthenaPool.h.
|
privateinherited |
IsSecondary, know if this is an instance of secondary event selector.
Definition at line 175 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 191 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 201 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 202 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 203 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 170 of file EventSelectorAthenaPool.h.
|
privateinherited |
ProcessMetadata, switch on firing of FileIncidents which will trigger processing of metadata: default = true.
Definition at line 177 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 200 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 221 of file EventSelectorAthenaPool.h.
|
privateinherited |
SkipEvents, numbers of events to skip: default = 0.
Definition at line 218 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 219 of file EventSelectorAthenaPool.h.
|
privateinherited |
Definition at line 230 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 211 of file EventSelectorAthenaPool.h.