ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkInDet
DerivationFrameworkInDet
IsolationTrackDecorator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// IsolationTrackDecorator.h
8
9
/*
10
Decorates the track isolations and calo isolations to the track container.
11
ptcone, ptvarcone, etcone, and etcluster are decorated.
12
if the etcone is selected, the etcluster is also decorated automatically.
13
14
user specifies...
15
16
TrackIsolationTool: track isolation tool. ex.) from IsolationAlgs.IsoToolsConfig import TrackIsolationToolCfg
17
CaloIsolationTool: calo isolation tool. ex.) from IsolationAlgs.IsoToolsConfig import CaloIsolationToolCfg
18
TargetContainer: track particle container.
19
SelectionString: the selections for the tracks that are decorated. ex.) "InDetTrackParticles.pt>10*GeV".
20
iso: isolation type. ex.) isoPar = ROOT.xAOD.Iso.IsolationType; iso = [isoPar.ptcone40, isoPar.ptcone30]
21
Prefix & isoSufix: prefix and sufix for the decoration, decoraterKey = trackContainerKey + prefix + isosufix.
22
*/
23
24
#ifndef DERIVATIONFRAMEWORK_IsolationTrackDecorator_H
25
#define DERIVATIONFRAMEWORK_IsolationTrackDecorator_H
26
27
#include<string>
28
#include<vector>
29
30
// Gaudi & Athena basics
31
#include "
AthenaBaseComps/AthAlgTool.h
"
32
#include "GaudiKernel/ToolHandle.h"
33
#include "
DerivationFrameworkInterfaces/IAugmentationTool.h
"
34
#include "
RecoToolInterfaces/ITrackIsolationTool.h
"
35
#include "
RecoToolInterfaces/ICaloTopoClusterIsolationTool.h
"
36
#include "
ExpressionEvaluation/ExpressionParserUser.h
"
37
#include "
xAODPrimitives/IsolationHelpers.h
"
38
#include "
StoreGate/ReadHandleKey.h
"
39
#include "
StoreGate/WriteDecorHandleKey.h
"
40
#include "
StoreGate/WriteDecorHandleKeyArray.h
"
41
42
namespace
DerivationFramework
{
46
class
IsolationTrackDecorator
:
public
extends<ExpressionParserUser<AthAlgTool>, IAugmentationTool> {
47
48
public
:
49
50
using
base_class::base_class;
51
52
// Athena algtool's Hooks
53
virtual
StatusCode
initialize
()
override
final
;
54
virtual
StatusCode
finalize
()
override
final
;
55
56
virtual
StatusCode
addBranches
(
const
EventContext& ctx)
const
override
final
;
57
58
private
:
59
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_trackContainerKey
{
60
this
,
"TargetContainer"
,
"InDetTrackParticles"
,
"track particle container name"
};
61
StringProperty
m_selectionString
{
62
this
,
"SelectionString"
,
""
,
"selection string"
};
63
StringProperty
m_prefix
{
64
this
,
"Prefix"
,
""
,
"prefix"
};
65
StringArrayProperty
m_iso_suffix
{
66
this
,
"isoSuffix"
, {
""
},
"suffix for the isolations"
};
67
StringProperty
m_selFlag
{
68
this
,
"SelectionFlag"
,
""
,
"selection flag"
};
69
IntegerProperty
m_diff_ptvarcone
{
70
this
,
"DiffPtvarcone"
,
xAOD::Iso::ptvarcone20
-
xAOD::Iso::ptcone20
,
"difference between Iso::ptvarcone20 and Iso::ptcone20"
};
71
IntegerProperty
m_selFlagValue
{
72
this
,
"SelectionFlagValue"
, 1,
"selection flag value"
};
73
75
ToolHandle<xAOD::ITrackIsolationTool>
m_trackIsolationTool
{
this
,
"TrackIsolationTool"
,
""
};
76
ToolHandle<xAOD::ICaloTopoClusterIsolationTool>
m_caloIsolationTool
{
this
,
"CaloIsolationTool"
,
""
};
77
78
std::vector<xAOD::Iso::IsolationType>
m_ptconeTypes
;
79
std::vector<xAOD::Iso::IsolationType>
m_ptvarconeTypes
;
80
std::vector<xAOD::Iso::IsolationType>
m_topoetconeTypes
;
81
IntegerArrayProperty
m_iso
{
82
this
,
"iso"
, {},
"isolation types vector<int>"
};
83
xAOD::TrackCorrection
m_trkCorrList
;
84
xAOD::CaloCorrection
m_topoconeCorrList
;
85
xAOD::CaloCorrection
m_topoclusCorrList
;
86
87
SG::WriteDecorHandleKeyArray<xAOD::TrackParticleContainer>
m_ptconeDecoratorsKey
{
88
this
,
"ptconeDecoratorsKey"
, {}};
89
SG::WriteDecorHandleKeyArray<xAOD::TrackParticleContainer>
m_ptvarconeDecoratorsKey
{
90
this
,
"ptvarconeDecoratorsKey"
, {}};
91
SG::WriteDecorHandleKeyArray<xAOD::TrackParticleContainer>
m_topoetconeDecoratorsKey
{
92
this
,
"topoetconeDecoratorsKey"
, {}};
93
SG::WriteDecorHandleKeyArray<xAOD::TrackParticleContainer>
m_topoetconeNonCoreConeDecoratorsKey
{
94
this
,
"topoetconeNonCoreConeDecoratorsKey"
, {}};
95
SG::WriteDecorHandleKey<xAOD::TrackParticleContainer>
m_dec_trkFlagKey
{
96
this
,
"dec_trkFlagKey"
,
""
};
97
98
};
99
}
100
#endif
//
AthAlgTool.h
ExpressionParserUser.h
IAugmentationTool.h
ICaloTopoClusterIsolationTool.h
ITrackIsolationTool.h
IsolationHelpers.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteDecorHandleKeyArray.h
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
DerivationFramework::IsolationTrackDecorator
Definition
IsolationTrackDecorator.h:46
DerivationFramework::IsolationTrackDecorator::m_iso
IntegerArrayProperty m_iso
Definition
IsolationTrackDecorator.h:81
DerivationFramework::IsolationTrackDecorator::addBranches
virtual StatusCode addBranches(const EventContext &ctx) const override final
Definition
IsolationTrackDecorator.cxx:97
DerivationFramework::IsolationTrackDecorator::finalize
virtual StatusCode finalize() override final
Definition
IsolationTrackDecorator.cxx:89
DerivationFramework::IsolationTrackDecorator::m_iso_suffix
StringArrayProperty m_iso_suffix
Definition
IsolationTrackDecorator.h:65
DerivationFramework::IsolationTrackDecorator::m_prefix
StringProperty m_prefix
Definition
IsolationTrackDecorator.h:63
DerivationFramework::IsolationTrackDecorator::m_trackContainerKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_trackContainerKey
Definition
IsolationTrackDecorator.h:59
DerivationFramework::IsolationTrackDecorator::m_dec_trkFlagKey
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_dec_trkFlagKey
Definition
IsolationTrackDecorator.h:95
DerivationFramework::IsolationTrackDecorator::m_ptconeDecoratorsKey
SG::WriteDecorHandleKeyArray< xAOD::TrackParticleContainer > m_ptconeDecoratorsKey
Definition
IsolationTrackDecorator.h:87
DerivationFramework::IsolationTrackDecorator::m_selectionString
StringProperty m_selectionString
Definition
IsolationTrackDecorator.h:61
DerivationFramework::IsolationTrackDecorator::m_ptvarconeTypes
std::vector< xAOD::Iso::IsolationType > m_ptvarconeTypes
Definition
IsolationTrackDecorator.h:79
DerivationFramework::IsolationTrackDecorator::m_topoetconeTypes
std::vector< xAOD::Iso::IsolationType > m_topoetconeTypes
Definition
IsolationTrackDecorator.h:80
DerivationFramework::IsolationTrackDecorator::m_topoconeCorrList
xAOD::CaloCorrection m_topoconeCorrList
Definition
IsolationTrackDecorator.h:84
DerivationFramework::IsolationTrackDecorator::m_caloIsolationTool
ToolHandle< xAOD::ICaloTopoClusterIsolationTool > m_caloIsolationTool
Definition
IsolationTrackDecorator.h:76
DerivationFramework::IsolationTrackDecorator::m_selFlag
StringProperty m_selFlag
Definition
IsolationTrackDecorator.h:67
DerivationFramework::IsolationTrackDecorator::m_topoetconeDecoratorsKey
SG::WriteDecorHandleKeyArray< xAOD::TrackParticleContainer > m_topoetconeDecoratorsKey
Definition
IsolationTrackDecorator.h:91
DerivationFramework::IsolationTrackDecorator::initialize
virtual StatusCode initialize() override final
Definition
IsolationTrackDecorator.cxx:24
DerivationFramework::IsolationTrackDecorator::m_ptvarconeDecoratorsKey
SG::WriteDecorHandleKeyArray< xAOD::TrackParticleContainer > m_ptvarconeDecoratorsKey
Definition
IsolationTrackDecorator.h:89
DerivationFramework::IsolationTrackDecorator::m_diff_ptvarcone
IntegerProperty m_diff_ptvarcone
Definition
IsolationTrackDecorator.h:69
DerivationFramework::IsolationTrackDecorator::m_topoetconeNonCoreConeDecoratorsKey
SG::WriteDecorHandleKeyArray< xAOD::TrackParticleContainer > m_topoetconeNonCoreConeDecoratorsKey
Definition
IsolationTrackDecorator.h:93
DerivationFramework::IsolationTrackDecorator::m_selFlagValue
IntegerProperty m_selFlagValue
Definition
IsolationTrackDecorator.h:71
DerivationFramework::IsolationTrackDecorator::m_topoclusCorrList
xAOD::CaloCorrection m_topoclusCorrList
Definition
IsolationTrackDecorator.h:85
DerivationFramework::IsolationTrackDecorator::m_ptconeTypes
std::vector< xAOD::Iso::IsolationType > m_ptconeTypes
Definition
IsolationTrackDecorator.h:78
DerivationFramework::IsolationTrackDecorator::m_trackIsolationTool
ToolHandle< xAOD::ITrackIsolationTool > m_trackIsolationTool
Athena configured tools.
Definition
IsolationTrackDecorator.h:75
DerivationFramework::IsolationTrackDecorator::m_trkCorrList
xAOD::TrackCorrection m_trkCorrList
Definition
IsolationTrackDecorator.h:83
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
DerivationFramework
THE reconstruction tool.
Definition
CascadeTools.h:16
SG::WriteDecorHandleKeyArray
DecorHandleKeyArray< WriteDecorHandle< T, S >, WriteDecorHandleKey< T >, Gaudi::DataHandle::Writer > WriteDecorHandleKeyArray
Definition
StoreGate/StoreGate/WriteDecorHandleKeyArray.h:35
xAOD::Iso::ptcone20
@ ptcone20
Track isolation.
Definition
IsolationType.h:40
xAOD::Iso::ptvarcone20
@ ptvarcone20
Mini-Isolation http://arxiv.org/abs/1007.2221.
Definition
IsolationType.h:55
xAOD::CaloCorrection
Definition
IsolationCommon.h:14
xAOD::TrackCorrection
Definition
IsolationCommon.h:18
Generated on
for ATLAS Offline Software by
1.17.0