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

Processor specialization for processing a single RNTuple.

Definition at line 375 of file RNTupleProcessor.hxx.

Public Member Functions

 RNTupleSingleProcessor (const RNTupleSingleProcessor &)=delete
 
 RNTupleSingleProcessor (RNTupleSingleProcessor &&)=delete
 
 ~RNTupleSingleProcessor () override
 
RNTupleSingleProcessoroperator= (const RNTupleSingleProcessor &)=delete
 
RNTupleSingleProcessoroperator= (RNTupleSingleProcessor &&)=delete
 
- Public Member Functions inherited from ROOT::Experimental::RNTupleProcessor
 RNTupleProcessor (const RNTupleProcessor &)=delete
 
 RNTupleProcessor (RNTupleProcessor &&)=delete
 
virtual ~RNTupleProcessor ()=default
 
RIterator begin ()
 
RIterator end ()
 
ROOT::NTupleSize_t GetCurrentEntryNumber () const
 Get the entry number that is currently being processed.
 
std::size_t GetCurrentProcessorNumber () const
 Get the number of the inner processor currently being read.
 
const ROOT::REntryGetEntry () const
 Get a reference to the entry used by the processor.
 
const ROOT::RNTupleModelGetModel () const
 Get the model used by the processor.
 
ROOT::NTupleSize_t GetNEntriesProcessed () const
 Get the total number of entries processed so far.
 
const std::string & GetProcessorName () const
 Get the name of the processor.
 
RNTupleProcessoroperator= (const RNTupleProcessor &)=delete
 
RNTupleProcessoroperator= (RNTupleProcessor &&)=delete
 
void PrintStructure (std::ostream &output=std::cout)
 Print a graphical representation of the processor composition.
 

Private Member Functions

 RNTupleSingleProcessor (RNTupleOpenSpec ntuple, std::unique_ptr< ROOT::RNTupleModel > model, std::string_view processorName)
 Construct a new RNTupleProcessor for processing a single RNTuple.
 
void AddEntriesToJoinTable (Internal::RNTupleJoinTable &joinTable, ROOT::NTupleSize_t entryOffset=0) final
 Add the entry mappings for this processor to the provided join table.
 
void Connect ()
 Connect the page source of the underlying RNTuple.
 
ROOT::NTupleSize_t GetNEntries () final
 Get the total number of entries in this processor.
 
ROOT::NTupleSize_t LoadEntry (ROOT::NTupleSize_t entryNumber) final
 Load the entry identified by the provided (global) entry number (i.e., considering all RNTuples in this processor).
 
void PrintStructureImpl (std::ostream &output) const final
 Processor-specific implementation for printing its structure, called by PrintStructure().
 
void SetEntryPointers (const ROOT::REntry &entry, std::string_view fieldNamePrefix) final
 

Private Attributes

RNTupleOpenSpec fNTupleSpec
 
std::unique_ptr< ROOT::Internal::RPageSourcefPageSource
 

Friends

class RNTupleProcessor
 

Additional Inherited Members

- Static Public Member Functions inherited from ROOT::Experimental::RNTupleProcessor
static std::unique_ptr< RNTupleProcessorCreate (RNTupleOpenSpec ntuple, std::unique_ptr< ROOT::RNTupleModel > model=nullptr, std::string_view processorName="")
 Create an RNTupleProcessor for a single RNTuple.
 
static std::unique_ptr< RNTupleProcessorCreateChain (std::vector< RNTupleOpenSpec > ntuples, std::unique_ptr< ROOT::RNTupleModel > model=nullptr, std::string_view processorName="")
 Create an RNTupleProcessor for a chain (i.e., a vertical combination) of RNTuples.
 
static std::unique_ptr< RNTupleProcessorCreateChain (std::vector< std::unique_ptr< RNTupleProcessor > > innerProcessors, std::unique_ptr< ROOT::RNTupleModel > model=nullptr, std::string_view processorName="")
 Create an RNTupleProcessor for a chain (i.e., a vertical combination) of other RNTupleProcessors.
 
static std::unique_ptr< RNTupleProcessorCreateJoin (RNTupleOpenSpec primaryNTuple, RNTupleOpenSpec auxNTuple, const std::vector< std::string > &joinFields, std::unique_ptr< ROOT::RNTupleModel > primaryModel=nullptr, std::unique_ptr< ROOT::RNTupleModel > auxModel=nullptr, std::string_view processorName="")
 Create an RNTupleProcessor for a join (i.e., a horizontal combination) of RNTuples.
 
static std::unique_ptr< RNTupleProcessorCreateJoin (std::unique_ptr< RNTupleProcessor > primaryProcessor, std::unique_ptr< RNTupleProcessor > auxProcessor, const std::vector< std::string > &joinFields, std::unique_ptr< ROOT::RNTupleModel > primaryModel=nullptr, std::unique_ptr< ROOT::RNTupleModel > auxModel=nullptr, std::string_view processorName="")
 Create an RNTupleProcessor for a join (i.e., a horizontal combination) of RNTuples.
 
- Protected Member Functions inherited from ROOT::Experimental::RNTupleProcessor
 RNTupleProcessor (std::string_view processorName, std::unique_ptr< ROOT::RNTupleModel > model)
 Create a new base RNTupleProcessor.
 
