ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Interfaces
EgammaAnalysisInterfaces
EgammaAnalysisInterfaces
Interfaces/EgammaAnalysisInterfaces/EgammaAnalysisInterfaces/IEgammaCalibrationAndSmearingTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
6
#ifndef EGAMMAANALYSISINTERFACES__IEGAMMA_CALIB_TOOL_H_
7
#define EGAMMAANALYSISINTERFACES__IEGAMMA_CALIB_TOOL_H_
8
9
#include "
AsgTools/IAsgTool.h
"
10
//xAOD
11
#include "
xAODEgamma/ElectronFwd.h
"
12
#include "
xAODEgamma/PhotonFwd.h
"
13
#include "
xAODEgamma/EgammaFwd.h
"
14
#include "
PATInterfaces/CorrectionCode.h
"
15
#include "
PATInterfaces/ISystematicsTool.h
"
16
// PAT includes
17
#include "
PATCore/PATCoreEnums.h
"
18
19
20
namespace
EgammaCalibPeriodRunNumbersExample
{
21
const
int
run_2016
= 297730;
22
const
int
run_2015
= 252604;
23
}
24
25
26
namespace
CP
{
27
28
class
IEgammaCalibrationAndSmearingTool
:
public
CP::ISystematicsTool
{
30
ASG_TOOL_INTERFACE
(
IEgammaCalibrationAndSmearingTool
)
31
public
:
32
33
virtual
~IEgammaCalibrationAndSmearingTool
() {};
34
35
virtual
StatusCode
initialize
() = 0;
36
37
//Apply the correction on a modifiable egamma object (xAOD::Electron or xAOD::Photon)
38
virtual
CP::CorrectionCode
applyCorrection
(
xAOD::Egamma
&)
const
= 0;
39
40
//Create a corrected copy from a constant egamma object
41
virtual
CP::CorrectionCode
correctedCopy
(
const
xAOD::Electron
&,
xAOD::Electron
*&)
const
= 0;
42
virtual
CP::CorrectionCode
correctedCopy
(
const
xAOD::Photon
&,
xAOD::Photon
*&)
const
= 0;
43
44
45
virtual
double
resolution
(
double
energy,
double
cl_eta,
double
cl_etaCalo,
46
PATCore::ParticleType::Type
ptype =
PATCore::ParticleType::Electron
,
bool
withCT=
false
)
const
= 0;
47
virtual
double
getResolution
(
const
xAOD::Egamma
& particle,
bool
withCT=
true
)
const
= 0;
48
};
49
50
}
51
#endif
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition
AsgToolMacros.h:40
CorrectionCode.h
EgammaFwd.h
ElectronFwd.h
IAsgTool.h
ISystematicsTool.h
PATCoreEnums.h
PhotonFwd.h
CP::CorrectionCode
Return value from object correction CP tools.
Definition
CorrectionCode.h:31
CP::IEgammaCalibrationAndSmearingTool
Definition
Interfaces/EgammaAnalysisInterfaces/EgammaAnalysisInterfaces/IEgammaCalibrationAndSmearingTool.h:28
CP::IEgammaCalibrationAndSmearingTool::~IEgammaCalibrationAndSmearingTool
virtual ~IEgammaCalibrationAndSmearingTool()
Declare the interface that the class provides.
Definition
Interfaces/EgammaAnalysisInterfaces/EgammaAnalysisInterfaces/IEgammaCalibrationAndSmearingTool.h:33
CP::IEgammaCalibrationAndSmearingTool::getResolution
virtual double getResolution(const xAOD::Egamma &particle, bool withCT=true) const =0
CP::IEgammaCalibrationAndSmearingTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::Photon &, xAOD::Photon *&) const =0
CP::IEgammaCalibrationAndSmearingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::Egamma &) const =0
CP::IEgammaCalibrationAndSmearingTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::Electron &, xAOD::Electron *&) const =0
CP::IEgammaCalibrationAndSmearingTool::resolution
virtual double resolution(double energy, double cl_eta, double cl_etaCalo, PATCore::ParticleType::Type ptype=PATCore::ParticleType::Electron, bool withCT=false) const =0
CP::IEgammaCalibrationAndSmearingTool::initialize
virtual StatusCode initialize()=0
CP::ISystematicsTool
Interface for all CP tools supporting systematic variations.
Definition
ISystematicsTool.h:32
CP
Select isolated Photons, Electrons and Muons.
Definition
Control/xAODRootAccess/xAODRootAccess/TEvent.h:27
EgammaCalibPeriodRunNumbersExample
Definition
Interfaces/EgammaAnalysisInterfaces/EgammaAnalysisInterfaces/IEgammaCalibrationAndSmearingTool.h:20
EgammaCalibPeriodRunNumbersExample::run_2016
const int run_2016
Definition
Interfaces/EgammaAnalysisInterfaces/EgammaAnalysisInterfaces/IEgammaCalibrationAndSmearingTool.h:21
EgammaCalibPeriodRunNumbersExample::run_2015
const int run_2015
Definition
Interfaces/EgammaAnalysisInterfaces/EgammaAnalysisInterfaces/IEgammaCalibrationAndSmearingTool.h:22
PATCore::ParticleType::Type
Type
Definition
PATCoreEnums.h:35
PATCore::ParticleType::Electron
@ Electron
Definition
PATCoreEnums.h:40
xAOD::Egamma
Egamma_v1 Egamma
Definition of the current "egamma version".
Definition
Egamma.h:17
xAOD::Photon
Photon_v1 Photon
Definition of the current "egamma version".
Definition
Event/xAOD/xAODEgamma/xAODEgamma/Photon.h:17
xAOD::Electron
Electron_v1 Electron
Definition of the current "egamma version".
Definition
Event/xAOD/xAODEgamma/xAODEgamma/Electron.h:17
Generated on
for ATLAS Offline Software by
1.17.0