Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::RClusterGroupDescriptor Class Reference

Clusters are bundled in cluster groups.

Very large ntuples or combined ntuples (chains, friends) contain multiple cluster groups. The cluster groups may contain sharded clusters. Every ntuple has at least one cluster group. The clusters in a cluster group are ordered corresponding to the order of page locations in the page list envelope that belongs to the cluster group (see format specification)

Definition at line 429 of file RNTupleDescriptor.hxx.

Public Member Functions

 RClusterGroupDescriptor ()=default
 
 RClusterGroupDescriptor (const RClusterGroupDescriptor &other)=delete
 
 RClusterGroupDescriptor (RClusterGroupDescriptor &&other)=default
 
RClusterGroupDescriptor Clone () const
 
RClusterGroupDescriptor CloneSummary () const
 
const std::vector< DescriptorId_t > & GetClusterIds () const
 
std::uint64_t GetEntrySpan () const
 
DescriptorId_t GetId () const
 
std::uint64_t GetMinEntry () const
 
std::uint32_t GetNClusters () const
 
std::uint64_t GetPageListLength () const
 
RNTupleLocator GetPageListLocator () const
 
bool HasClusterDetails () const
 A cluster group is loaded in two stages.
 
RClusterGroupDescriptoroperator= (const RClusterGroupDescriptor &other)=delete
 
RClusterGroupDescriptoroperator= (RClusterGroupDescriptor &&other)=default
 
bool operator== (const RClusterGroupDescriptor &other) const
 

Private Attributes

DescriptorId_t fClusterGroupId = kInvalidDescriptorId
 
std::vector< DescriptorId_tfClusterIds
 The cluster IDs can be empty if the corresponding page list is not loaded.
 
std::uint64_t fEntrySpan = 0
 Number of entries that are (partially for sharded clusters) covered by this cluster group.
 
std::uint64_t fMinEntry = 0
 The minimum first entry number of the clusters in the cluster group.
 
std::uint32_t fNClusters = 0
 Number of clusters is always known even if the cluster IDs are not (yet) populated.
 
std::uint64_t fPageListLength = 0
 Uncompressed size of the page list.
 
RNTupleLocator fPageListLocator
 The page list that corresponds to the cluster group.
 

Friends

class Internal::RClusterGroupDescriptorBuilder
 

#include <ROOT/RNTupleDescriptor.hxx>

Constructor & Destructor Documentation

◆ RClusterGroupDescriptor() [1/3]

ROOT::Experimental::RClusterGroupDescriptor::RClusterGroupDescriptor ( )
default

◆ RClusterGroupDescriptor() [2/3]

ROOT::Experimental::RClusterGroupDescriptor::RClusterGroupDescriptor ( const RClusterGroupDescriptor other)
delete

◆ RClusterGroupDescriptor() [3/3]

ROOT::Experimental::RClusterGroupDescriptor::RClusterGroupDescriptor ( RClusterGroupDescriptor &&  other)
default

Member Function Documentation

◆ Clone()

ROOT::Experimental::RClusterGroupDescriptor ROOT::Experimental::RClusterGroupDescriptor::Clone ( ) const

Definition at line 697 of file RNTupleDescriptor.cxx.

◆ CloneSummary()

ROOT::Experimental::RClusterGroupDescriptor ROOT::Experimental::RClusterGroupDescriptor::CloneSummary ( ) const

Definition at line 685 of file RNTupleDescriptor.cxx.

◆ GetClusterIds()

const std::vector< DescriptorId_t > & ROOT::Experimental::RClusterGroupDescriptor::GetClusterIds ( ) const
inline

Definition at line 465 of file RNTupleDescriptor.hxx.

◆ GetEntrySpan()

std::uint64_t ROOT::Experimental::RClusterGroupDescriptor::GetEntrySpan ( ) const
inline

Definition at line 467 of file RNTupleDescriptor.hxx.

◆ GetId()

