ATLAS Offline Software
egammaSelectedTrackCopy.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 #ifndef EGAMMAALGS_EGAMMASELECTEDTRACKCOPY_H
6 #define EGAMMAALGS_EGAMMASELECTEDTRACKCOPY_H
7 
9 
11 #include "GaudiKernel/EventContext.h"
12 #include "GaudiKernel/ToolHandle.h"
17 
19 
25 
27 #include <Gaudi/Accumulators.h>
28 
30 
54 {
55 public:
57  egammaSelectedTrackCopy(const std::string& name, ISvcLocator* pSvcLocator);
58 
59  virtual StatusCode initialize() override final;
60  virtual StatusCode finalize() override final;
61  virtual StatusCode execute(const EventContext& ctx) const override final;
62 
63 private:
65  bool selectTrack(const EventContext& ctx,
66  const xAOD::CaloCluster* cluster,
68  bool trkTRT,
70 
73  this,
74  "ExtrapolationTool",
75  "EMExtrapolationTools",
76  "Extrapolation tool"
77  };
78 
80  ToolHandle<IegammaCaloClusterSelector> m_egammaCaloClusterSelector {
81  this,
82  "egammaCaloClusterSelector",
83  "egammaCaloClusterSelector",
84  "Tool that makes the cluster selection"
85  };
86 
89  this,
90  "ClusterContainerName",
91  "egammaTopoCluster",
92  "Input calo cluster for seeding"
93  };
94 
97  this,
98  "FwdClusterContainerName",
99  "",
100  "Input calo cluster for seeding"
101  };
102 
104  this,
105  "TrackParticleContainerName",
106  "InDetTrackParticles",
107  "Input TrackParticles to select from"
108  };
109 
111  this,
112  "TrackParticleTimeDecoration",
113  "",
114  "Time assigned to this track"};
115 
117  this,
118  "CaloDetDescrManager",
119  "CaloDetDescrManager",
120  "SG Key for CaloDetDescrManager in the Condition Store"
121  };
122 
124  this,
125  "OutputTrkPartContainerName",
126  "egammaSelectedTrackParticles",
127  "Output selected TrackParticles"
128  };
129 
131  Gaudi::Property<double> m_broadDeltaEta {
132  this,
133  "broadDeltaEta",
134  0.2,
135  "Value of broad cut for delta eta"
136  };
137 
138  Gaudi::Property<double> m_broadDeltaPhi {
139  this,
140  "broadDeltaPhi",
141  0.3,
142  "Value of broad cut for delta phi"
143  };
144 
146  Gaudi::Property<double> m_narrowDeltaEta{
147  this,
148  "narrowDeltaEta",
149  0.05,
150  "Value of narrow cut for delta eta"
151  };
152 
153  Gaudi::Property<double> m_narrowDeltaPhi{
154  this,
155  "narrowDeltaPhi",
156  0.05,
157  "Value of narrow cut for delta phi"
158  };
159 
160  Gaudi::Property<double> m_narrowDeltaPhiBrem{
161  this,
162  "narrowDeltaPhiBrem",
163  0.2,
164  "Value of the narrow cut for delta phi in the brem direction"
165  };
166 
167  Gaudi::Property<double> m_narrowRescale{
168  this,
169  "narrowDeltaPhiRescale",
170  0.05,
171  "Value of the narrow cut for delta phi Rescale"
172  };
173 
174  Gaudi::Property<double> m_narrowRescaleBrem{
175  this,
176  "narrowDeltaPhiRescaleBrem",
177  0.1,
178  "Value of the narrow cut for delta phi Rescale Brem"
179  };
180 
182  Gaudi::Property<bool> m_doForwardTracks {
183  this,
184  "doFwdTracks",
185  false,
186  "Boolean to select tracks in the forward region"
187  };
188 
189  mutable Gaudi::Accumulators::Counter<> m_AllClusters {};
190  mutable Gaudi::Accumulators::Counter<> m_AllFwdClusters {};
191  mutable Gaudi::Accumulators::Counter<> m_SelectedClusters {};
192  mutable Gaudi::Accumulators::Counter<> m_AllTracks {};
193  mutable Gaudi::Accumulators::Counter<> m_SelectedTracks {};
194  mutable Gaudi::Accumulators::Counter<> m_SelectedFwdTracks {};
195  mutable Gaudi::Accumulators::Counter<> m_AllSiTracks {};
196  mutable Gaudi::Accumulators::Counter<> m_SelectedSiTracks {};
197  mutable Gaudi::Accumulators::Counter<> m_AllTRTTracks {};
198  mutable Gaudi::Accumulators::Counter<> m_SelectedTRTTracks {};
199 };
200 #endif
201 
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
egammaSelectedTrackCopy::m_OutputTrkPartContainerKey
SG::WriteHandleKey< ConstDataVector< xAOD::TrackParticleContainer > > m_OutputTrkPartContainerKey
Definition: egammaSelectedTrackCopy.h:123
egammaSelectedTrackCopy::m_AllFwdClusters
Gaudi::Accumulators::Counter m_AllFwdClusters
Definition: egammaSelectedTrackCopy.h:190
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
egammaSelectedTrackCopy::m_narrowDeltaPhiBrem
Gaudi::Property< double > m_narrowDeltaPhiBrem
Definition: egammaSelectedTrackCopy.h:160
egammaSelectedTrackCopy
Definition: egammaSelectedTrackCopy.h:54
IegammaCaloClusterSelector.h
egammaSelectedTrackCopy::m_AllTRTTracks
Gaudi::Accumulators::Counter m_AllTRTTracks
Definition: egammaSelectedTrackCopy.h:197
ConstDataVector.h
DataVector adapter that acts like it holds const pointers.
egammaSelectedTrackCopy::initialize
virtual StatusCode initialize() override final
Definition: egammaSelectedTrackCopy.cxx:52
egammaSelectedTrackCopy::m_AllTracks
Gaudi::Accumulators::Counter m_AllTracks
Definition: egammaSelectedTrackCopy.h:192
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey< xAOD::CaloClusterContainer >
IEMExtrapolationTools.h
egammaSelectedTrackCopy::m_SelectedSiTracks
Gaudi::Accumulators::Counter m_SelectedSiTracks
Definition: egammaSelectedTrackCopy.h:196
CaloDetDescrManager.h
Definition of CaloDetDescrManager.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition: Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
egammaSelectedTrackCopy::m_narrowDeltaEta
Gaudi::Property< double > m_narrowDeltaEta
Narrow windows.
Definition: egammaSelectedTrackCopy.h:146
egammaSelectedTrackCopy::finalize
virtual StatusCode finalize() override final
egammaSelectedTrackCopy::m_SelectedTracks
Gaudi::Accumulators::Counter m_SelectedTracks
Definition: egammaSelectedTrackCopy.h:193
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
CaloClusterFwd.h
egammaSelectedTrackCopy::m_trackParticleContainerKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trackParticleContainerKey
Definition: egammaSelectedTrackCopy.h:103
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
egammaSelectedTrackCopy::m_SelectedTRTTracks
Gaudi::Accumulators::Counter m_SelectedTRTTracks
Definition: egammaSelectedTrackCopy.h:198
egammaSelectedTrackCopy::m_AllSiTracks
Gaudi::Accumulators::Counter m_AllSiTracks
Definition: egammaSelectedTrackCopy.h:195
egammaSelectedTrackCopy::m_clusterContainerKey
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_clusterContainerKey
Names of input output collections.
Definition: egammaSelectedTrackCopy.h:88
CaloCluster
Principal data class for CaloCell clusters.
Definition: Calorimeter/CaloEvent/CaloEvent/CaloCluster.h:79
egammaSelectedTrackCopy::m_extrapolationTool
ToolHandle< IEMExtrapolationTools > m_extrapolationTool
Tool for extrapolation.
Definition: egammaSelectedTrackCopy.h:72
ReadCondHandleKey.h
egammaSelectedTrackCopy::m_SelectedClusters
Gaudi::Accumulators::Counter m_SelectedClusters
Definition: egammaSelectedTrackCopy.h:191
AthReentrantAlgorithm.h
egammaSelectedTrackCopy::m_broadDeltaEta
Gaudi::Property< double > m_broadDeltaEta
Broad windows.
Definition: egammaSelectedTrackCopy.h:131
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
egammaSelectedTrackCopy::m_doForwardTracks
Gaudi::Property< bool > m_doForwardTracks
Private member flag to select forward tracks.
Definition: egammaSelectedTrackCopy.h:182
egammaSelectedTrackCopy::m_narrowDeltaPhi
Gaudi::Property< double > m_narrowDeltaPhi
Definition: egammaSelectedTrackCopy.h:153
egammaSelectedTrackCopy::m_egammaCaloClusterSelector
ToolHandle< IegammaCaloClusterSelector > m_egammaCaloClusterSelector
Tool to filter the calo clusters.
Definition: egammaSelectedTrackCopy.h:80
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
egammaSelectedTrackCopy::m_SelectedFwdTracks
Gaudi::Accumulators::Counter m_SelectedFwdTracks
Definition: egammaSelectedTrackCopy.h:194
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
egammaSelectedTrackCopy::m_AllClusters
Gaudi::Accumulators::Counter m_AllClusters
Definition: egammaSelectedTrackCopy.h:189
SiDetectorElementCollection.h
IEMExtrapolationTools
Definition: IEMExtrapolationTools.h:28
SG::ReadCondHandleKey< CaloDetDescrManager >
egammaSelectedTrackCopy::m_caloDetDescrMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloDetDescrMgrKey
Definition: egammaSelectedTrackCopy.h:116
egammaSelectedTrackCopy::m_fwdClusterContainerKey
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_fwdClusterContainerKey
Names of forward input output collections.
Definition: egammaSelectedTrackCopy.h:96
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition: CaloDetDescrManager.h:473
egammaSelectedTrackCopy::egammaSelectedTrackCopy
egammaSelectedTrackCopy(const std::string &name, ISvcLocator *pSvcLocator)
Default constructor.
Definition: egammaSelectedTrackCopy.cxx:46
egammaSelectedTrackCopy::m_trackParticleTimeDecorKey
SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > m_trackParticleTimeDecorKey
Definition: egammaSelectedTrackCopy.h:110
egammaSelectedTrackCopy::m_narrowRescale
Gaudi::Property< double > m_narrowRescale
Definition: egammaSelectedTrackCopy.h:167
egammaSelectedTrackCopy::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: egammaSelectedTrackCopy.cxx:91
TrackParticleFwd.h
CaloClusterContainer.h
egammaSelectedTrackCopy::m_broadDeltaPhi
Gaudi::Property< double > m_broadDeltaPhi
Definition: egammaSelectedTrackCopy.h:138
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
egammaSelectedTrackCopy::m_narrowRescaleBrem
Gaudi::Property< double > m_narrowRescaleBrem
Definition: egammaSelectedTrackCopy.h:174
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition: StoreGate/StoreGate/ReadDecorHandleKey.h:85
egammaSelectedTrackCopy::selectTrack
bool selectTrack(const EventContext &ctx, const xAOD::CaloCluster *cluster, const xAOD::TrackParticle *track, bool trkTRT, const CaloDetDescrManager &caloDD) const
Broad track selection.
Definition: egammaSelectedTrackCopy.cxx:187
TrackParticleContainerFwd.h