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

Meta-data stored for every column of an ntuple.

Definition at line 152 of file RNTupleDescriptor.hxx.

Classes

struct  RValueRange
 

Public Member Functions

 RColumnDescriptor ()=default
 
 RColumnDescriptor (const RColumnDescriptor &other)=delete
 
 RColumnDescriptor (RColumnDescriptor &&other)=default
 
RColumnDescriptor Clone () const
 Get a copy of the descriptor.
 
std::uint16_t GetBitsOnStorage () const
 
DescriptorId_t GetFieldId () const
 
std::uint64_t GetFirstElementIndex () const
 
std::uint32_t GetIndex () const
 
DescriptorId_t GetLogicalId () const
 
DescriptorId_t GetPhysicalId () const
 
std::uint16_t GetRepresentationIndex () const
 
EColumnType GetType () const
 
std::optional< RValueRangeGetValueRange () const
 
bool IsAliasColumn () const
 
bool IsDeferredColumn () const
 
bool IsSuppressedDeferredColumn () const
 
RColumnDescriptoroperator= (const RColumnDescriptor &other)=delete
 
RColumnDescriptoroperator= (RColumnDescriptor &&other)=default
 
bool operator== (const RColumnDescriptor &other) const
 

Private Attributes

std::uint16_t fBitsOnStorage = 0
 The size in bits of elements of this column.
 
DescriptorId_t fFieldId = kInvalidDescriptorId
 Every column belongs to one and only one field.
 
std::int64_t fFirstElementIndex = 0U
 The absolute value specifies the index for the first stored element for this column.
 
std::uint32_t fIndex = 0
 A field can be serialized into several columns, which are numbered from zero to $n$.
 
DescriptorId_t fLogicalColumnId = kInvalidDescriptorId
 The actual column identifier, which is the link to the corresponding field.
 
DescriptorId_t fPhysicalColumnId = kInvalidDescriptorId
 Usually identical to the logical column ID, except for alias columns where it references the shadowed column.
 
std::uint16_t fRepresentationIndex = 0
 A field may use multiple column representations, which are numbered from zero to $m$.
 
EColumnType fType = EColumnType::kUnknown
 The on-disk column type.
 
std::optional< RValueRangefValueRange
 Optional value range (used e.g. by quantized real fields)
 

Friends

class Internal::RColumnDescriptorBuilder
 
class Internal::RNTupleDescriptorBuilder
 

#include <ROOT/RNTupleDescriptor.hxx>

Constructor & Destructor Documentation

◆ RColumnDescriptor() [1/3]

ROOT::Experimental::RColumnDescriptor::RColumnDescriptor ( )
default

◆ RColumnDescriptor() [2/3]

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

◆ RColumnDescriptor() [3/3]

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

Member Function Documentation

◆ Clone()

ROOT::Experimental::RColumnDescriptor ROOT::Experimental::RColumnDescriptor::Clone ( ) const

Get a copy of the descriptor.

Definition at line 162 of file RNTupleDescriptor.cxx.

◆ GetBitsOnStorage()

std::uint16_t ROOT::Experimental::RColumnDescriptor::GetBitsOnStorage ( ) const
inline

Definition at line 208 of file RNTupleDescriptor.hxx.

◆ GetFieldId()

DescriptorId_t ROOT::Experimental::RColumnDescriptor::GetFieldId ( ) const
inline

Definition at line 204 of file RNTupleDescriptor.hxx.

◆ GetFirstElementIndex()

std::uint64_t ROOT::Experimental::RColumnDescriptor::GetFirstElementIndex ( ) const
inline

Definition at line 207 of file RNTupleDescriptor.hxx.

◆ GetIndex()

std::uint32_t ROOT::Experimental::RColumnDescriptor::GetIndex ( ) const
inline

Definition at line 205 of file RNTupleDescriptor.hxx.

◆ GetLogicalId()

DescriptorId_t ROOT::Experimental::RColumnDescriptor::GetLogicalId ( ) const
inline

Definition at line 202 of file RNTupleDescriptor.hxx.

◆ GetPhysicalId()

DescriptorId_t ROOT::Experimental::RColumnDescriptor::GetPhysicalId ( ) const
inline

