ATLAS Offline Software
EMClusterTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef EGAMMATOOLS_EMCLUSTERTOOL_H
6 #define EGAMMATOOLS_EMCLUSTERTOOL_H
7 
9 
11 #include "GaudiKernel/EventContext.h"
12 #include "GaudiKernel/ToolHandle.h"
14 
17 
20 #include "xAODEgamma/EgammaEnums.h"
21 #include "xAODEgamma/EgammaFwd.h"
22 
24 
37 class EMClusterTool final
38  : public AthAlgTool
39  , virtual public IEMClusterTool
40 {
41 
42 public:
44  EMClusterTool(const std::string& type,
45  const std::string& name,
46  const IInterface* parent);
47 
49  virtual ~EMClusterTool() = default;
50 
52  virtual StatusCode initialize() override final;
54  virtual StatusCode contExecute(
55  const EventContext& ctx,
57  xAOD::PhotonContainer* photonContainer) const override final;
58 
59 private:
62  void setNewCluster(const EventContext& ctx,
63  xAOD::Egamma* eg,
64  xAOD::CaloClusterContainer* outputClusterContainer) const;
65 
68  this,
69  "OutputClusterContainerName",
70  "",
71  "Name of the output cluster container"
72  };
73 
78  this,
79  "DoNotSet_OutputClusterContainerLinks",
80  "",
81  "Key of the output cluster container cell links; Do not set! Name taken "
82  "from associated container"
83  };
84 
87  "MVACalibSvc",
88  "egammaMVASvc",
89  "calibration service" };
90 };
91 
92 #endif // EGAMMATOOLS_EMCLUSTERTOOL_H
EgammaFwd.h
electronContainer
xAOD::ElectronContainer * electronContainer
Definition: TrigGlobEffCorrValidation.cxx:187
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
ParticleTest.eg
eg
Definition: ParticleTest.py:29
EMClusterTool
Definition: EMClusterTool.h:40
IegammaSwTool.h
Egamma
Definition: ClusMomentumPlots.cxx:11
CaloClusterContainer
Storable container for CaloCluster.
Definition: Calorimeter/CaloEvent/CaloEvent/CaloClusterContainer.h:37
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
EMClusterTool::setNewCluster
void setNewCluster(const EventContext &ctx, xAOD::Egamma *eg, xAOD::CaloClusterContainer *outputClusterContainer) const
Set new cluster to the egamma object, decorate the new cluster with a link to the old one.
Definition: EMClusterTool.cxx:88
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
EMClusterTool::m_MVACalibSvc
ServiceHandle< IegammaMVASvc > m_MVACalibSvc
Handle to the MVA calibration service.
Definition: EMClusterTool.h:86
EMClusterTool::initialize
virtual StatusCode initialize() override final
initialize method
Definition: EMClusterTool.cxx:28
PhotonContainer
Definition: Reconstruction/egamma/egammaEvent/egammaEvent/PhotonContainer.h:30
SG::WriteHandleKey< CaloClusterCellLinkContainer >
IegammaMVASvc.h
EMClusterTool::m_outputClusterContainerKey
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_outputClusterContainerKey
Key of the output cluster container.
Definition: EMClusterTool.h:67
CaloCluster.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
EMClusterTool::contExecute
virtual StatusCode contExecute(const EventContext &ctx, xAOD::ElectronContainer *electronContainer, xAOD::PhotonContainer *photonContainer) const override final
execute on container
Definition: EMClusterTool.cxx:48
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
IEMClusterTool.h
photonContainer
xAOD::PhotonContainer * photonContainer
Definition: TrigGlobEffCorrValidation.cxx:189
EMClusterTool::~EMClusterTool
virtual ~EMClusterTool()=default
destructor
EMClusterTool::EMClusterTool
EMClusterTool(const std::string &type, const std::string &name, const IInterface *parent)
constructor
Definition: EMClusterTool.cxx:19
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
EMClusterTool::m_outputClusterContainerCellLinkKey
SG::WriteHandleKey< CaloClusterCellLinkContainer > m_outputClusterContainerCellLinkKey
Key of the output cluster container cell links: name taken from containter name; only dummy configura...
Definition: EMClusterTool.h:77
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
EgammaEnums.h
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
IEMClusterTool
Definition: IEMClusterTool.h:23
ElectronContainer
Definition: Reconstruction/egamma/egammaEvent/egammaEvent/ElectronContainer.h:32
CaloClusterContainer.h
AthAlgTool
Definition: AthAlgTool.h:26
ServiceHandle< IegammaMVASvc >