![]() |
ATLAS Offline Software
|
#include <PileupFilterTool.h>
Public Member Functions | |
| PileupFilterTool (const std::string &type, const std::string &name, const IInterface *parent) | |
| Constructor with parameters: | |
| virtual | ~PileupFilterTool () |
| Destructor: | |
| StatusCode | buildMcAod (const McEventCollection *in, McEventCollection *out) |
| This method will check the validity of the input McEventCollection and build a filtered one from the strategy implemented by this concrete tool. | |
| StatusCode | initialize () |
| Athena Algorithm's Hooks. | |
| StatusCode | execute () |
| StatusCode | finalize () |
| 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 | sysInitialize () override |
| Perform system initialization for an algorithm. | |
| 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 |
Static Public Member Functions | |
| static const InterfaceID & | interfaceID () |
| Inline methods: | |
Protected Types | |
| typedef ToolHandle< IMcVtxFilterTool > | McVtxFilterTool_t |
| typedef ToolHandle< ITruthIsolationTool > | IsolTool_t |
Protected Member Functions | |
| PileupFilterTool () | |
| Default constructor: | |
| StatusCode | selectSpclMcBarcodes () |
| Retrieve the GenParticles from the GenEvent object (located into the McEventCollection container), filter them and store their barcode into the list of barcodes of particles to keep. | |
| StatusCode | shapeGenEvent (McEventCollection *outEvt) |
| Build the out McEventCollection by removing all the GenParticles whose barcode is not in the list of barcodes to keep. | |
| StatusCode | reconnectParticles (const McEventCollection *inEvt, McEventCollection *out) |
| Reconnect the particles of the filtered McEventCollection. | |
| StatusCode | rebuildLinks (const HepMC::GenEvent *mcEvent, HepMC::GenEvent *outEvt, const HepMC::GenParticlePtr &mcPart) |
| Rebuild the links between particles which were connected, eg by a long FSR chain. | |
| StatusCode | initializeTool () |
| to get tesIO | |
| virtual StatusCode | finalizeTool () |
| 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. | |
Protected Attributes | |
| std::set< HepMC::ConstGenParticlePtr > | m_particles |
| List of particles which have been labelled as "special". | |
| DoubleProperty | m_rIsol |
| deltaR isolation energy cut for electrons, muons, taus and photons | |
| DoubleProperty | m_ptGamMin |
| Minimum threshold for transverse momentum of photons. | |
| DoubleProperty | m_ptMin |
| Minimum threshold for transverse momentum for all particles. | |
| DoubleProperty | m_etaRange |
| Eta acceptance cut applied on all stable particles. | |
| DoubleProperty | m_rRange |
| Radius acceptance cut on all stable particles. | |
| BooleanProperty | m_includeSimul |
| Switch to include or not particles from detector simulation (Geant4) | |
| BooleanProperty | m_includePartonShowers |
| Switch to include or not parton showers. | |
| TruthHelper::GenAccessIO * | m_tesIO |
| Pointer to a StoreGateSvc helper (Mc particle retrieval with predicates) | |
| BooleanProperty | m_removeDecayToSelf |
| Switch to remove particles which decay into themselves (t->tg) but only for generated particles, not the ones from the Geant4 interactions. | |
| McVtxFilterTool_t | m_mcVtxFilterTool |
| Pointer to the McVtxFilterTool to be able to select additional vertices on some decay pattern criterion. | |
| IsolTool_t | m_isolationTool |
| Pointer to the TruthIsolationTool to be able to compute transverse energy isolations for various isolation cones cuts. | |
| BooleanProperty | m_doEtIsolation |
Switch to compute or not the Et-isolations for TruthParticle (and their underlying HepMC::GenParticle). | |
| SG::ReadHandleKey< McEventCollection > | m_mcEventsReadHandleKey {this,"McEvents","TruthEvent","ReadHandleKey for input McEventCollection one wants to filter"} |
| ReadHandleKey for the input McEventCollection one wants to filter. | |
| SG::WriteHandleKey< McEventCollection > | m_mcEventsOutputWriteHandleKey {this,"McEventsOutput","GEN_AOD","WriteHandleKey for the output McEventCollection which has been filtered"} |
| Location of the output McEventCollection which has been filtered. | |
Private Types | |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Private Attributes | |
| 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 |
Definition at line 28 of file PileupFilterTool.h.
|
protectedinherited |
Definition at line 80 of file TruthParticleFilterBaseTool.h.
|
protectedinherited |
Definition at line 74 of file TruthParticleFilterBaseTool.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
| PileupFilterTool::PileupFilterTool | ( | const std::string & | type, |
| const std::string & | name, | ||
| const IInterface * | parent ) |
Constructor with parameters:
Definition at line 41 of file PileupFilterTool.cxx.
|
virtual |
|
protected |
Default constructor:
|
virtual |
This method will check the validity of the input McEventCollection and build a filtered one from the strategy implemented by this concrete tool.
Implements ITruthParticleFilterTool.
Definition at line 103 of file PileupFilterTool.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.
|
virtualinherited |
Implements ITruthParticleFilterTool.
Definition at line 120 of file TruthParticleFilterBaseTool.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
|
virtualinherited |
Implements ITruthParticleFilterTool.
Definition at line 105 of file TruthParticleFilterBaseTool.cxx.
|
inlineprotectedvirtualinherited |
Definition at line 124 of file TruthParticleFilterBaseTool.h.
|
virtualinherited |
Athena Algorithm's Hooks.
Retrieves a private AlgTool to filter a McEventCollection
Retrieves the isolation tool (public, to be used also in TruthParticleCnvTool)
Implements ITruthParticleFilterTool.
Definition at line 65 of file TruthParticleFilterBaseTool.cxx.
|
protectedvirtual |
to get tesIO
Reimplemented from TruthParticleFilterBaseTool.
Definition at line 616 of file PileupFilterTool.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.
|
inlinestaticinherited |
Inline methods:
Definition at line 70 of file ITruthParticleFilterTool.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.
|
protected |
Rebuild the links between particles which were connected, eg by a long FSR chain.
Definition at line 421 of file PileupFilterTool.cxx.
|
protected |
Reconnect the particles of the filtered McEventCollection.
We need the original McEventCollection to know if 2 particles were connected
Definition at line 376 of file PileupFilterTool.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.
|
protected |
Retrieve the GenParticles from the GenEvent object (located into the McEventCollection container), filter them and store their barcode into the list of barcodes of particles to keep.
skip stuff with no end-vertex
stable particles
Definition at line 142 of file PileupFilterTool.cxx.
|
protected |
Build the out McEventCollection by removing all the GenParticles whose barcode is not in the list of barcodes to keep.
Remove also the dead vertices.
Definition at line 238 of file PileupFilterTool.cxx.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.
|
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.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
protectedinherited |
Switch to compute or not the Et-isolations for TruthParticle (and their underlying HepMC::GenParticle).
Default is to not compute these Et-isolations (and save CPU)
Definition at line 94 of file TruthParticleFilterBaseTool.h.
|
protected |
Eta acceptance cut applied on all stable particles.
Definition at line 118 of file PileupFilterTool.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
protected |
Switch to include or not parton showers.
Definition at line 130 of file PileupFilterTool.h.
|
protected |
Switch to include or not particles from detector simulation (Geant4)
Definition at line 126 of file PileupFilterTool.h.
|
protectedinherited |
Pointer to the TruthIsolationTool to be able to compute transverse energy isolations for various isolation cones cuts.
See McParticleEvent/TruthParticleParameters.h for cone cuts.
Definition at line 85 of file TruthParticleFilterBaseTool.h.
|
protectedinherited |
Location of the output McEventCollection which has been filtered.
Definition at line 104 of file TruthParticleFilterBaseTool.h.
|
protectedinherited |
ReadHandleKey for the input McEventCollection one wants to filter.
Definition at line 100 of file TruthParticleFilterBaseTool.h.
|
protectedinherited |
Pointer to the McVtxFilterTool to be able to select additional vertices on some decay pattern criterion.
Definition at line 78 of file TruthParticleFilterBaseTool.h.
|
protected |
List of particles which have been labelled as "special".
Definition at line 101 of file PileupFilterTool.h.
|
protected |
Minimum threshold for transverse momentum of photons.
Definition at line 109 of file PileupFilterTool.h.
|
protected |
Minimum threshold for transverse momentum for all particles.
Warning: this cut is applied before Pt photon cut !
Definition at line 114 of file PileupFilterTool.h.
|
protected |
Switch to remove particles which decay into themselves (t->tg) but only for generated particles, not the ones from the Geant4 interactions.
Definition at line 139 of file PileupFilterTool.h.
|
protected |
deltaR isolation energy cut for electrons, muons, taus and photons
Definition at line 105 of file PileupFilterTool.h.
|
protected |
Radius acceptance cut on all stable particles.
Definition at line 122 of file PileupFilterTool.h.
|
protected |
Pointer to a StoreGateSvc helper (Mc particle retrieval with predicates)
Definition at line 134 of file PileupFilterTool.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.