Definition at line 203 of file RNTupleDescriptor.hxx.

◆ GetRepresentationIndex()

std::uint16_t ROOT::Experimental::RColumnDescriptor::GetRepresentationIndex ( ) const
inline

Definition at line 206 of file RNTupleDescriptor.hxx.

◆ GetType()

EColumnType ROOT::Experimental::RColumnDescriptor::GetType ( ) const
inline

Definition at line 209 of file RNTupleDescriptor.hxx.

◆ GetValueRange()

std::optional< RValueRange > ROOT::Experimental::RColumnDescriptor::GetValueRange ( ) const
inline

Definition at line 210 of file RNTupleDescriptor.hxx.

◆ IsAliasColumn()

bool ROOT::Experimental::RColumnDescriptor::IsAliasColumn ( ) const
inline

Definition at line 211 of file RNTupleDescriptor.hxx.

◆ IsDeferredColumn()

bool ROOT::Experimental::RColumnDescriptor::IsDeferredColumn ( ) const
inline

Definition at line 212 of file RNTupleDescriptor.hxx.

◆ IsSuppressedDeferredColumn()

bool ROOT::Experimental::RColumnDescriptor::IsSuppressedDeferredColumn ( ) const
inline

Definition at line 213 of file RNTupleDescriptor.hxx.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ operator==()

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

Definition at line 154 of file RNTupleDescriptor.cxx.

Friends And Related Symbol Documentation

◆ Internal::RColumnDescriptorBuilder

Definition at line 153 of file RNTupleDescriptor.hxx.

◆ Internal::RNTupleDescriptorBuilder

Definition at line 154 of file RNTupleDescriptor.hxx.

Member Data Documentation

◆ fBitsOnStorage

std::uint16_t ROOT::Experimental::RColumnDescriptor::fBitsOnStorage = 0
private

The size in bits of elements of this column.

Most columns have the size fixed by their type but low-precision float columns have variable bit widths.

Definition at line 185 of file RNTupleDescriptor.hxx.

◆ fFieldId

DescriptorId_t ROOT::Experimental::RColumnDescriptor::fFieldId = kInvalidDescriptorId
private

Every column belongs to one and only one field.

Definition at line 173 of file RNTupleDescriptor.hxx.

◆ fFirstElementIndex

std::int64_t ROOT::Experimental::RColumnDescriptor::fFirstElementIndex = 0U
private

The absolute value specifies the index for the first stored element for this column.

For deferred columns the absolute value is larger than zero. Negative values specify a suppressed and deferred column.

Definition at line 177 of file RNTupleDescriptor.hxx.

◆ fIndex

std::uint32_t ROOT::Experimental::RColumnDescriptor::fIndex = 0
private

A field can be serialized into several columns, which are numbered from zero to $n$.

Definition at line 179 of file RNTupleDescriptor.hxx.

◆ fLogicalColumnId

DescriptorId_t ROOT::Experimental::RColumnDescriptor::fLogicalColumnId = kInvalidDescriptorId
private

The actual column identifier, which is the link to the corresponding field.

Definition at line 169 of file RNTupleDescriptor.hxx.

◆ fPhysicalColumnId

DescriptorId_t ROOT::Experimental::RColumnDescriptor::fPhysicalColumnId = kInvalidDescriptorId
private

Usually identical to the logical column ID, except for alias columns where it references the shadowed column.

Definition at line 171 of file RNTupleDescriptor.hxx.

◆ fRepresentationIndex

std::uint16_t ROOT::Experimental::RColumnDescriptor::fRepresentationIndex = 0
private

A field may use multiple column representations, which are numbered from zero to $m$.

Every representation has the same number of columns.

Definition at line 182 of file RNTupleDescriptor.hxx.

◆ fType

EColumnType ROOT::Experimental::RColumnDescriptor::fType = EColumnType::kUnknown
private

The on-disk column type.

Definition at line 187 of file RNTupleDescriptor.hxx.

◆ fValueRange

std::optional<RValueRange> ROOT::Experimental::RColumnDescriptor::fValueRange
private

Optional value range (used e.g. by quantized real fields)

Definition at line 189 of file RNTupleDescriptor.hxx.

Libraries for ROOT::Experimental::RColumnDescriptor:

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