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

Manager for a field as part of the RNTupleProcessor.

An RFieldContext contains two fields: a proto-field which is not connected to any page source but serves as the blueprint for this particular field, and a concrete field that is connected to the page source currently connected to the RNTupleProcessor for reading. When a new page source is connected, the current concrete field gets reset. A new concrete field that is connected to this new page source is subsequently created from the proto-field.

Definition at line 81 of file RNTupleProcessor.hxx.

Public Member Functions

 RFieldContext (std::unique_ptr< RFieldBase > protoField, REntry::RFieldToken token, std::size_t ntupleIdx=0)
 
const RFieldBaseGetProtoField () const
 
bool IsAuxiliary () const
 
void ResetConcreteField ()
 Concrete pages need to be reset explicitly before the page source they belong to is destroyed.
 
void SetConcreteField ()
 

Private Attributes

std::unique_ptr< RFieldBasefConcreteField
 
std::size_t fNTupleIdx
 
std::unique_ptr< RFieldBasefProtoField
 
REntry::RFieldToken fToken
 

Friends

class RNTupleChainProcessor
 
class RNTupleJoinProcessor
 
class RNTupleProcessor
 
class RNTupleSingleProcessor
 

#include <ROOT/RNTupleProcessor.hxx>

Constructor & Destructor Documentation

◆ RFieldContext()

ROOT::Experimental::RNTupleProcessor::RFieldContext::RFieldContext ( std::unique_ptr< RFieldBase protoField,
REntry::RFieldToken  token,
std::size_t  ntupleIdx = 0 
)
inline

Definition at line 96 of file RNTupleProcessor.hxx.

Member Function Documentation

◆ GetProtoField()

const RFieldBase & ROOT::Experimental::RNTupleProcessor::RFieldContext::GetProtoField ( ) const
inline

Definition at line 101 of file RNTupleProcessor.hxx.

◆ IsAuxiliary()

bool ROOT::Experimental::RNTupleProcessor::RFieldContext::IsAuxiliary ( ) const
inline

Definition at line 105 of file RNTupleProcessor.hxx.

◆ ResetConcreteField()

void ROOT::Experimental::RNTupleProcessor::RFieldContext::ResetConcreteField ( )
inline

Concrete pages need to be reset explicitly before the page source they belong to is destroyed.

Definition at line 103 of file RNTupleProcessor.hxx.

◆ SetConcreteField()

void ROOT::Experimental::RNTupleProcessor::RFieldContext::SetConcreteField ( )
inline

Definition at line 104 of file RNTupleProcessor.hxx.

Friends And Related Symbol Documentation

◆ RNTupleChainProcessor

friend class RNTupleChainProcessor
friend

Definition at line 84 of file RNTupleProcessor.hxx.

◆ RNTupleJoinProcessor

friend class RNTupleJoinProcessor
friend

Definition at line 85 of file RNTupleProcessor.hxx.

◆ RNTupleProcessor

friend class RNTupleProcessor
friend

Definition at line 82 of file RNTupleProcessor.hxx.

◆ RNTupleSingleProcessor

friend class RNTupleSingleProcessor
friend

Definition at line 83 of file RNTupleProcessor.hxx.

Member Data Documentation

◆ fConcreteField

std::unique_ptr<RFieldBase> ROOT::Experimental::RNTupleProcessor::RFieldContext::fConcreteField
private

Definition at line 89 of file RNTupleProcessor.hxx.

◆ fNTupleIdx

std::size_t ROOT::Experimental::RNTupleProcessor::RFieldContext::fNTupleIdx
private

Definition at line 93 of file RNTupleProcessor.hxx.

◆ fProtoField

std::unique_ptr<RFieldBase> ROOT::Experimental::RNTupleProcessor::RFieldContext::fProtoField
private

Definition at line 88 of file RNTupleProcessor.hxx.

◆ fToken

REntry::RFieldToken ROOT::Experimental::RNTupleProcessor::RFieldContext::fToken
private

Definition at line 90 of file RNTupleProcessor.hxx.

Libraries for ROOT::Experimental::RNTupleProcessor::RFieldContext:

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