ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
DerivationFramework
DerivationFrameworkFlavourTag
src
FlowEnergyDecorator.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 FLOW_ENERGY_DECORATOR_HH
6
#define FLOW_ENERGY_DECORATOR_HH
7
8
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
9
#include "
xAODPFlow/FlowElementContainer.h
"
10
#include "
StoreGate/ReadHandleKey.h
"
11
#include "
StoreGate/ReadDecorHandleKey.h
"
12
#include "
StoreGate/ReadDecorHandleKeyArray.h
"
13
#include "
StoreGate/WriteDecorHandleKey.h
"
14
#include "
StoreGate/WriteDecorHandleKeyArray.h
"
15
16
#include <string>
17
#include <vector>
18
#include <utility>
//for std::pair
19
20
21
#include "
AthContainers/AuxElement.h
"
// For SG::AuxElement::Accessor
22
23
class
FlowEnergyDecorator
:
public
AthReentrantAlgorithm
{
24
public
:
25
FlowEnergyDecorator
(
const
std::string& name, ISvcLocator* pSvcLocator);
26
27
virtual
StatusCode
initialize
()
override
;
28
virtual
StatusCode
execute
(
const
EventContext&)
const override
;
29
30
private
:
31
32
// Input UFO container on which the decorations are done
33
SG::ReadHandleKey<xAOD::FlowElementContainer>
m_FlowContainerKey
{
34
this
,
"UFOContainer"
,
"UFOCSSK"
,
"Key for the input flow collection"
35
};
36
37
// Input PFlow container from which the layer energies are accessed
38
SG::ReadHandleKey<xAOD::FlowElementContainer>
m_PFlowContainerKey
{
39
this
,
"PFlowContainer"
,
"GlobalNeutralParticleFlowObjects"
,
"Key for the input pflow collection"
40
};
41
42
// // Electromagnetic layer names to sum for each type
43
// Gaudi::Property<std::vector<std::string>> m_layerEnergiesEM {
44
// this, "layerEnergiesEM",
45
// { "PreSamplerB", "PreSamplerE", "EMB1", "EMB2", "EMB3", "EME1", "EME2", "EME3", "FCAL0" },
46
// "Electromagnetic layerEnergies used for decorations"
47
// };
48
49
// // Hadronic layer names to sum for each type
50
// Gaudi::Property<std::vector<std::string>> m_layerEnergiesHAD {
51
// this, "layerEnergiesHAD",
52
// { "TileBar0", "TileBar1", "TileBar2", "TileExt0", "TileExt1", "TileExt2",
53
// "TileGap1", "TileGap2", "TileGap3", "FCAL1", "FCAL2", "HEC1", "HEC2", "HEC3" },
54
// "Hadronic layerEnergies used for decorations"
55
// };
56
57
// Decorations for total EM and HAD energies and fractions
58
SG::WriteDecorHandleKey<xAOD::FlowElementContainer>
m_eEMKey
{
59
this
,
"eEMDecorKey"
,
m_FlowContainerKey
,
"eEM"
,
"EM energy decoration"
60
};
61
62
SG::WriteDecorHandleKey<xAOD::FlowElementContainer>
m_eHADKey
{
63
this
,
"eHADDecorKey"
,
m_FlowContainerKey
,
"eHAD"
,
"Hadronic energy decoration"
64
};
65
66
SG::WriteDecorHandleKey<xAOD::FlowElementContainer>
m_eFracEMKey
{
67
this
,
"eFracEMDecorKey"
,
m_FlowContainerKey
,
"eFracEM"
,
"EM energy fraction decoration"
68
};
69
70
SG::WriteDecorHandleKey<xAOD::FlowElementContainer>
m_eFracHADKey
{
71
this
,
"eFracHADDecorKey"
,
m_FlowContainerKey
,
"eFracHAD"
,
"Hadronic energy fraction decoration"
72
};
73
74
SG::ReadDecorHandleKeyArray<xAOD::FlowElementContainer>
m_emReadDecorKeys
{
75
this
,
"LayerEnergyAccessorsEM"
,
m_PFlowContainerKey
, {},
"Layer EM energy accessors"
76
};
77
78
SG::WriteDecorHandleKeyArray<xAOD::FlowElementContainer>
m_emWriteDecorKeys
{
79
this
,
"LayerEnergyDecoratorsEM"
,
m_FlowContainerKey
, {},
"Layer EM energy decoration"
80
};
81
82
SG::ReadDecorHandleKeyArray<xAOD::FlowElementContainer>
m_hadReadDecorKeys
{
83
this
,
"LayerEnergyAccessorsHAD"
,
m_PFlowContainerKey
, {},
"Layer Hadronic energy accessors"
84
};
85
86
SG::WriteDecorHandleKeyArray<xAOD::FlowElementContainer>
m_hadWriteDecorKeys
{
87
this
,
"LayerEnergyDecoratorsHAD"
,
m_FlowContainerKey
, {},
"Layer Hadronic energy decoration"
88
};
89
};
90
91
#endif
AthReentrantAlgorithm.h
AuxElement.h
Base class for elements of a container that can have aux data.
FlowElementContainer.h
ReadDecorHandleKeyArray.h
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
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.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
FlowEnergyDecorator::m_eFracEMKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eFracEMKey
Definition
FlowEnergyDecorator.h:66
FlowEnergyDecorator::execute
virtual StatusCode execute(const EventContext &) const override
Definition
FlowEnergyDecorator.cxx:40
FlowEnergyDecorator::m_emReadDecorKeys
SG::ReadDecorHandleKeyArray< xAOD::FlowElementContainer > m_emReadDecorKeys
Definition
FlowEnergyDecorator.h:74
FlowEnergyDecorator::m_PFlowContainerKey
SG::ReadHandleKey< xAOD::FlowElementContainer > m_PFlowContainerKey
Definition
FlowEnergyDecorator.h:38
FlowEnergyDecorator::m_eHADKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eHADKey
Definition
FlowEnergyDecorator.h:62
FlowEnergyDecorator::m_eEMKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eEMKey
Definition
FlowEnergyDecorator.h:58
FlowEnergyDecorator::initialize
virtual StatusCode initialize() override
Definition
FlowEnergyDecorator.cxx:19
FlowEnergyDecorator::m_FlowContainerKey
SG::ReadHandleKey< xAOD::FlowElementContainer > m_FlowContainerKey
Definition
FlowEnergyDecorator.h:33
FlowEnergyDecorator::m_eFracHADKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eFracHADKey
Definition
FlowEnergyDecorator.h:70
FlowEnergyDecorator::FlowEnergyDecorator
FlowEnergyDecorator(const std::string &name, ISvcLocator *pSvcLocator)
Definition
FlowEnergyDecorator.cxx:15
FlowEnergyDecorator::m_hadReadDecorKeys
SG::ReadDecorHandleKeyArray< xAOD::FlowElementContainer > m_hadReadDecorKeys
Definition
FlowEnergyDecorator.h:82
FlowEnergyDecorator::m_hadWriteDecorKeys
SG::WriteDecorHandleKeyArray< xAOD::FlowElementContainer > m_hadWriteDecorKeys
Definition
FlowEnergyDecorator.h:86
FlowEnergyDecorator::m_emWriteDecorKeys
SG::WriteDecorHandleKeyArray< xAOD::FlowElementContainer > m_emWriteDecorKeys
Definition
FlowEnergyDecorator.h:78
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
SG::ReadDecorHandleKeyArray
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
Definition
StoreGate/StoreGate/ReadDecorHandleKeyArray.h:35
SG::WriteDecorHandleKeyArray
DecorHandleKeyArray< WriteDecorHandle< T, S >, WriteDecorHandleKey< T >, Gaudi::DataHandle::Writer > WriteDecorHandleKeyArray
Definition
StoreGate/StoreGate/WriteDecorHandleKeyArray.h:35
Generated on
for ATLAS Offline Software by
1.17.0