ATLAS Offline Software
Loading...
Searching...
No Matches
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
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
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
34 this, "UFOContainer", "UFOCSSK", "Key for the input flow collection"
35 };
36
37 // Input PFlow container from which the layer energies are accessed
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
59 this, "eEMDecorKey", m_FlowContainerKey, "eEM", "EM energy decoration"
60 };
61
63 this, "eHADDecorKey", m_FlowContainerKey, "eHAD", "Hadronic energy decoration"
64 };
65
67 this, "eFracEMDecorKey", m_FlowContainerKey, "eFracEM", "EM energy fraction decoration"
68 };
69
71 this, "eFracHADDecorKey", m_FlowContainerKey, "eFracHAD", "Hadronic energy fraction decoration"
72 };
73
75 this, "LayerEnergyAccessorsEM", m_PFlowContainerKey, {}, "Layer EM energy accessors"
76 };
77
79 this, "LayerEnergyDecoratorsEM", m_FlowContainerKey, {}, "Layer EM energy decoration"
80 };
81
83 this, "LayerEnergyAccessorsHAD", m_PFlowContainerKey, {}, "Layer Hadronic energy accessors"
84 };
85
87 this, "LayerEnergyDecoratorsHAD", m_FlowContainerKey, {}, "Layer Hadronic energy decoration"
88 };
89};
90
91#endif
Base class for elements of a container that can have aux data.
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eFracEMKey
virtual StatusCode execute(const EventContext &) const override
SG::ReadDecorHandleKeyArray< xAOD::FlowElementContainer > m_emReadDecorKeys
SG::ReadHandleKey< xAOD::FlowElementContainer > m_PFlowContainerKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eHADKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eEMKey
virtual StatusCode initialize() override
SG::ReadHandleKey< xAOD::FlowElementContainer > m_FlowContainerKey
SG::WriteDecorHandleKey< xAOD::FlowElementContainer > m_eFracHADKey
FlowEnergyDecorator(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadDecorHandleKeyArray< xAOD::FlowElementContainer > m_hadReadDecorKeys
SG::WriteDecorHandleKeyArray< xAOD::FlowElementContainer > m_hadWriteDecorKeys
SG::WriteDecorHandleKeyArray< xAOD::FlowElementContainer > m_emWriteDecorKeys
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
DecorHandleKeyArray< WriteDecorHandle< T, S >, WriteDecorHandleKey< T >, Gaudi::DataHandle::Writer > WriteDecorHandleKeyArray