- Protected Attributes inherited from ROOT::Experimental::RNTupleProcessor
ROOT::NTupleSize_t fCurrentEntryNumber = 0
 
std::size_t fCurrentProcessorNumber = 0
 
std::unique_ptr< ROOT::REntryfEntry
 
std::unique_ptr< ROOT::RNTupleModelfModel
 
ROOT::NTupleSize_t fNEntries = kInvalidNTupleIndex
 Total number of entries.
 
ROOT::NTupleSize_t fNEntriesProcessed = 0
 
std::string fProcessorName
 

#include <ROOT/RNTupleProcessor.hxx>

Inheritance diagram for ROOT::Experimental::RNTupleSingleProcessor:
[legend]

Constructor & Destructor Documentation

◆ RNTupleSingleProcessor() [1/3]

ROOT::Experimental::RNTupleSingleProcessor::RNTupleSingleProcessor ( RNTupleOpenSpec ntuple,
std::unique_ptr< ROOT::RNTupleModel > model,
std::string_view processorName )
private

Construct a new RNTupleProcessor for processing a single RNTuple.

Parameters
[in]ntupleThe source specification (name and storage location) for the RNTuple to process.
[in]modelThe model that specifies which fields should be read by the processor.
[in]processorNameName of the processor. Unless specified otherwise in RNTupleProcessor::Create, this is the name of the underlying RNTuple.

Definition at line 138 of file RNTupleProcessor.cxx.

◆ RNTupleSingleProcessor() [2/3]

ROOT::Experimental::RNTupleSingleProcessor::RNTupleSingleProcessor ( const RNTupleSingleProcessor & )
delete

◆ RNTupleSingleProcessor() [3/3]

ROOT::Experimental::RNTupleSingleProcessor::RNTupleSingleProcessor ( RNTupleSingleProcessor && )
delete

◆ ~RNTupleSingleProcessor()

ROOT::Experimental::RNTupleSingleProcessor::~RNTupleSingleProcessor ( )
inlineoverride

Definition at line 432 of file RNTupleProcessor.hxx.

Member Function Documentation

◆ AddEntriesToJoinTable()

void ROOT::Experimental::RNTupleSingleProcessor::AddEntriesToJoinTable ( Internal::RNTupleJoinTable & joinTable,
ROOT::NTupleSize_t entryOffset = 0 )
finalprivatevirtual

Add the entry mappings for this processor to the provided join table.

See also
ROOT::Experimental::RNTupleProcessor::AddEntriesToJoinTable

Implements ROOT::Experimental::RNTupleProcessor.

Definition at line 228 of file RNTupleProcessor.cxx.

◆ Connect()

void ROOT::Experimental::RNTupleSingleProcessor::Connect ( )
private

Connect the page source of the underlying RNTuple.

Definition at line 196 of file RNTupleProcessor.cxx.

◆ GetNEntries()

ROOT::NTupleSize_t ROOT::Experimental::RNTupleSingleProcessor::GetNEntries ( )
inlinefinalprivatevirtual

Get the total number of entries in this processor.

Implements ROOT::Experimental::RNTupleProcessor.

Definition at line 399 of file RNTupleProcessor.hxx.

◆ LoadEntry()

ROOT::NTupleSize_t ROOT::Experimental::RNTupleSingleProcessor::LoadEntry ( ROOT::NTupleSize_t entryNumber)
finalprivatevirtual

Load the entry identified by the provided (global) entry number (i.e., considering all RNTuples in this processor).

See also
ROOT::Experimental::RNTupleProcessor::LoadEntry

Implements ROOT::Experimental::RNTupleProcessor.

Definition at line 170 of file RNTupleProcessor.cxx.

◆ operator=() [1/2]

RNTupleSingleProcessor & ROOT::Experimental::RNTupleSingleProcessor::operator= ( const RNTupleSingleProcessor & )
delete

◆ operator=() [2/2]

RNTupleSingleProcessor & ROOT::Experimental::RNTupleSingleProcessor::operator= ( RNTupleSingleProcessor && )
delete

◆ PrintStructureImpl()

void ROOT::Experimental::RNTupleSingleProcessor::PrintStructureImpl ( std::ostream & output) const
finalprivatevirtual

Processor-specific implementation for printing its structure, called by PrintStructure().

See also
ROOT::Experimental::RNTupleProcessor::PrintStructureImpl

Implements ROOT::Experimental::RNTupleProcessor.

Definition at line 235 of file RNTupleProcessor.cxx.

◆ SetEntryPointers()

void ROOT::Experimental::RNTupleSingleProcessor::SetEntryPointers ( const ROOT::REntry & entry,
std::string_view fieldNamePrefix )
finalprivatevirtual

Friends And Related Symbol Documentation

◆ RNTupleProcessor

friend class RNTupleProcessor
friend

Definition at line 376 of file RNTupleProcessor.hxx.

Member Data Documentation

◆ fNTupleSpec

RNTupleOpenSpec ROOT::Experimental::RNTupleSingleProcessor::fNTupleSpec
private

Definition at line 379 of file RNTupleProcessor.hxx.

◆ fPageSource

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

Definition at line 380 of file RNTupleProcessor.hxx.

Libraries for ROOT::Experimental::RNTupleSingleProcessor:

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