DescriptorId_t ROOT::Experimental::RClusterGroupDescriptor::GetId ( ) const
inline

Definition at line 461 of file RNTupleDescriptor.hxx.

◆ GetMinEntry()

std::uint64_t ROOT::Experimental::RClusterGroupDescriptor::GetMinEntry ( ) const
inline

Definition at line 466 of file RNTupleDescriptor.hxx.

◆ GetNClusters()

std::uint32_t ROOT::Experimental::RClusterGroupDescriptor::GetNClusters ( ) const
inline

Definition at line 462 of file RNTupleDescriptor.hxx.

◆ GetPageListLength()

std::uint64_t ROOT::Experimental::RClusterGroupDescriptor::GetPageListLength ( ) const
inline

Definition at line 464 of file RNTupleDescriptor.hxx.

◆ GetPageListLocator()

RNTupleLocator ROOT::Experimental::RClusterGroupDescriptor::GetPageListLocator ( ) const
inline

Definition at line 463 of file RNTupleDescriptor.hxx.

◆ HasClusterDetails()

bool ROOT::Experimental::RClusterGroupDescriptor::HasClusterDetails ( ) const
inline

A cluster group is loaded in two stages.

Stage one loads only the summary information. Stage two loads the list of cluster IDs.

Definition at line 470 of file RNTupleDescriptor.hxx.

◆ operator=() [1/2]

RClusterGroupDescriptor & ROOT::Experimental::RClusterGroupDescriptor::operator= ( const RClusterGroupDescriptor other)
delete

◆ operator=() [2/2]

RClusterGroupDescriptor & ROOT::Experimental::RClusterGroupDescriptor::operator= ( RClusterGroupDescriptor &&  other)
default

◆ operator==()

bool ROOT::Experimental::RClusterGroupDescriptor::operator== ( const RClusterGroupDescriptor other) const

Definition at line 679 of file RNTupleDescriptor.cxx.

Friends And Related Symbol Documentation

◆ Internal::RClusterGroupDescriptorBuilder

Definition at line 430 of file RNTupleDescriptor.hxx.

Member Data Documentation

◆ fClusterGroupId

DescriptorId_t ROOT::Experimental::RClusterGroupDescriptor::fClusterGroupId = kInvalidDescriptorId
private

Definition at line 433 of file RNTupleDescriptor.hxx.

◆ fClusterIds

std::vector<DescriptorId_t> ROOT::Experimental::RClusterGroupDescriptor::fClusterIds
private

The cluster IDs can be empty if the corresponding page list is not loaded.

Otherwise, cluster ids are sorted by first entry number.

Definition at line 436 of file RNTupleDescriptor.hxx.

◆ fEntrySpan

std::uint64_t ROOT::Experimental::RClusterGroupDescriptor::fEntrySpan = 0
private

Number of entries that are (partially for sharded clusters) covered by this cluster group.

Definition at line 444 of file RNTupleDescriptor.hxx.

◆ fMinEntry

std::uint64_t ROOT::Experimental::RClusterGroupDescriptor::fMinEntry = 0
private

The minimum first entry number of the clusters in the cluster group.

Definition at line 442 of file RNTupleDescriptor.hxx.

◆ fNClusters

std::uint32_t ROOT::Experimental::RClusterGroupDescriptor::fNClusters = 0
private

Number of clusters is always known even if the cluster IDs are not (yet) populated.

Definition at line 446 of file RNTupleDescriptor.hxx.

◆ fPageListLength

std::uint64_t ROOT::Experimental::RClusterGroupDescriptor::fPageListLength = 0
private

Uncompressed size of the page list.

Definition at line 440 of file RNTupleDescriptor.hxx.

◆ fPageListLocator

RNTupleLocator ROOT::Experimental::RClusterGroupDescriptor::fPageListLocator
private

The page list that corresponds to the cluster group.

Definition at line 438 of file RNTupleDescriptor.hxx.

Libraries for ROOT::Experimental::RClusterGroupDescriptor:

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