ATLAS Offline Software
DiTauDiscriminantTool.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef DITAURECTOOLS_DITAUDISCRIMINANTTOOL_H
8 #define DITAURECTOOLS_DITAUDISCRIMINANTTOOL_H
9 
17 // Framework include(s):
18 #include "AsgTools/AsgTool.h"
20 
21 // Local include(s):
23 
24 #include "tauRecTools/BDTHelper.h"
25 
26 #include <string>
27 #include <map>
28 
29 
30 namespace DiTauRecTools
31 {
32 
33 
36  , public asg::AsgTool
37 {
41 
42 public:
43 
44  DiTauDiscriminantTool( const std::string& name );
45 
46  virtual ~DiTauDiscriminantTool();
47 
48  // initialize the tool
49  virtual StatusCode initialize() override;
50 
51  // get ID score depricated
52  double getJetBDTScore(const xAOD::DiTauJet& xDiTau);
53 
54  // calculate and decorate BDTJetScore
55  virtual StatusCode execute(const xAOD::DiTauJet& xDiTau) const override;
56 
57 private:
58 
59  Gaudi::Property<std::string> m_sWeightsFile{this, "WeightsFile", "tauRecTools/R22_preprod/DiTau_JetBDT_winter2024.weights.root"};
60  Gaudi::Property<std::string> m_sBDTScoreName{this, "BDTScoreName", "JetBDT"};
61 
63 
64  std::map<TString, float> setIDVariables(const xAOD::DiTauJet& xDiTau) const;
65 
66  std::unique_ptr<tauRecTools::BDTHelper> m_mvaBDT = nullptr;
67 
68  std::vector<std::string> m_vVarNames;
69 
70 }; // class DiTauDiscriminantTool
71 
72 }
73 #endif // DITAURECTOOLS_DITAUDISCRIMINANTTOOL_H
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
PropertyWrapper.h
DiTauRecTools::DiTauDiscriminantTool::m_mvaBDT
std::unique_ptr< tauRecTools::BDTHelper > m_mvaBDT
Definition: DiTauDiscriminantTool.h:66
BDTHelper.h
DiTauRecTools::DiTauDiscriminantTool::parseWeightsFile
StatusCode parseWeightsFile()
Definition: DiTauDiscriminantTool.cxx:60
DiTauRecTools::DiTauDiscriminantTool::m_sBDTScoreName
Gaudi::Property< std::string > m_sBDTScoreName
Definition: DiTauDiscriminantTool.h:60
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
DiTauRecTools::IDiTauToolBase
Definition: IDiTauToolBase.h:20
DiTauRecTools::DiTauDiscriminantTool
Definition: DiTauDiscriminantTool.h:37
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
DiTauRecTools
Implementation of boosted di-tau ID.
Definition: DiTauDiscriminantTool.h:31
DiTauRecTools::DiTauDiscriminantTool::getJetBDTScore
double getJetBDTScore(const xAOD::DiTauJet &xDiTau)
DiTauRecTools::DiTauDiscriminantTool::m_sWeightsFile
Gaudi::Property< std::string > m_sWeightsFile
Definition: DiTauDiscriminantTool.h:59
DiTauRecTools::DiTauDiscriminantTool::setIDVariables
std::map< TString, float > setIDVariables(const xAOD::DiTauJet &xDiTau) const
Definition: DiTauDiscriminantTool.cxx:73
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
DiTauRecTools::DiTauDiscriminantTool::m_vVarNames
std::vector< std::string > m_vVarNames
Definition: DiTauDiscriminantTool.h:68
xAOD::DiTauJet_v1
Definition: DiTauJet_v1.h:31
AsgTool.h
IDiTauToolBase.h
DiTauRecTools::DiTauDiscriminantTool::execute
virtual StatusCode execute(const xAOD::DiTauJet &xDiTau) const override
Declare the interface that the class provides.
Definition: DiTauDiscriminantTool.cxx:44
DiTauRecTools::DiTauDiscriminantTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition: DiTauDiscriminantTool.cxx:30