ATLAS Offline Software
CalibrationDataInterfaceTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // CalibrationDataInterfaceTool.h, (c) ATLAS Detector software
8 
9 #ifndef ANALYSISCALIBRATIONDATAINTERFACETOOL_H
10 #define ANALYSISCALIBRATIONDATAINTERFACETOOL_H
11 
13 #include "GaudiKernel/ToolHandle.h"
14 #include "JetTagCalibration/CalibrationBroker.h"
17 #include "Rtypes.h"
18 #include <vector>
19 #include <string>
20 #include <utility>
21 
22 class AtlasDetectorID;
23 class Identifier;
24 class Jet;
25 
26 namespace Analysis
27 {
28 
29  class CalibrationDataVariables;
30 
64  class CalibrationDataInterfaceTool : public extends<AthAlgTool, ICalibrationDataInterfaceTool>,
66  {
67  public:
68  CalibrationDataInterfaceTool(const std::string&,const std::string&,const IInterface*);
69 
71  virtual ~CalibrationDataInterfaceTool () = default;
72 
74  virtual StatusCode initialize() override;
75 
83  CalibResult getEfficiency (const Jet& jet, const std::string& label,
84  const std::string& OP, Uncertainty unc = None) const;
85 
87  CalibResult getMCEfficiency (const Jet& jet, const std::string& label,
88  const std::string& OP, Uncertainty unc = None) const;
89 
91  CalibResult getScaleFactor (const Jet& jet, const std::string& label,
92  const std::string& OP, Uncertainty unc = None) const;
93 
94  private:
95 
97  void registerObjects(const std::string& folder, const std::string& OP) const;
98 
100  void retrieveFunctionArguments(const Jet& jet, const std::string& object, Double_t* x) const;
101 
103  void makeVariables (const Jet& jet, CalibrationDataVariables& x) const;
104 
105  //-------------------- Properties --------------------
106 
112  std::string m_SFcalibrationBName;
113  std::string m_SFcalibrationCName;
114  std::string m_SFcalibrationTName;
116 
118  ToolHandle<CalibrationBroker> m_broker {this, "CalibrationBroker", "", "brief pointer to the performance broker"};
119 
120  };
121 } // end of namespace
122 
123 #endif
Analysis::CalibResult
std::pair< double, double > CalibResult
Definition: CalibrationDataInterfaceBase.h:34
Analysis::CalibrationDataInterfaceTool::m_SFcalibrationCName
std::string m_SFcalibrationCName
Definition: CalibrationDataInterfaceTool.h:113
Analysis::CalibrationDataInterfaceBase
Definition: CalibrationDataInterfaceBase.h:47
Jet
Basic data class defines behavior for all Jet objects The Jet class is the principal data class for...
Definition: Reconstruction/Jet/JetEvent/JetEvent/Jet.h:47
Analysis::CalibrationDataInterfaceTool::m_EffcalibrationTName
std::string m_EffcalibrationTName
Definition: CalibrationDataInterfaceTool.h:110
PlotCalibFromCool.label
label
Definition: PlotCalibFromCool.py:78
Analysis::CalibrationDataInterfaceTool::registerObjects
void registerObjects(const std::string &folder, const std::string &OP) const
auxiliary function dealing with registration of objects
Definition: CalibrationDataInterfaceTool.cxx:294
x
#define x
Analysis::CalibrationDataInterfaceTool::getEfficiency
CalibResult getEfficiency(const Jet &jet, const std::string &label, const std::string &OP, Uncertainty unc=None) const
Main interface methods accessing the flavour tagging performance information.
Definition: CalibrationDataInterfaceTool.cxx:271
Analysis::CalibrationDataInterfaceTool::m_EffcalibrationBName
std::string m_EffcalibrationBName
calibration curves for b, c, and light-flavour jets
Definition: CalibrationDataInterfaceTool.h:108
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
Analysis::CalibrationDataInterfaceTool::m_broker
ToolHandle< CalibrationBroker > m_broker
pointer to the performance broker
Definition: CalibrationDataInterfaceTool.h:118
Analysis::Uncertainty
Uncertainty
specification of type information requested by the user
Definition: CalibrationDataInterfaceROOT.h:70
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Analysis::CalibrationDataInterfaceTool::m_SFcalibrationLightName
std::string m_SFcalibrationLightName
Definition: CalibrationDataInterfaceTool.h:115
AthAlgTool.h
Analysis::CalibrationDataInterfaceTool::m_EffcalibrationLightName
std::string m_EffcalibrationLightName
Definition: CalibrationDataInterfaceTool.h:111
ICalibrationDataInterfaceTool.h
Analysis::CalibrationDataInterfaceTool::getScaleFactor
CalibResult getScaleFactor(const Jet &jet, const std::string &label, const std::string &OP, Uncertainty unc=None) const
efficiency scale factor retrieval
Definition: CalibrationDataInterfaceTool.cxx:144
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
Analysis::CalibrationDataInterfaceTool::CalibrationDataInterfaceTool
CalibrationDataInterfaceTool(const std::string &, const std::string &, const IInterface *)
Definition: CalibrationDataInterfaceTool.cxx:28
Analysis::CalibrationDataInterfaceTool::makeVariables
void makeVariables(const Jet &jet, CalibrationDataVariables &x) const
auxiliary function to create the intermediate struct needed for the data layer
Definition: CalibrationDataInterfaceTool.cxx:309
Analysis::CalibrationDataInterfaceTool::initialize
virtual StatusCode initialize() override
standard Athena-Algorithm method
Definition: CalibrationDataInterfaceTool.cxx:59
Analysis::CalibrationDataInterfaceTool::m_EffcalibrationCName
std::string m_EffcalibrationCName
Definition: CalibrationDataInterfaceTool.h:109
Analysis::CalibrationDataInterfaceTool::m_SFcalibrationBName
std::string m_SFcalibrationBName
Definition: CalibrationDataInterfaceTool.h:112
Analysis::CalibrationDataVariables
Definition: CalibrationDataVariables.h:42
Analysis::CalibrationDataInterfaceTool::~CalibrationDataInterfaceTool
virtual ~CalibrationDataInterfaceTool()=default
default destructor
CaloCondBlobAlgs_fillNoiseFromASCII.folder
folder
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:56
Analysis::None
@ None
Definition: CalibrationDataInterfaceROOT.h:70
Analysis::CalibrationDataInterfaceTool::retrieveFunctionArguments
void retrieveFunctionArguments(const Jet &jet, const std::string &object, Double_t *x) const
auxiliary function to retrieve values of function arguments
Analysis::CalibrationDataInterfaceTool::getMCEfficiency
CalibResult getMCEfficiency(const Jet &jet, const std::string &label, const std::string &OP, Uncertainty unc=None) const
"MC" efficiency retrieval
Definition: CalibrationDataInterfaceTool.cxx:209
CalibrationDataInterfaceBase.h
Analysis::CalibrationDataInterfaceTool::m_SFcalibrationTName
std::string m_SFcalibrationTName
Definition: CalibrationDataInterfaceTool.h:114
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57
Analysis::CalibrationDataInterfaceTool
Definition: CalibrationDataInterfaceTool.h:66
Identifier
Definition: IdentifierFieldParser.cxx:14