ATLAS Offline Software
DiTauSmearingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TAUANALYSISTOOLS_DITAUSMEARINGTOOL_H
6 #define TAUANALYSISTOOLS_DITAUSMEARINGTOOL_H
7 
8 /*
9  author: David Kirchmeier
10  mail: david.kirchmeier@cern.ch
11  ported in R22 by: Antonio De Maria
12  mail: antonio.de.maria@cern.ch
13  documentation in: ../doc/README-DiTauSmearingTool.rst
14 */
15 
16 
17 // Framework include(s):
18 #include "AsgTools/AsgTool.h"
19 #include "AsgTools/AnaToolHandle.h"
20 
21 // Local include(s):
24 
25 namespace TauAnalysisTools
26 {
27 
29  : public asg::AsgTool
30  , public virtual IDiTauSmearingTool
31 {
34 
35 public:
37  DiTauSmearingTool( const std::string& sName );
38 
40  virtual StatusCode initialize() override;
41 
43  virtual CP::CorrectionCode applyCorrection( xAOD::DiTauJet& xDiTau ) override;
46  xAOD::DiTauJet*& output ) override;
47 
49  virtual bool isAffectedBySystematic( const CP::SystematicVariation& systematic ) const override;
50 
52  virtual CP::SystematicSet affectingSystematics() const override;
53 
55  virtual CP::SystematicSet recommendedSystematics() const override;
56 
57  virtual StatusCode applySystematicVariation( const CP::SystematicSet& systConfig ) override;
58 
59 private:
61  std::string m_sInputFilePath;
62  std::string m_sRecommendationTag;
64 
65 }; // class DiTauSmearingTool
66 
67 } // namespace TauAnalysisTools
68 
69 #endif // TAUANALYSISTOOLS_DITAUSMEARINGTOOL_H
70 
71 
72 
TauAnalysisTools
Definition: TruthCollectionMakerTau.h:16
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
asg::AnaToolHandle
a modified tool handle that allows its owner to configure new tools from the C++ side
Definition: AnaToolHandle.h:34
TauAnalysisTools::DiTauSmearingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::DiTauJet &xDiTau) override
Apply the correction on a modifyable object.
Definition: DiTauSmearingTool.cxx:62
CommonDiTauSmearingTool.h
TauAnalysisTools::DiTauSmearingTool::applySystematicVariation
virtual StatusCode applySystematicVariation(const CP::SystematicSet &systConfig) override
effects: configure this tool for the given list of systematic variations.
Definition: DiTauSmearingTool.cxx:91
TauAnalysisTools::DiTauSmearingTool::recommendedSystematics
virtual CP::SystematicSet recommendedSystematics() const override
returns: the list of all systematics this tool recommends to use
Definition: DiTauSmearingTool.cxx:86
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
TauAnalysisTools::IDiTauSmearingTool
Definition: IDiTauSmearingTool.h:29
CP::SystematicVariation
Definition: SystematicVariation.h:47
TauAnalysisTools::DiTauSmearingTool::m_bSkipTruthMatchCheck
bool m_bSkipTruthMatchCheck
Definition: DiTauSmearingTool.h:63
IDiTauSmearingTool.h
TauAnalysisTools::DiTauSmearingTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::DiTauJet &input, xAOD::DiTauJet *&output) override
Create a corrected copy from a constant ditau.
Definition: DiTauSmearingTool.cxx:67
TauAnalysisTools::DiTauSmearingTool::affectingSystematics
virtual CP::SystematicSet affectingSystematics() const override
returns: the list of all systematics this tool can be affected by
Definition: DiTauSmearingTool.cxx:80
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
TauAnalysisTools::DiTauSmearingTool
Definition: DiTauSmearingTool.h:31
TauAnalysisTools::DiTauSmearingTool::m_tCommonDiTauSmearingTool
asg::AnaToolHandle< IDiTauSmearingTool > m_tCommonDiTauSmearingTool
Definition: DiTauSmearingTool.h:60
TauAnalysisTools::DiTauSmearingTool::m_sRecommendationTag
std::string m_sRecommendationTag
Definition: DiTauSmearingTool.h:62
AnaToolHandle.h
merge.output
output
Definition: merge.py:17
TauAnalysisTools::DiTauSmearingTool::initialize
virtual StatusCode initialize() override
Function initialising the tool.
Definition: DiTauSmearingTool.cxx:24
TauAnalysisTools::DiTauSmearingTool::m_sInputFilePath
std::string m_sInputFilePath
Definition: DiTauSmearingTool.h:61
TauAnalysisTools::DiTauSmearingTool::DiTauSmearingTool
DiTauSmearingTool(const std::string &sName)
Create a proper constructor for Athena.
Definition: DiTauSmearingTool.cxx:15
TauAnalysisTools::DiTauSmearingTool::isAffectedBySystematic
virtual bool isAffectedBySystematic(const CP::SystematicVariation &systematic) const override
returns: whether this tool is affected by the given systematis
Definition: DiTauSmearingTool.cxx:74
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
CP::CorrectionCode
Return value from object correction CP tools.
Definition: CorrectionCode.h:31
xAOD::DiTauJet_v1
Definition: DiTauJet_v1.h:31
AsgTool.h