A helper class for piece-wise construction of an RNTupleDescriptor.
Used by RPageStorage implementations in order to construct the RNTupleDescriptor from the various header parts.
Definition at line 962 of file RNTupleDescriptor.hxx.
Public Member Functions | |
void | AddClusterGroup (RClusterGroupDescriptorBuilder &&clusterGroup) |
RResult< void > | AddClusterSummary (DescriptorId_t clusterId, std::uint64_t firstEntry, std::uint64_t nEntries) |
RResult< void > | AddClusterWithDetails (RClusterDescriptor &&clusterDesc) |
Used during writing. More... | |
void | AddColumn (DescriptorId_t logicalId, DescriptorId_t physicalId, DescriptorId_t fieldId, const RColumnModel &model, std::uint32_t index) |
RResult< void > | AddColumn (RColumnDescriptor &&columnDesc) |
void | AddField (const RFieldDescriptor &fieldDesc) |
RResult< void > | AddFieldLink (DescriptorId_t fieldId, DescriptorId_t linkId) |
void | AddToOnDiskFooterSize (std::uint64_t size) |
The real footer size also include the page list envelopes. More... | |
RResult< void > | EnsureValidDescriptor () const |
Checks whether invariants hold: More... | |
const RNTupleDescriptor & | GetDescriptor () const |
std::uint32_t | GetHeaderCRC32 () const |
RNTupleDescriptor | MoveDescriptor () |
void | Reset () |
Clears so-far stored clusters, fields, and columns and return to a pristine ntuple descriptor. More... | |
void | SetHeaderCRC32 (std::uint32_t crc32) |
void | SetNTuple (const std::string_view name, const std::string_view description) |
void | SetOnDiskHeaderSize (std::uint64_t size) |
Private Member Functions | |
RResult< void > | EnsureFieldExists (DescriptorId_t fieldId) const |
Private Attributes | |
RNTupleDescriptor | fDescriptor |
std::uint32_t | fHeaderCRC32 = 0 |
#include <ROOT/RNTupleDescriptor.hxx>
void ROOT::Experimental::RNTupleDescriptorBuilder::AddClusterGroup | ( | RClusterGroupDescriptorBuilder && | clusterGroup | ) |
Definition at line 662 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::RNTupleDescriptorBuilder::AddClusterSummary | ( | DescriptorId_t | clusterId, |
std::uint64_t | firstEntry, | ||
std::uint64_t | nEntries | ||
) |
Definition at line 652 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::RNTupleDescriptorBuilder::AddClusterWithDetails | ( | RClusterDescriptor && | clusterDesc | ) |
Used during writing.
For reading, cluster summaries are added in the builder and cluster details are added on demand through the RNTupleDescriptor.
Definition at line 679 of file RNTupleDescriptor.cxx.
void ROOT::Experimental::RNTupleDescriptorBuilder::AddColumn | ( | DescriptorId_t | logicalId, |
DescriptorId_t | physicalId, | ||
DescriptorId_t | fieldId, | ||
const RColumnModel & | model, | ||
std::uint32_t | index | ||
) |
Definition at line 606 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::RNTupleDescriptorBuilder::AddColumn | ( | RColumnDescriptor && | columnDesc | ) |
Definition at line 623 of file RNTupleDescriptor.cxx.
void ROOT::Experimental::RNTupleDescriptorBuilder::AddField | ( | const RFieldDescriptor & | fieldDesc | ) |
Definition at line 576 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::RNTupleDescriptorBuilder::AddFieldLink | ( | DescriptorId_t | fieldId, |
DescriptorId_t | linkId | ||
) |
Definition at line 581 of file RNTupleDescriptor.cxx.
|
inline |
The real footer size also include the page list envelopes.
Definition at line 982 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 485 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::RNTupleDescriptorBuilder::EnsureValidDescriptor | ( | ) | const |
Checks whether invariants hold:
Definition at line 492 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 973 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 978 of file RNTupleDescriptor.hxx.
ROOT::Experimental::RNTupleDescriptor ROOT::Experimental::RNTupleDescriptorBuilder::MoveDescriptor | ( | ) |
Definition at line 510 of file RNTupleDescriptor.cxx.
void ROOT::Experimental::RNTupleDescriptorBuilder::Reset | ( | void | ) |
Clears so-far stored clusters, fields, and columns and return to a pristine ntuple descriptor.
Definition at line 668 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 977 of file RNTupleDescriptor.hxx.
void ROOT::Experimental::RNTupleDescriptorBuilder::SetNTuple | ( | const std::string_view | name, |
const std::string_view | description | ||
) |
Definition at line 517 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 980 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 964 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 965 of file RNTupleDescriptor.hxx.