ATLAS Offline Software
egammaSwTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef EGAMMATOOLS_EGAMMASWTOOL_H
6 #define EGAMMATOOLS_EGAMMASWTOOL_H
7 
17 
20 #include "GaudiKernel/EventContext.h"
22 
23 class egammaSwTool final
24  : public AthAlgTool
25  , virtual public IegammaSwTool
26 {
27 
28 public:
30  egammaSwTool(const std::string& type,
31  const std::string& name,
32  const IInterface* parent);
33 
35  virtual ~egammaSwTool() = default;
36 
38  virtual StatusCode initialize() override;
40  virtual StatusCode execute(const EventContext& ctx,
41  xAOD::CaloCluster* cluster) const override final;
42  virtual StatusCode execute(const EventContext& ctx,
43  xAOD::CaloCluster* cluster,
45  bool isBarrel) const override final;
46 
47 private:
48  StatusCode processTools(const EventContext& ctx,
49  const ToolHandleArray<CaloClusterProcessor>& tools,
50  xAOD::CaloCluster* cluster) const;
51 
57  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersEle55{
58  this,
59  "ClusterCorrectionToolsEle55",
60  {}
61  };
62  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersEle35{
63  this,
64  "ClusterCorrectionToolsEle35",
65  {}
66  };
67  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersEle37{
68  this,
69  "ClusterCorrectionToolsEle37",
70  {}
71  };
72  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersGam35{
73  this,
74  "ClusterCorrectionToolsGam35",
75  {}
76  };
77  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersGam55{
78  this,
79  "ClusterCorrectionToolsGam55",
80  {}
81  };
82  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersGam37{
83  this,
84  "ClusterCorrectionToolsGam37",
85  {}
86  };
87  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersEconv55{
88  this,
89  "ClusterCorrectionToolsEconv55",
90  {}
91  };
92  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersEconv35{
93  this,
94  "ClusterCorrectionToolsEconv35",
95  {}
96  };
97  ToolHandleArray<CaloClusterProcessor> m_clusterCorrectionPointersEconv37{
98  this,
99  "ClusterCorrectionToolsEconv37",
100  {}
101  };
102  // SuperCluster
103  ToolHandleArray<CaloClusterProcessor>
105  this,
106  "ClusterCorrectionToolsSuperClusterEle35",
107  {}
108  };
109  ToolHandleArray<CaloClusterProcessor>
111  this,
112  "ClusterCorrectionToolsSuperClusterEconv35",
113  {}
114  };
115  ToolHandleArray<CaloClusterProcessor>
117  this,
118  "ClusterCorrectionToolsSuperClusterGam35",
119  {}
120  };
121  //
122  ToolHandleArray<CaloClusterProcessor>
124  this,
125  "ClusterCorrectionToolsSuperClusterEle55",
126  {}
127  };
128  ToolHandleArray<CaloClusterProcessor>
130  this,
131  "ClusterCorrectionToolsSuperClusterGam55",
132  {}
133  };
134  ToolHandleArray<CaloClusterProcessor>
136  this,
137  "ClusterCorrectionToolsSuperClusterEconv55",
138  {}
139  };
140  //
141  ToolHandleArray<CaloClusterProcessor>
143  this,
144  "ClusterCorrectionToolsSuperClusterEle37",
145  {}
146  };
147  ToolHandleArray<CaloClusterProcessor>
149  this,
150  "ClusterCorrectionToolsSuperClusterGam37",
151  {}
152  };
153  ToolHandleArray<CaloClusterProcessor>
155  this,
156  "ClusterCorrectionToolsSuperClusterEconv37",
157  {}
158  };
159 };
160 
161 #endif
162 
CaloClusterProcessor.h
Base class for cluster processing tools called from CaloClusterMaker that operate on individual clust...
egammaSwTool::m_clusterCorrectionPointersSuperClusterEle55
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterEle55
Definition: egammaSwTool.h:123
egammaSwTool::m_clusterCorrectionPointersSuperClusterEle35
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterEle35
Definition: egammaSwTool.h:104
IegammaSwTool.h
egammaSwTool::m_clusterCorrectionPointersEle55
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersEle55
a list of names for tools to correct clusters
Definition: egammaSwTool.h:57
egammaSwTool::m_clusterCorrectionPointersGam37
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersGam37
Definition: egammaSwTool.h:82
xAOD::EgammaParameters::EgammaType
EgammaType
Definition: EgammaEnums.h:17
egammaSwTool::m_clusterCorrectionPointersSuperClusterGam37
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterGam37
Definition: egammaSwTool.h:148
egammaSwTool::execute
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloCluster *cluster) const override final
execute method
Definition: egammaSwTool.cxx:56
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition: CaloCluster_v1.h:59
egammaSwTool::m_clusterCorrectionPointersEconv55
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersEconv55
Definition: egammaSwTool.h:87
egammaSwTool::processTools
StatusCode processTools(const EventContext &ctx, const ToolHandleArray< CaloClusterProcessor > &tools, xAOD::CaloCluster *cluster) const
Definition: egammaSwTool.cxx:176
egammaSwTool::m_clusterCorrectionPointersGam55
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersGam55
Definition: egammaSwTool.h:77
CaloClusterFwd.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IegammaSwTool
Definition: IegammaSwTool.h:30
AthAlgTool.h
egammaSwTool::m_clusterCorrectionPointersSuperClusterGam35
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterGam35
Definition: egammaSwTool.h:116
test_pyathena.parent
parent
Definition: test_pyathena.py:15
egammaSwTool::m_clusterCorrectionPointersGam35
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersGam35
Definition: egammaSwTool.h:72
egammaSwTool::~egammaSwTool
virtual ~egammaSwTool()=default
Destructor.
egammaSwTool::initialize
virtual StatusCode initialize() override
initialize method
Definition: egammaSwTool.cxx:27
tools
Definition: DataQuality/ZLumiScripts/python/tools/__init__.py:1
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
egammaSwTool
Definition: egammaSwTool.h:26
egammaSwTool::egammaSwTool
egammaSwTool(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
Definition: egammaSwTool.cxx:16
egammaSwTool::m_clusterCorrectionPointersEle35
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersEle35
Definition: egammaSwTool.h:62
egammaSwTool::m_clusterCorrectionPointersSuperClusterEconv37
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterEconv37
Definition: egammaSwTool.h:154
egammaSwTool::m_clusterCorrectionPointersSuperClusterEle37
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterEle37
Definition: egammaSwTool.h:142
egammaSwTool::m_clusterCorrectionPointersEconv37
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersEconv37
Definition: egammaSwTool.h:97
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
python.LArCondContChannels.isBarrel
isBarrel
Definition: LArCondContChannels.py:659
egammaSwTool::m_clusterCorrectionPointersEconv35
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersEconv35
Definition: egammaSwTool.h:92
egammaSwTool::m_clusterCorrectionPointersSuperClusterGam55
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterGam55
Definition: egammaSwTool.h:129
egammaSwTool::m_clusterCorrectionPointersSuperClusterEconv35
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterEconv35
Definition: egammaSwTool.h:110
egammaSwTool::m_clusterCorrectionPointersSuperClusterEconv55
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersSuperClusterEconv55
Definition: egammaSwTool.h:135
egammaSwTool::m_clusterCorrectionPointersEle37
ToolHandleArray< CaloClusterProcessor > m_clusterCorrectionPointersEle37
Definition: egammaSwTool.h:67
AthAlgTool
Definition: AthAlgTool.h:26