ATLAS Offline Software
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
namespace
ContainerId
17
{
18
struct
particle
:
regularCIBase
<xAOD::IParticle,xAOD::IParticleContainer>
19
{
20
static
constexpr std::string_view
idName
=
"particle"
;
21
};
22
using
particle0
=
particle
;
23
24
struct
particle1
:
particle
25
{
26
static
constexpr std::string_view
idName
=
"particle1"
;
27
};
28
}
29
30
using
ParticleRange
=
ObjectRange<ContainerId::particle>
;
31
using
ParticleId
=
ObjectId<ContainerId::particle>
;
32
using
OptParticleId
=
OptObjectId<ContainerId::particle>
;
33
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
ParticleAccessor
=
AccessorTemplate<ContainerId::particle,CT,ColumnAccessMode::input,CM>
;
34
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
ParticleDecorator
=
AccessorTemplate<ContainerId::particle,CT,ColumnAccessMode::output,CM>
;
35
36
using
Particle0Range
=
ObjectRange<ContainerId::particle0>
;
37
using
Particle0Id
=
ObjectId<ContainerId::particle0>
;
38
using
OptParticle0Id
=
OptObjectId<ContainerId::particle0>
;
39
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle0Accessor
=
AccessorTemplate<ContainerId::particle0,CT,ColumnAccessMode::input,CM>
;
40
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle0Decorator
=
AccessorTemplate<ContainerId::particle0,CT,ColumnAccessMode::output,CM>
;
41
42
using
Particle1Range
=
ObjectRange<ContainerId::particle1>
;
43
using
Particle1Id
=
ObjectId<ContainerId::particle1>
;
44
using
OptParticle1Id
=
OptObjectId<ContainerId::particle1>
;
45
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle1Accessor
=
AccessorTemplate<ContainerId::particle1,CT,ColumnAccessMode::input,CM>
;
46
template
<
typename
CT,
typename
CM=ColumnarModeDefault>
using
Particle1Decorator
=
AccessorTemplate<ContainerId::particle1,CT,ColumnAccessMode::output,CM>
;
47
}
48
49
#endif
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition:
ParticleHypothesis.h:79
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
IParticleContainer.h
columnar::ContainerId::particle
Definition:
ParticleDef.h:19
columnar::ObjectId
a class representing a single object (electron, muons, etc.)
Definition:
ContainerId.h:178
columnar::ContainerId::particle1::idName
static constexpr std::string_view idName
Definition:
ParticleDef.h:26
columnar::ContainerId::particle1
Definition:
ParticleDef.h:25
columnar
Definition:
ClusterDef.h:16
ContainerId.h
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::particle::idName
static constexpr std::string_view idName
Definition:
ParticleDef.h:20
Generated on Thu Sep 25 2025 21:15:39 for ATLAS Offline Software by
1.8.18