ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
JetTagging
JetTagDerivationUtils
src
JetLinkMatcherAlg.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 JET_LINKMATCHER_ALG_H
6
#define JET_LINKMATCHER_ALG_H
7
8
#include "
JetTagDerivationUtils/VariableMule.h
"
9
10
#include "
xAODBase/IParticleContainer.h
"
11
#include "
xAODJet/JetContainer.h
"
12
#include "
xAODTracking/TrackParticleContainer.h
"
13
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
14
15
namespace
ftag
{
16
17
class
JetLinkMatcherAlg
:
public
AthReentrantAlgorithm
18
{
19
public
:
20
JetLinkMatcherAlg
(
const
std::string& name, ISvcLocator* pSvcLocator);
21
22
// these are the functions inherited from Algorithm
23
virtual
StatusCode
initialize
()
override
;
24
virtual
StatusCode
execute
(
const
EventContext&)
const override
;
25
virtual
StatusCode
finalize
()
override
;
26
private
:
27
using
JC
=
xAOD::JetContainer
;
28
using
IPL
=
ElementLink<xAOD::IParticleContainer>
;
29
using
IPLV
= std::vector<IPL>;
30
using
TPLV
= std::vector<ElementLink<xAOD::TrackParticleContainer>>;
31
VariableMule<float,JC>
m_floats
{NAN};
32
VariableMule<double,JC>
m_doubles
{NAN};
33
VariableMule<int,JC>
m_ints
{-1};
34
VariableMule<uint,JC>
m_uints
{0};
35
VariableMule<ulong,JC>
m_ulongs
{0};
36
VariableMule<char,JC>
m_chars
{0};
37
VariableMule<std::vector<char>
,
JC
>
m_charVectors
{{}};
38
VariableMule<IPLV,JC>
m_iparticles
{{}};
39
VariableMule<TPLV,JC>
m_trackLinks
{{}};
40
SG::ReadHandleKey<JC>
m_targetJet
{
41
this
,
"targetJet"
,
""
,
"target jet"
42
};
43
SG::ReadHandleKeyArray<JC>
m_sourceJets
{
44
this
,
"sourceJets"
, {},
"source jets"
45
};
46
SG::ReadDecorHandleKey<JC>
m_link
{
47
this
,
"linkName"
,
m_targetJet
,
""
,
"name of link to match"
48
};
49
SG::WriteDecorHandleKey<JC>
m_matchDecorator
{
50
this
,
"isMatched"
,
m_targetJet
,
""
,
51
"1 if matched, 0 if not. If unspecified fail on no match"
};
52
using
JV
= std::vector<const xAOD::IParticle*>;
53
};
54
55
}
// end namespace ftag
56
57
#endif
AthReentrantAlgorithm.h
TrackParticleContainer.h
JetContainer.h
VariableMule.h
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
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
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
VariableMule
Definition
VariableMule.h:24
ftag::JetLinkMatcherAlg::m_sourceJets
SG::ReadHandleKeyArray< JC > m_sourceJets
Definition
JetLinkMatcherAlg.h:43
ftag::JetLinkMatcherAlg::execute
virtual StatusCode execute(const EventContext &) const override
Definition
JetLinkMatcherAlg.cxx:52
ftag::JetLinkMatcherAlg::IPL
ElementLink< xAOD::IParticleContainer > IPL
Definition
JetLinkMatcherAlg.h:28
ftag::JetLinkMatcherAlg::m_ints
VariableMule< int, JC > m_ints
Definition
JetLinkMatcherAlg.h:33
ftag::JetLinkMatcherAlg::initialize
virtual StatusCode initialize() override
Definition
JetLinkMatcherAlg.cxx:28
ftag::JetLinkMatcherAlg::m_doubles
VariableMule< double, JC > m_doubles
Definition
JetLinkMatcherAlg.h:32
ftag::JetLinkMatcherAlg::IPLV
std::vector< IPL > IPLV
Definition
JetLinkMatcherAlg.h:29
ftag::JetLinkMatcherAlg::m_floats
VariableMule< float, JC > m_floats
Definition
JetLinkMatcherAlg.h:31
ftag::JetLinkMatcherAlg::m_link
SG::ReadDecorHandleKey< JC > m_link
Definition
JetLinkMatcherAlg.h:46
ftag::JetLinkMatcherAlg::TPLV
std::vector< ElementLink< xAOD::TrackParticleContainer > > TPLV
Definition
JetLinkMatcherAlg.h:30
ftag::JetLinkMatcherAlg::JV
std::vector< const xAOD::IParticle * > JV
Definition
JetLinkMatcherAlg.h:52
ftag::JetLinkMatcherAlg::JC
xAOD::JetContainer JC
Definition
JetLinkMatcherAlg.h:27
ftag::JetLinkMatcherAlg::m_chars
VariableMule< char, JC > m_chars
Definition
JetLinkMatcherAlg.h:36
ftag::JetLinkMatcherAlg::m_matchDecorator
SG::WriteDecorHandleKey< JC > m_matchDecorator
Definition
JetLinkMatcherAlg.h:49
ftag::JetLinkMatcherAlg::m_trackLinks
VariableMule< TPLV, JC > m_trackLinks
Definition
JetLinkMatcherAlg.h:39
ftag::JetLinkMatcherAlg::m_targetJet
SG::ReadHandleKey< JC > m_targetJet
Definition
JetLinkMatcherAlg.h:40
ftag::JetLinkMatcherAlg::m_uints
VariableMule< uint, JC > m_uints
Definition
JetLinkMatcherAlg.h:34
ftag::JetLinkMatcherAlg::m_ulongs
VariableMule< ulong, JC > m_ulongs
Definition
JetLinkMatcherAlg.h:35
ftag::JetLinkMatcherAlg::finalize
virtual StatusCode finalize() override
Definition
JetLinkMatcherAlg.cxx:87
ftag::JetLinkMatcherAlg::m_charVectors
VariableMule< std::vector< char >, JC > m_charVectors
Definition
JetLinkMatcherAlg.h:37
ftag::JetLinkMatcherAlg::m_iparticles
VariableMule< IPLV, JC > m_iparticles
Definition
JetLinkMatcherAlg.h:38
ftag::JetLinkMatcherAlg::JetLinkMatcherAlg
JetLinkMatcherAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
JetLinkMatcherAlg.cxx:13
SG::ReadHandleKeyArray
HandleKeyArray< ReadHandle< T >, ReadHandleKey< T >, Gaudi::DataHandle::Reader > ReadHandleKeyArray
Definition
StoreGate/StoreGate/ReadHandleKeyArray.h:32
ftag
Definition
FlowSelectorAlg.cxx:16
xAOD::JetContainer
JetContainer_v1 JetContainer
Definition of the current "jet container version".
Definition
JetContainer.h:17
IParticleContainer.h
Generated on
for ATLAS Offline Software by
1.17.0