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
#include <map>
28
#include <unordered_map>
29
#include <string>
30
31
class
TH3;
32
class
TFile;
33
34
namespace
TauAnalysisTools
35
{
36
37
class
CommonDiTauSmearingTool
38
:
public
virtual
IDiTauSmearingTool
39
,
public
asg::AsgMetadataTool
40
{
42
ASG_TOOL_CLASS
(
CommonDiTauSmearingTool
,
TauAnalysisTools::IDiTauSmearingTool
)
43
44
public
:
45
46
CommonDiTauSmearingTool
(
const
std::string& sName);
47
48
virtual
StatusCode
initialize
();
49
51
virtual
CP::CorrectionCode
applyCorrection
(
xAOD::DiTauJet
& xDiTau )
const
;
53
virtual
CP::CorrectionCode
correctedCopy
(
const
xAOD::DiTauJet
& xDiTau,
54
xAOD::DiTauJet
*& xDiTauCopy)
const
;
55
57
virtual
bool
isAffectedBySystematic
(
const
CP::SystematicVariation
& systematic )
const
;
58
60
virtual
CP::SystematicSet
affectingSystematics
()
const
;
61
63
virtual
CP::SystematicSet
recommendedSystematics
()
const
;
64
67
virtual
StatusCode
applySystematicVariation
(
const
CP::SystematicSet
& sSystematicSet);
68
69
protected
:
70
71
std::map<std::string, TH3*>
m_mDTSF
;
72
std::unordered_map < CP::SystematicSet, std::string >
m_mSystematicSets
;
73
const
CP::SystematicSet
*
m_sSystematicSet
;
74
std::map<std::string, int>
m_mSystematics
;
75
std::map<std::string, std::string>
m_mSystematicsHistNames
;
76
77
double (*
m_fX
)(
const
xAOD::DiTauJet
& xDiTau);
78
double (*
m_fY
)(
const
xAOD::DiTauJet
& xDiTau);
79
double (*
m_fZ
)(
const
xAOD::DiTauJet
& xDiTau);
80
81
template
<
class
T>
82
void
ReadInputs
(TFile* fFile, std::map<std::string, T>& mMap);
83
virtual
CP::CorrectionCode
getValue
(
const
std::string& sHistName,
84
const
xAOD::DiTauJet
& xDiTau,
85
double
& dCorrectionFactor)
const
;
86
void
generateSystematicSets
();
87
88
Gaudi::Property<std::string>
m_sInputFilePath
{
this
,
"InputFilePath"
,
""
};
89
Gaudi::Property<bool>
m_bSkipTruthMatchCheck
{
this
,
"SkipTruthMatchCheck"
,
false
};
90
91
bool
m_bIsData
;
92
bool
m_bIsConfigured
;
93
94
TruthMatchedParticleType
m_eCheckTruth
;
95
CP::SystematicSet
m_sAffectingSystematics
;
96
CP::SystematicSet
m_sRecommendedSystematics
;
97
98
private
:
99
100
// Execute at each event
101
virtual
StatusCode
beginEvent
();
102
103
};
104
}
// namespace TauAnalysisTools
105
106
#endif
// TAUANALYSISTOOLS_COMMONEFFICIENCYTOOL_H
107
108
109
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:78
TauAnalysisTools::CommonDiTauSmearingTool::m_sAffectingSystematics
CP::SystematicSet m_sAffectingSystematics
Definition
CommonDiTauSmearingTool.h:95
TauAnalysisTools::CommonDiTauSmearingTool::m_eCheckTruth
TruthMatchedParticleType m_eCheckTruth
Definition
CommonDiTauSmearingTool.h:94
TauAnalysisTools::CommonDiTauSmearingTool::m_sRecommendedSystematics
CP::SystematicSet m_sRecommendedSystematics
Definition
CommonDiTauSmearingTool.h:96
TauAnalysisTools::CommonDiTauSmearingTool::CommonDiTauSmearingTool
CommonDiTauSmearingTool(const std::string &sName)
Create a proper constructor for Athena.
Definition
CommonDiTauSmearingTool.cxx:23
TauAnalysisTools::CommonDiTauSmearingTool::m_bIsConfigured
bool m_bIsConfigured
Definition
CommonDiTauSmearingTool.h:92
TauAnalysisTools::CommonDiTauSmearingTool::recommendedSystematics
virtual CP::SystematicSet recommendedSystematics() const
returns: the list of all systematics this tool recommends to use
Definition
CommonDiTauSmearingTool.cxx:187
TauAnalysisTools::CommonDiTauSmearingTool::m_mDTSF
std::map< std::string, TH3 * > m_mDTSF
Definition
CommonDiTauSmearingTool.h:71
TauAnalysisTools::CommonDiTauSmearingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::DiTauJet &xDiTau) const
Apply the correction on a modifiable object.
Definition
CommonDiTauSmearingTool.cxx:72
TauAnalysisTools::CommonDiTauSmearingTool::m_mSystematicSets
std::unordered_map< CP::SystematicSet, std::string > m_mSystematicSets
Definition
CommonDiTauSmearingTool.h:72
TauAnalysisTools::CommonDiTauSmearingTool::m_sSystematicSet
const CP::SystematicSet * m_sSystematicSet
Definition
CommonDiTauSmearingTool.h:73
TauAnalysisTools::CommonDiTauSmearingTool::m_mSystematicsHistNames
std::map< std::string, std::string > m_mSystematicsHistNames
Definition
CommonDiTauSmearingTool.h:75
TauAnalysisTools::CommonDiTauSmearingTool::generateSystematicSets
void generateSystematicSets()
Definition
CommonDiTauSmearingTool.cxx:279
TauAnalysisTools::CommonDiTauSmearingTool::m_fX
double(* m_fX)(const xAOD::DiTauJet &xDiTau)
Definition
CommonDiTauSmearingTool.h:77
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:144
TauAnalysisTools::CommonDiTauSmearingTool::isAffectedBySystematic
virtual bool isAffectedBySystematic(const CP::SystematicVariation &systematic) const
returns: whether this tool is affected by the given systematics
Definition
CommonDiTauSmearingTool.cxx:167
TauAnalysisTools::CommonDiTauSmearingTool::m_bIsData
bool m_bIsData
Definition
CommonDiTauSmearingTool.h:91
TauAnalysisTools::CommonDiTauSmearingTool::m_fZ
double(* m_fZ)(const xAOD::DiTauJet &xDiTau)
Definition
CommonDiTauSmearingTool.h:79
TauAnalysisTools::CommonDiTauSmearingTool::applySystematicVariation
virtual StatusCode applySystematicVariation(const CP::SystematicSet &sSystematicSet)
configure this tool for the given list of systematic variations.
Definition
CommonDiTauSmearingTool.cxx:203
TauAnalysisTools::CommonDiTauSmearingTool::affectingSystematics
virtual CP::SystematicSet affectingSystematics() const
returns: the list of all systematics this tool can be affected by
Definition
CommonDiTauSmearingTool.cxx:178
TauAnalysisTools::CommonDiTauSmearingTool::getValue
virtual CP::CorrectionCode getValue(const std::string &sHistName, const xAOD::DiTauJet &xDiTau, double &dCorrectionFactor) const
Definition
CommonDiTauSmearingTool.cxx:334
TauAnalysisTools::CommonDiTauSmearingTool::ReadInputs
void ReadInputs(TFile *fFile, std::map< std::string, T > &mMap)
Definition
CommonDiTauSmearingTool.cxx:254
TauAnalysisTools::CommonDiTauSmearingTool::m_sInputFilePath
Gaudi::Property< std::string > m_sInputFilePath
Definition
CommonDiTauSmearingTool.h:88
TauAnalysisTools::CommonDiTauSmearingTool::initialize
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition
CommonDiTauSmearingTool.cxx:39
TauAnalysisTools::CommonDiTauSmearingTool::m_bSkipTruthMatchCheck
Gaudi::Property< bool > m_bSkipTruthMatchCheck
Definition
CommonDiTauSmearingTool.h:89
TauAnalysisTools::CommonDiTauSmearingTool::beginEvent
virtual StatusCode beginEvent()
Function called when a new events is loaded.
Definition
CommonDiTauSmearingTool.cxx:364
TauAnalysisTools::CommonDiTauSmearingTool::m_mSystematics
std::map< std::string, int > m_mSystematics
Definition
CommonDiTauSmearingTool.h:74
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