ATLAS Offline Software
IsolationBuilder.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // IsolationBuilder.h
8 // Header file for class IsolationBuilder
10 #ifndef ISOLATIONALGS_ISOLATIONBUILDER_H
11 #define ISOLATIONALGS_ISOLATIONBUILDER_H 1
12 
13 // STL includes
14 #include <set>
15 #include <string>
16 #include <utility>
17 #include <vector>
18 
19 // FrameWork includes
22 #include "GaudiKernel/ToolHandle.h"
27 
31 
36 
41 
43 
45 {
46 
48  // Public methods:
50 public:
51  // Copy constructor:
52 
54  IsolationBuilder(const std::string& name, ISvcLocator* pSvcLocator);
55 
57  virtual ~IsolationBuilder();
58 
59  // Athena algorithm's Hooks
60  virtual StatusCode initialize() override final;
61  virtual StatusCode execute(const EventContext& ctx) const override final;
62  virtual StatusCode finalize() override final;
63 
65  // Private data:
67 private:
70 
73  this,
74  "ElectronCollectionContainerName",
75  "Electrons"
76  };
77 
78  Gaudi::Property<std::string> m_FwdElectronContainerName{
79  this,
80  "FwdElectronCollectionContainerName",
81  "ForwardElectrons"
82  };
83 
84  Gaudi::Property<std::string> m_PhotonContainerName{
85  this,
86  "PhotonCollectionContainerName",
87  "Photons"
88  };
89 
90  Gaudi::Property<std::string> m_MuonContainerName{
91  this,
92  "MuonCollectionContainerName",
93  "Muons"
94  };
95 
97  ToolHandle<xAOD::ICaloCellIsolationTool> m_cellIsolationTool{
98  this,
99  "CaloCellIsolationTool",
100  "",
101  "Handle of the calo cell IsolationTool"
102  };
103 
106  this,
107  "CellCollectionName",
108  "AllCalo",
109  "Name of container which contain calo cells"
110  };
111 
113  ToolHandle<xAOD::ICaloTopoClusterIsolationTool> m_topoIsolationTool{
114  this,
115  "CaloTopoIsolationTool",
116  "",
117  "Handle of the calo topo IsolationTool"
118  };
119 
121  ToolHandle<xAOD::INeutralEFlowIsolationTool> m_pflowIsolationTool{
122  this,
123  "PFlowIsolationTool",
124  "",
125  "Handle of the pflow IsolationTool"
126  };
127 
129  ToolHandle<xAOD::ITrackIsolationTool> m_trackIsolationTool{
130  this,
131  "TrackIsolationTool",
132  "",
133  "Handle of the track IsolationTool"
134  };
135 
137  Gaudi::Property<bool> m_isTrigger{ this, "IsTrigger", false };
138 
139  // FIXME: need to add the electron bremAssoc stuff
140  Gaudi::Property<bool> m_useBremAssoc{ this,
141  "useBremAssoc",
142  true,
143  "use track to track assoc after brem" };
144 
145  Gaudi::Property<bool> m_allTrackRemoval{ this, "AllTrackRemoval", true };
146 
147  Gaudi::Property<bool> m_storepileupCorrection{ this, "storepileupCorrection", false };
148 
150  Gaudi::Property<std::vector<std::vector<int>>> m_elisoInts{
151  this,
152  "ElIsoTypes",
153  {},
154  "The isolation types to do for electrons: vector of vector of enum type "
155  "Iso::IsolationType"
156  };
157 
158  Gaudi::Property<std::vector<std::vector<int>>> m_elcorInts{
159  this,
160  "ElCorTypes",
161  {},
162  "The correction types to do for electron iso: vector of vector of enum "
163  "type Iso::IsolationCalo/TrackCorrection"
164  };
165 
166  Gaudi::Property<std::vector<std::vector<int>>> m_elcorIntsExtra{
167  this,
168  "ElCorTypesExtra",
169  {},
170  "The extra correction types to store but not apply for electrons"
171  };
172 
175  Gaudi::Property<std::vector<std::vector<int>>> m_phisoInts{
176  this,
177  "PhIsoTypes",
178  {},
179  "The isolation types to do for photons: vector of vector of enum type "
180  "Iso::IsolationType"
181  };
182 
183  Gaudi::Property<std::vector<std::vector<int>>> m_phcorInts{
184  this,
185  "PhCorTypes",
186  {},
187  "The correction types to do for photons iso: vector of vector of enum type "
188  "Iso::IsolationCalo/TrackCorrection"
189  };
190 
191  Gaudi::Property<std::vector<std::vector<int>>> m_phcorIntsExtra{
192  this,
193  "PhCorTypesExtra",
194  {},
195  "The extra correction types to store but not apply for photons"
196  };
197 
198  Gaudi::Property<std::vector<std::vector<int>>> m_muisoInts{
199  this,
200  "MuIsoTypes",
201  {},
202  "The isolation types to do for Muons : vector of vector of enum type "
203  "Iso::IsolationType"
204  };
205 
206  Gaudi::Property<std::vector<std::vector<int>>> m_mucorInts{
207  this,
208  "MuCorTypes",
209  {},
210  "The correction types to do for Muon iso: vector of vector of enum type "
211  "Iso::IsolationCalo/TrackCorrection"
212  };
213 
214  Gaudi::Property<std::vector<std::vector<int>>> m_mucorIntsExtra{
215  this,
216  "MuCorTypesExtra",
217  {},
218  "The extra correction types to store but not apply for muons"
219  };
220 
221  Gaudi::Property<std::vector<std::vector<int>>> m_feisoInts{
222  this,
223  "FeIsoTypes",
224  {},
225  "The isolation types to do for forward electron: vector of vector of enum "
226  "type Iso::IsolationType"
227  };
228 
229  Gaudi::Property<std::vector<std::vector<int>>> m_fecorInts{
230  this,
231  "FeCorTypes",
232  {},
233  "The correction types to do for forward electron iso: vector of vector of "
234  "enum type Iso::IsolationCalo/TrackCorrection"
235  };
236 
237  Gaudi::Property<std::vector<std::vector<int>>> m_fecorIntsExtra{
238  this,
239  "FeCorTypesExtra",
240  {},
241  "The extra correction types to store but not apply for forward electrons"
242  };
243 
245  {
247  CaloIsoHelpKey(IDataHandleHolder* owningAlg);
248 
251  void declare(IDataHandleHolder* owningAlg);
252 
255 
260 
265 
267  std::vector<xAOD::Iso::IsolationType> isoTypes;
268 
271  // xAOD::CaloCorrection CorrListExtra; // should ideally pass this, but not
272  // possible yet
274  };
275 
276  std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>
278  std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>
280  std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>
282  std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>
284 
286  {
288  TrackIsoHelpKey(IDataHandleHolder* owningAlg);
289 
292  void declare(IDataHandleHolder* owningAlg);
293 
297 
302 
304  std::vector<xAOD::Iso::IsolationType> isoTypes;
305 
308  // xAOD::TrackCorrection CorrListExtra; // should ideally pass this, but not
309  // possible yet
311  };
312 
313  std::vector<std::pair<xAOD::Iso::IsolationFlavour, TrackIsoHelpKey>>
315  std::vector<std::pair<xAOD::Iso::IsolationFlavour, TrackIsoHelpKey>>
317  std::vector<std::pair<xAOD::Iso::IsolationFlavour, TrackIsoHelpKey>>
319 
321  {
322 
324 
325  std::vector<SG::WriteDecorHandle<xAOD::IParticleContainer, float>> isoDeco;
330  std::vector<SG::WriteDecorHandle<xAOD::IParticleContainer, float>>>
333  };
334 
336  {
337 
339 
340  std::vector<SG::WriteDecorHandle<xAOD::IParticleContainer, float>> isoDeco;
341  std::vector<SG::WriteDecorHandle<xAOD::IParticleContainer, float>> isoDecoV;
346  };
347 
348  // for the time being, only mu vs eg, no separation in eg
349  Gaudi::Property<std::string> m_customConfigEl{
350  this,
351  "CustomConfigurationNameEl",
352  "",
353  "use a custom configuration for electron"
354  };
355 
356  Gaudi::Property<std::string> m_customConfigPh{
357  this,
358  "CustomConfigurationNamePh",
359  "",
360  "use a custom configuration for photon"
361  };
362 
363  Gaudi::Property<std::string> m_customConfigFwd{
364  this,
365  "CustomConfigurationNameFwd",
366  "",
367  "use a custom configuration for forward electron"
368  };
369 
370  Gaudi::Property<std::string> m_customConfigMu{
371  this,
372  "CustomConfigurationNameMu",
373  "",
374  "use a custom configuration for muon"
375  };
376 
378 
382  std::set<xAOD::Iso::IsolationFlavour>& runIsoType, // out
383  std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>*
384  caloIsoMap, // out
385  std::vector<std::pair<xAOD::Iso::IsolationFlavour, TrackIsoHelpKey>>*
386  trackIsoMap, // out
387  const std::string& containerName,
388  const std::vector<std::vector<int>>& isoInts,
389  const std::vector<std::vector<int>>& corInts,
390  const std::vector<std::vector<int>>& corIntsExtra,
391  const std::string& customConfig);
392 
394  StatusCode addCaloIsoCorrections(size_t flavor,
396  CaloIsoHelpKey& cisoH, // in-out
397  const std::vector<std::vector<int>>& corInts,
398  bool corrsAreExtra,
399  const std::string& prefix,
400  const std::string& customConfig);
401 
404  size_t flavor,
406  TrackIsoHelpKey& tisoH, // in-out
407  const std::vector<std::vector<int>>& corInts,
408  bool corrsAreExtra,
409  const std::string& prefix,
410  const std::string& customConfig);
411 
413  const std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>&
414  caloIsoMap,
415  const CaloCellContainer* cellColl) const;
416 
418  const std::vector<std::pair<xAOD::Iso::IsolationFlavour, TrackIsoHelpKey>>&
419  trackIsoMap) const;
420 
421  void declareIso(
422  std::vector<std::pair<xAOD::Iso::IsolationFlavour, CaloIsoHelpKey>>&
423  caloIso);
424  void declareIso(
425  std::vector<std::pair<xAOD::Iso::IsolationFlavour, TrackIsoHelpKey>>&
426  trackIso);
427 };
428 
429 #endif //> !ISOLATIONALGS_ISOLATIONBUILDER_H
IsolationBuilder::m_allTrackRemoval
Gaudi::Property< bool > m_allTrackRemoval
Definition: IsolationBuilder.h:145
IsolationBuilder::TrackIsoHelpKey::isoDeco
SG::WriteDecorHandleKeyArray< xAOD::IParticleContainer > isoDeco
The actual isolations.
Definition: IsolationBuilder.h:295
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
IsolationBuilder::m_elisoInts
Gaudi::Property< std::vector< std::vector< int > > > m_elisoInts
Isolation types.
Definition: IsolationBuilder.h:150
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
IsolationBuilder::initialize
virtual StatusCode initialize() override final
Definition: IsolationBuilder.cxx:26
IsolationBuilder::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: IsolationBuilder.cxx:132
IsolationBuilder::m_customConfigFwd
Gaudi::Property< std::string > m_customConfigFwd
Definition: IsolationBuilder.h:363
IsolationBuilder::m_storepileupCorrection
Gaudi::Property< bool > m_storepileupCorrection
Definition: IsolationBuilder.h:147
xAOD::TrackCorrection
Definition: IsolationCommon.h:18
IsolationBuilder::declareIso
void declareIso(std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey >> &caloIso)
Definition: IsolationBuilder.cxx:756
IsolationBuilder::m_phCaloIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey > > m_phCaloIso
Definition: IsolationBuilder.h:279
IsolationBuilder::m_customConfigMu
Gaudi::Property< std::string > m_customConfigMu
Definition: IsolationBuilder.h:370
IsolationBuilder::CaloIsoHelpHandles
Definition: IsolationBuilder.h:321
IsolationBuilder::m_elcorIntsExtra
Gaudi::Property< std::vector< std::vector< int > > > m_elcorIntsExtra
Definition: IsolationBuilder.h:166
IsolationBuilder::CaloIsoHelpKey::CaloIsoHelpKey
CaloIsoHelpKey(IDataHandleHolder *owningAlg)
constructor
Definition: IsolationBuilder.cxx:184
xAOD::Iso::IsolationFlavour
IsolationFlavour
Enumeration for different ways of calculating isolation in xAOD files.
Definition: IsolationFlavour.h:17
IsolationType.h
IsolationBuilder::m_mucorInts
Gaudi::Property< std::vector< std::vector< int > > > m_mucorInts
Definition: IsolationBuilder.h:206
IsolationBuilder::TrackIsoHelpHandles::TrackIsoHelpHandles
TrackIsoHelpHandles(const TrackIsoHelpKey &keys)
Definition: IsolationBuilder.cxx:246
IsolationBuilder::m_ElectronContainerName
Gaudi::Property< std::string > m_ElectronContainerName
Containers (Is it best to make them as strings? Used by multiple handles)
Definition: IsolationBuilder.h:72
IsolationBuilder::TrackIsoHelpKey::coreCorDeco
std::map< xAOD::Iso::IsolationTrackCorrection, SG::WriteDecorHandleKey< xAOD::IParticleContainer > > coreCorDeco
The corrections.
Definition: IsolationBuilder.h:301
IsolationBuilder::TrackIsoHelpHandles::isoDeco
std::vector< SG::WriteDecorHandle< xAOD::IParticleContainer, float > > isoDeco
Definition: IsolationBuilder.h:340
IsolationBuilder::m_phisoInts
Gaudi::Property< std::vector< std::vector< int > > > m_phisoInts
Isolation types (for the alg.
Definition: IsolationBuilder.h:175
IsolationBuilder::TrackIsoHelpKey::declare
void declare(IDataHandleHolder *owningAlg)
only to be called after placed in the final location, to propagate dependencies
Definition: IsolationBuilder.cxx:216
IsolationBuilder::m_MuonContainerName
Gaudi::Property< std::string > m_MuonContainerName
Definition: IsolationBuilder.h:90
IsolationBuilder::TrackIsoHelpHandles::isoDecoV
std::vector< SG::WriteDecorHandle< xAOD::IParticleContainer, float > > isoDecoV
Definition: IsolationBuilder.h:341
IsolationBuilder::m_FwdElectronContainerName
Gaudi::Property< std::string > m_FwdElectronContainerName
Definition: IsolationBuilder.h:78
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
IsolationBuilder::m_isTrigger
Gaudi::Property< bool > m_isTrigger
is the alg run at trigger level
Definition: IsolationBuilder.h:137
IsolationBuilder::TrackIsoHelpKey
Definition: IsolationBuilder.h:286
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey< CaloCellContainer >
Property
Support class for PropertyMgr.
Definition: Property.h:23
INeutralEFlowIsolationTool.h
IsolationBuilder::TrackIsoHelpKey::CorrList
xAOD::TrackCorrection CorrList
to keep track of the corrections
Definition: IsolationBuilder.h:307
IsolationBuilder::m_elTrackIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, TrackIsoHelpKey > > m_elTrackIso
Definition: IsolationBuilder.h:314
ICaloTopoClusterIsolationTool.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
IsolationBuilder::m_fecorInts
Gaudi::Property< std::vector< std::vector< int > > > m_fecorInts
Definition: IsolationBuilder.h:229
IsolationBuilder::addCaloIsoCorrections
StatusCode addCaloIsoCorrections(size_t flavor, xAOD::Iso::IsolationFlavour isoFlav, CaloIsoHelpKey &cisoH, const std::vector< std::vector< int >> &corInts, bool corrsAreExtra, const std::string &prefix, const std::string &customConfig)
called by initializeIso
Definition: IsolationBuilder.cxx:401
IsolationBuilder::TrackIsoHelpKey::isoTypes
std::vector< xAOD::Iso::IsolationType > isoTypes
the types of isolations to calculate
Definition: IsolationBuilder.h:304
IsolationBuilder::addTrackIsoCorrections
StatusCode addTrackIsoCorrections(size_t flavor, xAOD::Iso::IsolationFlavour isoFlav, TrackIsoHelpKey &tisoH, const std::vector< std::vector< int >> &corInts, bool corrsAreExtra, const std::string &prefix, const std::string &customConfig)
called by initializeIso
Definition: IsolationBuilder.cxx:472
IsolationBuilder::m_phcorIntsExtra
Gaudi::Property< std::vector< std::vector< int > > > m_phcorIntsExtra
Definition: IsolationBuilder.h:191
IsolationBuilder::~IsolationBuilder
virtual ~IsolationBuilder()
Destructor:
IsolationBuilder::CaloIsoHelpHandles::corrBitsetDeco
SG::WriteDecorHandle< xAOD::IParticleContainer, uint32_t > corrBitsetDeco
Definition: IsolationBuilder.h:332
IsolationBuilder::TrackIsoHelpKey::corrBitsetDeco
SG::WriteDecorHandleKey< xAOD::IParticleContainer > corrBitsetDeco
Definition: IsolationBuilder.h:310
IsolationBuilder::CaloIsoHelpKey::CorrList
xAOD::CaloCorrection CorrList
to keep track of the corrections
Definition: IsolationBuilder.h:270
IsolationBuilder::m_customConfigPh
Gaudi::Property< std::string > m_customConfigPh
Definition: IsolationBuilder.h:356
IsolationBuilder::m_cellsKey
SG::ReadHandleKey< CaloCellContainer > m_cellsKey
Cell container.
Definition: IsolationBuilder.h:105
IIsolationCorrectionTool.h
IsolationBuilder::initializeIso
StatusCode initializeIso(std::set< xAOD::Iso::IsolationFlavour > &runIsoType, std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey >> *caloIsoMap, std::vector< std::pair< xAOD::Iso::IsolationFlavour, TrackIsoHelpKey >> *trackIsoMap, const std::string &containerName, const std::vector< std::vector< int >> &isoInts, const std::vector< std::vector< int >> &corInts, const std::vector< std::vector< int >> &corIntsExtra, const std::string &customConfig)
called by algorithm initialize per object (electron, photon, forward electron, muon)
Definition: IsolationBuilder.cxx:269
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
xAOD::TauJetParameters::caloIso
@ caloIso
Get sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4
Definition: TauDefs.h:222
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IParticleContainer.h
IsolationBuilder::m_feisoInts
Gaudi::Property< std::vector< std::vector< int > > > m_feisoInts
Definition: IsolationBuilder.h:221
IsolationBuilder::TrackIsoHelpKey::isoDecoV
SG::WriteDecorHandleKeyArray< xAOD::IParticleContainer > isoDecoV
Definition: IsolationBuilder.h:296
SG::WriteDecorHandle
Handle class for adding a decoration to an object.
Definition: StoreGate/StoreGate/WriteDecorHandle.h:100
IsolationBuilder::m_phcorInts
Gaudi::Property< std::vector< std::vector< int > > > m_phcorInts
Definition: IsolationBuilder.h:183
IsolationBuilder::CaloIsoHelpHandles::isoDeco
std::vector< SG::WriteDecorHandle< xAOD::IParticleContainer, float > > isoDeco
Definition: IsolationBuilder.h:325
IsolationBuilder::executeTrackIso
StatusCode executeTrackIso(const std::vector< std::pair< xAOD::Iso::IsolationFlavour, TrackIsoHelpKey >> &trackIsoMap) const
Definition: IsolationBuilder.cxx:633
ICaloCellIsolationTool.h
IsolationBuilder::CaloIsoHelpKey::corrBitsetDeco
SG::WriteDecorHandleKey< xAOD::IParticleContainer > corrBitsetDeco
Definition: IsolationBuilder.h:273
WriteDecorHandle.h
Handle class for adding a decoration to an object.
IsolationBuilder::m_muTrackIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, TrackIsoHelpKey > > m_muTrackIso
Definition: IsolationBuilder.h:318
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
IsolationBuilder::m_pflowIsolationTool
ToolHandle< xAOD::INeutralEFlowIsolationTool > m_pflowIsolationTool
Tool for neutral pflow isolation calculation.
Definition: IsolationBuilder.h:121
IsolationCommon.h
IsolationBuilder::TrackIsoHelpKey::TrackIsoHelpKey
TrackIsoHelpKey(IDataHandleHolder *owningAlg)
constructor
Definition: IsolationBuilder.cxx:207
IsolationBuilder::TrackIsoHelpHandles::coreCorDeco
std::map< xAOD::Iso::IsolationTrackCorrection, SG::WriteDecorHandle< xAOD::IParticleContainer, float > > coreCorDeco
Definition: IsolationBuilder.h:344
IsolationBuilder::CaloIsoHelpHandles::noncoreCorDeco
std::map< xAOD::Iso::IsolationCaloCorrection, std::vector< SG::WriteDecorHandle< xAOD::IParticleContainer, float > > > noncoreCorDeco
Definition: IsolationBuilder.h:331
IsolationBuilder::IsolationBuilder
IsolationBuilder()
Default constructor:
IsolationBuilder::CaloIsoHelpKey::isoTypes
std::vector< xAOD::Iso::IsolationType > isoTypes
the types of isolations to calculate
Definition: IsolationBuilder.h:267
IsolationBuilder::CaloIsoHelpKey::coreCorDeco
std::map< xAOD::Iso::IsolationCaloCorrection, SG::WriteDecorHandleKey< xAOD::IParticleContainer > > coreCorDeco
The corrections (one per flavor)
Definition: IsolationBuilder.h:259
IsolationBuilder::m_useBremAssoc
Gaudi::Property< bool > m_useBremAssoc
Definition: IsolationBuilder.h:140
IsolationBuilder::m_muisoInts
Gaudi::Property< std::vector< std::vector< int > > > m_muisoInts
Definition: IsolationBuilder.h:198
IsolationBuilder::CaloIsoHelpKey
Definition: IsolationBuilder.h:245
IsolationBuilder::CaloIsoHelpKey::isoDeco
SG::WriteDecorHandleKeyArray< xAOD::IParticleContainer > isoDeco
The actual isolations.
Definition: IsolationBuilder.h:254
IsolationBuilder::m_fecorIntsExtra
Gaudi::Property< std::vector< std::vector< int > > > m_fecorIntsExtra
Definition: IsolationBuilder.h:237
IsolationConeSize.h
AthReentrantAlgorithm.h
IsolationBuilder::executeCaloIso
StatusCode executeCaloIso(const std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey >> &caloIsoMap, const CaloCellContainer *cellColl) const
Definition: IsolationBuilder.cxx:517
xAOD::Iso::IsolationTrackCorrection
IsolationTrackCorrection
Definition: Event/xAOD/xAODPrimitives/xAODPrimitives/IsolationCorrection.h:61
IsolationBuilder::CaloIsoHelpKey::declare
void declare(IDataHandleHolder *owningAlg)
only to be called after placed in the final location, to propagate dependencies
Definition: IsolationBuilder.cxx:192
IsolationBuilder::m_trackIsolationTool
ToolHandle< xAOD::ITrackIsolationTool > m_trackIsolationTool
Tool for neutral pflow isolation calculation.
Definition: IsolationBuilder.h:129
IsolationBuilder::m_cellIsolationTool
ToolHandle< xAOD::ICaloCellIsolationTool > m_cellIsolationTool
Tool for cell isolation calculation.
Definition: IsolationBuilder.h:97
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
IsolationBuilder::m_customConfigEl
Gaudi::Property< std::string > m_customConfigEl
Definition: IsolationBuilder.h:349
CaloCellContainer.h
CaloCellContainer
Container class for CaloCell.
Definition: CaloCellContainer.h:55
IsolationBuilder::CaloIsoHelpKey::noncoreCorDeco
std::map< xAOD::Iso::IsolationCaloCorrection, SG::WriteDecorHandleKeyArray< xAOD::IParticleContainer > > noncoreCorDeco
The corrections (one per flavor/type combination)
Definition: IsolationBuilder.h:264
IsolationBuilder
Definition: IsolationBuilder.h:45
IsolationBuilder::m_PhotonContainerName
Gaudi::Property< std::string > m_PhotonContainerName
Definition: IsolationBuilder.h:84
IsolationBuilder::CaloIsoHelpHandles::CaloIsoHelpHandles
CaloIsoHelpHandles(const CaloIsoHelpKey &keys)
Definition: IsolationBuilder.cxx:228
xAOD::Iso::IsolationCaloCorrection
IsolationCaloCorrection
Enumeration for different ways of correcting isolation in xAOD files.
Definition: Event/xAOD/xAODPrimitives/xAODPrimitives/IsolationCorrection.h:18
ITrackIsolationTool.h
IsolationFlavour.h
xAOD::CaloCorrection
Definition: IsolationCommon.h:14
WriteDecorHandleKeyArray.h
IsolationHelpers.h
IsolationBuilder::m_phTrackIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, TrackIsoHelpKey > > m_phTrackIso
Definition: IsolationBuilder.h:316
IsolationBuilder::m_feCaloIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey > > m_feCaloIso
Definition: IsolationBuilder.h:281
Gaudi
=============================================================================
Definition: CaloGPUClusterAndCellDataMonitorOptions.h:273
IsolationBuilder::TrackIsoHelpHandles
Definition: IsolationBuilder.h:336
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
IsolationBuilder::isCoreCor
static bool isCoreCor(xAOD::Iso::IsolationCaloCorrection corr)
Definition: IsolationBuilder.cxx:262
IsolationBuilder::m_mucorIntsExtra
Gaudi::Property< std::vector< std::vector< int > > > m_mucorIntsExtra
Definition: IsolationBuilder.h:214
IsolationBuilder::finalize
virtual StatusCode finalize() override final
Definition: IsolationBuilder.cxx:124
IsolationBuilder::CaloIsoHelpHandles::coreCorDeco
std::map< xAOD::Iso::IsolationCaloCorrection, SG::WriteDecorHandle< xAOD::IParticleContainer, float > > coreCorDeco
Definition: IsolationBuilder.h:328
IsolationBuilder::m_topoIsolationTool
ToolHandle< xAOD::ICaloTopoClusterIsolationTool > m_topoIsolationTool
Tool for topo isolation calculation.
Definition: IsolationBuilder.h:113
IsolationBuilder::TrackIsoHelpHandles::corrBitsetDeco
SG::WriteDecorHandle< xAOD::IParticleContainer, uint32_t > corrBitsetDeco
Definition: IsolationBuilder.h:345
IsolationBuilder::m_elCaloIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey > > m_elCaloIso
Definition: IsolationBuilder.h:277
IsolationBuilder::m_muCaloIso
std::vector< std::pair< xAOD::Iso::IsolationFlavour, CaloIsoHelpKey > > m_muCaloIso
Definition: IsolationBuilder.h:283
AuxElement.h
Base class for elements of a container that can have aux data.
IsolationBuilder::m_elcorInts
Gaudi::Property< std::vector< std::vector< int > > > m_elcorInts
Definition: IsolationBuilder.h:158