ATLAS Offline Software
TruthDressingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef DERIVATIONFRAMEWORK_TRUTHDRESSINGTOOL_H
6 #define DERIVATIONFRAMEWORK_TRUTHDRESSINGTOOL_H
7 
8 #include <string>
9 
14 #include "Gaudi/Property.h"
15 #include "GaudiKernel/ToolHandle.h"
19 
20 namespace DerivationFramework {
21 
22  class TruthDressingTool : public extends<AthAlgTool, IAugmentationTool> {
23  public:
24 
25  using base_class::base_class;
26 
27  virtual StatusCode initialize() override final;
28  virtual StatusCode addBranches(const EventContext& ctx) const override final;
29 
30  private:
33  {this, "particlesKey", "TruthParticles", "ReadHandleKey for TruthParticles for photon list input"};
36  {this, "decorationName", m_particlesKey, "unusedPhotonDecoration", "Name of the decoration for photons that were used in dressing"};
39  {this, "dressParticlesKey", "", "ReadHandleKey for input particles to be dressed. If taus are selected, everything in this input key will be used"};
40  // WriteDecorHandleKeys for decorations for container of particles to be dressed
42  {this, "e_dressed", m_dressParticlesKey, "e_dressed", "e_dressed decoration"};
44  {this, "pt_dressed", m_dressParticlesKey, "pt_dressed", "pt_dressed decoration"};
46  {this, "eta_dressed", m_dressParticlesKey, "eta_dressed", "eta_dressed decoration"};
48  {this, "phi_dressed", m_dressParticlesKey, "phi_dressed", "phi_dressed decoration"};
50  {this, "pt_vis_dressed", m_dressParticlesKey, "pt_vis_dressed", "pt_vis_dressed decoration"};
52  {this, "eta_vis_dressed", m_dressParticlesKey, "eta_vis_dressed", "eta_vis_dressed decoration"};
54  {this, "phi_vis_dressed", m_dressParticlesKey, "phi_vis_dressed", "phi_vis_dressed decoration"};
56  {this, "m_vis_dressed", m_dressParticlesKey, "m_vis_dressed", "m_vis_dressed decoration"};
58  {this, "nPhotons_dressed", m_dressParticlesKey, "nPhotons_dressed", "nPhotons_dressed decoration"};
61 
63  Gaudi::Property<bool> m_usePhotonsFromHadrons
64  {this, "usePhotonsFromHadrons", false, "Add photons coming from hadron decays while dressing"};
66  Gaudi::Property<bool> m_useLeptonsFromHadrons
67  {this, "useLeptonsFromHadrons", false, "Consider leptons coming from hadron decays?"};
69  Gaudi::Property<float> m_coneSize
70  {this, "dressingConeSize", 0.1, "Size of dR cone in which to include FSR photons in dressing"};
72  Gaudi::Property< std::vector<int> > m_listOfPIDs
73  {this, "particleIDsToDress", {11,13}, "List of the pdgID's of particles to be dressed (usually 11,13). Special treatment for taus (15)"};
75  Gaudi::Property<bool> m_useAntiKt
76  {this, "useAntiKt", false, "use anti-k_T instead of fixed-cone dressing"};
78  Gaudi::Property<bool> m_decoratePhotons
79  {this, "decoratePhotons", true, "Do we want to decorate the photons used for dressing?"};
80  };
81 }
82 
83 #endif // DERIVATIONFRAMEWORK_TRUTHDRESSINGTool_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer >
DerivationFramework::TruthDressingTool::m_particlesKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_particlesKey
ReadHandleKey input collection key.
Definition: TruthDressingTool.h:33
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
IAugmentationTool.h
DerivationFramework::TruthDressingTool::m_useLeptonsFromHadrons
Gaudi::Property< bool > m_useLeptonsFromHadrons
Parameter: Use leptons from hadron decays?
Definition: TruthDressingTool.h:67
TruthParticleContainer.h
DerivationFramework::TruthDressingTool::m_listOfPIDs
Gaudi::Property< std::vector< int > > m_listOfPIDs
Parameter: List of pdgIDs of particles to dress.
Definition: TruthDressingTool.h:73
DerivationFramework::TruthDressingTool::m_decorator_nphotonKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_nphotonKey
Definition: TruthDressingTool.h:58
DerivationFramework::TruthDressingTool::m_dressParticlesKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_dressParticlesKey
ReadHandleKey for particles to be dressed.
Definition: TruthDressingTool.h:39
DerivationFramework::TruthDressingTool::m_coneSize
Gaudi::Property< float > m_coneSize
Parameter: Cone size for dressing.
Definition: TruthDressingTool.h:70
SG::ReadHandleKey< xAOD::TruthParticleContainer >
DerivationFramework::TruthDressingTool::addBranches
virtual StatusCode addBranches(const EventContext &ctx) const override final
Definition: TruthDressingTool.cxx:63
DerivationFramework::TruthDressingTool::m_decorator_m_visKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_m_visKey
Definition: TruthDressingTool.h:56
DerivationFramework::TruthDressingTool::m_decoratePhotons
Gaudi::Property< bool > m_decoratePhotons
Parameter: Do we want to decorate the photons used for dressing?
Definition: TruthDressingTool.h:79
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
DerivationFramework::TruthDressingTool::m_usePhotonsFromHadrons
Gaudi::Property< bool > m_usePhotonsFromHadrons
Parameter: Use photons from hadron decays?
Definition: TruthDressingTool.h:64
DerivationFramework::TruthDressingTool::m_decorator_phi_visKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_phi_visKey
Definition: TruthDressingTool.h:54
DerivationFramework::TruthDressingTool::m_decorator_phiKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_phiKey
Definition: TruthDressingTool.h:48
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
DerivationFramework::TruthDressingTool::m_truthClassKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_truthClassKey
To ensure that the algorithm is scheduled after the truth classifier.
Definition: TruthDressingTool.h:60
DerivationFramework::TruthDressingTool::m_useAntiKt
Gaudi::Property< bool > m_useAntiKt
Parameter: Use antikT algorithm for dressing?
Definition: TruthDressingTool.h:76
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::TruthDressingTool::initialize
virtual StatusCode initialize() override final
Definition: TruthDressingTool.cxx:32
DerivationFramework::TruthDressingTool::m_decorator_eta_visKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_eta_visKey
Definition: TruthDressingTool.h:52
DerivationFramework::TruthDressingTool::m_decorator_etaKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_etaKey
Definition: TruthDressingTool.h:46
DecayGraphHelper.h
DerivationFramework::TruthDressingTool::m_decorationKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorationKey
WriteDecorHandleKeys for decorations for particlesKey.
Definition: TruthDressingTool.h:36
DerivationFramework::TruthDressingTool
Definition: TruthDressingTool.h:22
DerivationFramework::TruthDressingTool::m_decorator_ptKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_ptKey
Definition: TruthDressingTool.h:44
DerivationFramework::TruthDressingTool::m_decorator_eKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_eKey
Definition: TruthDressingTool.h:42
DerivationFramework::TruthDressingTool::m_decorator_pt_visKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_decorator_pt_visKey
Definition: TruthDressingTool.h:50
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer >