Metadata for RNTuple clusters.
The cluster descriptor is built in two phases. In a first phase, the descriptor has only an ID. In a second phase, the event range, column group, page locations and column ranges are added. Both phases are populated by the RClusterDescriptorBuilder. Clusters span across all available columns in the RNTuple.
Definition at line 238 of file RNTupleDescriptor.hxx.
Classes | |
class | RColumnRange |
The window of element indexes of a particular column in a particular cluster. More... | |
class | RColumnRangeIterable |
class | RPageInfo |
Information about a single page in the context of a cluster's page range. More... | |
class | RPageInfoExtended |
Additional information about a page in an in-memory RPageRange. More... | |
class | RPageRange |
Records the partition of data into pages for a particular column in a particular cluster. More... | |
Public Member Functions | |
RClusterDescriptor ()=default | |
RClusterDescriptor (const RClusterDescriptor &other)=delete | |
RClusterDescriptor (RClusterDescriptor &&other)=default | |
RClusterDescriptor | Clone () const |
bool | ContainsColumn (ROOT::DescriptorId_t physicalId) const |
const RColumnRange & | GetColumnRange (ROOT::DescriptorId_t physicalId) const |
RColumnRangeIterable | GetColumnRangeIterable () const |
Returns an iterator over pairs { columnId, columnRange }. The iteration order is unspecified. | |
ROOT::NTupleSize_t | GetFirstEntryIndex () const |
ROOT::DescriptorId_t | GetId () const |
std::uint64_t | GetNBytesOnStorage () const |
ROOT::NTupleSize_t | GetNEntries () const |
const RPageRange & | GetPageRange (ROOT::DescriptorId_t physicalId) const |
RClusterDescriptor & | operator= (const RClusterDescriptor &other)=delete |
RClusterDescriptor & | operator= (RClusterDescriptor &&other)=default |
bool | operator== (const RClusterDescriptor &other) const |
Private Attributes | |
ROOT::DescriptorId_t | fClusterId = ROOT::kInvalidDescriptorId |
std::unordered_map< ROOT::DescriptorId_t, RColumnRange > | fColumnRanges |
ROOT::NTupleSize_t | fFirstEntryIndex = ROOT::kInvalidNTupleIndex |
Clusters can be swapped by adjusting the entry offsets of the cluster and all ranges. | |
ROOT::NTupleSize_t | fNEntries = ROOT::kInvalidNTupleIndex |
std::unordered_map< ROOT::DescriptorId_t, RPageRange > | fPageRanges |
Friends | |
class | Internal::RClusterDescriptorBuilder |
#include <ROOT/RNTupleDescriptor.hxx>
|
default |
|
delete |
|
default |
ROOT::RClusterDescriptor ROOT::RClusterDescriptor::Clone | ( | ) | const |
Definition at line 285 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 471 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 467 of file RNTupleDescriptor.hxx.
ROOT::RClusterDescriptor::RColumnRangeIterable ROOT::RClusterDescriptor::GetColumnRangeIterable | ( | ) | const |
Returns an iterator over pairs { columnId, columnRange }. The iteration order is unspecified.
Definition at line 1404 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 465 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 464 of file RNTupleDescriptor.hxx.
std::uint64_t ROOT::RClusterDescriptor::GetNBytesOnStorage | ( | ) | const |
Definition at line 274 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 466 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 468 of file RNTupleDescriptor.hxx.
|
delete |
|
default |
bool ROOT::RClusterDescriptor::operator== | ( | const RClusterDescriptor & | other | ) | const |
Definition at line 268 of file RNTupleDescriptor.cxx.
|
friend |
Definition at line 239 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 443 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 448 of file RNTupleDescriptor.hxx.
|
private |
Clusters can be swapped by adjusting the entry offsets of the cluster and all ranges.
Definition at line 445 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 446 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 449 of file RNTupleDescriptor.hxx.