ATLAS Offline Software
PFOClusterMLCorrectionAlgorithm.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 PFOClusterMLCorrectionAlgorithm_H
6 #define PFOClusterMLCorrectionAlgorithm_H
7 
16 
18 
19 #include "xAODPFlow/FlowElement.h"
22 #include "GaudiKernel/ToolHandle.h"
23 #include "StoreGate/DataHandle.h"
24 
26 {
27 
28 public:
29  using AthReentrantAlgorithm::AthReentrantAlgorithm;
30 
32  StatusCode execute(const EventContext &ctx) const;
33 
34 protected:
35  StatusCode shallowCopyChargedFEContainer(const EventContext &ctx) const;
36  StatusCode shallowCopyAndModifyNeutralFEContainer(const EventContext &ctx) const;
37 
38  ToolHandle<IPFOContainerCorrectionTool> m_correctionTool{this, "PFOContainerCorrectionTool", "NeutralPFOClusterMLCorrectionTool"};
39 
41  SG::ReadHandleKey<xAOD::FlowElementContainer> m_neutralFEContainerReadHandleKey{this, "NeutralPFlowInputContainer", "JetETMissNeutralParticleFlowObjects", "ReadHandleKey for neutral FlowElementContainer"};
42  SG::ReadHandleKey<xAOD::FlowElementContainer> m_chargedFEContainerReadHandleKey{this, "ChargedPFlowInputContainer", "JetETMissChargedParticleFlowObjects", "ReadHandleKey for neutral FlowElementContainer"};
44  SG::WriteHandleKey<xAOD::FlowElementContainer> m_neutralFEMLContainerWriteHandleKey{this, "NeutralPFlowOutputContainer", "JetETMissClusterMLCorrectedNeutralParticleFlowObjects", "WriteHandleKey for ML neutral FlowElementContainer"};
45  SG::WriteHandleKey<xAOD::FlowElementContainer> m_chargedFEMLContainerWriteHandleKey{this, "ChargedPFlowOutputContainer", "JetETMissClusterMLCorrectedChargedParticleFlowObjects", "WriteHandleKey for shallow copy of charged FlowElementContainer"};
46 
47 };
48 #endif
FlowElementContainer.h
PFOClusterMLCorrectionAlgorithm::initialize
StatusCode initialize()
Definition: PFOClusterMLCorrectionAlgorithm.cxx:8
PFOClusterMLCorrectionAlgorithm::m_chargedFEMLContainerWriteHandleKey
SG::WriteHandleKey< xAOD::FlowElementContainer > m_chargedFEMLContainerWriteHandleKey
Definition: PFOClusterMLCorrectionAlgorithm.h:45
PFOClusterMLCorrectionAlgorithm
Definition: PFOClusterMLCorrectionAlgorithm.h:26
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
PFOClusterMLCorrectionAlgorithm::shallowCopyChargedFEContainer
StatusCode shallowCopyChargedFEContainer(const EventContext &ctx) const
Definition: PFOClusterMLCorrectionAlgorithm.cxx:31
DataHandle.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
FlowElement.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PFOClusterMLCorrectionAlgorithm::m_neutralFEContainerReadHandleKey
SG::ReadHandleKey< xAOD::FlowElementContainer > m_neutralFEContainerReadHandleKey
ReadHandleKey for eflowCaloObjectContainer.
Definition: PFOClusterMLCorrectionAlgorithm.h:41
IPFOContainerCorrectionTool.h
AthReentrantAlgorithm.h
PFOClusterMLCorrectionAlgorithm::shallowCopyAndModifyNeutralFEContainer
StatusCode shallowCopyAndModifyNeutralFEContainer(const EventContext &ctx) const
Definition: PFOClusterMLCorrectionAlgorithm.cxx:45
PFOClusterMLCorrectionAlgorithm::m_correctionTool
ToolHandle< IPFOContainerCorrectionTool > m_correctionTool
Definition: PFOClusterMLCorrectionAlgorithm.h:38
PFOClusterMLCorrectionAlgorithm::m_neutralFEMLContainerWriteHandleKey
SG::WriteHandleKey< xAOD::FlowElementContainer > m_neutralFEMLContainerWriteHandleKey
WriteHandleKey for neutral FE.
Definition: PFOClusterMLCorrectionAlgorithm.h:44
PFOClusterMLCorrectionAlgorithm::execute
StatusCode execute(const EventContext &ctx) const
Definition: PFOClusterMLCorrectionAlgorithm.cxx:20
PFOClusterMLCorrectionAlgorithm::m_chargedFEContainerReadHandleKey
SG::ReadHandleKey< xAOD::FlowElementContainer > m_chargedFEContainerReadHandleKey
Definition: PFOClusterMLCorrectionAlgorithm.h:42