Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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 98 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 113 of file RNTupleProcessor.hxx.

Member Function Documentation

◆ GetProtoField()

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

Definition at line 118 of file RNTupleProcessor.hxx.

◆ IsAuxiliary()

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

Definition at line 122 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 120 of file RNTupleProcessor.hxx.

◆ SetConcreteField()

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

Definition at line 121 of file RNTupleProcessor.hxx.

Friends And Related Symbol Documentation

◆ RNTupleChainProcessor

Definition at line 101 of file RNTupleProcessor.hxx.

◆ RNTupleJoinProcessor

friend class RNTupleJoinProcessor
friend

Definition at line 102 of file RNTupleProcessor.hxx.

◆ RNTupleProcessor

friend class RNTupleProcessor
friend

Definition at line 99 of file RNTupleProcessor.hxx.

◆ RNTupleSingleProcessor

Definition at line 100 of file RNTupleProcessor.hxx.

Member Data Documentation

◆ fConcreteField

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

Definition at line 106 of file RNTupleProcessor.hxx.

◆ fNTupleIdx

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

Definition at line 110 of file RNTupleProcessor.hxx.

◆ fProtoField

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

Definition at line 105 of file RNTupleProcessor.hxx.

◆ fToken

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

Definition at line 107 of file RNTupleProcessor.hxx.

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

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