ATLAS Offline Software
PhysicsAnalysis
Columnar
ColumnarEgamma
ColumnarEgamma
EgammaDef.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
7
8
#ifndef COLUMNAR_EGAMMA_EGAMMA_DEF_H
9
#define COLUMNAR_EGAMMA_EGAMMA_DEF_H
10
11
#include <
ColumnarCore/ContainerId.h
>
12
#include <
xAODEgamma/EgammaContainer.h
>
13
#include <
xAODEgamma/ElectronContainer.h
>
14
#include <
xAODEgamma/PhotonContainer.h
>
15
16
namespace
columnar
17
{
18
namespace
ContainerId
19
{
20
struct
electron
:
regularCIBase
<xAOD::Electron,xAOD::ElectronContainer>
21
{
22
static
constexpr std::string_view
idName
=
"electron"
;
23
};
24
25
struct
photon
:
regularCIBase
<xAOD::Photon,xAOD::PhotonContainer>
26
{
27
static
constexpr std::string_view
idName
=
"photon"
;
28
};
29
30
struct
egamma
:
regularCIBase
<xAOD::Egamma,xAOD::EgammaContainer>
31
{
32
static
constexpr std::string_view
idName
=
"egamma"
;
33
};
34
using
mutableEgamma
= mutableCI<egamma>;
35
}
36
37
using
ElectronRange
=
ObjectRange<ContainerId::electron>
;
38
using
ElectronId
=
ObjectId<ContainerId::electron>
;
39
using
OptElectronId
=
OptObjectId<ContainerId::electron>
;
40
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
ElectronAccessor
=
AccessorTemplate<ContainerId::electron,CT,ColumnAccessMode::input,CM>
;
41
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
ElectronDecorator
=
AccessorTemplate<ContainerId::electron,CT,ColumnAccessMode::output,CM>
;
42
43
using
PhotonRange
=
ObjectRange<ContainerId::photon>
;
44
using
PhotonId
=
ObjectId<ContainerId::photon>
;
45
using
OptPhotonId
=
OptObjectId<ContainerId::photon>
;
46
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
PhotonAccessor
=
AccessorTemplate<ContainerId::photon,CT,ColumnAccessMode::input,CM>
;
47
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
PhotonDecorator
=
AccessorTemplate<ContainerId::photon,CT,ColumnAccessMode::output,CM>
;
48
49
using
EgammaRange
=
ObjectRange<ContainerId::egamma>
;
50
using
EgammaId
=
ObjectId<ContainerId::egamma>
;
51
using
OptEgammaId
=
OptObjectId<ContainerId::egamma>
;
52
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
EgammaAccessor
=
AccessorTemplate<ContainerId::egamma,CT,ColumnAccessMode::input,CM>
;
53
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
EgammaDecorator
=
AccessorTemplate<ContainerId::egamma,CT,ColumnAccessMode::output,CM>
;
54
55
using
MutableEgammaRange
=
ObjectRange<ContainerId::mutableEgamma>
;
56
using
MutableEgammaId
=
ObjectId<ContainerId::mutableEgamma>
;
57
using
OptMutableEgammaId
=
OptObjectId<ContainerId::mutableEgamma>
;
58
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
MutableEgammaAccessor
=
AccessorTemplate<ContainerId::mutableEgamma,CT,ColumnAccessMode::input,CM>
;
59
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
MutableEgammaDecorator
=
AccessorTemplate<ContainerId::mutableEgamma,CT,ColumnAccessMode::output,CM>
;
60
}
61
62
#endif
columnar::OptObjectId
a class representing a single optional object (electron, muons, etc.)
Definition:
ContainerId.h:179
columnar::ObjectRange
a class representing a continuous sequence of objects (a.k.a. a container)
Definition:
ContainerId.h:177
columnar::ContainerId::electron
Definition:
EgammaDef.h:21
EgammaContainer.h
ElectronContainer.h
columnar::ContainerId::electron::idName
static constexpr std::string_view idName
Definition:
EgammaDef.h:22
columnar::ContainerId::egamma
Definition:
EgammaDef.h:31
columnar::ContainerId::egamma::idName
static constexpr std::string_view idName
Definition:
EgammaDef.h:32
columnar::ObjectId
a class representing a single object (electron, muons, etc.)
Definition:
ContainerId.h:178
columnar::ContainerId::mutableEgamma
mutableCI< egamma > mutableEgamma
Definition:
EgammaDef.h:34
columnar
Definition:
ClusterDef.h:16
ContainerId.h
columnar::ContainerId::photon
Definition:
EgammaDef.h:26
columnar::ContainerId::regularCIBase
a template that provides a base definition of container id for a regular container
Definition:
ContainerId.h:107
columnar::AccessorTemplate
the raw column accessor template class
Definition:
ColumnAccessor.h:81
columnar::ContainerId::photon::idName
static constexpr std::string_view idName
Definition:
EgammaDef.h:27
PhotonContainer.h
Generated on Thu Sep 25 2025 21:09:09 for ATLAS Offline Software by
1.8.18