ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
TauID
TauAnalysisTools
TauAnalysisTools
CommonDiTauSmearingTool.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
#ifndef TAUANALYSISTOOLS_COMMONDITAUSMEARINGTOOL_H
6
#define TAUANALYSISTOOLS_COMMONDITAUSMEARINGTOOL_H
7
8
/*
9
author: David Kirchmeier
10
mail: david.kirchmeier@cern.ch
11
documentation in: ../doc/README-DiTauSmearingTool.rst
12
*/
13
14
// Framework include(s):
15
#include "
AsgTools/AsgMetadataTool.h
"
16
#include "
AsgTools/AnaToolHandle.h
"
17
18
// EDM include(s):
19
#include "
xAODTau/DiTauJet.h
"
20
#include "
PATInterfaces/CorrectionCode.h
"
21
22
// Local include(s):
23
#include "
TauAnalysisTools/Enums.h
"
24
#include "
TauAnalysisTools/IDiTauSmearingTool.h
"
25
#include "
TauAnalysisTools/CommonDiTauEfficiencyTool.h
"
26
#include "
TauAnalysisTools/HelperFunctions.h
"
27
28
#include "TH3.h"
29
30
namespace
TauAnalysisTools
31
{
32
33
class
CommonDiTauSmearingTool
34
:
public
virtual
IDiTauSmearingTool
35
,
public
asg::AsgMetadataTool
36
{
38
ASG_TOOL_CLASS
(
CommonDiTauSmearingTool
,
TauAnalysisTools::IDiTauSmearingTool
)
39
40
public
:
41
42
CommonDiTauSmearingTool
(
const
std::string& sName);
43
44
virtual
StatusCode
initialize
();
45
47
virtual
CP::CorrectionCode
applyCorrection
(
xAOD::DiTauJet
& xDiTau )
const
;
49
virtual
CP::CorrectionCode
correctedCopy
(
const
xAOD::DiTauJet
& xDiTau,
50
xAOD::DiTauJet
*& xDiTauCopy)
const
;
51
53
virtual
bool
isAffectedBySystematic
(
const
CP::SystematicVariation
& systematic )
const
;
54
56
virtual
CP::SystematicSet
affectingSystematics
()
const
;
57
59
virtual
CP::SystematicSet
recommendedSystematics
()
const
;
60
63
virtual
StatusCode
applySystematicVariation
(
const
CP::SystematicSet
& sSystematicSet);
64
65
protected
:
66
67
std::map<std::string, TH3*>
m_mDTSF
;
68
std::unordered_map < CP::SystematicSet, std::string >
m_mSystematicSets
;
69
const
CP::SystematicSet
*
m_sSystematicSet
;
70
std::map<std::string, int>
m_mSystematics
;
71
std::map<std::string, std::string>
m_mSystematicsHistNames
;
72
73
double (*
m_fX
)(
const
xAOD::DiTauJet
& xDiTau);
74
double (*
m_fY
)(
const
xAOD::DiTauJet
& xDiTau);
75
double (*
m_fZ
)(
const
xAOD::DiTauJet
& xDiTau);
76
77
template
<
class
T>
78
void
ReadInputs
(TFile* fFile, std::map<std::string, T>& mMap);
79
virtual
CP::CorrectionCode
getValue
(
const
std::string& sHistName,
80
const
xAOD::DiTauJet
& xDiTau,
81
double
& dCorrectionFactor)
const
;
82
void
generateSystematicSets
();
83
84
Gaudi::Property<std::string>
m_sInputFilePath
{
this
,
"InputFilePath"
,
""
};
85
Gaudi::Property<bool>
m_bSkipTruthMatchCheck
{
this
,
"SkipTruthMatchCheck"
,
false
};
86
87
bool
m_bIsData
;
88
89
TruthMatchedParticleType
m_eCheckTruth
;
90
CP::SystematicSet
m_sAffectingSystematics
;
91
CP::SystematicSet
m_sRecommendedSystematics
;
92
93
94
};
95
}
// namespace TauAnalysisTools
96
97
#endif
// TAUANALYSISTOOLS_COMMONEFFICIENCYTOOL_H
98
99
100
AnaToolHandle.h
AsgMetadataTool.h
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition
AsgToolMacros.h:68
CommonDiTauEfficiencyTool.h
CorrectionCode.h
DiTauJet.h
IDiTauSmearingTool.h
Enums.h
HelperFunctions.h
CP::CorrectionCode
Return value from object correction CP tools.
Definition
CorrectionCode.h:31
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition
SystematicSet.h:31
CP::SystematicVariation
Definition
SystematicVariation.h:47
TauAnalysisTools::CommonDiTauSmearingTool::m_fY
double(* m_fY)(const xAOD::DiTauJet &xDiTau)
Definition
CommonDiTauSmearingTool.h:74
TauAnalysisTools::CommonDiTauSmearingTool::m_sAffectingSystematics
CP::SystematicSet m_sAffectingSystematics
Definition
CommonDiTauSmearingTool.h:90
TauAnalysisTools::CommonDiTauSmearingTool::m_eCheckTruth
TruthMatchedParticleType m_eCheckTruth
Definition
CommonDiTauSmearingTool.h:89
TauAnalysisTools::CommonDiTauSmearingTool::m_sRecommendedSystematics
CP::SystematicSet m_sRecommendedSystematics
Definition
CommonDiTauSmearingTool.h:91
TauAnalysisTools::CommonDiTauSmearingTool::CommonDiTauSmearingTool
CommonDiTauSmearingTool(const std::string &sName)
Create a proper constructor for Athena.
Definition
CommonDiTauSmearingTool.cxx:21
TauAnalysisTools::CommonDiTauSmearingTool::recommendedSystematics
virtual CP::SystematicSet recommendedSystematics() const
returns: the list of all systematics this tool recommends to use
Definition
CommonDiTauSmearingTool.cxx:182
TauAnalysisTools::CommonDiTauSmearingTool::m_mDTSF
std::map< std::string, TH3 * > m_mDTSF
Definition
CommonDiTauSmearingTool.h:67
TauAnalysisTools::CommonDiTauSmearingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::DiTauJet &xDiTau) const
Apply the correction on a modifiable object.
Definition
CommonDiTauSmearingTool.cxx:69
TauAnalysisTools::CommonDiTauSmearingTool::m_mSystematicSets
std::unordered_map< CP::SystematicSet, std::string > m_mSystematicSets
Definition
CommonDiTauSmearingTool.h:68
TauAnalysisTools::CommonDiTauSmearingTool::m_sSystematicSet
const CP::SystematicSet * m_sSystematicSet
Definition
CommonDiTauSmearingTool.h:69
TauAnalysisTools::CommonDiTauSmearingTool::m_mSystematicsHistNames
std::map< std::string, std::string > m_mSystematicsHistNames
Definition
CommonDiTauSmearingTool.h:71
TauAnalysisTools::CommonDiTauSmearingTool::generateSystematicSets
void generateSystematicSets()
Definition
CommonDiTauSmearingTool.cxx:274
TauAnalysisTools::CommonDiTauSmearingTool::m_fX
double(* m_fX)(const xAOD::DiTauJet &xDiTau)
Definition
CommonDiTauSmearingTool.h:73
TauAnalysisTools::CommonDiTauSmearingTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::DiTauJet &xDiTau, xAOD::DiTauJet *&xDiTauCopy) const
Create a corrected copy from a constant ditau.
Definition
CommonDiTauSmearingTool.cxx:139
TauAnalysisTools::CommonDiTauSmearingTool::isAffectedBySystematic
virtual bool isAffectedBySystematic(const CP::SystematicVariation &systematic) const
returns: whether this tool is affected by the given systematics
Definition
CommonDiTauSmearingTool.cxx:162
TauAnalysisTools::CommonDiTauSmearingTool::m_bIsData
bool m_bIsData
Definition
CommonDiTauSmearingTool.h:87
TauAnalysisTools::CommonDiTauSmearingTool::m_fZ
double(* m_fZ)(const xAOD::DiTauJet &xDiTau)
Definition
CommonDiTauSmearingTool.h:75
TauAnalysisTools::CommonDiTauSmearingTool::applySystematicVariation
virtual StatusCode applySystematicVariation(const CP::SystematicSet &sSystematicSet)
configure this tool for the given list of systematic variations.
Definition
CommonDiTauSmearingTool.cxx:198
TauAnalysisTools::CommonDiTauSmearingTool::affectingSystematics
virtual CP::SystematicSet affectingSystematics() const
returns: the list of all systematics this tool can be affected by
Definition
CommonDiTauSmearingTool.cxx:173
TauAnalysisTools::CommonDiTauSmearingTool::getValue
virtual CP::CorrectionCode getValue(const std::string &sHistName, const xAOD::DiTauJet &xDiTau, double &dCorrectionFactor) const
Definition
CommonDiTauSmearingTool.cxx:329
TauAnalysisTools::CommonDiTauSmearingTool::ReadInputs
void ReadInputs(TFile *fFile, std::map< std::string, T > &mMap)
Definition
CommonDiTauSmearingTool.cxx:249
TauAnalysisTools::CommonDiTauSmearingTool::m_sInputFilePath
Gaudi::Property< std::string > m_sInputFilePath
Definition
CommonDiTauSmearingTool.h:84
TauAnalysisTools::CommonDiTauSmearingTool::initialize
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition
CommonDiTauSmearingTool.cxx:36
TauAnalysisTools::CommonDiTauSmearingTool::m_bSkipTruthMatchCheck
Gaudi::Property< bool > m_bSkipTruthMatchCheck
Definition
CommonDiTauSmearingTool.h:85
TauAnalysisTools::CommonDiTauSmearingTool::m_mSystematics
std::map< std::string, int > m_mSystematics
Definition
CommonDiTauSmearingTool.h:70
TauAnalysisTools::IDiTauSmearingTool
Definition
IDiTauSmearingTool.h:30
asg::AsgMetadataTool
Base class for dual-use tools that provide file metadata access.
Definition
AsgMetadataTool.h:48
TauAnalysisTools
Definition
PhysValMET.h:37
TauAnalysisTools::TruthMatchedParticleType
TruthMatchedParticleType
Definition
PhysicsAnalysis/TauID/TauAnalysisTools/TauAnalysisTools/Enums.h:107
xAOD::DiTauJet
DiTauJet_v1 DiTauJet
Definition of the current version.
Definition
DiTauJet.h:17
Generated on
for ATLAS Offline Software by
1.17.0