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

Definition at line 80 of file RNTupleProcessor.hxx.

Classes

class  RFieldContext
 
class  RIterator
 

Public Member Functions

 RNTupleProcessor (const std::vector< RNTupleSourceSpec > &ntuples, std::unique_ptr< RNTupleModel > model=nullptr)
 Constructs a new RNTupleProcessor.
 
RIterator begin ()
 
RIterator end ()
 
const REntryGetEntry () const
 Returns a reference to the entry used by the processor.
 

Private Member Functions

void ConnectFields ()
 Creates and connects concrete fields to the current page source, based on the proto-fields.
 
NTupleSize_t ConnectNTuple (const RNTupleSourceSpec &ntuple)
 Connect an RNTuple for processing.
 

Private Attributes

std::unique_ptr< REntryfEntry
 
std::vector< RFieldContextfFieldContexts
 
std::vector< RNTupleSourceSpecfNTuples
 
std::unique_ptr< Internal::RPageSourcefPageSource
 

#include <ROOT/RNTupleProcessor.hxx>

Constructor & Destructor Documentation

◆ RNTupleProcessor()

ROOT::Experimental::Internal::RNTupleProcessor::RNTupleProcessor ( const std::vector< RNTupleSourceSpec > &  ntuples,
std::unique_ptr< RNTupleModel model = nullptr 
)

Constructs a new RNTupleProcessor.

Parameters
[in]ntuplesThe source specification (name and storage location) for each RNTuple to process.
[in]modelThe model that specifies which fields should be read by the processor. The pointer returned by RNTupleModel::MakeField can be used to access a field's value during the processor iteration. When no model is specified, it is created from the descriptor of the first RNTuple specified in ntuples.

RNTuples are processed in the order in which they are specified.

Definition at line 54 of file RNTupleProcessor.cxx.

Member Function Documentation

◆ begin()

RIterator ROOT::Experimental::Internal::RNTupleProcessor::begin ( )
inline

Definition at line 259 of file RNTupleProcessor.hxx.

◆ ConnectFields()

void ROOT::Experimental::Internal::RNTupleProcessor::ConnectFields ( )
private

Creates and connects concrete fields to the current page source, based on the proto-fields.

Definition at line 32 of file RNTupleProcessor.cxx.

◆ ConnectNTuple()

ROOT::Experimental::NTupleSize_t ROOT::Experimental::Internal::RNTupleProcessor::ConnectNTuple ( const RNTupleSourceSpec ntuple)
private

Connect an RNTuple for processing.

Parameters
[in]ntupleThe RNTupleSourceSpec describing the RNTuple to connect.
Returns
The number of entries in the newly-connected RNTuple.

Creates and attaches new page source for the specified RNTuple, and connects the fields that are known by the processor to it.

Definition at line 21 of file RNTupleProcessor.cxx.

◆ end()

RIterator ROOT::Experimental::Internal::RNTupleProcessor::end ( )
inline

Definition at line 260 of file RNTupleProcessor.hxx.

◆ GetEntry()

const REntry & ROOT::Experimental::Internal::RNTupleProcessor::GetEntry ( ) const
inline

Returns a reference to the entry used by the processor.

Returns
A reference to the entry used by the processor.

Definition at line 140 of file RNTupleProcessor.hxx.

Member Data Documentation

◆ fEntry

std::unique_ptr<REntry> ROOT::Experimental::Internal::RNTupleProcessor::fEntry
private

Definition at line 115 of file RNTupleProcessor.hxx.

◆ fFieldContexts

std::vector<RFieldContext> ROOT::Experimental::Internal::RNTupleProcessor::fFieldContexts
private

Definition at line 117 of file RNTupleProcessor.hxx.

◆ fNTuples

std::vector<RNTupleSourceSpec> ROOT::Experimental::Internal::RNTupleProcessor::fNTuples
private

Definition at line 114 of file RNTupleProcessor.hxx.

◆ fPageSource

std::unique_ptr<Internal::RPageSource> ROOT::Experimental::Internal::RNTupleProcessor::fPageSource
private

Definition at line 116 of file RNTupleProcessor.hxx.

Libraries for ROOT::Experimental::Internal::RNTupleProcessor:

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