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 91 of file RNTupleSerialize.hxx.
Public Member Functions | |
void | BeginHeaderExtension () |
Mark the first on-disk field ID that is part of the schema extension. | |
std::uint32_t | GetHeaderCRC32 () const |
std::size_t | GetHeaderExtensionOffset () const |
Return the offset of the first element in fOnDisk2MemFieldIDs that is part of the schema extension. | |
std::uint32_t | GetHeaderSize () const |
DescriptorId_t | GetMemClusterGroupId (DescriptorId_t onDiskId) const |
DescriptorId_t | GetMemClusterId (DescriptorId_t onDiskId) const |
DescriptorId_t | GetMemColumnId (DescriptorId_t onDiskId) const |
DescriptorId_t | GetMemFieldId (DescriptorId_t onDiskId) const |
DescriptorId_t | GetOnDiskClusterGroupId (DescriptorId_t memId) const |
DescriptorId_t | GetOnDiskClusterId (DescriptorId_t memId) const |
DescriptorId_t | GetOnDiskColumnId (DescriptorId_t memId) const |
DescriptorId_t | GetOnDiskFieldId (DescriptorId_t memId) const |
const std::vector< DescriptorId_t > & | GetOnDiskFieldList () const |
Return a vector containing the in-memory field ID for each on-disk counterpart, in order, i.e. | |
DescriptorId_t | MapClusterGroupId (DescriptorId_t memId) |
DescriptorId_t | MapClusterId (DescriptorId_t memId) |
DescriptorId_t | MapColumnId (DescriptorId_t memId) |
Map an in-memory column ID to its on-disk counterpart. | |
DescriptorId_t | MapFieldId (DescriptorId_t memId) |
Map an in-memory field ID to its on-disk counterpart. | |
void | MapSchema (const RNTupleDescriptor &desc, bool forHeaderExtension) |
Map in-memory field and column IDs to their on-disk counterparts. | |
void | SetHeaderCRC32 (std::uint32_t crc32) |
void | SetHeaderSize (std::uint32_t size) |
Private Attributes | |
std::uint32_t | fHeaderCrc32 = 0 |
std::size_t | fHeaderExtensionOffset = -1U |
std::uint32_t | fHeaderSize = 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 |
Mark the first on-disk field ID that is part of the schema extension.
Definition at line 165 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 109 of file RNTupleSerialize.hxx.
|
inline |
Return the offset of the first element in fOnDisk2MemFieldIDs
that is part of the schema extension.
Definition at line 167 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 107 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 156 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 155 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 154 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 153 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 149 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 148 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 147 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 146 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 163 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 134 of file RNTupleSerialize.hxx.
|
inline |
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.
Definition at line 121 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 112 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 1010 of file RNTupleSerialize.cxx.
|
inline |
Definition at line 108 of file RNTupleSerialize.hxx.
|
inline |
Definition at line 106 of file RNTupleSerialize.hxx.
|
private |
Definition at line 94 of file RNTupleSerialize.hxx.
|
private |
Definition at line 103 of file RNTupleSerialize.hxx.
|
private |
Definition at line 93 of file RNTupleSerialize.hxx.
|
private |
Definition at line 98 of file RNTupleSerialize.hxx.
|
private |
Definition at line 97 of file RNTupleSerialize.hxx.
|
private |
Definition at line 96 of file RNTupleSerialize.hxx.
|
private |
Definition at line 95 of file RNTupleSerialize.hxx.
|
private |
Definition at line 102 of file RNTupleSerialize.hxx.
|
private |
Definition at line 101 of file RNTupleSerialize.hxx.
|
private |
Definition at line 100 of file RNTupleSerialize.hxx.
|
private |
Definition at line 99 of file RNTupleSerialize.hxx.