![]() |
ATLAS Offline Software
|
a stream of events read from different selectors. More...
#include <MixingEventSelector.h>
Classes | |
| class | Context |
| dummy for now More... | |
| class | Trigger |
| a selector with an associated frequency More... | |
| class | TriggerList |
| the list of available selectors with their frequency range More... | |
Public Member Functions | |
IEvtSelector implementation | |
| virtual StatusCode | next (IEvtSelector::Context &refCtxt) const override |
| virtual StatusCode | createAddress (const IEvtSelector::Context &refCtxt, IOpaqueAddress *&) const override |
| virtual StatusCode | createContext (IEvtSelector::Context *&refpCtxt) const override |
| virtual StatusCode | last (IEvtSelector::Context &) const override |
| virtual StatusCode | next (IEvtSelector::Context &, int) const override |
| virtual StatusCode | previous (IEvtSelector::Context &) const override |
| virtual StatusCode | previous (IEvtSelector::Context &, int) const override |
| virtual StatusCode | rewind (IEvtSelector::Context &refCtxt) const override |
| virtual StatusCode | releaseContext (IEvtSelector::Context *&refCtxt) const override |
| virtual StatusCode | resetCriteria (const std::string &cr, IEvtSelector::Context &c) const override |
IAddressProvider interface (forwarded to current Trigger) | |
| virtual StatusCode | preLoadAddresses (StoreID::type storeID, IAddressProvider::tadList &tads) override |
| virtual StatusCode | loadAddresses (StoreID::type storeID, IAddressProvider::tadList &tads) override |
| virtual StatusCode | updateAddress (StoreID::type storeID, SG::TransientAddress *tad, const EventContext &ctx) override |
IConverter implementation. | |
| virtual const CLID & | objType () const override |
| virtual long | repSvcType () const override |
| virtual StatusCode | createObj (IOpaqueAddress *pAddress, DataObject *&refpObject) override |
| Create the transient representation of an object. | |
| virtual StatusCode | setDataProvider (IDataProviderSvc *pService) override |
| virtual SmartIF< IDataProviderSvc > & | dataProvider () const override |
| virtual StatusCode | setConversionSvc (IConversionSvc *pService) override |
| virtual SmartIF< IConversionSvc > & | conversionSvc () const override |
| virtual StatusCode | setAddressCreator (IAddressCreator *creator) override |
| virtual SmartIF< IAddressCreator > & | addressCreator () const override |
| virtual StatusCode | fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject) override |
| virtual StatusCode | updateObj (IOpaqueAddress *pAddress, DataObject *refpObject) override |
| virtual StatusCode | updateObjRefs (IOpaqueAddress *pAddress, DataObject *pObject) override |
| virtual StatusCode | createRep (DataObject *pObject, IOpaqueAddress *&refpAddress) override |
| virtual StatusCode | fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) override |
| virtual StatusCode | updateRep (IOpaqueAddress *pAddress, DataObject *pObject) override |
| virtual StatusCode | updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) override |
Service implementation | |
| virtual StatusCode | initialize () override |
| virtual StatusCode | finalize () override |
| void | setUpTriggerList (Gaudi::Details::PropertyBase &trigList) |
| TriggerList property call-back. | |
| void | decodeTrigger (const std::string &triggDescr) |
| functor that creates a Trigger object and adds it to m_trigList | |
Private Attributes | |
Properties | |
| Gaudi::Property< std::string > | m_statusFileName |
| Gaudi::Property< std::vector< std::string > > | m_triggerListProp |
| Gaudi::Property< int > | m_outputRunNumber {this, "OutputRunNumber", 123456789} |
| Gaudi::Property< std::vector< unsigned long > > | m_eventNumbers |
| Gaudi::Property< std::string > | m_mergedEventInfoKey |
| Gaudi::Property< std::string > | m_randomStreamName |
| ToolHandleArray< IAthenaSelectorTool > | m_helperTools |
| ServiceHandle< IAtRndmGenSvc > | m_atRndmSvc |
| TriggerList | m_trigList |
| the ingredients | |
trigger list management | |
| TriggerList::iterator | m_pCurrentTrigger |
| the current trigger | |
| TriggerList::iterator | setCurrentTrigger () const |
| choose current trigger at random. Actually modifies state (use mutables) | |
| TriggerList::iterator | currentTrigger () const |
| "intelligent" accessor to the above | |
event number management | |
| unsigned long | m_eventPos {0} |
| the internal event number | |
| ServiceHandle< StoreGateSvc > | m_pEventStore |
| std::unique_ptr< CLHEP::RandFlat > | m_chooseRangeRand |
| unsigned long | getEventNo () const |
| setup and lookup m_evtsNotUsedSoFar. Returns next event no | |
structors | |
| MixingEventSelector (const std::string &name, ISvcLocator *svc) | |
| virtual | ~MixingEventSelector () |
| bool | validTrigger () const |
a stream of events read from different selectors.
Each source contains a particular event type ("trigger"). We want to mix the triggers according to a recipe specified via the "TriggerList" property
The algorithms downstream of the"mixer" will see events coming at random according to this admixture.
The "OutputRunNumber" property allows to assign a new run number to the events.
The event number can be randomized to mimic the behaviour of the processing farms. So
will shuffle the first 100 events, then move to the second hundred, etc
Definition at line 68 of file MixingEventSelector.h.
| MixingEventSelector::MixingEventSelector | ( | const std::string & | name, |
| ISvcLocator * | svc ) |
Definition at line 45 of file MixingEventSelector.cxx.
|
virtual |
Definition at line 52 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 543 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 535 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 218 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 170 of file MixingEventSelector.cxx.
|
overridevirtual |
Create the transient representation of an object.
The transient representation is created by loading the persistent object using the source information contained in the address.
| pAddress | Opaque address information to retrieve the requested object from the store in order to produce the transient object. |
| refpObject | Reference to location of pointer of the created object. |
Definition at line 496 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 559 of file MixingEventSelector.cxx.
|
private |
"intelligent" accessor to the above
Definition at line 296 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 527 of file MixingEventSelector.cxx.
| void MixingEventSelector::decodeTrigger | ( | const std::string & | triggDescr | ) |
functor that creates a Trigger object and adds it to m_trigList
Definition at line 112 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 547 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 563 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 81 of file MixingEventSelector.cxx.
|
private |
setup and lookup m_evtsNotUsedSoFar. Returns next event no
Definition at line 265 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 56 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 450 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 235 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 453 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 180 of file MixingEventSelector.cxx.
Definition at line 475 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 229 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 456 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 459 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 465 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 479 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 468 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 462 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 539 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 531 of file MixingEventSelector.cxx.
|
private |
choose current trigger at random. Actually modifies state (use mutables)
Definition at line 273 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 523 of file MixingEventSelector.cxx.
| void MixingEventSelector::setUpTriggerList | ( | Gaudi::Details::PropertyBase & | trigList | ) |
TriggerList property call-back.
Decode TriggerList, obtain selector ptrs and store them alongside fractions in m_trigList
Definition at line 103 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 258 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 551 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 555 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 567 of file MixingEventSelector.cxx.
|
overridevirtual |
Definition at line 571 of file MixingEventSelector.cxx.
|
inlineprivate |
Definition at line 151 of file MixingEventSelector.h.
|
private |
Definition at line 177 of file MixingEventSelector.h.
|
private |
Definition at line 276 of file MixingEventSelector.h.
|
private |
Definition at line 164 of file MixingEventSelector.h.
|
mutableprivate |
|
private |
Definition at line 174 of file MixingEventSelector.h.
|
private |
Definition at line 168 of file MixingEventSelector.h.
|
private |
Definition at line 162 of file MixingEventSelector.h.
|
mutableprivate |
the current trigger
Definition at line 265 of file MixingEventSelector.h.
|
private |
Definition at line 275 of file MixingEventSelector.h.
|
private |
Definition at line 171 of file MixingEventSelector.h.
|
private |
Definition at line 155 of file MixingEventSelector.h.
|
private |
Definition at line 158 of file MixingEventSelector.h.
|
mutableprivate |
the ingredients
Definition at line 259 of file MixingEventSelector.h.