ATLAS Offline Software
PhysValTau.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 //
3 // Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4 //
5 #ifndef TAUDQA_PHYSVALTAU_H
6 #define TAUDQA_PHYSVALTAU_H
7 
8 // STL includes
9 #include <memory>
10 #include <string>
11 #include <vector>
12 
13 // FrameWork includes
14 #include "GaudiKernel/ServiceHandle.h"
15 #include "GaudiKernel/ToolHandle.h"
17 
18 // Local includes
22 
23 // Local includes
24 #include "TauValidationPlots.h"
25 
27  : public ManagedMonitorToolBase
28 {
29 
30 public:
32  PhysValTau( const std::string& type,
33  const std::string& name,
34  const IInterface* parent );
35 
36  // Athena algtool's Hooks
37  virtual StatusCode initialize();
38  virtual StatusCode bookHistograms();
39  virtual StatusCode fillHistograms();
40  virtual StatusCode procHistograms();
41 
42 
43 private:
44  // properties
45  Gaudi::Property<std::string> m_TauJetContainerName{this, "TauContainerName", "TauJets"};
46  Gaudi::Property<bool> m_isMC{this, "isMC", false};
47 
48  // Tool used for truth-matching
49  ToolHandle<TauAnalysisTools::ITauTruthMatchingTool> m_truthTool{this, "TauTruthMatchingTool", "TauAnalysisTools::TauTruthMatchingTool/TauTruthMatchingTool"};
50  // Tool used to select "primitive" and "nominal" taus
51  ToolHandle<TauAnalysisTools::ITauSelectionTool> m_primTauSel{this, "PrimitiveTauSelectionTool", "TauAnalysisTools::TauSelectionTool/PrimitiveTauSelectionTool"};
52  ToolHandle<TauAnalysisTools::ITauSelectionTool> m_nomiTauSel{this, "NominalTauSelectionTool", "TauAnalysisTools::TauSelectionTool/NominalTauSelectionTool"};
53 
54  //Histograms
55  // general tau all prongs plots
56  std::unique_ptr<TauValidationPlots> m_oTauValidationPlots;
57 
58 };
59 
60 #endif //> !TAUDQA_PHYSVALTAU_H
PhysValTau::PhysValTau
PhysValTau(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition: PhysValTau.cxx:26
PropertyWrapper.h
PhysValTau::m_nomiTauSel
ToolHandle< TauAnalysisTools::ITauSelectionTool > m_nomiTauSel
Definition: PhysValTau.h:52
PhysValTau::m_isMC
Gaudi::Property< bool > m_isMC
Definition: PhysValTau.h:46
PhysValTau
Definition: PhysValTau.h:28
TauValidationPlots.h
ManagedMonitorToolBase
Provides functionality for users to implement and save histograms, ntuples, and summary data,...
Definition: ManagedMonitorToolBase.h:73
PhysValTau::m_TauJetContainerName
Gaudi::Property< std::string > m_TauJetContainerName
Definition: PhysValTau.h:45
PhysValTau::m_primTauSel
ToolHandle< TauAnalysisTools::ITauSelectionTool > m_primTauSel
Definition: PhysValTau.h:51
ITauSelectionTool.h
PhysValTau::m_oTauValidationPlots
std::unique_ptr< TauValidationPlots > m_oTauValidationPlots
Definition: PhysValTau.h:56
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
ManagedMonitorToolBase.h
ITauTruthMatchingTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
PhysValTau::initialize
virtual StatusCode initialize()
Definition: PhysValTau.cxx:34
PhysValTau::m_truthTool
ToolHandle< TauAnalysisTools::ITauTruthMatchingTool > m_truthTool
Definition: PhysValTau.h:49
PhysValTau::bookHistograms
virtual StatusCode bookHistograms()
An inheriting class should either override this function or bookHists().
Definition: PhysValTau.cxx:49
PhysValTau::procHistograms
virtual StatusCode procHistograms()
An inheriting class should either override this function or finalHists().
Definition: PhysValTau.cxx:254
PhysValTau::fillHistograms
virtual StatusCode fillHistograms()
An inheriting class should either override this function or fillHists().
Definition: PhysValTau.cxx:66