Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
8 #ifndef COLUMNAR_CORE_LINK_COLUMN_H
9 #define COLUMNAR_CORE_LINK_COLUMN_H
11 #include <AthLinks/ElementLink.h>
31 template<ContainerId LT>
56 template<ContainerId LT,
typename ELT>
74 if (!ptr2)
throw std::runtime_error (
"link not of expected type");
90 template<ContainerId LT>
102 info.linkToName = columnarTool.objectName(
LT);
115 template<ContainerId LT,
typename ELT>
static OptObjectId< LT > convertInput(void **data, ColumnarOffsetType link)
char data[hepevt_bytes_allocation_ATLAS]
static ColumnInfo & updateColumnInfo(ColumnarTool< CM > &columnarTool, ColumnInfo &info)
static constexpr bool useConvertWithDataInput
static constexpr bool useConvertInput
a class representing a single optional object (electron, muons, etc.)
bool isValid() const
Test to see if the link can be dereferenced.
ColumnarOffsetType ColumnType
static ColumnInfo & updateColumnInfo(ColumnarTool< CM > &, ColumnInfo &info)
a struct that contains meta-information about each column that's needed to interface the column with ...
static OptObjectId< LT > convertInput(const ElementLink< typename ContainerIdTraits< LT >::xAODElementLinkType > &link)
static constexpr bool isNativeType
ElementLink implementation for ROOT usage.
a type wrapper to force AccessorTemplate to treat the type as native
constexpr ColumnarOffsetType invalidObjectIndex
the value for an invalid element index
static OptObjectId< LT > convertInput(const ElementLink< ELT > &link)
ElementConstPointer cptr() const
Return a pointer to the referenced element.
a trait class to provide information about the column type
static ColumnInfo & updateColumnInfo(ColumnarTool< CM > &, ColumnInfo &info)
a special column type that behaves like an OptObjectId, but applies an internal cast in xAOD mode
std::size_t ColumnarOffsetType
the type used for the size and offsets in the columnar data