Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
PanTauProcessor.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef PANTAU_PANTAUPROCESSOR_H
6 #define PANTAU_PANTAUPROCESSOR_H
7 
8 // Gaudi includes
9 #include "AsgTools/AsgTool.h"
10 #include "AsgTools/ToolHandle.h"
12 
14 #include "xAODPFlow/PFOContainer.h"
15 
16 // C++ includes
17 #include <string>
18 #include <map>
19 #include <vector>
20 
21 // PanTau includes
27 
28 namespace PanTau
29 {
30 
41  class PanTauProcessor : virtual public TauRecToolBase
42  {
43  public:
44 
46 
47  PanTauProcessor(const std::string& name);
49 
50  virtual StatusCode initialize();
51  virtual StatusCode finalize();
52  virtual StatusCode executePanTau(xAOD::TauJet& pTau, xAOD::ParticleContainer& pi0Container, xAOD::PFOContainer& neutralPFOContainer) const;
53 
54  private:
55 
56  Gaudi::Property<std::string> m_Name_InputAlg{this, "Name_InputAlg", "", "Name of input algorithm for this instance"};
57 
58  //Tools used in seed building
59  ToolHandle<PanTau::ITool_InformationStore> m_Tool_InformationStore{this, "Tool_InformationStore", "PanTau::Tool_InformationStore/Tool_InformationStore", "Tool handle to Tool_InformationStore"};
60  ToolHandle<PanTau::ITool_TauConstituentGetter> m_Tool_TauConstituentGetter{this, "Tool_TauConstituentGetter", "PanTau::Tool_TauConstituentGetter/Tool_TauConstituentGetter", "Tool handle to Tool_TauConstituentGetter"};
61  ToolHandle<PanTau::ITool_TauConstituentSelector> m_Tool_TauConstituentSelector{this, "Tool_TauConstituentSelector", "PanTau::Tool_TauConstituentSelector/Tool_TauConstituentSelector", "Tool handle to Tool_TauConstituentSelector"};
62  ToolHandle<PanTau::ITool_PanTauTools> m_Tool_FeatureExtractor{this, "Tool_FeatureExtractor", "PanTau::Tool_FeatureExtractor/Tool_FeatureExtractor", "Tool handle to Tool_FeatureExtractor"};
63 
64  //Tools used in seed finalizing
65  ToolHandle<PanTau::ITool_PanTauTools> m_Tool_DecayModeDeterminator{this, "Tool_DecayModeDeterminator", "PanTau::Tool_DecayModeDeterminator/Tool_DecayModeDeterminator", "Tool handle to Tool_DecayModeDeterminator"};
66  ToolHandle<PanTau::ITool_DetailsArranger> m_Tool_DetailsArranger{this, "Tool_DetailsArranger", "PanTau::Tool_DetailsArranger/Tool_DetailsArranger", "Tool handle to Tool_DetailsArranger"};
67 
68  //Tools used in seed building
69  Gaudi::Property<std::string> m_Tool_InformationStoreName{this, "Tool_InformationStoreName", "", "Tool handle to Tool_InformationStore"};
70  Gaudi::Property<std::string> m_Tool_TauConstituentGetterName{this, "Tool_TauConstituentGetterName", "", "Tool handle to Tool_TauConstituentGetter"};
71  Gaudi::Property<std::string> m_Tool_TauConstituentSelectorName{this, "Tool_TauConstituentSelectorName", "", "Tool handle to Tool_TauConstituentSelector"};
72  Gaudi::Property<std::string> m_Tool_FeatureExtractorName{this, "Tool_FeatureExtractorName", "", "Tool handle to Tool_FeatureExtractor"};
73 
74  //Tools used in seed finalizing
75  Gaudi::Property<std::string> m_Tool_DecayModeDeterminatorName{this, "Tool_DecayModeDeterminatorName", "", "Tool handle to Tool_DecayModeDeterminator"};
76  Gaudi::Property<std::string> m_Tool_DetailsArrangerName{this, "Tool_DetailsArrangerName", "", "Tool handle to Tool_DetailsArranger"};
77 
78  std::vector<double> m_Config_PtBins;
79  double m_Config_MinPt = 0.0;
80  double m_Config_MaxPt = 0.0;
81 
82  static void fillDefaultValuesToTau(xAOD::TauJet* tauJet) ;
83 
84 
85  }; //end class
86 } // end of namespace
87 
88 #endif
PanTau::PanTauProcessor::m_Tool_TauConstituentSelector
ToolHandle< PanTau::ITool_TauConstituentSelector > m_Tool_TauConstituentSelector
Definition: PanTauProcessor.h:61
PropertyWrapper.h
PanTau::PanTauProcessor::finalize
virtual StatusCode finalize()
Finalizer.
Definition: PanTauProcessor.cxx:55
PanTau::PanTauProcessor::~PanTauProcessor
~PanTauProcessor()
ASG_TOOL_CLASS2
#define ASG_TOOL_CLASS2(CLASSNAME, INT1, INT2)
Definition: AsgToolMacros.h:77
PanTau::PanTauProcessor::PanTauProcessor
PanTauProcessor(const std::string &name)
Definition: PanTauProcessor.cxx:18
ITool_PanTauTools.h
PanTau::PanTauProcessor::m_Tool_FeatureExtractor
ToolHandle< PanTau::ITool_PanTauTools > m_Tool_FeatureExtractor
Definition: PanTauProcessor.h:62
TauRecToolBase.h
TauRecToolBase
The base class for all tau tools.
Definition: TauRecToolBase.h:21
PFOContainer.h
PanTau::PanTauProcessor::m_Config_MinPt
double m_Config_MinPt
Definition: PanTauProcessor.h:79
PanTau::PanTauProcessor::m_Tool_TauConstituentGetterName
Gaudi::Property< std::string > m_Tool_TauConstituentGetterName
Definition: PanTauProcessor.h:70
ITool_InformationStore.h
PanTau::PanTauProcessor::executePanTau
virtual StatusCode executePanTau(xAOD::TauJet &pTau, xAOD::ParticleContainer &pi0Container, xAOD::PFOContainer &neutralPFOContainer) const
Definition: PanTauProcessor.cxx:60
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ITool_TauConstituentSelector.h
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
PanTau::PanTauProcessor::initialize
virtual StatusCode initialize()
Tool initializer.
Definition: PanTauProcessor.cxx:27
PanTau::PanTauProcessor::m_Tool_DecayModeDeterminatorName
Gaudi::Property< std::string > m_Tool_DecayModeDeterminatorName
Definition: PanTauProcessor.h:75
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
PanTau::PanTauProcessor::m_Config_PtBins
std::vector< double > m_Config_PtBins
Definition: PanTauProcessor.h:78
ITool_TauConstituentGetter.h
PanTau::PanTauProcessor::m_Name_InputAlg
Gaudi::Property< std::string > m_Name_InputAlg
Definition: PanTauProcessor.h:56
PanTau::PanTauProcessor::m_Config_MaxPt
double m_Config_MaxPt
Definition: PanTauProcessor.h:80
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
ITauToolBase
The base class for all tau tools.
Definition: ITauToolBase.h:30
PanTau::PanTauProcessor::m_Tool_FeatureExtractorName
Gaudi::Property< std::string > m_Tool_FeatureExtractorName
Definition: PanTauProcessor.h:72
PanTau::PanTauProcessor
Definition: PanTauProcessor.h:42
PanTau::PanTauProcessor::fillDefaultValuesToTau
static void fillDefaultValuesToTau(xAOD::TauJet *tauJet)
Definition: PanTauProcessor.cxx:156
PanTau::PanTauProcessor::m_Tool_DecayModeDeterminator
ToolHandle< PanTau::ITool_PanTauTools > m_Tool_DecayModeDeterminator
Definition: PanTauProcessor.h:65
PanTau
xAOD EDM
Definition: Reconstruction/PanTau/PanTauAlgs/PanTauAlgs/HelperFunctions.h:18
PanTau::PanTauProcessor::m_Tool_TauConstituentSelectorName
Gaudi::Property< std::string > m_Tool_TauConstituentSelectorName
Definition: PanTauProcessor.h:71
PanTau::PanTauProcessor::m_Tool_DetailsArrangerName
Gaudi::Property< std::string > m_Tool_DetailsArrangerName
Definition: PanTauProcessor.h:76
ITool_DetailsArranger.h
PanTau::PanTauProcessor::m_Tool_TauConstituentGetter
ToolHandle< PanTau::ITool_TauConstituentGetter > m_Tool_TauConstituentGetter
Definition: PanTauProcessor.h:60
PanTau::PanTauProcessor::m_Tool_InformationStoreName
Gaudi::Property< std::string > m_Tool_InformationStoreName
Definition: PanTauProcessor.h:69
PanTau::PanTauProcessor::m_Tool_InformationStore
ToolHandle< PanTau::ITool_InformationStore > m_Tool_InformationStore
Definition: PanTauProcessor.h:59
ToolHandle.h
PanTau::PanTauProcessor::m_Tool_DetailsArranger
ToolHandle< PanTau::ITool_DetailsArranger > m_Tool_DetailsArranger
Definition: PanTauProcessor.h:66
AsgTool.h