ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
PanTau
PanTauAlgs
Root
Tool_TauConstituentGetter.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
PanTauAlgs/Tool_TauConstituentGetter.h
"
6
#include "
PanTauAlgs/HelperFunctions.h
"
7
8
PanTau::Tool_TauConstituentGetter::Tool_TauConstituentGetter
(
const
std::string& name) :
9
asg
::
AsgTool
(name)
10
{}
11
12
PanTau::Tool_TauConstituentGetter::~Tool_TauConstituentGetter
() =
default
;
13
14
StatusCode
PanTau::Tool_TauConstituentGetter::initialize
() {
15
16
ATH_MSG_INFO
(
" initialize()"
);
17
m_init
=
true
;
18
19
ATH_CHECK
(
HelperFunctions::bindToolHandle
(
m_Tool_InputConverter
,
m_Tool_InputConverterName
) );
20
21
ATH_CHECK
(
m_Tool_InputConverter
.retrieve() );
22
23
return
StatusCode::SUCCESS;
24
}
25
26
30
StatusCode
PanTau::Tool_TauConstituentGetter::GetTauConstituents
(
const
xAOD::TauJet
* tauJet,
31
std::vector<TauConstituent*>& outputConstituents)
const
{
32
33
//loop over charged PFOs
34
for
(
unsigned
int
iChrgPFO=0; iChrgPFO<tauJet->
nProtoChargedPFOs
(); iChrgPFO++) {
35
36
//convert to tau constituent
37
PanTau::TauConstituent
* curConst =
nullptr
;
38
ATH_CHECK
(
m_Tool_InputConverter
->ConvertToTauConstituent(tauJet->
protoChargedPFO
( iChrgPFO ), curConst, tauJet) );
39
if
(curConst ==
nullptr
) {
40
ATH_MSG_DEBUG
(
"Problems converting charged PFO into tau constituent -> skip PFO"
);
41
continue
;
42
}
43
44
//add to list of tau constituents
45
outputConstituents.push_back(curConst);
46
47
}
//end loop over charged PFOs
48
49
// Pi0 tagged PFOs are not collected!
50
51
//loop over neutral PFOs
52
for
(
unsigned
int
iNeutPFO=0; iNeutPFO<tauJet->
nProtoNeutralPFOs
(); iNeutPFO++) {
53
54
//convert to tau constituent
55
PanTau::TauConstituent
* curConst =
nullptr
;
56
ATH_CHECK
(
m_Tool_InputConverter
->ConvertToTauConstituent(tauJet->
protoNeutralPFO
( iNeutPFO ), curConst, tauJet) );
57
if
(curConst ==
nullptr
) {
58
ATH_MSG_DEBUG
(
"Problems converting neutral PFO into tau constituent -> skip PFO"
);
59
continue
;
60
}
61
62
//add to list of tau constituents
63
outputConstituents.push_back(curConst);
64
65
}
//end loop over charged PFOs
66
67
return
StatusCode::SUCCESS;
68
}
ATH_CHECK
#define ATH_CHECK
Evaluate an expression and check for errors.
Definition
AthCheckMacros.h:40
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition
AthMsgStreamMacros.h:31
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition
AthMsgStreamMacros.h:29
HelperFunctions.h
Tool_TauConstituentGetter.h
PanTau::HelperFunctions::bindToolHandle
static StatusCode bindToolHandle(ToolHandle< T > &, std::string)
Definition
Reconstruction/PanTau/PanTauAlgs/PanTauAlgs/HelperFunctions.h:56
PanTau::TauConstituent
Input object for PanTau.
Definition
TauConstituent.h:25
PanTau::Tool_TauConstituentGetter::~Tool_TauConstituentGetter
virtual ~Tool_TauConstituentGetter()
PanTau::Tool_TauConstituentGetter::Tool_TauConstituentGetter
Tool_TauConstituentGetter(const std::string &name)
Definition
Tool_TauConstituentGetter.cxx:8
PanTau::Tool_TauConstituentGetter::m_Tool_InputConverterName
Gaudi::Property< std::string > m_Tool_InputConverterName
Definition
Tool_TauConstituentGetter.h:50
PanTau::Tool_TauConstituentGetter::m_init
bool m_init
Definition
Tool_TauConstituentGetter.h:52
PanTau::Tool_TauConstituentGetter::m_Tool_InputConverter
ToolHandle< PanTau::ITool_InputConverter > m_Tool_InputConverter
Definition
Tool_TauConstituentGetter.h:48
PanTau::Tool_TauConstituentGetter::initialize
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition
Tool_TauConstituentGetter.cxx:14
PanTau::Tool_TauConstituentGetter::GetTauConstituents
virtual StatusCode GetTauConstituents(const xAOD::TauJet *tauJet, std::vector< TauConstituent * > &outputList) const
Function to get the PFOs for a given TauJet object (Shots in each PFO etc are collected in "ConvertTo...
Definition
Tool_TauConstituentGetter.cxx:30
asg::AsgTool::AsgTool
AsgTool(const std::string &name)
Constructor specifying the tool instance's name.
Definition
AsgTool.cxx:58
xAOD::TauJet_v3::protoChargedPFO
const PFO * protoChargedPFO(size_t i) const
Get the pointer to a given cellbased_charged PFO associated with this tau.
xAOD::TauJet_v3::nProtoChargedPFOs
size_t nProtoChargedPFOs() const
Get the number of cellbased_charged PFO particles associated with this tau.
Definition
TauJet_v3.cxx:874
xAOD::TauJet_v3::protoNeutralPFO
const PFO * protoNeutralPFO(size_t i) const
Get the pointer to a given cellbased_neutral PFO associated with this tau.
xAOD::TauJet_v3::nProtoNeutralPFOs
size_t nProtoNeutralPFOs() const
Get the number of cellbased_neutral PFO particles associated with this tau.
Definition
TauJet_v3.cxx:904
asg
Definition
DataHandleTestTool.h:28
xAOD::TauJet
TauJet_v3 TauJet
Definition of the current "tau version".
Definition
TauJet.h:17
Generated on
for ATLAS Offline Software by
1.17.0