Some fields have multiple possible column representations, e.g.
with or without split encoding. All column representations supported for writing also need to be supported for reading. In addition, fields can support extra column representations for reading only, e.g. a 64bit integer reading from a 32bit column. The defined column representations must be supported by corresponding column packing/unpacking implementations, i.e. for the example above, the unpacking of 32bit ints to 64bit pages must be implemented in RColumnElement.hxx
Definition at line 178 of file RFieldBase.hxx.
Public Types | |
using | Selection_t = std::vector<ColumnRepresentation_t> |
A list of column representations. | |
Public Member Functions | |
RColumnRepresentations () | |
RColumnRepresentations (const Selection_t &serializationTypes, const Selection_t &deserializationExtraTypes) | |
const Selection_t & | GetDeserializationTypes () const |
const ColumnRepresentation_t & | GetSerializationDefault () const |
The first column list from fSerializationTypes is the default for writing. | |
const Selection_t & | GetSerializationTypes () const |
Private Attributes | |
Selection_t | fDeserializationTypes |
The union of the serialization types and the deserialization extra types. | |
Selection_t | fSerializationTypes |
#include <ROOT/RFieldBase.hxx>
A list of column representations.
Definition at line 181 of file RFieldBase.hxx.
ROOT::RFieldBase::RColumnRepresentations::RColumnRepresentations | ( | ) |
Definition at line 99 of file RFieldBase.cxx.
ROOT::RFieldBase::RColumnRepresentations::RColumnRepresentations | ( | const Selection_t & | serializationTypes, |
const Selection_t & | deserializationExtraTypes ) |
Definition at line 106 of file RFieldBase.cxx.
|
inline |
Definition at line 189 of file RFieldBase.hxx.
|
inline |
The first column list from fSerializationTypes is the default for writing.
Definition at line 187 of file RFieldBase.hxx.
|
inline |
Definition at line 188 of file RFieldBase.hxx.
|
private |
The union of the serialization types and the deserialization extra types.
Duplicates the serialization types list but the benefit is that GetDeserializationTypes does not need to compile the list.
Definition at line 195 of file RFieldBase.hxx.
|
private |
Definition at line 192 of file RFieldBase.hxx.