Metadata for a set of ntuple 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 usually span across all available columns but in some cases they can describe only a subset of the columns, for instance when describing friend ntuples.
Definition at line 240 of file RNTupleDescriptor.hxx.
Classes | |
class | RColumnRange |
class | RColumnRangeIterable |
class | RPageInfo |
Information about a single page in the context of a cluster's page range. More... | |
struct | RPageInfoExtended |
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. | |
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 462 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 458 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 1321 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 456 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 455 of file RNTupleDescriptor.hxx.
std::uint64_t ROOT::RClusterDescriptor::GetNBytesOnStorage | ( | ) | const |
Definition at line 274 of file RNTupleDescriptor.cxx.
|
inline |
Definition at line 457 of file RNTupleDescriptor.hxx.
|
inline |
Definition at line 459 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 241 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 433 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 439 of file RNTupleDescriptor.hxx.
|
private |
Clusters can be swapped by adjusting the entry offsets.
Definition at line 435 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 437 of file RNTupleDescriptor.hxx.
|
private |
Definition at line 440 of file RNTupleDescriptor.hxx.