ATLAS Offline Software
PhysicsAnalysis
Interfaces
MuonAnalysisInterfaces
MuonAnalysisInterfaces
IMuonCalibrationAndSmearingTool.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 MCAST_IMUONCALIBRATIONANDSMEARINGTOOL_H
6
#define MCAST_IMUONCALIBRATIONANDSMEARINGTOOL_H
7
9
#include "
AsgTools/IAsgTool.h
"
10
12
#include "
xAODMuon/Muon.h
"
13
15
#include "
AsgMessaging/StatusCode.h
"
16
#include "
PATInterfaces/CorrectionCode.h
"
17
#include "
PATInterfaces/ISystematicsTool.h
"
18
#include "
PATInterfaces/SystematicRegistry.h
"
19
#include "
PATInterfaces/SystematicSet.h
"
20
#include "
PATInterfaces/SystematicVariation.h
"
21
22
namespace
CP
{
23
24
class
IMuonCalibrationAndSmearingTool
:
public
virtual
asg::IAsgTool
,
virtual
public
CP::ISystematicsTool
{
26
ASG_TOOL_INTERFACE
(
CP::IMuonCalibrationAndSmearingTool
)
27
28
public
:
30
virtual
CorrectionCode
applyCorrection
(
xAOD::Muon
&
mu
)
const
= 0;
32
virtual
CorrectionCode
correctedCopy
(
const
xAOD::Muon
&
input
,
xAOD::Muon
*&
output
)
const
= 0;
34
virtual
double
expectedResolution
(
const
std::string&
DetType
,
const
xAOD::Muon
&
mu
,
const
bool
mc
)
const
= 0;
36
virtual
double
expectedResolution
(
const
int
&
DetType
,
const
xAOD::Muon
&
mu
,
const
bool
mc
)
const
= 0;
37
// Expert method to apply the MC correction on a modifyable trackParticle for ID- or MS-only corrections
38
virtual
CorrectionCode
applyCorrectionTrkOnly
(
xAOD::TrackParticle
& inTrk,
const
int
DetType
)
const
= 0;
39
40
};
41
42
}
// namespace CP
43
44
#endif
Muon.h
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition:
IAsgTool.h:41
SystematicSet.h
CP::IMuonCalibrationAndSmearingTool::applyCorrection
virtual CorrectionCode applyCorrection(xAOD::Muon &mu) const =0
Declare the interface that the class provides.
CP
Select isolated Photons, Electrons and Muons.
Definition:
Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
xAOD::Muon_v1
Class describing a Muon.
Definition:
Muon_v1.h:38
ISystematicsTool.h
CP::IMuonCalibrationAndSmearingTool
Definition:
IMuonCalibrationAndSmearingTool.h:24
CP::IMuonCalibrationAndSmearingTool::correctedCopy
virtual CorrectionCode correctedCopy(const xAOD::Muon &input, xAOD::Muon *&output) const =0
Create a corrected copy from a constant muon.
mc
Definition:
mc.PG_single_nu_valid.py:1
SystematicRegistry.h
PlotPulseshapeFromCool.input
input
Definition:
PlotPulseshapeFromCool.py:106
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition:
AsgToolMacros.h:40
IAsgTool.h
StatusCode.h
merge.output
output
Definition:
merge.py:17
CP::IMuonCalibrationAndSmearingTool::applyCorrectionTrkOnly
virtual CorrectionCode applyCorrectionTrkOnly(xAOD::TrackParticle &inTrk, const int DetType) const =0
CP::IMuonCalibrationAndSmearingTool::expectedResolution
virtual double expectedResolution(const std::string &DetType, const xAOD::Muon &mu, const bool mc) const =0
Get the expected pT resolution.
CP::ISystematicsTool
Interface for all CP tools supporting systematic variations.
Definition:
ISystematicsTool.h:32
CP::IMuonCalibrationAndSmearingTool::expectedResolution
virtual double expectedResolution(const int &DetType, const xAOD::Muon &mu, const bool mc) const =0
Get the expected pT resolution - int argument is more efficient.
CP::CorrectionCode
Return value from object correction CP tools.
Definition:
CorrectionCode.h:31
CorrectionCode.h
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition:
TrackParticle_v1.h:43
DetType
Definition:
DetType.h:10
CaloNoise_fillDB.mu
mu
Definition:
CaloNoise_fillDB.py:53
SystematicVariation.h
Generated on Tue Jul 2 2024 21:17:11 for ATLAS Offline Software by
1.8.18