ATLAS Offline Software
egammaTraversedMaterialFillerTool.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4 */
12 #ifndef EGAMMAD3PDMAKER_EGAMMATRAVERSEDMATERIALFILLERTOOL_H
13 #define EGAMMAD3PDMAKER_EGAMMATRAVERSEDMATERIALFILLERTOOL_H
14 
16 #include "xAODEgamma/Electron.h"
17 #include "xAODEgamma/Photon.h"
18 #include "xAODEgamma/Egamma.h"
20 #include "GaudiKernel/ToolHandle.h"
22 #include <string>
23 
25 namespace Trk { class IExtrapolator; }
26 
27 namespace D3PD {
28 
29 
34  : public BlockFillerTool<Types<xAOD::Electron, xAOD::Photon> >
35 {
36 public:
38 
39 
46  egammaTraversedMaterialFillerTool (const std::string& type,
47  const std::string& name,
48  const IInterface* parent);
49 
51 
52  virtual StatusCode initialize() override;
53 
55  virtual StatusCode book() final;
56 
57 
66  virtual StatusCode fill (const xAOD::Electron& p) override;
67 
68 
77  virtual StatusCode fill (const xAOD::Photon& p) override;
78 
79 
80 private:
88 
92 
94  ToolHandle<Trk::IExtrapolator> m_extrapolator;
95 
98 
99  SG::ReadCondHandleKey<CaloDetDescrManager> m_caloMgrKey{
100  this,
101  "CaloDetDescrManager",
102  "CaloDetDescrManager"
103  };
104 
106  float m_minPt;
107 };
108 
109 
110 } // namespace D3PD
111 
112 
113 #endif // EGAMMAD3PDMAKER_EGAMMATRAVERSEDMATERIALFILLERTOOL_H
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
TrackParameters.h
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
ParticleTest.eg
eg
Definition: ParticleTest.py:29
Egamma
Definition: ClusMomentumPlots.cxx:11
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
D3PD::egammaTraversedMaterialFillerTool::~egammaTraversedMaterialFillerTool
virtual ~egammaTraversedMaterialFillerTool()
Definition: egammaTraversedMaterialFillerTool.cxx:57
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
D3PD::egammaTraversedMaterialFillerTool::m_materialTraversed
float * m_materialTraversed
Variable: Material traversed between vertex (conversion vertex) and the entrance of the calorimeter (...
Definition: egammaTraversedMaterialFillerTool.h:91
ICaloSurfaceBuilder
Definition: ICaloSurfaceBuilder.h:44
Photon
Class describing an photon
CaloDetDescrManager.h
Definition of CaloDetDescrManager.
xAOD::TrackParameters
TrackParameters_v1 TrackParameters
Definition: Event/xAOD/xAODTracking/xAODTracking/TrackParameters.h:11
BlockFillerTool.h
Type-safe wrapper for block filler tools.
Egamma.h
D3PD
Block filler tool for noisy FEB information.
Definition: InnerDetector/InDetMonitoring/InDetGlobalMonitoring/macros/EnhancedPrimaryVertexMonitoring/TrigD3PD/ChainGroup.h:21
D3PD::egammaTraversedMaterialFillerTool::m_extrapolator
ToolHandle< Trk::IExtrapolator > m_extrapolator
Property: The extrapolator tool.
Definition: egammaTraversedMaterialFillerTool.h:94
Photon.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
test_pyathena.parent
parent
Definition: test_pyathena.py:15
D3PD::BlockFillerTool
Type-safe wrapper for block filler tools.
Definition: BlockFillerTool.h:68
D3PD::egammaTraversedMaterialFillerTool::fill
virtual StatusCode fill(const xAOD::Electron &p) override
Fill one block — type-safe version.
Definition: egammaTraversedMaterialFillerTool.cxx:90
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
D3PD::egammaTraversedMaterialFillerTool::Base
BlockFillerTool< Types< xAOD::Electron, xAOD::Photon > > Base
Definition: egammaTraversedMaterialFillerTool.h:37
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
D3PD::egammaTraversedMaterialFillerTool::egammaTraversedMaterialFillerTool
egammaTraversedMaterialFillerTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
Definition: egammaTraversedMaterialFillerTool.cxx:35
D3PD::egammaTraversedMaterialFillerTool::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Definition: egammaTraversedMaterialFillerTool.h:99
D3PD::egammaTraversedMaterialFillerTool::book
virtual StatusCode book() final
Book variables for this block.
Definition: egammaTraversedMaterialFillerTool.cxx:72
D3PD::egammaTraversedMaterialFillerTool::m_minPt
float m_minPt
Property: Minimum track pT to do the extrapolation.
Definition: egammaTraversedMaterialFillerTool.h:106
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition: CaloDetDescrManager.h:473
D3PD::egammaTraversedMaterialFillerTool::m_caloSurfaceBuilder
ToolHandle< ICaloSurfaceBuilder > m_caloSurfaceBuilder
Property: CaloSurfaceBuilder tool.
Definition: egammaTraversedMaterialFillerTool.h:97
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Electron
Class describing an electron.
physics_parameters.parameters
parameters
Definition: physics_parameters.py:144
Electron.h
D3PD::egammaTraversedMaterialFillerTool::initialize
virtual StatusCode initialize() override
Definition: egammaTraversedMaterialFillerTool.cxx:61
D3PD::egammaTraversedMaterialFillerTool
Block filler tool for the material traversed by a photon/electron until the entrance of the calorimet...
Definition: egammaTraversedMaterialFillerTool.h:35