Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches
ROOT::Experimental::RColumnDescriptor Class Referencefinal

Meta-data stored for every column of an ntuple.

Definition at line 154 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
 
ROOT::DescriptorId_t GetFieldId () const
 
std::uint64_t GetFirstElementIndex () const
 
std::uint32_t GetIndex () const
 
ROOT::DescriptorId_t GetLogicalId () const
 
ROOT::DescriptorId_t GetPhysicalId () const
 
std::uint16_t GetRepresentationIndex () const
 
ROOT::ENTupleColumnType 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.
 
ROOT::DescriptorId_t fFieldId = ROOT::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$.
 
ROOT::DescriptorId_t fLogicalColumnId = ROOT::kInvalidDescriptorId
 The actual column identifier, which is the link to the corresponding field.
 
ROOT::DescriptorId_t fPhysicalColumnId = ROOT::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$.
 
ROOT::ENTupleColumnType fType = ROOT::ENTupleColumnType::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 180 of file RNTupleDescriptor.cxx.

◆ GetBitsOnStorage()

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

Definition at line 211 of file RNTupleDescriptor.hxx.

◆ GetFieldId()

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

Definition at line 207 of file RNTupleDescriptor.hxx.

◆ GetFirstElementIndex()

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

Definition at line 210 of file RNTupleDescriptor.hxx.

◆ GetIndex()

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

Definition at line 208 of file RNTupleDescriptor.hxx.

◆ GetLogicalId()

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

Definition at line 205 of file RNTupleDescriptor.hxx.

◆ GetPhysicalId()

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

Definition at line 206 of file RNTupleDescriptor.hxx.

◆ GetRepresentationIndex()

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

Definition at line 209 of file RNTupleDescriptor.hxx.

◆ GetType()

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

Definition at line 212 of file RNTupleDescriptor.hxx.

◆ GetValueRange()

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

Definition at line 213 of file RNTupleDescriptor.hxx.

◆ IsAliasColumn()

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

Definition at line 214 of file RNTupleDescriptor.hxx.

◆ IsDeferredColumn()

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

Definition at line 215 of file RNTupleDescriptor.hxx.

◆ IsSuppressedDeferredColumn()

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

Definition at line 216 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 172 of file RNTupleDescriptor.cxx.

Friends And Related Symbol Documentation

◆ Internal::RColumnDescriptorBuilder

Definition at line 155 of file RNTupleDescriptor.hxx.

◆ Internal::RNTupleDescriptorBuilder

Definition at line 156 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 188 of file RNTupleDescriptor.hxx.

◆ fFieldId

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

Every column belongs to one and only one field.

Definition at line 176 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 180 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 182 of file RNTupleDescriptor.hxx.

◆ fLogicalColumnId

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

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

Definition at line 172 of file RNTupleDescriptor.hxx.

◆ fPhysicalColumnId

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

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

Definition at line 174 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 185 of file RNTupleDescriptor.hxx.

◆ fType

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

The on-disk column type.

Definition at line 190 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 192 of file RNTupleDescriptor.hxx.

Libraries for ROOT::Experimental::RColumnDescriptor:

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