ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Columnar
ColumnarCore
ColumnarCore
ParticleDef.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_CORE_PARTICLE_DEF_H
9
#define COLUMNAR_CORE_PARTICLE_DEF_H
10
11
#include <
ColumnarCore/ContainerId.h
>
12
#include <
xAODBase/IParticleContainer.h
>
13
14
namespace
columnar
15
{
16
struct
ParticleDef
:
RegularContainerId
<xAOD::IParticle,xAOD::IParticleContainer>
17
{
18
static
constexpr
std::string_view
idName
=
"particle"
;
19
};
20
using
Particle0Def
=
ParticleDef
;
21
22
struct
Particle1Def
:
ParticleDef
23
{
24
static
constexpr
std::string_view
idName
=
"particle1"
;
25
};
26
27
struct
Particle2Def
:
ParticleDef
28
{
29
static
constexpr
std::string_view
idName
=
"particle2"
;
30
};
31
32
using
ParticleRange
=
ObjectRange<ParticleDef>
;
33
using
ParticleId
=
ObjectId<ParticleDef>
;
34
using
OptParticleId
=
OptObjectId<ParticleDef>
;
35
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
ParticleAccessor
=
AccessorTemplate<ParticleDef,CT,ColumnAccessMode::input,CM>
;
36
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
ParticleDecorator
=
AccessorTemplate<ParticleDef,CT,ColumnAccessMode::output,CM>
;
37
38
using
Particle0Range
=
ObjectRange<Particle0Def>
;
39
using
Particle0Id
=
ObjectId<Particle0Def>
;
40
using
OptParticle0Id
=
OptObjectId<Particle0Def>
;
41
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle0Accessor
=
AccessorTemplate<Particle0Def,CT,ColumnAccessMode::input,CM>
;
42
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle0Decorator
=
AccessorTemplate<Particle0Def,CT,ColumnAccessMode::output,CM>
;
43
44
using
Particle1Range
=
ObjectRange<Particle1Def>
;
45
using
Particle1Id
=
ObjectId<Particle1Def>
;
46
using
OptParticle1Id
=
OptObjectId<Particle1Def>
;
47
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle1Accessor
=
AccessorTemplate<Particle1Def,CT,ColumnAccessMode::input,CM>
;
48
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle1Decorator
=
AccessorTemplate<Particle1Def,CT,ColumnAccessMode::output,CM>
;
49
50
using
Particle2Range
=
ObjectRange<Particle2Def>
;
51
using
Particle2Id
=
ObjectId<Particle2Def>
;
52
using
OptParticle2Id
=
OptObjectId<Particle2Def>
;
53
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle2Accessor
=
AccessorTemplate<Particle2Def,CT,ColumnAccessMode::input,CM>
;
54
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle2Decorator
=
AccessorTemplate<Particle2Def,CT,ColumnAccessMode::output,CM>
;
55
}
56
57
#endif
ContainerId.h
columnar::AccessorTemplate
the raw column accessor template class
Definition
ColumnAccessor.h:197
columnar::ObjectId
a class representing a single object (electron, muons, etc.)
Definition
ContainerId.h:205
columnar::ObjectRange
a class representing a continuous sequence of objects (a.k.a. a container)
Definition
ContainerId.h:204
columnar::OptObjectId
a class representing a single optional object (electron, muons, etc.)
Definition
ContainerId.h:206
columnar
Definition
ClusterDef.h:16
columnar::Particle0Decorator
AccessorTemplate< Particle0Def, CT, ColumnAccessMode::output, CM > Particle0Decorator
Definition
ParticleDef.h:42
columnar::OptParticle2Id
OptObjectId< Particle2Def > OptParticle2Id
Definition
ParticleDef.h:52
columnar::Particle1Accessor
AccessorTemplate< Particle1Def, CT, ColumnAccessMode::input, CM > Particle1Accessor
Definition
ParticleDef.h:47
columnar::Particle1Decorator
AccessorTemplate< Particle1Def, CT, ColumnAccessMode::output, CM > Particle1Decorator
Definition
ParticleDef.h:48
columnar::Particle0Id
ObjectId< Particle0Def > Particle0Id
Definition
ParticleDef.h:39
columnar::Particle0Def
ParticleDef Particle0Def
Definition
ParticleDef.h:20
columnar::Particle1Id
ObjectId< Particle1Def > Particle1Id
Definition
ParticleDef.h:45
columnar::Particle2Accessor
AccessorTemplate< Particle2Def, CT, ColumnAccessMode::input, CM > Particle2Accessor
Definition
ParticleDef.h:53
columnar::ParticleId
ObjectId< ParticleDef > ParticleId
Definition
ParticleDef.h:33
columnar::ParticleAccessor
AccessorTemplate< ParticleDef, CT, ColumnAccessMode::input, CM > ParticleAccessor
Definition
ParticleDef.h:35
columnar::Particle0Range
ObjectRange< Particle0Def > Particle0Range
Definition
ParticleDef.h:38
columnar::OptParticle0Id
OptObjectId< Particle0Def > OptParticle0Id
Definition
ParticleDef.h:40
columnar::Particle2Decorator
AccessorTemplate< Particle2Def, CT, ColumnAccessMode::output, CM > Particle2Decorator
Definition
ParticleDef.h:54
columnar::Particle2Range
ObjectRange< Particle2Def > Particle2Range
Definition
ParticleDef.h:50
columnar::ParticleDecorator
AccessorTemplate< ParticleDef, CT, ColumnAccessMode::output, CM > ParticleDecorator
Definition
ParticleDef.h:36
columnar::ParticleRange
ObjectRange< ParticleDef > ParticleRange
Definition
ParticleDef.h:32
columnar::OptParticle1Id
OptObjectId< Particle1Def > OptParticle1Id
Definition
ParticleDef.h:46
columnar::Particle1Range
ObjectRange< Particle1Def > Particle1Range
Definition
ParticleDef.h:44
columnar::OptParticleId
OptObjectId< ParticleDef > OptParticleId
Definition
ParticleDef.h:34
columnar::Particle2Id
ObjectId< Particle2Def > Particle2Id
Definition
ParticleDef.h:51
columnar::Particle0Accessor
AccessorTemplate< Particle0Def, CT, ColumnAccessMode::input, CM > Particle0Accessor
Definition
ParticleDef.h:41
columnar::Particle1Def
Definition
ParticleDef.h:23
columnar::Particle1Def::idName
static constexpr std::string_view idName
Definition
ParticleDef.h:24
columnar::Particle2Def
Definition
ParticleDef.h:28
columnar::Particle2Def::idName
static constexpr std::string_view idName
Definition
ParticleDef.h:29
columnar::ParticleDef
Definition
ParticleDef.h:17
columnar::ParticleDef::idName
static constexpr std::string_view idName
Definition
ParticleDef.h:18
columnar::RegularContainerId
a template that provides a base definition of container id for a regular container
Definition
ContainerId.h:122
IParticleContainer.h
Generated on
for ATLAS Offline Software by
1.17.0