ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetValidation
InDetTrackPerfMon
src
OfflineJetDecoratorAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef INDETTRACKPERFMON_OFFLINEJETDECORATORALG_H
6
#define INDETTRACKPERFMON_OFFLINEJETDECORATORALG_H
7
15
17
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
18
20
#include "
xAODTracking/TrackParticleContainer.h
"
21
#include "
xAODJet/JetContainer.h
"
22
24
#include <string>
25
#include <vector>
26
28
#include "
SafeDecorator.h
"
29
30
31
namespace
IDTPM
{
32
33
class
OfflineJetDecoratorAlg
:
34
public
AthReentrantAlgorithm
{
35
36
public
:
37
38
typedef
ElementLink<xAOD::JetContainer>
ElementJetLink_t
;
39
40
OfflineJetDecoratorAlg
(
const
std::string& name, ISvcLocator* pSvcLocator );
41
42
virtual
~OfflineJetDecoratorAlg
() =
default
;
43
44
virtual
StatusCode
initialize
()
override
;
45
46
virtual
StatusCode
execute
(
const
EventContext& ctx )
const override
;
47
48
private
:
49
50
bool
passJetCuts
(
const
xAOD::Jet
&
jet
)
const
;
51
52
SG::ReadHandleKey<xAOD::TrackParticleContainer>
m_offlineTrkParticlesName
{
53
this
,
"OfflineTrkParticleContainerName"
,
"InDetTrackParticles"
,
"Name of container of offline tracks"
};
54
55
StringProperty
m_prefix
{
this
,
"Prefix"
,
"LinkedJet_"
,
"Decoration prefix to avoid clashes"
};
56
57
StatusCode
decorateJetTrack
(
58
const
xAOD::TrackParticle
& track,
59
std::vector<
IDTPM::OptionalDecoration
<
xAOD::TrackParticleContainer
,
60
ElementJetLink_t
> >& jet_decor,
61
const
xAOD::JetContainer
& jets )
const
;
62
63
SG::ReadHandleKey< xAOD::JetContainer >
m_jetsName
{
64
this
,
"JetContainerName"
,
"InTimeAntiKt4TruthJets"
,
"Name of container of jets"
};
65
66
FloatProperty
m_maxTrkJetDR
{
this
,
"maxTrkJetDR"
, 0.4,
"the maximum DeltaR to jets to allow for track-in-jet plots"
};
67
FloatProperty
m_jetAbsEtaMin
{
this
,
"JetAbsEtaMin"
, -999.0,
"Minimum Eta value for jet selection"
};
68
FloatProperty
m_jetAbsEtaMax
{
this
,
"JetAbsEtaMax"
, 4.0,
"Maximum Eta value for jet selection"
};
69
FloatProperty
m_jetPtMin
{
this
,
"JetPtMin"
, 1000.0,
"Minimum Jet pT for jet selection"
};
70
FloatProperty
m_jetPtMax
{
this
,
"JetPtMax"
, 5000000.0,
"Maximum Jet pT for jet selection"
};
71
72
enum
JetDecorations
:
size_t
{
73
DRtruthJet
,
74
DRtruthLightJet
,
75
DRtruthCjet
,
76
DRtruthBjet
,
77
DRtruthHeavyJet
,
78
DRGhostTruth
,
79
DRGhostTruthLightJet
,
80
DRGhostTruthBjet
,
81
NDecorations
82
};
83
84
const
std::vector< std::string >
m_decor_jet_names
{
85
"DRtruthJet"
,
86
"DRtruthLightJet"
,
87
"DRtruthCjet"
,
88
"DRtruthBjet"
,
89
"DRtruthHeavyJet"
,
90
"DRGhostTruthJet"
,
91
"DRGhostTruthLightJet"
,
92
"DRGhostTruthBjet"
93
};
94
95
std::vector<
IDTPM::WriteKeyAccessorPair
<
xAOD::TrackParticleContainer
,
96
ElementJetLink_t
> >
m_decor_jet
{};
97
98
};
99
100
}
// namespace IDTPM
101
102
#endif
// > !INDETTRACKPERFMON_OFFLINEJETDECORATORALG_H
AthReentrantAlgorithm.h
TrackParticleContainer.h
JetContainer.h
SafeDecorator.h
header file for function of same name adapted from original IDPVM implementation
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
ElementLink
ElementLink implementation for ROOT usage.
Definition
A/AthLinks/ElementLink.h:40
IDTPM::OfflineJetDecoratorAlg::m_jetAbsEtaMax
FloatProperty m_jetAbsEtaMax
Definition
OfflineJetDecoratorAlg.h:68
IDTPM::OfflineJetDecoratorAlg::m_prefix
StringProperty m_prefix
Definition
OfflineJetDecoratorAlg.h:55
IDTPM::OfflineJetDecoratorAlg::m_offlineTrkParticlesName
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_offlineTrkParticlesName
Definition
OfflineJetDecoratorAlg.h:52
IDTPM::OfflineJetDecoratorAlg::initialize
virtual StatusCode initialize() override
Definition
OfflineJetDecoratorAlg.cxx:27
IDTPM::OfflineJetDecoratorAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition
OfflineJetDecoratorAlg.cxx:51
IDTPM::OfflineJetDecoratorAlg::m_decor_jet
std::vector< IDTPM::WriteKeyAccessorPair< xAOD::TrackParticleContainer, ElementJetLink_t > > m_decor_jet
Definition
OfflineJetDecoratorAlg.h:96
IDTPM::OfflineJetDecoratorAlg::m_jetPtMin
FloatProperty m_jetPtMin
Definition
OfflineJetDecoratorAlg.h:69
IDTPM::OfflineJetDecoratorAlg::JetDecorations
JetDecorations
Definition
OfflineJetDecoratorAlg.h:72
IDTPM::OfflineJetDecoratorAlg::DRGhostTruthLightJet
@ DRGhostTruthLightJet
Definition
OfflineJetDecoratorAlg.h:79
IDTPM::OfflineJetDecoratorAlg::DRGhostTruthBjet
@ DRGhostTruthBjet
Definition
OfflineJetDecoratorAlg.h:80
IDTPM::OfflineJetDecoratorAlg::DRtruthJet
@ DRtruthJet
Definition
OfflineJetDecoratorAlg.h:73
IDTPM::OfflineJetDecoratorAlg::DRtruthHeavyJet
@ DRtruthHeavyJet
Definition
OfflineJetDecoratorAlg.h:77
IDTPM::OfflineJetDecoratorAlg::DRtruthCjet
@ DRtruthCjet
Definition
OfflineJetDecoratorAlg.h:75
IDTPM::OfflineJetDecoratorAlg::DRGhostTruth
@ DRGhostTruth
Definition
OfflineJetDecoratorAlg.h:78
IDTPM::OfflineJetDecoratorAlg::DRtruthLightJet
@ DRtruthLightJet
Definition
OfflineJetDecoratorAlg.h:74
IDTPM::OfflineJetDecoratorAlg::DRtruthBjet
@ DRtruthBjet
Definition
OfflineJetDecoratorAlg.h:76
IDTPM::OfflineJetDecoratorAlg::NDecorations
@ NDecorations
Definition
OfflineJetDecoratorAlg.h:81
IDTPM::OfflineJetDecoratorAlg::decorateJetTrack
StatusCode decorateJetTrack(const xAOD::TrackParticle &track, std::vector< IDTPM::OptionalDecoration< xAOD::TrackParticleContainer, ElementJetLink_t > > &jet_decor, const xAOD::JetContainer &jets) const
Definition
OfflineJetDecoratorAlg.cxx:94
IDTPM::OfflineJetDecoratorAlg::m_maxTrkJetDR
FloatProperty m_maxTrkJetDR
Definition
OfflineJetDecoratorAlg.h:66
IDTPM::OfflineJetDecoratorAlg::m_jetPtMax
FloatProperty m_jetPtMax
Definition
OfflineJetDecoratorAlg.h:70
IDTPM::OfflineJetDecoratorAlg::~OfflineJetDecoratorAlg
virtual ~OfflineJetDecoratorAlg()=default
IDTPM::OfflineJetDecoratorAlg::m_decor_jet_names
const std::vector< std::string > m_decor_jet_names
Definition
OfflineJetDecoratorAlg.h:84
IDTPM::OfflineJetDecoratorAlg::OfflineJetDecoratorAlg
OfflineJetDecoratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Local includes.
Definition
OfflineJetDecoratorAlg.cxx:18
IDTPM::OfflineJetDecoratorAlg::passJetCuts
bool passJetCuts(const xAOD::Jet &jet) const
Definition
OfflineJetDecoratorAlg.cxx:155
IDTPM::OfflineJetDecoratorAlg::m_jetAbsEtaMin
FloatProperty m_jetAbsEtaMin
Definition
OfflineJetDecoratorAlg.h:67
IDTPM::OfflineJetDecoratorAlg::m_jetsName
SG::ReadHandleKey< xAOD::JetContainer > m_jetsName
Definition
OfflineJetDecoratorAlg.h:63
IDTPM::OfflineJetDecoratorAlg::ElementJetLink_t
ElementLink< xAOD::JetContainer > ElementJetLink_t
Definition
OfflineJetDecoratorAlg.h:38
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
IDTPM
Athena include(s).
Definition
IPlotsDefinitionSvc.h:25
IDTPM::OptionalDecoration
std::pair< SG::WriteDecorHandle< ContainerType, VariableType >, bool > OptionalDecoration
Definition
SafeDecorator.h:46
IDTPM::WriteKeyAccessorPair
std::pair< SG::WriteDecorHandleKey< ContainerType >, SG::AuxElement::ConstAccessor< VariableType > > WriteKeyAccessorPair
Useful declarations.
Definition
SafeDecorator.h:36
jet
Definition
JetCalibTools_PlotJESFactors.cxx:23
xAOD::Jet
Jet_v1 Jet
Definition of the current "jet version".
Definition
Event/xAOD/xAODJet/xAODJet/Jet.h:17
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
xAOD::TrackParticleContainer
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticleContainer.h:14
xAOD::JetContainer
JetContainer_v1 JetContainer
Definition of the current "jet container version".
Definition
JetContainer.h:17
Generated on
for ATLAS Offline Software by
1.17.0