ATLAS Offline Software
PhysicsAnalysis
TauID
TauAnalysisTools
TauAnalysisTools
DiTauTruthMatchingTool.h
Go to the documentation of this file.
1
11
// Dear emacs, this is -*- c++ -*-
12
13
14
#ifndef TAUANALYSISTOOLS_DITAUTRUTHMATCHINGTOOL_H
15
#define TAUANALYSISTOOLS_DITAUTRUTHMATCHINGTOOL_H
16
17
18
// Local include(s):
19
#include "
TauAnalysisTools/IDiTauTruthMatchingTool.h
"
20
#include "
TauAnalysisTools/BuildTruthTaus.h
"
21
#include "
xAODBase/IParticle.h
"
22
#include "
CxxUtils/CachedValue.h
"
23
24
namespace
TauAnalysisTools
25
{
26
27
class
DiTauTruthMatchingTool
28
:
public
virtual
TauAnalysisTools::BuildTruthTaus
29
,
public
virtual
TauAnalysisTools::IDiTauTruthMatchingTool
30
{
32
ASG_TOOL_CLASS2
(
DiTauTruthMatchingTool
,
33
TauAnalysisTools::IBuildTruthTaus
,
34
TauAnalysisTools::IDiTauTruthMatchingTool
)
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
;
59
ElementLink<xAOD::TruthParticleContainer>
checkTruthLepton
(
const
xAOD::IParticle
* pLepton)
const
;
60
61
private
:
// steering variables
62
63
double
m_dMaxDeltaR
;
64
65
CxxUtils::CachedValue<bool>
m_bIsTruthMatchedAvailable
;
66
CxxUtils::CachedValue<bool>
m_bIsTruthParticleLinkAvailable
;
67
68
private
:
// private helper variables
69
70
SG::AuxElement::ConstAccessor<double>
m_accPtVis
;
71
SG::AuxElement::ConstAccessor<double>
m_accEtaVis
;
72
SG::AuxElement::ConstAccessor<double>
m_accPhiVis
;
73
SG::AuxElement::ConstAccessor<double>
m_accMVis
;
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:62
IParticle.h
TauAnalysisTools::DiTauTruthMatchingTool::m_bIsTruthMatchedAvailable
CxxUtils::CachedValue< bool > m_bIsTruthMatchedAvailable
Definition:
DiTauTruthMatchingTool.h:65
TauAnalysisTools::DiTauTruthMatchingTool::checkTruthMatch
StatusCode checkTruthMatch(const xAOD::DiTauJet &xDiTau, const xAOD::TruthParticleContainer &xTauContainer) const
Definition:
DiTauTruthMatchingTool.cxx:104
ASG_TOOL_CLASS2
#define ASG_TOOL_CLASS2(CLASSNAME, INT1, INT2)
Definition:
AsgToolMacros.h:77
TauAnalysisTools::DiTauTruthMatchingTool::m_accMVis
SG::AuxElement::ConstAccessor< double > m_accMVis
Definition:
DiTauTruthMatchingTool.h:73
SG::ConstAccessor
Helper class to provide constant type-safe access to aux data.
Definition:
ConstAccessor.h:54
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition:
Event/xAOD/xAODBase/xAODBase/IParticle.h:40
IDiTauTruthMatchingTool.h
Tau, lepton and jet truth matching for ditau jets.
TauAnalysisTools::DiTauTruthMatchingTool::m_dMaxDeltaR
double m_dMaxDeltaR
Definition:
DiTauTruthMatchingTool.h:63
TauAnalysisTools::BuildTruthTaus
Definition:
BuildTruthTaus.h:34
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:41
CxxUtils::CachedValue< bool >
TauAnalysisTools::DiTauTruthMatchingTool::initialize
virtual StatusCode initialize()
Definition:
DiTauTruthMatchingTool.cxx:46
TauAnalysisTools::DiTauTruthMatchingTool::m_accPhiVis
SG::AuxElement::ConstAccessor< double > m_accPhiVis
Definition:
DiTauTruthMatchingTool.h:72
DataVector
Derived DataVector<T>.
Definition:
DataVector.h:581
TauAnalysisTools::DiTauTruthMatchingTool
Definition:
DiTauTruthMatchingTool.h:30
BuildTruthTaus.h
ElementLink
ElementLink implementation for ROOT usage.
Definition:
AthLinks/ElementLink.h:121
TauAnalysisTools::DiTauTruthMatchingTool::truthMatch
StatusCode truthMatch(const TLorentzVector &vSubjetTLV, const xAOD::TruthParticleContainer &xTruthTauContainer, const xAOD::TruthParticle *&xTruthMatch, TruthMatchedParticleType &eTruthMatchedParticleType) const
Definition:
DiTauTruthMatchingTool.cxx:318
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:192
TauAnalysisTools::DiTauTruthMatchingTool::m_accEtaVis
SG::AuxElement::ConstAccessor< double > m_accEtaVis
Definition:
DiTauTruthMatchingTool.h:71
TauAnalysisTools::DiTauTruthMatchingTool::findTruthTau
StatusCode findTruthTau(const xAOD::DiTauJet &xDiTau)
Definition:
DiTauTruthMatchingTool.cxx:87
TauAnalysisTools::DiTauTruthMatchingTool::m_accPtVis
SG::AuxElement::ConstAccessor< double > m_accPtVis
Definition:
DiTauTruthMatchingTool.h:70
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:307
TauAnalysisTools::DiTauTruthMatchingTool::m_bIsTruthParticleLinkAvailable
CxxUtils::CachedValue< bool > m_bIsTruthParticleLinkAvailable
Definition:
DiTauTruthMatchingTool.h:66
Generated on Sun Jun 30 2024 21:14:16 for ATLAS Offline Software by
1.8.18