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 1685 of file RNTupleDescriptor.hxx.
Public Member Functions | |
| RClusterDescriptorBuilder & | AddExtendedColumnRanges (const RNTupleDescriptor &desc) |
| Add column and page ranges for columns created during late model extension missing in this cluster. | |
| RClusterDescriptorBuilder & | ClusterId (ROOT::DescriptorId_t clusterId) |
| RResult< void > | CommitColumnRange (ROOT::DescriptorId_t physicalId, std::uint64_t firstElementIndex, std::uint32_t compressionSettings, const RClusterDescriptor::RPageRange &pageRange) |
| RResult< void > | CommitSuppressedColumnRanges (const RNTupleDescriptor &desc) |
| Sets the first element index and number of elements for all the suppressed column ranges. | |
| RClusterDescriptorBuilder & | FirstEntryIndex (std::uint64_t firstEntryIndex) |
| const RClusterDescriptor::RColumnRange & | GetColumnRange (ROOT::DescriptorId_t physicalId) |
| RResult< void > | MarkSuppressedColumnRange (ROOT::DescriptorId_t physicalId) |
| Books the given column ID as being suppressed in this cluster. | |
| RResult< RClusterDescriptor > | MoveDescriptor () |
| Move out the full cluster descriptor including page locations. | |
| RClusterDescriptorBuilder & | NEntries (std::uint64_t nEntries) |
Private Attributes | |
| RClusterDescriptor | fCluster |
#include <ROOT/RNTupleDescriptor.hxx>
| ROOT::Internal::RClusterDescriptorBuilder & ROOT::Internal::RClusterDescriptorBuilder::AddExtendedColumnRanges | ( | const RNTupleDescriptor & | desc | ) |
Add column and page ranges for columns created during late model extension 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() and CommitSuppressedColumnRanges() should happen before calling this function.
Definition at line 934 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 1690 of file RNTupleDescriptor.hxx.
| ROOT::RResult< void > ROOT::Internal::RClusterDescriptorBuilder::CommitColumnRange | ( | ROOT::DescriptorId_t | physicalId, |
| std::uint64_t | firstElementIndex, | ||
| std::uint32_t | compressionSettings, | ||
| const RClusterDescriptor::RPageRange & | pageRange ) |
Definition at line 865 of file RNTupleDescriptor.cxx.
| ROOT::RResult< void > ROOT::Internal::RClusterDescriptorBuilder::CommitSuppressedColumnRanges | ( | const RNTupleDescriptor & | desc | ) |
Sets the first element index and number of elements for all the suppressed column ranges.
The information is taken from the corresponding columns from the primary representation. Needs to be called when all the columns (suppressed and regular) where added.
Definition at line 897 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 1696 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 1727 of file RNTupleDescriptor.hxx.
| ROOT::RResult< void > ROOT::Internal::RClusterDescriptorBuilder::MarkSuppressedColumnRange | ( | ROOT::DescriptorId_t | physicalId | ) |
Books the given column ID as being suppressed in this cluster.
The correct first element index and number of elements need to be set by CommitSuppressedColumnRanges() once all the calls to CommitColumnRange() and MarkSuppressedColumnRange() took place.
Definition at line 884 of file RNTupleDescriptor.cxx.
| ROOT::RResult< ROOT::RClusterDescriptor > ROOT::Internal::RClusterDescriptorBuilder::MoveDescriptor | ( | ) |
Move out the full cluster descriptor including page locations.
Definition at line 1010 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 1702 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 1687 of file RNTupleDescriptor.hxx.