Logo ROOT   6.18/05
Reference Guide
List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
ROOT::Experimental::RNTupleReader Class Reference

An RNTuple that is used to read data from storage.

An input ntuple provides data from storage as C++ objects. The ntuple model can be created from the data on storage or it can be imposed by the user. The latter case allows users to read into a specialized ntuple model that covers only a subset of the fields in the ntuple. The ntuple model is used when reading complete entries. Individual fields can be read as well by instantiating a tree view.

Definition at line 94 of file RNTuple.hxx.

Classes

class  RIterator
 

Public Member Functions

 RNTupleReader (std::unique_ptr< Detail::RPageSource > source)
 The model is generated from the ntuple metadata on storage. More...
 
 RNTupleReader (std::unique_ptr< RNTupleModel > model, std::unique_ptr< Detail::RPageSource > source)
 The user imposes an ntuple model, which must be compatible with the model found in the data on storage. More...
 
 ~RNTupleReader ()
 
RIterator begin ()
 
RIterator end ()
 
std::string GetInfo (const ENTupleInfo what=ENTupleInfo::kSummary)
 
NTupleSize_t GetNEntries ()
 
template<typename T >
RNTupleView< T > GetView (std::string_view fieldName)
 Provides access to an individual field that can contain either a skalar value or a collection, e.g. More...
 
RNTupleViewCollection GetViewCollection (std::string_view fieldName)
 
RNTupleViewRange GetViewRange ()
 
void LoadEntry (NTupleSize_t index)
 Analogous to Fill(), fills the default entry of the model. More...
 
void LoadEntry (NTupleSize_t index, REntry *entry)
 Fills a user provided entry after checking that the entry has been instantiated from the ntuple model. More...
 
- Public Member Functions inherited from ROOT::Experimental::Detail::RNTuple
 RNTuple (const RNTuple &)=delete
 
 ~RNTuple ()
 
RNTupleModelGetModel ()
 
RNTupleoperator= (const RNTuple &)=delete
 

Static Public Member Functions

static std::unique_ptr< RNTupleReaderOpen (std::string_view ntupleName, std::string_view storage)
 
static std::unique_ptr< RNTupleReaderOpen (std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, std::string_view storage)
 

Private Attributes

std::unique_ptr< Detail::RPageSourcefSource
 

Additional Inherited Members

- Protected Member Functions inherited from ROOT::Experimental::Detail::RNTuple
 RNTuple (std::unique_ptr< RNTupleModel > model)
 Only the derived RNTupleReader and RNTupleWriter can be instantiated. More...
 
- Protected Attributes inherited from ROOT::Experimental::Detail::RNTuple
std::unique_ptr< RNTupleModelfModel
 
NTupleSize_t fNEntries
 The number of entries is constant for reading and reflects the sum of Fill() operations when writing. More...
 

#include <ROOT/RNTuple.hxx>

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

Constructor & Destructor Documentation

◆ RNTupleReader() [1/2]

ROOT::Experimental::RNTupleReader::RNTupleReader ( std::unique_ptr< RNTupleModel model,
std::unique_ptr< Detail::RPageSource source 
)

The user imposes an ntuple model, which must be compatible with the model found in the data on storage.

Definition at line 39 of file RNTuple.cxx.

◆ RNTupleReader() [2/2]

ROOT::Experimental::RNTupleReader::RNTupleReader ( std::unique_ptr< Detail::RPageSource source)

The model is generated from the ntuple metadata on storage.

Definition at line 52 of file RNTuple.cxx.

◆ ~RNTupleReader()

ROOT::Experimental::RNTupleReader::~RNTupleReader ( )

Definition at line 64 of file RNTuple.cxx.

Member Function Documentation

◆ begin()

RIterator ROOT::Experimental::RNTupleReader::begin ( )
inline

Definition at line 154 of file RNTuple.hxx.

◆ end()

RIterator ROOT::Experimental::RNTupleReader::end ( )
inline

Definition at line 155 of file RNTuple.hxx.

◆ GetInfo()

std::string ROOT::Experimental::RNTupleReader::GetInfo ( const ENTupleInfo  what = ENTupleInfo::kSummary)

Definition at line 85 of file RNTuple.cxx.

◆ GetNEntries()

NTupleSize_t ROOT::Experimental::RNTupleReader::GetNEntries ( )
inline

Definition at line 129 of file RNTuple.hxx.

◆ GetView()

template<typename T >
RNTupleView< T > ROOT::Experimental::RNTupleReader::GetView ( std::string_view  fieldName)
inline

Provides access to an individual field that can contain either a skalar value or a collection, e.g.

GetView<double>("particles.pt") or GetView<std::vector<double>>("particle"). It can as well be the index field of a collection itself, like GetView<NTupleSize_t>("particle")

Definition at line 149 of file RNTuple.hxx.

◆ GetViewCollection()

RNTupleViewCollection ROOT::Experimental::RNTupleReader::GetViewCollection ( std::string_view  fieldName)
inline

Definition at line 150 of file RNTuple.hxx.

◆ GetViewRange()

RNTupleViewRange ROOT::Experimental::RNTupleReader::GetViewRange ( )
inline

Definition at line 143 of file RNTuple.hxx.

◆ LoadEntry() [1/2]

void ROOT::Experimental::RNTupleReader::LoadEntry ( NTupleSize_t  index)
inline

Analogous to Fill(), fills the default entry of the model.

Returns false at the end of the ntuple. On I/O errors, raises an expection.

Definition at line 135 of file RNTuple.hxx.

◆ LoadEntry() [2/2]

void ROOT::Experimental::RNTupleReader::LoadEntry ( NTupleSize_t  index,
REntry entry 
)
inline

Fills a user provided entry after checking that the entry has been instantiated from the ntuple model.

Definition at line 137 of file RNTuple.hxx.

◆ Open() [1/2]

std::unique_ptr< ROOT::Experimental::RNTupleReader > ROOT::Experimental::RNTupleReader::Open ( std::string_view  ntupleName,
std::string_view  storage 
)
static

Definition at line 78 of file RNTuple.cxx.

◆ Open() [2/2]

std::unique_ptr< ROOT::Experimental::RNTupleReader > ROOT::Experimental::RNTupleReader::Open ( std::unique_ptr< RNTupleModel model,
std::string_view  ntupleName,
std::string_view  storage 
)
static

Definition at line 68 of file RNTuple.cxx.

Member Data Documentation

◆ fSource

std::unique_ptr<Detail::RPageSource> ROOT::Experimental::RNTupleReader::fSource
private

Definition at line 96 of file RNTuple.hxx.

Libraries for ROOT::Experimental::RNTupleReader:
[legend]

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