ATLAS Offline Software
TauSmearingTool.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 TAUANALYSISTOOLS_TAUSMEARINGTOOL_H
6 #define TAUANALYSISTOOLS_TAUSMEARINGTOOL_H
7 
8 /*
9  author: Dirk Duschinger
10  mail: dirk.duschinger@cern.ch
11  documentation in: ../README.rst
12  or
13  https://svnweb.cern.ch/trac/atlasoff/browser/PhysicsAnalysis/TauID/TauAnalysisTools/trunk/README.rst
14 */
15 
16 // Framework include(s):
17 #include "AsgTools/AsgTool.h"
18 #include "AsgTools/AnaToolHandle.h"
20 
21 // Local include(s):
22 #include "TauAnalysisTools/Enums.h"
25 
26 namespace TauAnalysisTools
27 {
28 
30  : public asg::AsgMetadataTool
31  , public virtual ITauSmearingTool
32 {
35 
36 public:
38  TauSmearingTool( const std::string& sName );
39 
41 
43  virtual StatusCode initialize();
44 
45  virtual StatusCode beginInputFile();
46 
48  virtual CP::CorrectionCode applyCorrection( xAOD::TauJet& xTau ) const;
49 
52  xAOD::TauJet*& output ) const;
53 
55  virtual bool isAffectedBySystematic( const CP::SystematicVariation& systematic ) const;
56 
59 
62 
63  virtual StatusCode applySystematicVariation( const CP::SystematicSet& systConfig );
64 
65 private:
67  std::string m_sInputFilePath;
68  std::string m_sRecommendationTag;
69  std::string m_sGenerator;
70  std::string m_sCampaign;
71  bool m_sAFII;
77 
78 }; // class TauSmearingTool
79 
80 } // namespace TauAnalysisTools
81 
82 #endif // TAUANALYSISTOOLS_TAUSMEARINGTOOL_H
TauAnalysisTools
Definition: TruthCollectionMakerTau.h:16
TauAnalysisTools::ITauSmearingTool
Definition: ITauSmearingTool.h:30
TauAnalysisTools::TauSmearingTool::~TauSmearingTool
~TauSmearingTool()
Definition: TauSmearingTool.cxx:34
asg::AnaToolHandle
a modified tool handle that allows its owner to configure new tools from the C++ side
Definition: AnaToolHandle.h:34
Enums.h
TauAnalysisTools::TauSmearingTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::TauJet &input, xAOD::TauJet *&output) const
Create a corrected copy from a constant tau.
Definition: TauSmearingTool.cxx:126
TauAnalysisTools::TauSmearingTool::m_bApplyMVATESQualityCheck
bool m_bApplyMVATESQualityCheck
Definition: TauSmearingTool.h:75
TauAnalysisTools::TauSmearingTool::m_useFastSim
bool m_useFastSim
Definition: TauSmearingTool.h:72
TauAnalysisTools::TauSmearingTool::m_sInputFilePath
std::string m_sInputFilePath
Definition: TauSmearingTool.h:67
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
CP::SystematicVariation
Definition: SystematicVariation.h:47
TauAnalysisTools::TauSmearingTool::m_sCampaign
std::string m_sCampaign
Definition: TauSmearingTool.h:70
TauAnalysisTools::TauSmearingTool::affectingSystematics
virtual CP::SystematicSet affectingSystematics() const
returns: the list of all systematics this tool can be affected by
Definition: TauSmearingTool.cxx:138
TauAnalysisTools::TauSmearingTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::TauJet &xTau) const
Apply the correction on a modifyable object.
Definition: TauSmearingTool.cxx:121
TauAnalysisTools::TauSmearingTool::m_tCommonSmearingTool
asg::AnaToolHandle< ITauSmearingTool > m_tCommonSmearingTool
Definition: TauSmearingTool.h:66
TauAnalysisTools::TauSmearingTool
Definition: TauSmearingTool.h:32
TauAnalysisTools::TauSmearingTool::recommendedSystematics
virtual CP::SystematicSet recommendedSystematics() const
returns: the list of all systematics this tool recommends to use
Definition: TauSmearingTool.cxx:144
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TauAnalysisTools::TauSmearingTool::applySystematicVariation
virtual StatusCode applySystematicVariation(const CP::SystematicSet &systConfig)
effects: configure this tool for the given list of systematic variations.
Definition: TauSmearingTool.cxx:149
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
AnaToolHandle.h
merge.output
output
Definition: merge.py:17
TauAnalysisTools::TauSmearingTool::TauSmearingTool
TauSmearingTool(const std::string &sName)
Create a proper constructor for Athena.
Definition: TauSmearingTool.cxx:18
TauAnalysisTools::TauSmearingTool::m_sRecommendationTag
std::string m_sRecommendationTag
Definition: TauSmearingTool.h:68
TauAnalysisTools::TauSmearingTool::isAffectedBySystematic
virtual bool isAffectedBySystematic(const CP::SystematicVariation &systematic) const
returns: whether this tool is affected by the given systematis
Definition: TauSmearingTool.cxx:132
CommonSmearingTool.h
TauAnalysisTools::TauSmearingTool::beginInputFile
virtual StatusCode beginInputFile()
Function called when a new input file is opened.
Definition: TauSmearingTool.cxx:99
asg::AsgMetadataTool
Base class for dual-use tools that provide file metadata access.
Definition: AsgMetadataTool.h:48
TauAnalysisTools::TauSmearingTool::m_sGenerator
std::string m_sGenerator
Definition: TauSmearingTool.h:69
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
AsgMetadataTool.h
CP::CorrectionCode
Return value from object correction CP tools.
Definition: CorrectionCode.h:31
TauAnalysisTools::TauSmearingTool::m_bApplyFading
bool m_bApplyFading
Definition: TauSmearingTool.h:74
TauAnalysisTools::TauSmearingTool::m_bApplyInsituCorrection
bool m_bApplyInsituCorrection
Definition: TauSmearingTool.h:76
AsgTool.h
TauAnalysisTools::TauSmearingTool::m_sAFII
bool m_sAFII
Definition: TauSmearingTool.h:71
TauAnalysisTools::TauSmearingTool::m_bSkipTruthMatchCheck
bool m_bSkipTruthMatchCheck
Definition: TauSmearingTool.h:73
TauAnalysisTools::TauSmearingTool::initialize
virtual StatusCode initialize()
Function initialising the tool.
Definition: TauSmearingTool.cxx:38
ITauSmearingTool.h