A helper class for piece-wise construction of an RClusterDescriptor.
The cluster descriptor builder starts from a summary-only cluster descriptor and allows for the piecewise addition of page locations.
Definition at line 940 of file RNTupleDescriptor.hxx.
Public Member Functions | |
RClusterDescriptorBuilder (DescriptorId_t clusterId, std::uint64_t firstEntryIndex, std::uint64_t nEntries) | |
Make an empty cluster descriptor builder. | |
RClusterDescriptorBuilder & | AddDeferredColumnRanges (const RNTupleDescriptor &desc) |
Add column and page ranges for deferred columns missing in this cluster. | |
RResult< void > | CommitColumnRange (DescriptorId_t physicalId, std::uint64_t firstElementIndex, std::uint32_t compressionSettings, const RClusterDescriptor::RPageRange &pageRange) |
RResult< RClusterDescriptor > | MoveDescriptor () |
Move out the full cluster descriptor including page locations. | |
Private Attributes | |
RClusterDescriptor | fCluster |
#include <ROOT/RNTupleDescriptor.hxx>
|
inline |
Make an empty cluster descriptor builder.
Definition at line 946 of file RNTupleDescriptor.hxx.
ROOT::Experimental::RClusterDescriptorBuilder & ROOT::Experimental::RClusterDescriptorBuilder::AddDeferredColumnRanges | ( | const RNTupleDescriptor & | desc | ) |
Add column and page ranges for deferred columns missing in this cluster.
The locator type for the synthesized page ranges is kTypePageZero
. All the page sources must be able to populate the 'zero' page from such locator. Any call to CommitColumnRange()
should happen before calling this function.
Definition at line 514 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::RClusterDescriptorBuilder::CommitColumnRange | ( | DescriptorId_t | physicalId, |
std::uint64_t | firstElementIndex, | ||
std::uint32_t | compressionSettings, | ||
const RClusterDescriptor::RPageRange & | pageRange | ||
) |
Definition at line 494 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RResult< ROOT::Experimental::RClusterDescriptor > ROOT::Experimental::RClusterDescriptorBuilder::MoveDescriptor | ( | ) |
Move out the full cluster descriptor including page locations.
Definition at line 567 of file RNTupleDescriptor.cxx.
|
private |
Definition at line 942 of file RNTupleDescriptor.hxx.