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

Every RDF column is represented by exactly one RNTuple field.

Definition at line 156 of file RNTupleDS.cxx.

Public Member Functions

 RNTupleColumnReader (RNTupleDS *ds, RFieldBase *protoField)
 
 ~RNTupleColumnReader ()=default
 
void Connect (RPageSource &source, Long64_t entryOffset)
 Connect the field and its subfields to the page source.
 
void Disconnect (bool keepValue)
 
void * GetImpl (Long64_t entry) final
 
- Public Member Functions inherited from ROOT::Detail::RDF::RColumnReaderBase
virtual ~RColumnReaderBase ()=default
 
template<typename T >
T & Get (Long64_t entry)
 Return the column value for the given entry.
 

Private Types

using RFieldBase = ROOT::Experimental::RFieldBase
 
using RPageSource = ROOT::Experimental::Internal::RPageSource
 

Private Attributes

RNTupleDSfDataSource
 The data source that owns this column reader.
 
Long64_t fEntryOffset = 0
 For chains, the logical entry and the physical entry in any particular file can be different.
 
std::unique_ptr< RFieldBasefField
 The field backing the RDF column.
 
Long64_t fLastEntry = -1
 Last entry number that was read.
 
RFieldBasefProtoField
 The prototype field from which fField is cloned.
 
std::unique_ptr< RFieldBase::RValuefValue
 The memory location used to read from fField.
 
std::shared_ptr< void > fValuePtr
 Used to reuse the object created by fValue when reconnecting sources.
 
Inheritance diagram for ROOT::Experimental::Internal::RNTupleColumnReader:
[legend]

Member Typedef Documentation

◆ RFieldBase

◆ RPageSource

Constructor & Destructor Documentation

◆ RNTupleColumnReader()

ROOT::Experimental::Internal::RNTupleColumnReader::RNTupleColumnReader ( RNTupleDS ds,
RFieldBase protoField 
)
inline

Definition at line 172 of file RNTupleDS.cxx.

◆ ~RNTupleColumnReader()

ROOT::Experimental::Internal::RNTupleColumnReader::~RNTupleColumnReader ( )
default

Member Function Documentation

◆ Connect()

void ROOT::Experimental::Internal::RNTupleColumnReader::Connect ( RPageSource source,
Long64_t  entryOffset 
)
inline

Connect the field and its subfields to the page source.

Definition at line 176 of file RNTupleDS.cxx.

◆ Disconnect()

void ROOT::Experimental::Internal::RNTupleColumnReader::Disconnect ( bool  keepValue)
inline

Definition at line 207 of file RNTupleDS.cxx.

◆ GetImpl()

void * ROOT::Experimental::Internal::RNTupleColumnReader::GetImpl ( Long64_t  entry)
inlinefinalvirtual

Implements ROOT::Detail::RDF::RColumnReaderBase.

Definition at line 217 of file RNTupleDS.cxx.

Member Data Documentation

◆ fDataSource

RNTupleDS* ROOT::Experimental::Internal::RNTupleColumnReader::fDataSource
private

The data source that owns this column reader.

Definition at line 160 of file RNTupleDS.cxx.

◆ fEntryOffset

Long64_t ROOT::Experimental::Internal::RNTupleColumnReader::fEntryOffset = 0
private

For chains, the logical entry and the physical entry in any particular file can be different.

The entry offset stores the logical entry number (sum of all previous physical entries) when a file of the corresponding data source was opened.

Definition at line 169 of file RNTupleDS.cxx.

◆ fField

std::unique_ptr<RFieldBase> ROOT::Experimental::Internal::RNTupleColumnReader::fField
private

The field backing the RDF column.

Definition at line 162 of file RNTupleDS.cxx.

◆ fLastEntry

Long64_t ROOT::Experimental::Internal::RNTupleColumnReader::fLastEntry = -1
private

Last entry number that was read.

Definition at line 165 of file RNTupleDS.cxx.

◆ fProtoField

RFieldBase* ROOT::Experimental::Internal::RNTupleColumnReader::fProtoField
private

The prototype field from which fField is cloned.

Definition at line 161 of file RNTupleDS.cxx.

◆ fValue

std::unique_ptr<RFieldBase::RValue> ROOT::Experimental::Internal::RNTupleColumnReader::fValue
private

The memory location used to read from fField.

Definition at line 163 of file RNTupleDS.cxx.

◆ fValuePtr

std::shared_ptr<void> ROOT::Experimental::Internal::RNTupleColumnReader::fValuePtr
private

Used to reuse the object created by fValue when reconnecting sources.

Definition at line 164 of file RNTupleDS.cxx.

  • tree/dataframe/src/RNTupleDS.cxx