![]() |
ATLAS Offline Software
|
This AthReentrantAlgorithm reads in the McEventCollection produced by the generator and writes out an updated McEventCollection for use by simulation. More...
#include <BeamEffectsAlg.h>
Public Member Functions | |
| BeamEffectsAlg (const std::string &name, ISvcLocator *pSvcLocator) | |
| virtual | ~BeamEffectsAlg ()=default |
| Destructor. | |
| virtual StatusCode | initialize () override final |
| Athena algorithm's interface method initialize() | |
| virtual StatusCode | execute (const EventContext &ctx) const override final |
| Athena algorithm's interface method execute() | |
| virtual bool | isClonable () const override final |
| Can clone for AthenaMT. | |
| virtual StatusCode | sysInitialize () override |
| Override sysInitialize. | |
| virtual unsigned int | cardinality () const override |
| Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant. | |
| virtual StatusCode | sysExecute (const EventContext &ctx) override |
| Execute an algorithm. | |
| virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. | |
| virtual bool | filterPassed (const EventContext &ctx) const |
| virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
| ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. | |
| const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. | |
| virtual StatusCode | sysStart () override |
| Handle START transition. | |
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. | |
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
Protected Member Functions | |
| void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution | |
| std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
| void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. | |
Private Types | |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| StatusCode | patchSignalProcessVertex (HepMC::GenEvent &ge) const |
| Ensure that the GenEvent::signal_process_vertex has been set. | |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Private Attributes | |
| SG::ReadHandleKey< McEventCollection > | m_inputMcEventCollection {this, "InputMcEventCollection", "GEN_EVENT", "The name of the input McEventCollection"} |
| SG::WriteHandleKey< McEventCollection > | m_outputMcEventCollection {this, "OutputMcEventCollection", "BeamTruthEvent", "The name of the output McEventCollection"} |
| SG::ReadHandleKey< xAOD::EventInfo > | m_eventInfoKey {this, "EventInfo", "EventInfo", "The name of the input xAOD::EventInfo"} |
| ToolHandleArray< IGenEventManipulator > | m_genEventManipulators {this, "GenEventManipulators", {}, "BeamEffectsAlg will send the read-in GenEvent to each individual IGenEventManipulator."} |
| Event manipulator tools (executed in given order) | |
| Gaudi::Property< bool > | m_ISFRun {this, "ISFRun", false, "Temporary property so that we don't change the output in the initial switch to this code"} |
| Temporary property so that we don't change the output in the initial switch to this code. | |
| DataObjIDColl | m_extendedExtraObjects |
| Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks. | |
| StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) | |
| StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) | |
| std::vector< SG::VarHandleKeyArray * > | m_vhka |
| bool | m_varHandleArraysDeclared |
Friends | |
| class | SimTesting::BeamEffectsAlg_test |
This AthReentrantAlgorithm reads in the McEventCollection produced by the generator and writes out an updated McEventCollection for use by simulation.
The IGenEventManipulators are used to apply the effects of beam properties to the GenEvents.
Definition at line 39 of file BeamEffectsAlg.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
| Simulation::BeamEffectsAlg::BeamEffectsAlg | ( | const std::string & | name, |
| ISvcLocator * | pSvcLocator ) |
Definition at line 23 of file BeamEffectsAlg.cxx.
|
virtualdefault |
Destructor.
|
overridevirtualinherited |
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant.
Override this to return 0 for reentrant algorithms.
Definition at line 75 of file AthCommonReentrantAlgorithm.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
|
finaloverridevirtual |
Athena algorithm's interface method execute()
Definition at line 43 of file BeamEffectsAlg.cxx.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 94 of file AthCommonReentrantAlgorithm.cxx.
|
inlinevirtualinherited |
Definition at line 96 of file AthCommonReentrantAlgorithm.h.
|
finaloverridevirtual |
Athena algorithm's interface method initialize()
Definition at line 29 of file BeamEffectsAlg.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlinefinaloverridevirtual |
Can clone for AthenaMT.
Reimplemented from AthCommonReentrantAlgorithm< Gaudi::Algorithm >.
Definition at line 59 of file BeamEffectsAlg.h.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
private |
Ensure that the GenEvent::signal_process_vertex has been set.
Definition at line 69 of file BeamEffectsAlg.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
inlinevirtualinherited |
Definition at line 100 of file AthCommonReentrantAlgorithm.h.
|
overridevirtualinherited |
Execute an algorithm.
We override this in order to work around an issue with the Algorithm base class storing the event context in a member variable that can cause crashes in MT jobs.
Definition at line 85 of file AthCommonReentrantAlgorithm.cxx.
|
overridevirtualinherited |
Override sysInitialize.
Override sysInitialize from the base class.
Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc
Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc
Reimplemented from AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >.
Reimplemented in HypoBase, and InputMakerBase.
Definition at line 61 of file AthCommonReentrantAlgorithm.cxx.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
friend |
Definition at line 42 of file BeamEffectsAlg.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
private |
Definition at line 69 of file BeamEffectsAlg.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
privateinherited |
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
Empty if no symlinks were found.
Definition at line 114 of file AthCommonReentrantAlgorithm.h.
|
private |
Event manipulator tools (executed in given order)
Definition at line 72 of file BeamEffectsAlg.h.
|
private |
Definition at line 65 of file BeamEffectsAlg.h.
|
private |
Temporary property so that we don't change the output in the initial switch to this code.
Definition at line 75 of file BeamEffectsAlg.h.
|
private |
Definition at line 66 of file BeamEffectsAlg.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.