ATLAS Offline Software
PhysicsAnalysis
MuonID
MuonIDAnalysis
MuonMomentumCorrections
MuonMomentumCorrections
IMuonCalibIntTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MCAST_IMuonCalibIntTool_H
6
#define MCAST_IMuonCalibIntTool_H
7
9
#include "
AsgTools/IAsgTool.h
"
10
12
#include "
MuonMomentumCorrections/MuonObj.h
"
13
#include "
MuonMomentumCorrections/EnumDef.h
"
14
16
#include "
AsgMessaging/StatusCode.h
"
17
#include "
PATInterfaces/CorrectionCode.h
"
18
#include "
PATInterfaces/ISystematicsTool.h
"
19
#include "
PATInterfaces/SystematicRegistry.h
"
20
#include "
PATInterfaces/SystematicSet.h
"
21
#include "
PATInterfaces/SystematicVariation.h
"
22
23
namespace
CP
{
24
25
// This is an interface class for all internal MCP sub-tools
26
class
IMuonCalibIntTool
:
public
virtual
asg::IAsgTool
,
virtual
public
CP::ISystematicsTool
{
28
ASG_TOOL_INTERFACE
(
CP::IMuonCalibIntTool
)
29
30
public
:
32
virtual
CorrectionCode
applyCorrection
(
MCP::MuonObj
&
mu
)
const
= 0;
33
34
};
35
36
37
// Special internal interface for the scaleSmear tool since it needs to make another function public through its interface
38
class
IMuonCalibIntScaleSmearTool
:
public
virtual
IMuonCalibIntTool
{
40
ASG_TOOL_INTERFACE
(
CP::IMuonCalibIntScaleSmearTool
)
41
public
:
43
virtual
double
getExpectedResolution
(
const
int
&
DetType
,
double
pT
,
double
eta,
double
phi,
MCP::DataYear
year
,
bool
addMCCorrectionSmearing)
const
= 0;
44
45
};
46
47
48
49
}
// namespace CP
50
51
#endif
CP::IMuonCalibIntTool
Definition:
IMuonCalibIntTool.h:26
CalculateHighPtTerm.pT
pT
Definition:
ICHEP2016/CalculateHighPtTerm.py:57
MuonObj.h
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition:
IAsgTool.h:41
SystematicSet.h
CP::IMuonCalibIntTool::applyCorrection
virtual CorrectionCode applyCorrection(MCP::MuonObj &mu) const =0
Declare the interface that the class provides.
python.AtlRunQueryAMI.year
year
Definition:
AtlRunQueryAMI.py:226
CP
Select isolated Photons, Electrons and Muons.
Definition:
Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
ISystematicsTool.h
SystematicRegistry.h
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition:
AsgToolMacros.h:40
IAsgTool.h
StatusCode.h
CP::IMuonCalibIntScaleSmearTool
class IMuonCalibIntTool
Definition:
IMuonCalibIntTool.h:38
EnumDef.h
CP::IMuonCalibIntScaleSmearTool::getExpectedResolution
virtual double getExpectedResolution(const int &DetType, double pT, double eta, double phi, MCP::DataYear year, bool addMCCorrectionSmearing) const =0
Declare the interface that the class provides.
CP::ISystematicsTool
Interface for all CP tools supporting systematic variations.
Definition:
ISystematicsTool.h:32
CP::CorrectionCode
Return value from object correction CP tools.
Definition:
CorrectionCode.h:31
MCP::DataYear
DataYear
Definition:
EnumDef.h:28
MCP::MuonObj
Definition:
MuonObj.h:126
CorrectionCode.h
DetType
Definition:
DetType.h:10
CaloNoise_fillDB.mu
mu
Definition:
CaloNoise_fillDB.py:53
SystematicVariation.h
Generated on Sun Dec 22 2024 21:11:30 for ATLAS Offline Software by
1.8.18