ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
TrackCaloClusterRec
TrackCaloClusterRecAlgs
TrackCaloClusterRecAlgs
TrackCaloClusterInfoAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRACKCALOCLUSTERREC_TRACKCALOCLUSTERALGS_TRACKCALOCLUSTERINFOALG_H
6
#define TRACKCALOCLUSTERREC_TRACKCALOCLUSTERALGS_TRACKCALOCLUSTERINFOALG_H
7
8
#include "
AthenaBaseComps/AthAlgorithm.h
"
9
#include "GaudiKernel/ToolHandle.h"
10
#include "
StoreGate/ReadHandleKey.h
"
11
#include "
StoreGate/ReadDecorHandleKey.h
"
12
#include "
StoreGate/WriteHandleKey.h
"
13
14
#include "
xAODCaloEvent/CaloClusterContainer.h
"
15
#include "
xAODTracking/VertexContainer.h
"
16
#include "
xAODTracking/TrackParticleContainer.h
"
17
#include "
xAODPFlow/FlowElementContainer.h
"
18
19
#include "
TrackVertexAssociationTool/ITrackVertexAssociationTool.h
"
20
21
#include "
TrackCaloClusterRecTools/TrackCaloClusterInfo.h
"
22
23
31
32
class
TrackCaloClusterInfoAlg
:
public
::AthAlgorithm
{
33
public
:
34
TrackCaloClusterInfoAlg
(
const
std::string& name, ISvcLocator* pSvcLocator );
35
virtual
~TrackCaloClusterInfoAlg
() {}
36
37
virtual
StatusCode
initialize
()
override
;
38
virtual
StatusCode
execute
(
const
EventContext& ctx)
override
;
39
40
41
protected
:
42
virtual
StatusCode
fillInfo
(
SG::WriteHandle<TrackCaloClusterInfo>
& tccInfo)
const
;
43
45
SG::WriteHandleKey<TrackCaloClusterInfo>
m_tccInfoHandle
{
this
,
"TCCInfoName"
,
"TCCInfo"
,
"Name of TrackCaloClusterInfo to be created"
};
46
47
48
50
SG::ReadHandleKey< xAOD::TrackParticleContainer >
m_inputTracksHandle
{
this
,
"InputTracks"
,
"InDetTrackParticles"
,
""
};
52
SG::ReadDecorHandleKey<xAOD::TrackParticleContainer>
m_assoClustersKey
{
this
,
"AssoClustersDecor"
,
""
,
"Key to access clusters associated to a track. IMPORTANT must be consistent with TrackParticleContainer "
};
53
55
SG::ReadHandleKey<xAOD::CaloClusterContainer>
m_inputClustersHandle
{
this
,
"InputClusters"
,
"CaloCalTopoClusters"
,
"input calo clusters"
};
56
57
SG::ReadHandleKey<xAOD::VertexContainer>
m_inputVertexHandle
{
this
,
"VertexContainer"
,
"PrimaryVertices"
,
"IMPORTANT : if blank all tracks will be considered, else only those from the PV[0] of VertexContainer"
};
58
60
Gaudi::Property<bool>
m_useEnergy
{
this
,
"UseEnergy"
,
false
,
"wether to cut on E or pT"
};
61
62
};
63
64
65
66
67
74
75
class
TrackCaloClusterInfoUFOAlg
:
public
TrackCaloClusterInfoAlg
{
76
public
:
77
TrackCaloClusterInfoUFOAlg
(
const
std::string& name, ISvcLocator* pSvcLocator );
78
79
virtual
StatusCode
initialize
()
override
;
80
81
protected
:
82
83
virtual
StatusCode
fillInfo
(
SG::WriteHandle<TrackCaloClusterInfo>
& tccInfo)
const override
;
84
85
86
SG::ReadHandleKey< xAOD::FlowElementContainer >
m_inputPFOHandle
{
this
,
"InputPFO"
,
"JetEtMissChargedParticleFlowObjects_DEFAULT"
,
"Key"
};
87
88
// non need for a ReadDecorHandleKey here : access to this deco is optional (tested through is isAvailable, see TCCHelpers.h)
89
Gaudi::Property<std::string>
m_orig_pfo
{
this
,
"OriginPFO"
,
"originalObjectLink"
,
"Key to access original un-modified pfo"
};
90
91
93
Gaudi::Property<float>
m_clusterEcut
{this ,
"ClusterECut"
, 0,
" Important !! : must be the same value as in UFOTool"
};
94
95
ToolHandle<CP::ITrackVertexAssociationTool>
m_trackVertexAssoTool
{
this
,
"TrackVertexAssoTool"
,
""
};
96
97
98
};
99
100
#endif
//
AthAlgorithm.h
CaloClusterContainer.h
TrackParticleContainer.h
FlowElementContainer.h
ITrackVertexAssociationTool.h
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
TrackCaloClusterInfo.h
VertexContainer.h
AthAlgorithm::AthAlgorithm
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthAlgorithm.cxx:10
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition
StoreGate/StoreGate/ReadDecorHandleKey.h:86
SG::ReadHandleKey< xAOD::TrackParticleContainer >
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
SG::WriteHandle
Definition
StoreGate/StoreGate/WriteHandle.h:73
TrackCaloClusterInfoAlg::m_inputTracksHandle
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_inputTracksHandle
Tracks used by this alg.
Definition
TrackCaloClusterInfoAlg.h:50
TrackCaloClusterInfoAlg::initialize
virtual StatusCode initialize() override
Definition
TrackCaloClusterInfoAlg.cxx:17
TrackCaloClusterInfoAlg::~TrackCaloClusterInfoAlg
virtual ~TrackCaloClusterInfoAlg()
Definition
TrackCaloClusterInfoAlg.h:35
TrackCaloClusterInfoAlg::fillInfo
virtual StatusCode fillInfo(SG::WriteHandle< TrackCaloClusterInfo > &tccInfo) const
Definition
TrackCaloClusterInfoAlg.cxx:60
TrackCaloClusterInfoAlg::TrackCaloClusterInfoAlg
TrackCaloClusterInfoAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
TrackCaloClusterInfoAlg.cxx:13
TrackCaloClusterInfoAlg::execute
virtual StatusCode execute(const EventContext &ctx) override
Execute method.
Definition
TrackCaloClusterInfoAlg.cxx:30
TrackCaloClusterInfoAlg::m_inputClustersHandle
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_inputClustersHandle
Original clusters from which the m_inputObjectName are build ().
Definition
TrackCaloClusterInfoAlg.h:55
TrackCaloClusterInfoAlg::m_useEnergy
Gaudi::Property< bool > m_useEnergy
use cluster energy or pt?
Definition
TrackCaloClusterInfoAlg.h:60
TrackCaloClusterInfoAlg::m_assoClustersKey
SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > m_assoClustersKey
Decoration of tracks expected by this alg (set by TrackParticleClusterAssociationAlg).
Definition
TrackCaloClusterInfoAlg.h:52
TrackCaloClusterInfoAlg::m_tccInfoHandle
SG::WriteHandleKey< TrackCaloClusterInfo > m_tccInfoHandle
TrackCaloClusterInfo created by this alg.
Definition
TrackCaloClusterInfoAlg.h:45
TrackCaloClusterInfoAlg::m_inputVertexHandle
SG::ReadHandleKey< xAOD::VertexContainer > m_inputVertexHandle
Definition
TrackCaloClusterInfoAlg.h:57
TrackCaloClusterInfoUFOAlg::initialize
virtual StatusCode initialize() override
Definition
TrackCaloClusterInfoAlg.cxx:135
TrackCaloClusterInfoUFOAlg::TrackCaloClusterInfoUFOAlg
TrackCaloClusterInfoUFOAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
TrackCaloClusterInfoAlg.cxx:131
TrackCaloClusterInfoUFOAlg::m_orig_pfo
Gaudi::Property< std::string > m_orig_pfo
Definition
TrackCaloClusterInfoAlg.h:89
TrackCaloClusterInfoUFOAlg::m_clusterEcut
Gaudi::Property< float > m_clusterEcut
cluster with E below this cut won't be considered in the TCC alg. WARNING cut must be configured as i...
Definition
TrackCaloClusterInfoAlg.h:93
TrackCaloClusterInfoUFOAlg::m_inputPFOHandle
SG::ReadHandleKey< xAOD::FlowElementContainer > m_inputPFOHandle
Definition
TrackCaloClusterInfoAlg.h:86
TrackCaloClusterInfoUFOAlg::m_trackVertexAssoTool
ToolHandle< CP::ITrackVertexAssociationTool > m_trackVertexAssoTool
Definition
TrackCaloClusterInfoAlg.h:95
TrackCaloClusterInfoUFOAlg::fillInfo
virtual StatusCode fillInfo(SG::WriteHandle< TrackCaloClusterInfo > &tccInfo) const override
Definition
TrackCaloClusterInfoAlg.cxx:169
Generated on
for ATLAS Offline Software by
1.17.0