ATLAS Offline Software
Tool_ModeDiscriminator.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 PANTAUALGS_TOOL_MODEDISCRIMINATOR_H
6 #define PANTAUALGS_TOOL_MODEDISCRIMINATOR_H
7 
9 #include "AsgTools/AsgTool.h"
10 #include "AsgTools/ToolHandle.h"
11 
16 
18 #include <vector>
19 #include <string>
20 
21 #include "MVAUtils/BDT.h"
22 
23 namespace PanTau {
24  class PanTauSeed;
25 }
26 
27 
28 
29 namespace PanTau {
30 
37 
39 
40  public:
41 
42  Tool_ModeDiscriminator(const std::string& name);
44 
45  virtual StatusCode initialize();
46 
47  virtual double getResponse(PanTau::PanTauSeed* inSeed, bool& isOK) const;
48 
49  private:
50 
51  void updateReaderVariables(PanTau::PanTauSeed* inSeed, std::vector<float>& list_BDTVariableValues) const;
52 
53  std::string m_calib_path; //<! cvmfs folder for data files
54  std::string m_Name_InputAlg;
55  std::string m_Name_ModeCase;
56  ToolHandle<PanTau::ITool_InformationStore> m_Tool_InformationStore;
59  std::vector<std::unique_ptr<MVAUtils::BDT> > m_MVABDT_List;
60 
61  std::vector<double> m_BinEdges_Pt;
62  std::string m_ReaderOption;
63  std::string m_MethodName;
64  std::vector<std::string> m_List_BDTVariableNames;
65  std::vector<double> m_List_BDTVariableDefaultValues;
66 
67  bool m_init=false;
68 
69  public:
70  inline bool isInitialized(){return m_init;}
71 
72  };
73 } // end of namespace PanTau
74 #endif // PANTAUALGS_TOOL_MODEDISCRIMINATOR_H
PanTau::Tool_ModeDiscriminator::m_calib_path
std::string m_calib_path
Definition: Tool_ModeDiscriminator.h:53
PanTau::Tool_ModeDiscriminator::m_init
bool m_init
Definition: Tool_ModeDiscriminator.h:67
PanTau::Tool_ModeDiscriminator::m_Name_InputAlg
std::string m_Name_InputAlg
Definition: Tool_ModeDiscriminator.h:54
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
PanTau::Tool_ModeDiscriminator::m_HelperFunctions
PanTau::HelperFunctions m_HelperFunctions
Definition: Tool_ModeDiscriminator.h:58
HelperFunctions.h
PanTau::Tool_ModeDiscriminator::isInitialized
bool isInitialized()
Definition: Tool_ModeDiscriminator.h:70
PanTau::Tool_ModeDiscriminator::m_ReaderOption
std::string m_ReaderOption
Definition: Tool_ModeDiscriminator.h:62
PanTau::Tool_ModeDiscriminator::Tool_ModeDiscriminator
Tool_ModeDiscriminator(const std::string &name)
Definition: Tool_ModeDiscriminator.cxx:16
PanTau::ITool_ModeDiscriminator
Interface for PID from tau seeds.
Definition: ITool_ModeDiscriminator.h:22
PanTau::Tool_ModeDiscriminator::~Tool_ModeDiscriminator
virtual ~Tool_ModeDiscriminator()
ITool_InformationStore.h
PanTau::Tool_ModeDiscriminator::m_MethodName
std::string m_MethodName
Definition: Tool_ModeDiscriminator.h:63
PanTau::HelperFunctions
Definition: Reconstruction/PanTau/PanTauAlgs/PanTauAlgs/HelperFunctions.h:26
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PanTau::Tool_ModeDiscriminator::m_List_BDTVariableDefaultValues
std::vector< double > m_List_BDTVariableDefaultValues
Definition: Tool_ModeDiscriminator.h:65
PanTau::Tool_ModeDiscriminator::m_BinEdges_Pt
std::vector< double > m_BinEdges_Pt
Definition: Tool_ModeDiscriminator.h:61
BDT.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
PanTau::Tool_ModeDiscriminator::getResponse
virtual double getResponse(PanTau::PanTauSeed *inSeed, bool &isOK) const
Definition: Tool_ModeDiscriminator.cxx:128
PanTau::Tool_ModeDiscriminator::updateReaderVariables
void updateReaderVariables(PanTau::PanTauSeed *inSeed, std::vector< float > &list_BDTVariableValues) const
Definition: Tool_ModeDiscriminator.cxx:102
PanTau::Tool_ModeDiscriminator
Definition: Tool_ModeDiscriminator.h:36
PanTau
xAOD EDM
Definition: Reconstruction/PanTau/PanTauAlgs/PanTauAlgs/HelperFunctions.h:18
ITool_ModeDiscriminator.h
PanTau::Tool_ModeDiscriminator::m_List_BDTVariableNames
std::vector< std::string > m_List_BDTVariableNames
Definition: Tool_ModeDiscriminator.h:64
ASG_TOOL_CLASS1
#define ASG_TOOL_CLASS1
Definition: AsgToolMacros.h:75
PanTau::Tool_ModeDiscriminator::m_Tool_InformationStore
ToolHandle< PanTau::ITool_InformationStore > m_Tool_InformationStore
Definition: Tool_ModeDiscriminator.h:56
PanTau::Tool_ModeDiscriminator::m_Name_ModeCase
std::string m_Name_ModeCase
Definition: Tool_ModeDiscriminator.h:55
ToolHandle.h
AsgTool.h
PanTau::Tool_ModeDiscriminator::initialize
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition: Tool_ModeDiscriminator.cxx:34
PanTau::Tool_ModeDiscriminator::m_Tool_InformationStoreName
std::string m_Tool_InformationStoreName
Definition: Tool_ModeDiscriminator.h:57
PanTau::PanTauSeed
Definition: PanTauSeed.h:24
PanTau::Tool_ModeDiscriminator::m_MVABDT_List
std::vector< std::unique_ptr< MVAUtils::BDT > > m_MVABDT_List
Definition: Tool_ModeDiscriminator.h:59