ATLAS Offline Software
CaloClusterMLCalibAlgLite.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef CALOREC_CALOCLUSTMLCALIBALG_H
6 #define CALOREC_CALOCLUSTMLCALIBALG_H
7 
9 #include "GaudiKernel/ToolHandle.h"
16 
25 public:
26  CaloClusterMLCalibAlgLite(const std::string& name, ISvcLocator* pSvcLocator);
27  ~CaloClusterMLCalibAlgLite() override = default;
28 
29  StatusCode initialize() override;
30  StatusCode execute(const EventContext& ctx) const override;
31  StatusCode finalize() override;
32 
33 private:
34 
35  ToolHandle<ICaloClusterMLCalibToolLite> m_calibTool{
36  this, "CaloClusterMLCalibToolLite", "CaloClusterMLCalibToolLite"
37  };
38 
39 
40  SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey{this, "EventInfoContainer", "EventInfo", "Input EventInfo container"};
41  SG::ReadHandleKey<xAOD::VertexContainer> m_verticesKey{this, "VertexContainer", "PrimaryVertices", "Input vertex container"};
42  SG::ReadHandleKey<xAOD::CaloClusterContainer> m_clusterContainerKey { this, "ClusterContainer" , "CaloCalTopoClusters", "Cluster container key" };
43 
44  SG::WriteDecorHandleKey<xAOD::CaloClusterContainer> m_clusterMLCalibEnergyDecorKey{this,"ClusterMLCalibratedEnergyKeyName","","ML calibrated cluster energy decoration"};
45  SG::WriteDecorHandleKey<xAOD::CaloClusterContainer> m_clusterMLCalibEnergyUncDecorKey{this,"ClusterMLCalibratedEnergyUncKeyName","","ML calibrated cluster energy uncertainty decoration"};
46 
47  Gaudi::Property<std::vector<float>> m_rapidityRange { this, "RapidityRange", { -2.5, 2.5}, "rapidity range of validity of the ML-based calibration" };
48  // Minimum cluster energy in MeV above which ML calibration will be applied.
49  Gaudi::Property<double> m_minClusterEnergy { this, "MinClusterEnergy", 300.0, "Minimum cluster energy (MeV) to apply ML calibration" };
50 };
51 
52 #endif // CALOREC_CALOCLUSTERMLCALIBALG_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
CaloClusterMLCalibAlgLite::m_calibTool
ToolHandle< ICaloClusterMLCalibToolLite > m_calibTool
Definition: CaloClusterMLCalibAlgLite.h:35
CaloClusterMLCalibAlgLite::m_clusterMLCalibEnergyDecorKey
SG::WriteDecorHandleKey< xAOD::CaloClusterContainer > m_clusterMLCalibEnergyDecorKey
Definition: CaloClusterMLCalibAlgLite.h:44
CaloClusterMLCalibAlgLite::m_clusterMLCalibEnergyUncDecorKey
SG::WriteDecorHandleKey< xAOD::CaloClusterContainer > m_clusterMLCalibEnergyUncDecorKey
Definition: CaloClusterMLCalibAlgLite.h:45
CaloClusterMLCalibAlgLite::m_clusterContainerKey
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_clusterContainerKey
Definition: CaloClusterMLCalibAlgLite.h:42
CaloClusterMLCalibAlgLite::m_verticesKey
SG::ReadHandleKey< xAOD::VertexContainer > m_verticesKey
Definition: CaloClusterMLCalibAlgLite.h:41
SG::ReadHandleKey< xAOD::EventInfo >
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
CaloClusterMLCalibAlgLite::finalize
StatusCode finalize() override
Definition: CaloClusterMLCalibAlgLite.cxx:32
CaloClusterMLCalibAlgLite::~CaloClusterMLCalibAlgLite
~CaloClusterMLCalibAlgLite() override=default
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
CaloClusterMLCalibAlgLite
An algorithm to apply ML-based energy calibration to calorimeter clusters.
Definition: CaloClusterMLCalibAlgLite.h:24
CaloClusterMLCalibAlgLite::m_minClusterEnergy
Gaudi::Property< double > m_minClusterEnergy
Definition: CaloClusterMLCalibAlgLite.h:49
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloClusterMLCalibAlgLite::m_rapidityRange
Gaudi::Property< std::vector< float > > m_rapidityRange
Definition: CaloClusterMLCalibAlgLite.h:47
CaloClusterMLCalibAlgLite::CaloClusterMLCalibAlgLite
CaloClusterMLCalibAlgLite(const std::string &name, ISvcLocator *pSvcLocator)
Definition: CaloClusterMLCalibAlgLite.cxx:10
AthReentrantAlgorithm.h
CaloClusterMLCalibAlgLite::initialize
StatusCode initialize() override
Definition: CaloClusterMLCalibAlgLite.cxx:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
EventInfo.h
VertexContainer.h
ICaloClusterMLCalibToolLite.h
CaloClusterContainer.h
CaloClusterMLCalibAlgLite::execute
StatusCode execute(const EventContext &ctx) const override
Definition: CaloClusterMLCalibAlgLite.cxx:38
CaloClusterMLCalibAlgLite::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: CaloClusterMLCalibAlgLite.h:40