ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Algorithms
EgammaAnalysisAlgorithms
Root
EgammaCaloClusterEtaAlg.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
7
#include "
xAODEgamma/Egamma.h
"
8
#include "
xAODEgamma/EgammaContainer.h
"
9
#include <
EgammaAnalysisAlgorithms/EgammaCaloClusterEtaAlg.h
>
10
11
#include <
AsgDataHandles/ReadHandle.h
>
12
#include <
AsgDataHandles/WriteDecorHandle.h
>
13
14
15
namespace
CP
{
16
17
StatusCode
EgammaCaloClusterEtaAlg::initialize
() {
18
19
ANA_CHECK
(
m_particlesKey
.initialize());
20
ANA_CHECK
(
m_caloEta2Key
.initialize());
21
22
// create an accessor to register the type for output algorithms
23
SG::ConstAccessor<float>
(
m_caloEta2Key
.key().substr (
m_caloEta2Key
.key().find_last_of(
"."
) + 1));
24
25
return
StatusCode::SUCCESS;
26
}
27
28
StatusCode
EgammaCaloClusterEtaAlg::execute
(
const
EventContext &ctx)
const
{
29
30
SG::ReadHandle<xAOD::EgammaContainer>
particles(
m_particlesKey
, ctx);
31
32
SG::WriteDecorHandle<xAOD::EgammaContainer, float>
caloEta2Handle(
m_caloEta2Key
, ctx);
33
for
(
const
xAOD::Egamma
*particle : *particles) {
34
if
(!particle->caloCluster()) {
35
ANA_MSG_ERROR
(
"egamma object without a calo cluster"
);
36
return
StatusCode::FAILURE;
37
}
38
caloEta2Handle(*particle) = particle->caloCluster()->etaBE(2);
39
}
40
41
return
StatusCode::SUCCESS;
42
}
43
44
}
// namespace
ReadHandle.h
Handle class for reading from StoreGate.
WriteDecorHandle.h
Handle class for adding a decoration to an object.
ANA_MSG_ERROR
#define ANA_MSG_ERROR(xmsg,...)
Macro printing error messages.
Definition
Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:295
ANA_CHECK
#define ANA_CHECK(EXP)
check whether the given expression was successful
Definition
Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:325
EgammaCaloClusterEtaAlg.h
EgammaContainer.h
Egamma.h
CP::EgammaCaloClusterEtaAlg::m_caloEta2Key
SG::WriteDecorHandleKey< xAOD::EgammaContainer > m_caloEta2Key
Definition
EgammaCaloClusterEtaAlg.h:26
CP::EgammaCaloClusterEtaAlg::m_particlesKey
SG::ReadHandleKey< xAOD::EgammaContainer > m_particlesKey
Definition
EgammaCaloClusterEtaAlg.h:25
CP::EgammaCaloClusterEtaAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition
EgammaCaloClusterEtaAlg.cxx:28
CP::EgammaCaloClusterEtaAlg::initialize
virtual StatusCode initialize() override
Definition
EgammaCaloClusterEtaAlg.cxx:17
SG::ConstAccessor
Helper class to provide constant type-safe access to aux data.
Definition
ConstAccessor.h:55
SG::ReadHandle
Definition
StoreGate/StoreGate/ReadHandle.h:66
SG::WriteDecorHandle
Handle class for adding a decoration to an object.
Definition
StoreGate/StoreGate/WriteDecorHandle.h:100
CP
Select isolated Photons, Electrons and Muons.
Definition
Control/xAODRootAccess/xAODRootAccess/TEvent.h:27
xAOD::Egamma
Egamma_v1 Egamma
Definition of the current "egamma version".
Definition
Egamma.h:17
Generated on
for ATLAS Offline Software by
1.17.0