ATLAS Offline Software
MergedElectronDetailsDecorator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // Tool to decorate the Electrons object with additional information for merged electron ID
6 // Authors: A.Morley
7 
8 #ifndef DerivationFrameworkHiggs_MergedElectronDetailsDecorator_H
9 #define DerivationFrameworkHiggs_MergedElectronDetailsDecorator_H
10 
11 #include <string>
12 #include <vector>
13 #include <TEnv.h>
14 #include <TString.h>
15 #include <TSystem.h>
16 
18 #include "GaudiKernel/ToolHandle.h"
21 
25 #include "xAODEventInfo/EventInfo.h"
26 
27 namespace Trk{
28  class V0Tools;
29  class IVertexFitter;
30 }
31 
32 
34 
35 namespace DerivationFramework {
36 
38 
39  public:
40  MergedElectronDetailsDecorator(const std::string& t, const std::string& n, const IInterface* p);
44  virtual StatusCode addBranches() const;
45 
46  private:
47 
48  void fillMatchDetails( std::vector<float>& trkMatchTrk, const xAOD::TrackParticle* tp, const xAOD::CaloCluster* cluster) const;
49  static int nSiHits( const xAOD::TrackParticle * tp ) ;
50  void fillTrackDetails(const xAOD::Electron* el, bool isMC) const;
51  void fillVertexDetails(const xAOD::Electron* el) const;
52  static void fillClusterDetails(const xAOD::Electron* el) ;
53  void fillTruthDetails( std::vector<float>& trkMatchTrk, const xAOD::TrackParticle* tp, const xAOD::CaloCluster* cluster) const;
54 
55  ToolHandle<IEMExtrapolationTools> m_emExtrapolationTool;
56  ToolHandle<Trk::IVertexFitter> m_VertexFitter;
57  ToolHandle<Trk::V0Tools> m_V0Tools;
58 
59  float m_minET;
60 
62  "EventInfoKey",
63  "EventInfo",
64  "" };
66  "ElectronKey",
67  "Electrons",
68  "" };
70  this,
71  "CaloDetDescrManager",
72  "CaloDetDescrManager"
73  };
74 
75  };
76 
77 }
78 
79 #endif
DerivationFramework::MergedElectronDetailsDecorator::m_VertexFitter
ToolHandle< Trk::IVertexFitter > m_VertexFitter
Definition: MergedElectronDetailsDecorator.h:56
DerivationFramework::MergedElectronDetailsDecorator::~MergedElectronDetailsDecorator
~MergedElectronDetailsDecorator()
Definition: MergedElectronDetailsDecorator.cxx:40
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
DerivationFramework::MergedElectronDetailsDecorator::addBranches
virtual StatusCode addBranches() const
Pass the thinning service
Definition: MergedElectronDetailsDecorator.cxx:76
DerivationFramework::MergedElectronDetailsDecorator::MergedElectronDetailsDecorator
MergedElectronDetailsDecorator(const std::string &t, const std::string &n, const IInterface *p)
Definition: MergedElectronDetailsDecorator.cxx:26
IAugmentationTool.h
DerivationFramework::MergedElectronDetailsDecorator::m_electronKey
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronKey
Definition: MergedElectronDetailsDecorator.h:65
ParticleTest.tp
tp
Definition: ParticleTest.py:25
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
SG::ReadHandleKey< xAOD::EventInfo >
DerivationFramework::MergedElectronDetailsDecorator
Definition: MergedElectronDetailsDecorator.h:37
DerivationFramework::MergedElectronDetailsDecorator::m_V0Tools
ToolHandle< Trk::V0Tools > m_V0Tools
Definition: MergedElectronDetailsDecorator.h:57
DerivationFramework::IAugmentationTool
Definition: IAugmentationTool.h:24
CaloDetDescrManager.h
Definition of CaloDetDescrManager.
DerivationFramework::MergedElectronDetailsDecorator::m_emExtrapolationTool
ToolHandle< IEMExtrapolationTools > m_emExtrapolationTool
Definition: MergedElectronDetailsDecorator.h:55
DerivationFramework::MergedElectronDetailsDecorator::initialize
StatusCode initialize()
Definition: MergedElectronDetailsDecorator.cxx:43
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition: CaloCluster_v1.h:59
ElectronContainer.h
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
plotIsoValidation.el
el
Definition: plotIsoValidation.py:197
DerivationFramework::MergedElectronDetailsDecorator::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: MergedElectronDetailsDecorator.h:61
DerivationFramework::MergedElectronDetailsDecorator::m_minET
float m_minET
Definition: MergedElectronDetailsDecorator.h:59
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::MergedElectronDetailsDecorator::fillTruthDetails
void fillTruthDetails(std::vector< float > &trkMatchTrk, const xAOD::TrackParticle *tp, const xAOD::CaloCluster *cluster) const
Definition: MergedElectronDetailsDecorator.cxx:100
DerivationFramework::MergedElectronDetailsDecorator::nSiHits
static int nSiHits(const xAOD::TrackParticle *tp)
Definition: MergedElectronDetailsDecorator.cxx:208
DerivationFramework::MergedElectronDetailsDecorator::fillTrackDetails
void fillTrackDetails(const xAOD::Electron *el, bool isMC) const
Definition: MergedElectronDetailsDecorator.cxx:219
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
DerivationFramework::MergedElectronDetailsDecorator::fillVertexDetails
void fillVertexDetails(const xAOD::Electron *el) const
Definition: MergedElectronDetailsDecorator.cxx:315
xAOD::Electron_v1
Definition: Electron_v1.h:34
V0Tools
EventInfo.h
IEMExtrapolationTools
Definition: IEMExtrapolationTools.h:28
SG::ReadCondHandleKey< CaloDetDescrManager >
CaloClusterContainer.h
DerivationFramework::MergedElectronDetailsDecorator::fillClusterDetails
static void fillClusterDetails(const xAOD::Electron *el)
Definition: MergedElectronDetailsDecorator.cxx:286
EventInfoRead.isMC
isMC
Definition: EventInfoRead.py:11
DerivationFramework::MergedElectronDetailsDecorator::finalize
StatusCode finalize()
Definition: MergedElectronDetailsDecorator.cxx:72
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
DerivationFramework::MergedElectronDetailsDecorator::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Definition: MergedElectronDetailsDecorator.h:69
AthAlgTool
Definition: AthAlgTool.h:26
TrackParticleContainer.h
DerivationFramework::MergedElectronDetailsDecorator::fillMatchDetails
void fillMatchDetails(std::vector< float > &trkMatchTrk, const xAOD::TrackParticle *tp, const xAOD::CaloCluster *cluster) const
Definition: MergedElectronDetailsDecorator.cxx:131