ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
JetTagging
FlavorTagInference
FlavorTagInference
DecoratorAlg.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 DECORATOR_ALG_H
6
#define DECORATOR_ALG_H
7
8
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
9
10
#include "
xAODEgamma/ElectronContainer.h
"
11
#include "
xAODMuon/MuonContainer.h
"
12
13
#include "
StoreGate/WriteDecorHandleKey.h
"
14
#include "
StoreGate/ReadDecorHandleKey.h
"
15
16
namespace
FlavorTagInference
{
17
template
<
typename
CONTAINER,
typename
DECORATOR,
typename
CONSTITUENTS>
18
class
DecoratorAlg
:
public
AthReentrantAlgorithm
19
{
20
public
:
21
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
22
using
ExtraDependencies
= std::set<std::string>;
23
virtual
StatusCode
initialize
()
override
;
24
virtual
StatusCode
initializeInternal
(
ExtraDependencies
= {});
25
virtual
StatusCode
execute
(
const
EventContext& cxt)
const override
;
26
virtual
StatusCode
finalize
()
override
;
27
protected
:
28
SG::ReadHandleKey<CONTAINER>
m_containerKey
{
29
this
,
"container"
,
""
,
"Key for the input collection"
};
30
SG::ReadHandleKey<CONSTITUENTS>
m_constituentKey
{
31
this
,
"constituentContainer"
,
""
,
32
"Key for track inputs container"
};
33
SG::ReadHandleKey<xAOD::ElectronContainer>
m_electronKey
{
34
this
,
"electronContainer"
,
35
""
,
"key for input electron container"
36
};
37
SG::ReadHandleKey<xAOD::MuonContainer>
m_muonKey
{
38
this
,
"muonContainer"
,
39
""
,
"key for input muon container"
40
};
41
Gaudi::Property<std::vector<std::string>>
m_undeclaredReadDecorKeys
{
42
this
,
"undeclaredReadDecorKeys"
, {},
43
"List of read handles that we don't read, e.g. static variables"
};
44
45
ToolHandle<DECORATOR>
m_decorator
{
46
this
,
"decorator"
,
""
,
"Decorator tool"
};
47
48
// Keys to keep track of the inputs / outputs
49
std::vector<SG::ReadDecorHandleKey<CONTAINER>>
m_aux
;
50
std::vector<SG::ReadDecorHandleKey<CONSTITUENTS>>
m_constituentAux
;
51
std::vector<SG::ReadDecorHandleKey<xAOD::ElectronContainer>>
m_electronAux
;
52
std::vector<SG::ReadDecorHandleKey<xAOD::MuonContainer>>
m_muonAux
;
53
std::vector<SG::WriteDecorHandleKey<CONTAINER>>
m_decor
;
54
55
// aux ids (to lock)
56
std::vector<SG::auxid_t>
m_auxids
;
57
};
58
}
59
60
#include "
DecoratorAlg.icc
"
61
62
#endif
AthReentrantAlgorithm.h
DecoratorAlg.icc
ElectronContainer.h
MuonContainer.h
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
FlavorTagInference::DecoratorAlg
Definition
DecoratorAlg.h:19
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_auxids
std::vector< SG::auxid_t > m_auxids
Definition
DecoratorAlg.h:56
FlavorTagInference::DecoratorAlg::finalize
virtual StatusCode finalize() override
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_constituentKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_constituentKey
Definition
DecoratorAlg.h:30
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_containerKey
SG::ReadHandleKey< xAOD::JetContainer > m_containerKey
Definition
DecoratorAlg.h:28
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_muonAux
std::vector< SG::ReadDecorHandleKey< xAOD::MuonContainer > > m_muonAux
Definition
DecoratorAlg.h:52
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_aux
std::vector< SG::ReadDecorHandleKey< xAOD::JetContainer > > m_aux
Definition
DecoratorAlg.h:49
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_muonKey
SG::ReadHandleKey< xAOD::MuonContainer > m_muonKey
Definition
DecoratorAlg.h:37
FlavorTagInference::DecoratorAlg::initialize
virtual StatusCode initialize() override
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_undeclaredReadDecorKeys
Gaudi::Property< std::vector< std::string > > m_undeclaredReadDecorKeys
Definition
DecoratorAlg.h:41
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_electronAux
std::vector< SG::ReadDecorHandleKey< xAOD::ElectronContainer > > m_electronAux
Definition
DecoratorAlg.h:51
FlavorTagInference::DecoratorAlg::ExtraDependencies
std::set< std::string > ExtraDependencies
Definition
DecoratorAlg.h:22
FlavorTagInference::DecoratorAlg::initializeInternal
virtual StatusCode initializeInternal(ExtraDependencies={})
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_decorator
ToolHandle< IJetTagConditionalDecorator > m_decorator
Definition
DecoratorAlg.h:45
FlavorTagInference::DecoratorAlg::execute
virtual StatusCode execute(const EventContext &cxt) const override
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_decor
std::vector< SG::WriteDecorHandleKey< xAOD::JetContainer > > m_decor
Definition
DecoratorAlg.h:53
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_electronKey
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronKey
Definition
DecoratorAlg.h:33
FlavorTagInference::DecoratorAlg< xAOD::JetContainer, IJetTagConditionalDecorator, xAOD::TrackParticleContainer >::m_constituentAux
std::vector< SG::ReadDecorHandleKey< xAOD::TrackParticleContainer > > m_constituentAux
Definition
DecoratorAlg.h:50
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
FlavorTagInference
This file contains "getter" functions used for accessing tagger inputs from the EDM.
Definition
CaloClusterLoader.h:27
Generated on
for ATLAS Offline Software by
1.17.0