ATLAS Offline Software
PFlowAugmentationTool.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // PFlowAugmentationTool.h
9 
10 #ifndef DERIVATIONFRAMEWORK_PFLOWAUGMENTATIONTOOL_H
11 #define DERIVATIONFRAMEWORK_PFLOWAUGMENTATIONTOOL_H
12 
13 #include <string>
14 #include <vector>
15 
18 #include "GaudiKernel/ToolHandle.h"
19 
21 
22 #include "xAODTracking/Vertex.h"
26 
27 namespace DerivationFramework {
28 
29  class PFlowAugmentationTool : public extends<AthAlgTool, IAugmentationTool> {
30  public:
31 
32  using base_class::base_class;
33 
34  virtual StatusCode initialize() override final;
35  virtual StatusCode addBranches(const EventContext& ctx) const override final;
36 
37  private:
38 
39  PublicToolHandle<CP::IWeightPFOTool> m_weightPFOTool{this, "WeightPFOTool", "CP::WeightPFOTool/WeightPFOTool"};
40 
41  SG::ReadHandleKey<xAOD::VertexContainer> m_vertexContainer_key{this, "VertexContainer", "PrimaryVertices", "Input vertex container"};
42  SG::ReadHandleKey<xAOD::FlowElementContainer> m_pfoContainer_key{this, "GlobalChargedParticleFlowObjects", "GlobalChargedParticleFlowObjects", "Input charged PFO"};
43 
44  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_corrP4_ptKey {this, "m_corrP4_ptKey", m_pfoContainer_key, "DFCommonPFlow_CaloCorrectedPt", "Decoration for weighted charged PFO pt"};
45  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_z0Key {this, "m_z0Key", m_pfoContainer_key, "DFCommonPFlow_z0", "Decoration for track z0"};
46  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_vzKey{this, "m_vzKey", m_pfoContainer_key, "DFCommonPFlow_vz", "Decoration for track vz"};
47  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_d0Key{this, "m_d0Key", m_pfoContainer_key, "DFCommonPFlow_d0", "Decoration for track d0"};
48  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_thetaKey{this, "m_thetaKey", m_pfoContainer_key, "DFCommonPFlow_theta", "Decoration for track theta"};
49  SG::WriteDecorHandleKey<xAOD::FlowElementContainer> m_envWeightKey{this, "m_envWeightKey", m_pfoContainer_key, "DFCommonPFlow_envWeight", "Decoration for weight for dense environments"};
50 
51  };
52 }
53 
54 #endif // DERIVATIONFRAMEWORK_PFLOWAUGMENTATIONTOOL_H
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
FlowElementContainer.h
DerivationFramework::PFlowAugmentationTool::m_z0Key
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_z0Key
Definition: PFlowAugmentationTool.h:45
IAugmentationTool.h
DerivationFramework::PFlowAugmentationTool::m_pfoContainer_key
SG::ReadHandleKey< xAOD::FlowElementContainer > m_pfoContainer_key
Definition: PFlowAugmentationTool.h:42
DerivationFramework::PFlowAugmentationTool::m_thetaKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_thetaKey
Definition: PFlowAugmentationTool.h:48
DerivationFramework::PFlowAugmentationTool::addBranches
virtual StatusCode addBranches(const EventContext &ctx) const override final
Definition: PFlowAugmentationTool.cxx:32
DerivationFramework::PFlowAugmentationTool::initialize
virtual StatusCode initialize() override final
Definition: PFlowAugmentationTool.cxx:17
IWeightPFOTool.h
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
DerivationFramework::PFlowAugmentationTool::m_corrP4_ptKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_corrP4_ptKey
Definition: PFlowAugmentationTool.h:44
DerivationFramework::PFlowAugmentationTool::m_weightPFOTool
PublicToolHandle< CP::IWeightPFOTool > m_weightPFOTool
Definition: PFlowAugmentationTool.h:39
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
DerivationFramework::PFlowAugmentationTool
Definition: PFlowAugmentationTool.h:29
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
Vertex.h
DerivationFramework::PFlowAugmentationTool::m_d0Key
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_d0Key
Definition: PFlowAugmentationTool.h:47
DerivationFramework::PFlowAugmentationTool::m_vertexContainer_key
SG::ReadHandleKey< xAOD::VertexContainer > m_vertexContainer_key
Definition: PFlowAugmentationTool.h:41
DerivationFramework::PFlowAugmentationTool::m_envWeightKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_envWeightKey
Definition: PFlowAugmentationTool.h:49
VertexContainer.h
DerivationFramework::PFlowAugmentationTool::m_vzKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_vzKey
Definition: PFlowAugmentationTool.h:46