ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkMuons
src
TrackIsolationDecorAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef TRACKISOLATIONDECORALG_H_
5
#define TRACKISOLATIONDECORALG_H_
6
7
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
8
#include "
StoreGate/ReadHandleKey.h
"
9
#include "
StoreGate/WriteDecorHandleKey.h
"
10
#include "
StoreGate/ReadDecorHandleKeyArray.h
"
11
#include "
xAODPrimitives/IsolationType.h
"
12
#include "
xAODTracking/VertexContainer.h
"
13
14
#include "
RecoToolInterfaces/ITrackIsolationTool.h
"
15
#include "
RecoToolInterfaces/IsolationCommon.h
"
16
17
namespace
DerivationFramework
{
18
class
TrackIsolationDecorAlg
:
public
AthReentrantAlgorithm
{
19
public
:
21
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
22
24
~TrackIsolationDecorAlg
();
25
27
StatusCode
initialize
()
override
;
28
StatusCode
execute
(
const
EventContext& ctx)
const override
;
29
30
private
:
31
static
bool
isSame
(
const
xAOD::IParticle
*
a
,
const
xAOD::IParticle
* b);
32
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_idTrkKey
{
this
,
"IdTrackCollection"
,
"InDetTrackParticles"
,
33
"Collection of track particles making up the isolation cones"
};
34
35
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_toDeorTrkKey
{
this
,
"TrackCollection"
,
"InDetTrackParticles"
,
36
"Collection of track particles to decorate the isolation onto"
};
37
SG::ReadHandleKey<xAOD::VertexContainer>
m_vtx_key
{
this
,
"VertexCollection"
,
"PrimaryVertices"
};
38
39
Gaudi::Property<std::string>
m_customName
{
this
,
"customName"
,
""
,
"Custom appendix of the isolation variables"
};
40
41
Gaudi::Property<float>
m_pt_min
{
this
,
"PtMin"
, 2.5 * Gaudi::Units::GeV,
"Minimal track pt required to decorate the ID track"
};
42
45
Gaudi::Property<std::vector<std::string>>
m_trkSel_Decors
{
this
,
"TrackSelections"
, {},
46
"List of decorator names of which one needs to be true to run the isolation"
};
47
SG::ReadDecorHandleKeyArray<xAOD::TrackParticleContainer>
m_trkSel_keys
{
this
,
"SelectionKeys"
, {},
48
"Will be overwritten in initialize"
};
49
51
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_ptcone20_key
{
this
,
"IsoPtCone20"
,
m_toDeorTrkKey
,
""
};
52
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_ptcone30_key
{
this
,
"IsoPtCone30"
,
m_toDeorTrkKey
,
""
};
53
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_ptcone40_key
{
this
,
"IsoPtCone40"
,
m_toDeorTrkKey
,
""
};
54
55
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_ptvarcone20_key
{
this
,
"IsoPtVarCone20"
,
m_toDeorTrkKey
,
""
};
56
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_ptvarcone30_key
{
this
,
"IsoPtVarCone30"
,
m_toDeorTrkKey
,
""
};
57
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_ptvarcone40_key
{
this
,
"IsoPtVarCone40"
,
m_toDeorTrkKey
,
""
};
58
59
ToolHandle<xAOD::ITrackIsolationTool>
m_isoTool
{
this
,
"IsolationTool"
,
""
};
60
61
std::vector<xAOD::Iso::IsolationType>
m_trk_iso_types
{
xAOD::Iso::ptcone40
,
xAOD::Iso::ptcone30
,
xAOD::Iso::ptcone20
};
62
xAOD::TrackCorrection
m_trk_corr
{};
63
};
64
}
65
#endif
/* TRACKISOLATIONDECORALG_H_ */
AthReentrantAlgorithm.h
ITrackIsolationTool.h
IsolationCommon.h
IsolationType.h
a
static Double_t a
Definition
LArPhysWaveHECTool.cxx:38
ReadDecorHandleKeyArray.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
VertexContainer.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
DerivationFramework::TrackIsolationDecorAlg
Definition
TrackIsolationDecorAlg.h:18
DerivationFramework::TrackIsolationDecorAlg::m_ptvarcone20_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptvarcone20_key
Definition
TrackIsolationDecorAlg.h:55
DerivationFramework::TrackIsolationDecorAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition
TrackIsolationDecorAlg.cxx:59
DerivationFramework::TrackIsolationDecorAlg::isSame
static bool isSame(const xAOD::IParticle *a, const xAOD::IParticle *b)
Definition
TrackIsolationDecorAlg.cxx:51
DerivationFramework::TrackIsolationDecorAlg::m_ptcone20_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptcone20_key
Now let's come to the WriteDecorHandleKeys.
Definition
TrackIsolationDecorAlg.h:51
DerivationFramework::TrackIsolationDecorAlg::~TrackIsolationDecorAlg
~TrackIsolationDecorAlg()
Destructor:
DerivationFramework::TrackIsolationDecorAlg::m_ptcone30_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptcone30_key
Definition
TrackIsolationDecorAlg.h:52
DerivationFramework::TrackIsolationDecorAlg::initialize
StatusCode initialize() override
Athena algorithm's Hooks.
Definition
TrackIsolationDecorAlg.cxx:23
DerivationFramework::TrackIsolationDecorAlg::m_isoTool
ToolHandle< xAOD::ITrackIsolationTool > m_isoTool
Definition
TrackIsolationDecorAlg.h:59
DerivationFramework::TrackIsolationDecorAlg::m_trkSel_Decors
Gaudi::Property< std::vector< std::string > > m_trkSel_Decors
Optional list of decorators to select only the good tracks for the isolation decoration.
Definition
TrackIsolationDecorAlg.h:45
DerivationFramework::TrackIsolationDecorAlg::m_trkSel_keys
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_trkSel_keys
Definition
TrackIsolationDecorAlg.h:47
DerivationFramework::TrackIsolationDecorAlg::m_toDeorTrkKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_toDeorTrkKey
Definition
TrackIsolationDecorAlg.h:35
DerivationFramework::TrackIsolationDecorAlg::m_ptvarcone40_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptvarcone40_key
Definition
TrackIsolationDecorAlg.h:57
DerivationFramework::TrackIsolationDecorAlg::m_customName
Gaudi::Property< std::string > m_customName
Definition
TrackIsolationDecorAlg.h:39
DerivationFramework::TrackIsolationDecorAlg::m_vtx_key
SG::ReadHandleKey< xAOD::VertexContainer > m_vtx_key
Definition
TrackIsolationDecorAlg.h:37
DerivationFramework::TrackIsolationDecorAlg::m_ptcone40_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptcone40_key
Definition
TrackIsolationDecorAlg.h:53
DerivationFramework::TrackIsolationDecorAlg::m_idTrkKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_idTrkKey
Definition
TrackIsolationDecorAlg.h:32
DerivationFramework::TrackIsolationDecorAlg::m_trk_corr
xAOD::TrackCorrection m_trk_corr
Definition
TrackIsolationDecorAlg.h:62
DerivationFramework::TrackIsolationDecorAlg::m_pt_min
Gaudi::Property< float > m_pt_min
Definition
TrackIsolationDecorAlg.h:41
DerivationFramework::TrackIsolationDecorAlg::m_ptvarcone30_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptvarcone30_key
Definition
TrackIsolationDecorAlg.h:56
DerivationFramework::TrackIsolationDecorAlg::m_trk_iso_types
std::vector< xAOD::Iso::IsolationType > m_trk_iso_types
Definition
TrackIsolationDecorAlg.h:61
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition
StoreGate/StoreGate/WriteDecorHandleKey.h:90
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
DerivationFramework
THE reconstruction tool.
Definition
CascadeTools.h:16
SG::ReadDecorHandleKeyArray
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
Definition
StoreGate/StoreGate/ReadDecorHandleKeyArray.h:35
xAOD::Iso::ptcone40
@ ptcone40
Definition
IsolationType.h:42
xAOD::Iso::ptcone20
@ ptcone20
Track isolation.
Definition
IsolationType.h:40
xAOD::Iso::ptcone30
@ ptcone30
Definition
IsolationType.h:41
xAOD::TrackCorrection
Definition
IsolationCommon.h:18
Generated on
for ATLAS Offline Software by
1.17.0