Logo ROOT  
Reference Guide
No Matches
ROOT::Experimental::RClusterDescriptor::RPageRange Class Reference

Records the parition of data into pages for a particular column in a particular cluster.

Definition at line 250 of file RNTupleDescriptor.hxx.


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.
RPageRangeoperator= (const RPageRange &other)=delete
RPageRangeoperator= (RPageRange &&other)=default
bool operator== (const RPageRange &other) const

Public Attributes

std::vector< RPageInfofPageInfos
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.


class Internal::RClusterDescriptorBuilder

#include <ROOT/RNTupleDescriptor.hxx>

Constructor & Destructor Documentation

◆ RPageRange() [1/3]

ROOT::Experimental::RClusterDescriptor::RPageRange::RPageRange ( )

◆ RPageRange() [2/3]

ROOT::Experimental::RClusterDescriptor::RPageRange::RPageRange ( const RPageRange other)

◆ RPageRange() [3/3]

ROOT::Experimental::RClusterDescriptor::RPageRange::RPageRange ( RPageRange &&  other)

Member Function Documentation

◆ Clone()

RPageRange ROOT::Experimental::RClusterDescriptor::RPageRange::Clone ( ) const

Definition at line 292 of file RNTupleDescriptor.hxx.

◆ ExtendToFitColumnRange()

std::size_t ROOT::Experimental::RClusterDescriptor::RPageRange::ExtendToFitColumnRange ( const RColumnRange columnRange,
const Internal::RColumnElementBase element,
std::size_t  pageSize 

Extend this RPageRange to fit the given RColumnRange, i.e.

prepend as many synthetic RPageInfos as needed to cover the range in columnRange. RPageInfos 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 RPageRanges for clusters that contain deferred columns.

The number of column elements covered by the synthesized RPageInfos

Definition at line 149 of file RNTupleDescriptor.cxx.

◆ Find()

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 129 of file RNTupleDescriptor.cxx.

◆ operator=() [1/2]

RPageRange & ROOT::Experimental::RClusterDescriptor::RPageRange::operator= ( const RPageRange other)

◆ operator=() [2/2]

RPageRange & ROOT::Experimental::RClusterDescriptor::RPageRange::operator= ( RPageRange &&  other)

◆ operator==()

bool ROOT::Experimental::RClusterDescriptor::RPageRange::operator== ( const RPageRange other) const

Definition at line 305 of file RNTupleDescriptor.hxx.

Friends And Related Symbol Documentation

◆ Internal::RClusterDescriptorBuilder

Definition at line 251 of file RNTupleDescriptor.hxx.

Member Data Documentation

◆ fPageInfos

std::vector<RPageInfo> ROOT::Experimental::RClusterDescriptor::RPageRange::fPageInfos

Definition at line 303 of file RNTupleDescriptor.hxx.

◆ fPhysicalColumnId

DescriptorId_t ROOT::Experimental::RClusterDescriptor::RPageRange::fPhysicalColumnId = kInvalidDescriptorId

Definition at line 302 of file RNTupleDescriptor.hxx.

Libraries for ROOT::Experimental::RClusterDescriptor::RPageRange:

The documentation for this class was generated from the following files: