![]() |
ATLAS Offline Software
|
the header information for a single element in the columnar data vector More...
#include <ColumnVectorWrapper.h>
Public Attributes | |
| std::string | debugName |
| the name of the column to use in messages | |
| const std::type_info * | type = nullptr |
| the type to use for the column | |
| bool | isOptional = true |
| whether this column is optional | |
| bool | readOnly = true |
| whether this column will only be used for read access | |
| bool | isOffset = false |
| whether this is an offset column | |
| unsigned | arraySize = 1u |
| the total size of all inner array dimensions | |
| std::size_t | offsetIndex = 0u |
| the index of the offset column (or nullIndex for none) | |
| ColumnAccessMode | accessMode = ColumnAccessMode::input |
| the access mode for the column | |
| std::string | offsetName |
| the name of the offset column (or empty for none) | |
| std::vector< std::string > | linkTargetNames |
| for link columns: the target container names | |
| std::string | variantLinkKeyColumn |
| if this is a variant link column, the name of the key column | |
| std::vector< unsigned > | fixedDimensions |
| the fixed dimensions (if any) | |
the header information for a single element in the columnar data vector
This is a stripped-down and slightly reworked version of ColumnInfo that can be used internally for checking interactions with the data vector from the tool wrapper.
Definition at line 31 of file ColumnVectorWrapper.h.
| ColumnAccessMode columnar::ColumnVectorElementHeader::accessMode = ColumnAccessMode::input |
the access mode for the column
Definition at line 90 of file ColumnVectorWrapper.h.
| unsigned columnar::ColumnVectorElementHeader::arraySize = 1u |
the total size of all inner array dimensions
This is 1 for most columns, but some columns contain an array of values. In that case this is the product of all array dimensions, and is used for size checks.
Definition at line 77 of file ColumnVectorWrapper.h.
| std::string columnar::ColumnVectorElementHeader::debugName |
the name of the column to use in messages
This is not used for any actual processing, but is used if I want to print debug or error messages. It is a bit complicated because the same name can refer to different columns in different contexts, and a column could also have a different name in different contexts. However, I do need a way to refer to a column, so I have to put something here. Please do not rely on the exact name being stable. In the future I may also replace it with a list of names (or similar) to give me more options.
Definition at line 44 of file ColumnVectorWrapper.h.
| std::vector<unsigned> columnar::ColumnVectorElementHeader::fixedDimensions |
the fixed dimensions (if any)
Definition at line 102 of file ColumnVectorWrapper.h.
| bool columnar::ColumnVectorElementHeader::isOffset = false |
whether this is an offset column
If this is true it means other columns can use this for their offsets. It also means that the column should have an extra entry at the end to hold the total number of entries in columns using this as an offset. It also implies that the type ought to be ColumnarOffsetType.
Definition at line 69 of file ColumnVectorWrapper.h.
| bool columnar::ColumnVectorElementHeader::isOptional = true |
whether this column is optional
Definition at line 52 of file ColumnVectorWrapper.h.
| std::vector<std::string> columnar::ColumnVectorElementHeader::linkTargetNames |
for link columns: the target container names
Definition at line 96 of file ColumnVectorWrapper.h.
| std::size_t columnar::ColumnVectorElementHeader::offsetIndex = 0u |
the index of the offset column (or nullIndex for none)
Most columns do have an offset column, which is usually the offset column for their container. This is used to check that the size of the column matches the size of the offset column.
Definition at line 86 of file ColumnVectorWrapper.h.
| std::string columnar::ColumnVectorElementHeader::offsetName |
the name of the offset column (or empty for none)
Definition at line 93 of file ColumnVectorWrapper.h.
| bool columnar::ColumnVectorElementHeader::readOnly = true |
whether this column will only be used for read access
If this is true, it can be set from a const pointer, and can only be retrieved as a const pointer.
Definition at line 59 of file ColumnVectorWrapper.h.
| const std::type_info* columnar::ColumnVectorElementHeader::type = nullptr |
the type to use for the column
Definition at line 48 of file ColumnVectorWrapper.h.
| std::string columnar::ColumnVectorElementHeader::variantLinkKeyColumn |
if this is a variant link column, the name of the key column
Definition at line 99 of file ColumnVectorWrapper.h.