ATLAS Offline Software
Loading...
Searching...
No Matches
EventInfoDef.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_EVENT_INFO_EVENT_INFO_DEF_H
9#define COLUMNAR_EVENT_INFO_EVENT_INFO_DEF_H
10
14
15namespace columnar
16{
17 struct EventInfoDef : RegularContainerId<xAOD::EventInfo,xAOD::EventInfo>
18 {
19 // The `idName` is used to identify the container internally, but
20 // it is also the fallback if the tool doesn't explicitly define a
21 // name for the object. So I defined it as "EventInfo" which is
22 // almost always the name used in the input file.
23 static constexpr std::string_view idName = "EventInfo";
24
25 // redefine this to be per-event ObjectId instead of per-event
26 // ObjectRange
27 static constexpr bool perEventRange = false;
28 static constexpr bool perEventId = true;
29 };
30
34 template<typename CT,typename CM=ColumnarModeDefault> using EventInfoAccessor = AccessorTemplate<EventInfoDef,CT,ColumnAccessMode::input,CM>;
35 template<typename CT,typename CM=ColumnarModeDefault> using EventInfoDecorator = AccessorTemplate<EventInfoDef,CT,ColumnAccessMode::output,CM>;
36}
37
38#endif
the raw column accessor template class
a class representing a single object (electron, muons, etc.)
a class representing a continuous sequence of objects (a.k.a. a container)
a class representing a single optional object (electron, muons, etc.)
OptObjectId< EventInfoDef > OptEventInfoId
ObjectRange< EventInfoDef > EventInfoRange
ObjectId< EventInfoDef > EventInfoId
AccessorTemplate< EventInfoDef, CT, ColumnAccessMode::input, CM > EventInfoAccessor
AccessorTemplate< EventInfoDef, CT, ColumnAccessMode::output, CM > EventInfoDecorator
static constexpr std::string_view idName
static constexpr bool perEventRange
static constexpr bool perEventId
Container id definitions for the columnar infrastructure.