Records the partition of data into pages for a particular column in a particular cluster.
Definition at line 272 of file RNTupleDescriptor.hxx.
Classes | |
struct | RPageInfo |
We do not need to store the element size / uncompressed page size because we know to which column the page belongs. More... | |
struct | RPageInfoExtended |
Public Member Functions | |
RPageRange ()=default | |
RPageRange (const RPageRange &other)=delete | |
RPageRange (RPageRange &&other)=default | |
RPageRange | Clone () const |
RPageInfoExtended | Find (ClusterSize_t::ValueType idxInCluster) const |
Find the page in the RPageRange that contains the given element. The element must exist. | |
RPageRange & | operator= (const RPageRange &other)=delete |
RPageRange & | operator= (RPageRange &&other)=default |
bool | operator== (const RPageRange &other) const |
Public Attributes | |
std::vector< RPageInfo > | fPageInfos |
DescriptorId_t | fPhysicalColumnId = kInvalidDescriptorId |
Private Member Functions | |
std::size_t | ExtendToFitColumnRange (const RColumnRange &columnRange, const Internal::RColumnElementBase &element, std::size_t pageSize) |
Extend this RPageRange to fit the given RColumnRange, i.e. | |
Private Attributes | |
std::vector< NTupleSize_t > | fCumulativeNElements |
Has the same length than fPageInfos and stores the sum of the number of elements of all the pages up to and including a given index. | |
Friends | |
class | Internal::RClusterDescriptorBuilder |
#include <ROOT/RNTupleDescriptor.hxx>
|
default |
|
delete |
|
default |
|
inline |
Definition at line 321 of file RNTupleDescriptor.hxx.
|
private |
Extend this RPageRange to fit the given RColumnRange, i.e.
prepend as many synthetic RPageInfos as needed to cover the range in columnRange
. RPageInfo
s are constructed to contain as many elements of type element
given a page size limit of pageSize
(in bytes); the locator for the referenced pages is kTypePageZero
. This function is used to make up RPageRange
s for clusters that contain deferred columns.
Definition at line 211 of file RNTupleDescriptor.cxx.
ROOT::Experimental::RClusterDescriptor::RPageRange::RPageInfoExtended ROOT::Experimental::RClusterDescriptor::RPageRange::Find | ( | ClusterSize_t::ValueType | idxInCluster | ) | const |
Find the page in the RPageRange that contains the given element. The element must exist.
Definition at line 180 of file RNTupleDescriptor.cxx.
|
delete |
|
default |
|
inline |
Definition at line 336 of file RNTupleDescriptor.hxx.
|
friend |
Definition at line 273 of file RNTupleDescriptor.hxx.
|
private |
Has the same length than fPageInfos and stores the sum of the number of elements of all the pages up to and including a given index.
Used for binary search in Find().
Definition at line 284 of file RNTupleDescriptor.hxx.
std::vector<RPageInfo> ROOT::Experimental::RClusterDescriptor::RPageRange::fPageInfos |
Definition at line 334 of file RNTupleDescriptor.hxx.
DescriptorId_t ROOT::Experimental::RClusterDescriptor::RPageRange::fPhysicalColumnId = kInvalidDescriptorId |
Definition at line 333 of file RNTupleDescriptor.hxx.