Logo ROOT  
Reference Guide
ROOT::Experimental::RNTupleView< T > Class Template Reference

template<typename T>
class ROOT::Experimental::RNTupleView< T >

An RNTupleView provides read-only access to a single field of the ntuple.

(NB(jblomer): The ntuple view is very close to TTreeReader. Do we simply want to teach TTreeReader to deal with RNTuple?)

The view owns a field and its underlying columns in order to fill an ntuple value object with data. Data can be accessed by index. For top level fields, the index refers to the entry number. Fields that are part of nested collections have global index numbers that are derived from their parent indexes.

The RNTupleView object is an iterable. That means, all field values in the tree can be sequentially read from begin() to end().

For simple types, template specializations let the reading become a pure mapping into a page buffer.

Definition at line 124 of file RNTupleView.hxx.

Public Member Functions

 RNTupleView (const RNTupleView &other)=delete
 
 RNTupleView (RNTupleView &&other)=default
 
 ~RNTupleView ()
 
const T & operator() (const RClusterIndex &clusterIndex)
 
const T & operator() (NTupleSize_t globalIndex)
 
RNTupleViewoperator= (const RNTupleView &other)=delete
 
RNTupleViewoperator= (RNTupleView &&other)=default
 

Protected Member Functions

 RNTupleView (DescriptorId_t fieldId, Detail::RPageSource *pageSource)
 

Protected Attributes

RField< T > fField
 fFieldId has fParent always set to null; views access nested fields without looking at the parent More...
 
Detail::RFieldValue fValue
 

Friends

class RNTupleReader
 
class RNTupleViewCollection
 

#include <ROOT/RNTupleView.hxx>

Constructor & Destructor Documentation

◆ RNTupleView() [1/3]

template<typename T >
ROOT::Experimental::RNTupleView< T >::RNTupleView ( DescriptorId_t  fieldId,
Detail::RPageSource pageSource 
)
inlineprotected

Definition at line 135 of file RNTupleView.hxx.

◆ RNTupleView() [2/3]

template<typename T >
ROOT::Experimental::RNTupleView< T >::RNTupleView ( const RNTupleView< T > &  other)
delete

◆ RNTupleView() [3/3]

template<typename T >
ROOT::Experimental::RNTupleView< T >::RNTupleView ( RNTupleView< T > &&  other)
default

◆ ~RNTupleView()

template<typename T >
ROOT::Experimental::RNTupleView< T >::~RNTupleView ( )
inline

Definition at line 153 of file RNTupleView.hxx.

Member Function Documentation

◆ operator()() [1/2]

template<typename T >
const T & ROOT::Experimental::RNTupleView< T >::operator() ( const RClusterIndex clusterIndex)
inline

Definition at line 160 of file RNTupleView.hxx.

◆ operator()() [2/2]

template<typename T >
const T & ROOT::Experimental::RNTupleView< T >::operator() ( NTupleSize_t  globalIndex)
inline

Definition at line 155 of file RNTupleView.hxx.

◆ operator=() [1/2]

template<typename T >
RNTupleView & ROOT::Experimental::RNTupleView< T >::operator= ( const RNTupleView< T > &  other)
delete

◆ operator=() [2/2]

template<typename T >
RNTupleView & ROOT::Experimental::RNTupleView< T >::operator= ( RNTupleView< T > &&  other)
default

Friends And Related Function Documentation

◆ RNTupleReader

template<typename T >
friend class RNTupleReader
friend

Definition at line 125 of file RNTupleView.hxx.

◆ RNTupleViewCollection

template<typename T >
friend class RNTupleViewCollection
friend

Definition at line 126 of file RNTupleView.hxx.

Member Data Documentation

◆ fField

template<typename T >
RField<T> ROOT::Experimental::RNTupleView< T >::fField
protected

fFieldId has fParent always set to null; views access nested fields without looking at the parent

Definition at line 132 of file RNTupleView.hxx.

◆ fValue

template<typename T >
Detail::RFieldValue ROOT::Experimental::RNTupleView< T >::fValue
protected

Definition at line 133 of file RNTupleView.hxx.


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