ATLAS Offline Software
Loading...
Searching...
No Matches
TrackDef.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_TRACKING_TRACK_DEF_H
9#define COLUMNAR_TRACKING_TRACK_DEF_H
10
14
15namespace columnar
16{
17 struct TrackDef : RegularContainerId<xAOD::TrackParticle,xAOD::TrackParticleContainer>
18 {
19 static constexpr std::string_view idName = "track0";
20 };
22
24 {
25 static constexpr std::string_view idName = "track1";
26 };
27
29 {
30 static constexpr std::string_view idName = "track2";
31 };
32
34 {
35 static constexpr std::string_view idName = "track3";
36 };
37
38 struct VertexDef : RegularContainerId<xAOD::Vertex,xAOD::VertexContainer>
39 {
40 static constexpr std::string_view idName = "vertex";
41 };
42
45 template<typename CT,typename CM=ColumnarModeDefault> using TrackAccessor = AccessorTemplate<TrackDef,CT,ColumnAccessMode::input,CM>;
46 template<typename CT,typename CM=ColumnarModeDefault> using TrackDecorator = AccessorTemplate<TrackDef,CT,ColumnAccessMode::output,CM>;
47
49 template<typename CT,typename CM=ColumnarModeDefault> using Track0Accessor = AccessorTemplate<Track0Def,CT,ColumnAccessMode::input,CM>;
50 template<typename CT,typename CM=ColumnarModeDefault> using Track0Decorator = AccessorTemplate<Track0Def,CT,ColumnAccessMode::output,CM>;
51
53 template<typename CT,typename CM=ColumnarModeDefault> using Track1Accessor = AccessorTemplate<Track1Def,CT,ColumnAccessMode::input,CM>;
54 template<typename CT,typename CM=ColumnarModeDefault> using Track1Decorator = AccessorTemplate<Track1Def,CT,ColumnAccessMode::output,CM>;
55
57 template<typename CT,typename CM=ColumnarModeDefault> using Track2Accessor = AccessorTemplate<Track2Def,CT,ColumnAccessMode::input,CM>;
58 template<typename CT,typename CM=ColumnarModeDefault> using Track2Decorator = AccessorTemplate<Track2Def,CT,ColumnAccessMode::output,CM>;
59
61 template<typename CT,typename CM=ColumnarModeDefault> using Track3Accessor = AccessorTemplate<Track3Def,CT,ColumnAccessMode::input,CM>;
62 template<typename CT,typename CM=ColumnarModeDefault> using Track3Decorator = AccessorTemplate<Track3Def,CT,ColumnAccessMode::output,CM>;
63
66 template<typename CT,typename CM=ColumnarModeDefault> using VertexAccessor = AccessorTemplate<VertexDef,CT,ColumnAccessMode::input,CM>;
67 template<typename CT,typename CM=ColumnarModeDefault> using VertexDecorator = AccessorTemplate<VertexDef,CT,ColumnAccessMode::output,CM>;
68}
69
70#endif
the raw column accessor template class
a class representing a single object (electron, muons, etc.)
a class representing a single optional object (electron, muons, etc.)
OptObjectId< TrackDef > OptTrackId
Definition TrackDef.h:44
AccessorTemplate< VertexDef, CT, ColumnAccessMode::output, CM > VertexDecorator
Definition TrackDef.h:67
OptObjectId< VertexDef > OptVertexId
Definition TrackDef.h:65
AccessorTemplate< Track0Def, CT, ColumnAccessMode::output, CM > Track0Decorator
Definition TrackDef.h:50
AccessorTemplate< Track2Def, CT, ColumnAccessMode::output, CM > Track2Decorator
Definition TrackDef.h:58
AccessorTemplate< Track0Def, CT, ColumnAccessMode::input, CM > Track0Accessor
Definition TrackDef.h:49
AccessorTemplate< Track2Def, CT, ColumnAccessMode::input, CM > Track2Accessor
Definition TrackDef.h:57
AccessorTemplate< VertexDef, CT, ColumnAccessMode::input, CM > VertexAccessor
Definition TrackDef.h:66
TrackDef Track0Def
Definition TrackDef.h:21
AccessorTemplate< Track3Def, CT, ColumnAccessMode::input, CM > Track3Accessor
Definition TrackDef.h:61
ObjectId< TrackDef > TrackId
Definition TrackDef.h:43
AccessorTemplate< Track1Def, CT, ColumnAccessMode::input, CM > Track1Accessor
Definition TrackDef.h:53
AccessorTemplate< TrackDef, CT, ColumnAccessMode::input, CM > TrackAccessor
Definition TrackDef.h:45
OptObjectId< Track0Def > OptTrack0Id
Definition TrackDef.h:48
AccessorTemplate< Track1Def, CT, ColumnAccessMode::output, CM > Track1Decorator
Definition TrackDef.h:54
ObjectId< VertexDef > VertexId
Definition TrackDef.h:64
OptObjectId< Track1Def > OptTrack1Id
Definition TrackDef.h:52
OptObjectId< Track2Def > OptTrack2Id
Definition TrackDef.h:56
AccessorTemplate< Track3Def, CT, ColumnAccessMode::output, CM > Track3Decorator
Definition TrackDef.h:62
AccessorTemplate< TrackDef, CT, ColumnAccessMode::output, CM > TrackDecorator
Definition TrackDef.h:46
OptObjectId< Track3Def > OptTrack3Id
Definition TrackDef.h:60
Container id definitions for the columnar infrastructure.
static constexpr std::string_view idName
Definition TrackDef.h:25
static constexpr std::string_view idName
Definition TrackDef.h:30
static constexpr std::string_view idName
Definition TrackDef.h:35
static constexpr std::string_view idName
Definition TrackDef.h:19
static constexpr std::string_view idName
Definition TrackDef.h:40