The serialization context is used for the piecewise serialization of a descriptor.
During header serialization, the mapping of in-memory field and column IDs to on-disk IDs is built so that it can be used for the footer serialization in a second step.
Definition at line 108 of file RNTupleSerialize.hxx.
Private Attributes | |
std::uint64_t | fHeaderSize = 0 |
std::uint64_t | fHeaderXxHash3 = 0 |
std::map< DescriptorId_t, DescriptorId_t > | fMem2OnDiskClusterGroupIDs |
std::map< DescriptorId_t, DescriptorId_t > | fMem2OnDiskClusterIDs |
std::map< DescriptorId_t, DescriptorId_t > | fMem2OnDiskColumnIDs |
std::map< DescriptorId_t, DescriptorId_t > | fMem2OnDiskFieldIDs |
std::vector< DescriptorId_t > | fOnDisk2MemClusterGroupIDs |
std::vector< DescriptorId_t > | fOnDisk2MemClusterIDs |
std::vector< DescriptorId_t > | fOnDisk2MemColumnIDs |
std::vector< DescriptorId_t > | fOnDisk2MemFieldIDs |
#include <ROOT/RNTupleSerialize.hxx>
|
inline |
Definition at line 123 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 125 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 178 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 177 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 176 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 175 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 171 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 170 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 169 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 168 of file RNTupleSerialize.hxx.
|
inline |
Return a vector containing the in-memory field ID for each on-disk counterpart, in order, i.e.
the i
-th value corresponds to the in-memory field ID for i
-th on-disk ID
Definition at line 185 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 156 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 149 of file RNTupleSerialize.hxx.
|
inline |
Map an in-memory field ID to its on-disk counterpart.
It is allowed to call this function multiple times for the same memId
, in which case the return value is the on-disk ID assigned on the first call.
Definition at line 128 of file RNTupleSerialize.hxx.
|
inline |
Map an in-memory column ID to its on-disk counterpart.
It is allowed to call this function multiple times for the same memId
, in which case the return value is the on-disk ID assigned on the first call. Note that we only map physical column IDs. Logical column IDs of alias columns are shifted before the serialization of the extension header. Also, we only need to query physical column IDs for the page list serialization.
Definition at line 141 of file RNTupleSerialize.hxx.
void ROOT::Experimental::Internal::RNTupleSerializer::RContext::MapSchema | ( | const RNTupleDescriptor & | desc, |
bool | forHeaderExtension ) |
Map in-memory field and column IDs to their on-disk counterparts.
This function is unconditionally called during header serialization. This function must be manually called after an incremental schema update as page list serialization requires all columns to be mapped.
Definition at line 1243 of file RNTupleSerialize.cxx.
|
inline |
Definition at line 122 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 124 of file RNTupleSerialize.hxx.
|
private |
Definition at line 110 of file RNTupleSerialize.hxx.
|
private |
Definition at line 111 of file RNTupleSerialize.hxx.
|
private |
Definition at line 115 of file RNTupleSerialize.hxx.
|
private |
Definition at line 114 of file RNTupleSerialize.hxx.
|
private |
Definition at line 113 of file RNTupleSerialize.hxx.
|
private |
Definition at line 112 of file RNTupleSerialize.hxx.
|
private |
Definition at line 119 of file RNTupleSerialize.hxx.
|
private |
Definition at line 118 of file RNTupleSerialize.hxx.
|
private |
Definition at line 117 of file RNTupleSerialize.hxx.
|
private |
Definition at line 116 of file RNTupleSerialize.hxx.