ATLAS Offline Software
EGammaClusterCoreCellRecovery.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // EGammaClusterCoreCellRecovery.h, (c) ATLAS Detector software
8 // Decorate egamma objects with the energies in L2 and L3 that are in cells
9 // not included in the original supercluser due to the timing cut in topocluster
10 // building. This is an AOD fix for data (and mc, but effect is small for mc)
11 // produced with rel23 (and 24 ?)
12 
13 #ifndef DERIVATIONFRAMEWORK_EGammaClusterCoreCellRecovery_H
14 #define DERIVATIONFRAMEWORK_EGammaClusterCoreCellRecovery_H
15 
18 
25 
26 namespace DerivationFramework {
27 
29  : public AthAlgTool
30  , public IAugmentationTool
31  {
32  public:
33  EGammaClusterCoreCellRecovery(const std::string& t,
34  const std::string& n,
35  const IInterface* p);
38  StatusCode finalize() { return StatusCode::SUCCESS; }
39  virtual StatusCode addBranches() const;
40 
41  private:
43  { this, "SGKey_photons", "Photons", "SG key of photon container" };
44 
46  { this, "SGKey_electrons", "Electrons", "SG key of electron container" };
47 
49  { this, "SGKey_CaloCells", "AllCalo", "SG key of calo cell container" };
50 
53  this,
54  "SGKey_photons_decorations_noConf",
55  {},
56  "SG keys for photon decorations not really configurable"
57  };
58 
61  this,
62  "SGKey_electrons_decorations_noConf",
63  {},
64  "SG keys for electrons decorations not really configurable"
65  };
66 
67  Gaudi::Property<bool> m_UseWeightForMaxCell{
68  this,
69  "UseWeightForMaxCell",
70  false,
71  "Use the cell weights when finding the L2 max energy cell"
72  };
73 
74 
77  double &etamax, double &phimax) const;
78 
80  ToolHandle<IegammaCellRecoveryTool> m_egammaCellRecoveryTool{
81  this,
82  "egammaCellRecoveryTool",
83  "egammaCellRecoveryTool/egammaCellRecoveryTool",
84  "Optional tool that adds cells in L2 or L3 "
85  "that could have been rejected by timing cut"
86  };
87 
88  };
89 
90 }
91 
92 #endif // DERIVATIONFRAMEWORK_EGammaClusterCoreCellRecovery_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
DerivationFramework::EGammaClusterCoreCellRecovery::initialize
StatusCode initialize()
Definition: EGammaClusterCoreCellRecovery.cxx:33
IegammaCellRecoveryTool.h
IAugmentationTool.h
DerivationFramework::EGammaClusterCoreCellRecovery::addBranches
virtual StatusCode addBranches() const
Pass the thinning service
Definition: EGammaClusterCoreCellRecovery.cxx:93
IegammaCellRecoveryTool::Info
Definition: IegammaCellRecoveryTool.h:36
DerivationFramework::EGammaClusterCoreCellRecovery::m_SGKey_electrons_decorations
SG::WriteDecorHandleKeyArray< xAOD::EgammaContainer > m_SGKey_electrons_decorations
Definition: EGammaClusterCoreCellRecovery.h:60
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
xAOD::Egamma_v1
Definition: Egamma_v1.h:56
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
DerivationFramework::EGammaClusterCoreCellRecovery::decorateObject
IegammaCellRecoveryTool::Info decorateObject(const xAOD::Egamma *&egamma) const
Definition: EGammaClusterCoreCellRecovery.cxx:152
DerivationFramework::EGammaClusterCoreCellRecovery::m_SGKey_CaloCells
SG::ReadHandleKey< CaloCellContainer > m_SGKey_CaloCells
Definition: EGammaClusterCoreCellRecovery.h:49
DerivationFramework::EGammaClusterCoreCellRecovery::~EGammaClusterCoreCellRecovery
~EGammaClusterCoreCellRecovery()=default
DerivationFramework::IAugmentationTool
Definition: IAugmentationTool.h:24
egamma
Definition: egamma.h:58
EgammaContainer.h
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition: CaloCluster_v1.h:59
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
DerivationFramework::EGammaClusterCoreCellRecovery::EGammaClusterCoreCellRecovery
EGammaClusterCoreCellRecovery(const std::string &t, const std::string &n, const IInterface *p)
Definition: EGammaClusterCoreCellRecovery.cxx:22
DerivationFramework::EGammaClusterCoreCellRecovery::m_SGKey_photons_decorations
SG::WriteDecorHandleKeyArray< xAOD::EgammaContainer > m_SGKey_photons_decorations
Definition: EGammaClusterCoreCellRecovery.h:52
CaloCluster.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
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::EGammaClusterCoreCellRecovery::finalize
StatusCode finalize()
Definition: EGammaClusterCoreCellRecovery.h:38
DerivationFramework::EGammaClusterCoreCellRecovery::m_egammaCellRecoveryTool
ToolHandle< IegammaCellRecoveryTool > m_egammaCellRecoveryTool
Pointer to the egammaCellRecoveryTool.
Definition: EGammaClusterCoreCellRecovery.h:80
CaloCellContainer.h
WriteDecorHandleKeyArray.h
DerivationFramework::EGammaClusterCoreCellRecovery::findMaxECell
StatusCode findMaxECell(const xAOD::CaloCluster *clus, double &etamax, double &phimax) const
Definition: EGammaClusterCoreCellRecovery.cxx:184
DerivationFramework::EGammaClusterCoreCellRecovery::m_SGKey_photons
SG::ReadHandleKey< xAOD::EgammaContainer > m_SGKey_photons
Definition: EGammaClusterCoreCellRecovery.h:43
DerivationFramework::EGammaClusterCoreCellRecovery::m_UseWeightForMaxCell
Gaudi::Property< bool > m_UseWeightForMaxCell
Definition: EGammaClusterCoreCellRecovery.h:67
AthAlgTool
Definition: AthAlgTool.h:26
DerivationFramework::EGammaClusterCoreCellRecovery::m_SGKey_electrons
SG::ReadHandleKey< xAOD::EgammaContainer > m_SGKey_electrons
Definition: EGammaClusterCoreCellRecovery.h:46
DerivationFramework::EGammaClusterCoreCellRecovery
Definition: EGammaClusterCoreCellRecovery.h:31