Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ColumnarDef.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef COLUMNAR_CORE_COLUMNAR_DEF_H
6 #define COLUMNAR_CORE_COLUMNAR_DEF_H
7 
8 namespace columnar
9 {
10  // This checks that COLUMNAR_DEFAULT_ACCESS_MODE is indeed defined, plus makes it
11  // available for use with `if constexpr`.
12  constexpr unsigned columnarAccessMode = COLUMNAR_DEFAULT_ACCESS_MODE;
13 
15  {
17  static constexpr bool isXAOD = true;
18 
24  static constexpr bool inPlaceReplace = true;
25  };
26 
27 
28 
30  {
32  static constexpr bool isXAOD = true;
33 
39  static constexpr bool inPlaceReplace = false;
40  };
41 
42 
43 
44 #if COLUMNAR_DEFAULT_ACCESS_MODE == 0
46 #elif COLUMNAR_DEFAULT_ACCESS_MODE == 2
48 #else
49  #error "COLUMNAR_DEFAULT_ACCESS_MODE must be 0 or 2"
50 #endif
51 }
52 
53 #endif
columnar::columnarAccessMode
constexpr unsigned columnarAccessMode
Definition: ColumnarDef.h:12
columnar::ColumnarModeArray::inPlaceReplace
static constexpr bool inPlaceReplace
Whether for this columnar mode decorators that replace the original column will also refer to the inp...
Definition: ColumnarDef.h:39
columnar::ColumnarModeXAOD::isXAOD
static constexpr bool isXAOD
Whether this is the xAOD mode.
Definition: ColumnarDef.h:17
columnar::ColumnarModeArray::isXAOD
static constexpr bool isXAOD
Whether this is the xAOD mode.
Definition: ColumnarDef.h:32
columnar::ColumnarModeArray
Definition: ColumnarDef.h:30
columnar
Definition: ColumnAccessor.h:23
columnar::ColumnarModeXAOD
Definition: ColumnarDef.h:15
columnar::ColumnarModeXAOD::inPlaceReplace
static constexpr bool inPlaceReplace
Whether for this columnar mode decorators that replace the original column will also refer to the inp...
Definition: ColumnarDef.h:24