Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
DiTauTruthMatchingTool.h
Go to the documentation of this file.
1 
10 // Dear emacs, this is -*- c++ -*-
11 
12 
13 #ifndef TAUANALYSISTOOLS_DITAUTRUTHMATCHINGTOOL_H
14 #define TAUANALYSISTOOLS_DITAUTRUTHMATCHINGTOOL_H
15 
16 
17 // Local include(s):
20 #include "xAODBase/IParticle.h"
21 #include "CxxUtils/CachedValue.h"
23 
24 namespace TauAnalysisTools
25 {
26 
28  : public virtual TauAnalysisTools::BuildTruthTaus
30 {
35 
36 public: // Interface functions
37 
38  DiTauTruthMatchingTool( const std::string& name );
39 
40  virtual ~DiTauTruthMatchingTool();
41 
42  // initialize the tool
43  virtual StatusCode initialize();
44 
47  virtual void getTruth(const xAOD::DiTauJet& xDiTau);
48 
49  virtual void getTruth(const std::vector<const xAOD::DiTauJet*>& vDiTaus);
50 
51 private: // private helper functions
52 
53  StatusCode findTruthTau(const xAOD::DiTauJet& xDiTau);
54  StatusCode checkTruthMatch (const xAOD::DiTauJet& xDiTau, const xAOD::TruthParticleContainer& xTauContainer) const;
55  StatusCode truthMatch (const TLorentzVector& vSubjetTLV,
56  const xAOD::TruthParticleContainer& xTruthTauContainer,
57  const xAOD::TruthParticle* &xTruthMatch,
58  TruthMatchedParticleType &eTruthMatchedParticleType) const;
60 
61 private: // steering variables
62 
63  Gaudi::Property<double> m_dMaxDeltaR{this, "MaxDeltaR", 0.2};
64 
67 
68 private: // private helper variables
69 
74 }; // class DiTauTruthMatchingTool
75 
76 }
77 #endif // TAUANALYSISTOOLS_DITAUTRUTHMATCHINGTOOL_H
TauAnalysisTools
Definition: TruthCollectionMakerTau.h:16
TauAnalysisTools::DiTauTruthMatchingTool::getTruth
virtual void getTruth(const xAOD::DiTauJet &xDiTau)
get pointer to the truth matched particle.
Definition: DiTauTruthMatchingTool.cxx:61
PropertyWrapper.h
TauAnalysisTools::DiTauTruthMatchingTool::m_accMVis
SG::ConstAccessor< double > m_accMVis
Definition: DiTauTruthMatchingTool.h:73
IParticle.h
TauAnalysisTools::DiTauTruthMatchingTool::m_bIsTruthMatchedAvailable
CxxUtils::CachedValue< bool > m_bIsTruthMatchedAvailable
Definition: DiTauTruthMatchingTool.h:65
TauAnalysisTools::DiTauTruthMatchingTool::m_accPtVis
SG::ConstAccessor< double > m_accPtVis
Definition: DiTauTruthMatchingTool.h:70
TauAnalysisTools::DiTauTruthMatchingTool::checkTruthMatch
StatusCode checkTruthMatch(const xAOD::DiTauJet &xDiTau, const xAOD::TruthParticleContainer &xTauContainer) const
Definition: DiTauTruthMatchingTool.cxx:103
ASG_TOOL_CLASS2
#define ASG_TOOL_CLASS2(CLASSNAME, INT1, INT2)
Definition: AsgToolMacros.h:77
SG::ConstAccessor< double >
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
TauAnalysisTools::DiTauTruthMatchingTool::m_accEtaVis
SG::ConstAccessor< double > m_accEtaVis
Definition: DiTauTruthMatchingTool.h:71
IDiTauTruthMatchingTool.h
Tau, lepton and jet truth matching for ditau jets.
TauAnalysisTools::BuildTruthTaus
Definition: BuildTruthTaus.h:35
TauAnalysisTools::IDiTauTruthMatchingTool
Definition: IDiTauTruthMatchingTool.h:37
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAOD::TruthParticle_v1
Class describing a truth particle in the MC record.
Definition: TruthParticle_v1.h:37
CxxUtils::CachedValue< bool >
TauAnalysisTools::DiTauTruthMatchingTool::initialize
virtual StatusCode initialize()
Definition: DiTauTruthMatchingTool.cxx:45
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
TauAnalysisTools::DiTauTruthMatchingTool
Definition: DiTauTruthMatchingTool.h:30
BuildTruthTaus.h
TauAnalysisTools::DiTauTruthMatchingTool::m_accPhiVis
SG::ConstAccessor< double > m_accPhiVis
Definition: DiTauTruthMatchingTool.h:72
TauAnalysisTools::DiTauTruthMatchingTool::truthMatch
StatusCode truthMatch(const TLorentzVector &vSubjetTLV, const xAOD::TruthParticleContainer &xTruthTauContainer, const xAOD::TruthParticle *&xTruthMatch, TruthMatchedParticleType &eTruthMatchedParticleType) const
Definition: DiTauTruthMatchingTool.cxx:334
CachedValue.h
Cached value with atomic update.
TauAnalysisTools::TruthMatchedParticleType
TruthMatchedParticleType
Definition: PhysicsAnalysis/TauID/TauAnalysisTools/TauAnalysisTools/Enums.h:95
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
TauAnalysisTools::DiTauTruthMatchingTool::m_dMaxDeltaR
Gaudi::Property< double > m_dMaxDeltaR
Definition: DiTauTruthMatchingTool.h:63
TauAnalysisTools::DiTauTruthMatchingTool::findTruthTau
StatusCode findTruthTau(const xAOD::DiTauJet &xDiTau)
Definition: DiTauTruthMatchingTool.cxx:86
TauAnalysisTools::IBuildTruthTaus
Definition: IBuildTruthTaus.h:28
xAOD::DiTauJet_v1
Definition: DiTauJet_v1.h:31
TauAnalysisTools::DiTauTruthMatchingTool::checkTruthLepton
ElementLink< xAOD::TruthParticleContainer > checkTruthLepton(const xAOD::IParticle *pLepton) const
Definition: DiTauTruthMatchingTool.cxx:323
TauAnalysisTools::DiTauTruthMatchingTool::m_bIsTruthParticleLinkAvailable
CxxUtils::CachedValue< bool > m_bIsTruthParticleLinkAvailable
Definition: DiTauTruthMatchingTool.h:66