Processor specialization for processing a single RNTuple.
Definition at line 555 of file RNTupleProcessor.hxx.
Public Member Functions | |
| RNTupleSingleProcessor (const RNTupleSingleProcessor &)=delete | |
| RNTupleSingleProcessor (RNTupleSingleProcessor &&)=delete | |
| ~RNTupleSingleProcessor () override | |
| RNTupleSingleProcessor & | operator= (const RNTupleSingleProcessor &)=delete |
| RNTupleSingleProcessor & | operator= (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. | |
| 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. | |
| RNTupleProcessor & | operator= (const RNTupleProcessor &)=delete |
| RNTupleProcessor & | operator= (RNTupleProcessor &&)=delete |
| void | PrintStructure (std::ostream &output=std::cout) |
| Print a graphical representation of the processor composition. | |
| template<typename T> | |
| RNTupleProcessorOptionalPtr< T > | RequestField (const std::string &fieldName, void *valuePtr=nullptr) |
| Request access to a field for reading during processing. | |
Private Member Functions | |
| RNTupleSingleProcessor (RNTupleOpenSpec ntuple, 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. | |
| Internal::RNTupleProcessorEntry::FieldIndex_t | AddFieldToEntry (const std::string &fieldName, const std::string &typeName, void *valuePtr=nullptr, const Internal::RNTupleProcessorProvenance &provenance=Internal::RNTupleProcessorProvenance()) final |
| Add a field to the entry. | |
| bool | CanReadFieldFromDisk (std::string_view fieldName) final |
| Check if a field exists on-disk and can be read by the processor. | |
| void | Connect (const std::unordered_set< Internal::RNTupleProcessorEntry::FieldIndex_t > &fieldIdxs, const Internal::RNTupleProcessorProvenance &provenance=Internal::RNTupleProcessorProvenance(), bool updateFields=false) final |
| Connect the provided fields indices in the entry to their on-disk fields. | |
| std::unique_ptr< ROOT::RFieldBase > | CreateAndConnectField (const std::string &qualifiedFieldName, const std::string &typeName) |
| Create a new field and connect it to the processor's page source. | |
| ROOT::NTupleSize_t | GetNEntries () final |
| Get the total number of entries in this processor. | |
| void | Initialize (std::shared_ptr< Internal::RNTupleProcessorEntry > entry=nullptr) final |
Initialize the processor by creating an (initially empty) fEntry, or setting an existing one. | |
| 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(). | |
Private Attributes | |
| RNTupleOpenSpec | fNTupleSpec |
| std::unique_ptr< ROOT::Internal::RPageSource > | fPageSource |
Friends | |
| class | RNTupleProcessor |
Additional Inherited Members | |
Static Public Member Functions inherited from ROOT::Experimental::RNTupleProcessor | |
| static std::unique_ptr< RNTupleProcessor > | Create (RNTupleOpenSpec ntuple, std::string_view processorName="") |
| Create an RNTupleProcessor for a single RNTuple. | |
| static std::unique_ptr< RNTupleProcessor > | CreateChain (std::vector< RNTupleOpenSpec > ntuples, std::string_view processorName="") |
| Create an RNTupleProcessor for a chain (i.e., a vertical combination) of RNTuples. | |
| static std::unique_ptr< RNTupleProcessor > | CreateChain (std::vector< std::unique_ptr< RNTupleProcessor > > innerProcessors, std::string_view processorName="") |
| Create an RNTupleProcessor for a chain (i.e., a vertical combination) of other RNTupleProcessors. | |
| static std::unique_ptr< RNTupleProcessor > | CreateJoin (RNTupleOpenSpec primaryNTuple, RNTupleOpenSpec auxNTuple, const std::vector< std::string > &joinFields, std::string_view processorName="") |
| Create an RNTupleProcessor for a join (i.e., a horizontal combination) of RNTuples. | |
| static std::unique_ptr< RNTupleProcessor > | CreateJoin (std::unique_ptr< RNTupleProcessor > primaryProcessor, std::unique_ptr< RNTupleProcessor > auxProcessor, const std::vector< std::string > &joinFields, 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) | |
| Create a new base RNTupleProcessor. | |
| bool | IsInitialized () const |
| Check if the processor already has been initialized. | |
Protected Attributes inherited from ROOT::Experimental::RNTupleProcessor | |
| ROOT::NTupleSize_t | fCurrentEntryNumber = 0 |
| std::size_t | fCurrentProcessorNumber = 0 |
| std::shared_ptr< Internal::RNTupleProcessorEntry > | fEntry = nullptr |
| std::unordered_set< Internal::RNTupleProcessorEntry::FieldIndex_t > | fFieldIdxs |
| ROOT::NTupleSize_t | fNEntries = kInvalidNTupleIndex |
| Total number of entries. | |
| ROOT::NTupleSize_t | fNEntriesProcessed = 0 |
| std::string | fProcessorName |
#include <ROOT/RNTupleProcessor.hxx>
|
private |
Construct a new RNTupleProcessor for processing a single RNTuple.
| [in] | ntuple | The source specification (name and storage location) for the RNTuple to process. |
| [in] | processorName | Name of the processor. Unless specified otherwise in RNTupleProcessor::Create, this is the name of the underlying RNTuple. |
Definition at line 109 of file RNTupleProcessor.cxx.
|
delete |
|
delete |
|
inlineoverride |
Definition at line 641 of file RNTupleProcessor.hxx.
|
finalprivatevirtual |
Add the entry mappings for this processor to the provided join table.
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 248 of file RNTupleProcessor.cxx.
|
finalprivatevirtual |
Add a field to the entry.
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 190 of file RNTupleProcessor.cxx.
|
finalprivatevirtual |
Check if a field exists on-disk and can be read by the processor.
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 136 of file RNTupleProcessor.cxx.
|
finalprivatevirtual |
Connect the provided fields indices in the entry to their on-disk fields.
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 230 of file RNTupleProcessor.cxx.
|
private |
Create a new field and connect it to the processor's page source.
| [in] | qualifiedFieldName | Name of the field to add, prefixed with its parent fields, if applicable. |
| [in] | typeName | Type of the field to add. |
| ROOT::RException | In case the requested field cannot be found on disk. |
Definition at line 147 of file RNTupleProcessor.cxx.
|
inlinefinalprivatevirtual |
Get the total number of entries in this processor.
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 594 of file RNTupleProcessor.hxx.
|
finalprivatevirtual |
Initialize the processor by creating an (initially empty) fEntry, or setting an existing one.
At this point, the page source for the underlying RNTuple of the processor will be created and opened.
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 118 of file RNTupleProcessor.cxx.
|
finalprivatevirtual |
Load the entry identified by the provided (global) entry number (i.e., considering all RNTuples in this processor).
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 216 of file RNTupleProcessor.cxx.
|
delete |
|
delete |
|
finalprivatevirtual |
Processor-specific implementation for printing its structure, called by PrintStructure().
Implements ROOT::Experimental::RNTupleProcessor.
Definition at line 255 of file RNTupleProcessor.cxx.
|
friend |
Definition at line 556 of file RNTupleProcessor.hxx.
|
private |
Definition at line 559 of file RNTupleProcessor.hxx.
|
private |
Definition at line 560 of file RNTupleProcessor.hxx.