Logo ROOT   6.18/05
Reference Guide
List of all members | Public Member Functions | List of all members
ROOT::Experimental::Detail::RPageSource Class Referenceabstract

Abstract interface to read data from a tree.

The page source is initialized with the columns of interest. Pages from those columns can then be mapped into pages. The page source also gives access to its meta-data.

Definition at line 117 of file RPageStorage.hxx.

Public Member Functions

 RPageSource (std::string_view treeName)
 
virtual ~RPageSource ()
 
virtual void Attach ()=0
 TODO: copy/assignment for creating clones in multiple threads. More...
 
virtual std::unique_ptr< ROOT::Experimental::RNTupleModelGenerateModel ()=0
 
virtual ColumnId_t GetColumnId (ColumnHandle_t columnHandle)=0
 
virtual const RNTupleDescriptorGetDescriptor () const =0
 
virtual NTupleSize_t GetNElements (ColumnHandle_t columnHandle)=0
 
virtual NTupleSize_t GetNEntries ()=0
 
EPageStorageType GetType () final
 
virtual void PopulatePage (ColumnHandle_t columnHandle, NTupleSize_t index, RPage *page)=0
 Fills a page starting with index rangeStart; the corresponding column is taken from the page object. More...
 
- Public Member Functions inherited from ROOT::Experimental::Detail::RPageStorage
 RPageStorage ()
 
 RPageStorage (const RPageStorage &other)=delete
 
virtual ~RPageStorage ()
 
virtual ColumnHandle_t AddColumn (RColumn *column)=0
 Register a new column. More...
 
RPagePoolGetPagePool () const
 
virtual EPageStorageType GetType ()=0
 
RPageStorageoperator= (const RPageStorage &other)=delete
 

Additional Inherited Members

- Public Types inherited from ROOT::Experimental::Detail::RPageStorage
using ColumnHandle_t = RColumnHandle
 The column handle identfies a column with the current open page storage. More...
 
- Protected Attributes inherited from ROOT::Experimental::Detail::RPageStorage
std::unique_ptr< RPagePoolfPagePool
 All data is shipped to and from physical storage in pages, and moderated through a page pool. More...
 

#include <ROOT/RPageStorage.hxx>

Inheritance diagram for ROOT::Experimental::Detail::RPageSource:
[legend]

Constructor & Destructor Documentation

◆ RPageSource()

ROOT::Experimental::Detail::RPageSource::RPageSource ( std::string_view  treeName)

Definition at line 30 of file RPageStorage.cxx.

◆ ~RPageSource()

ROOT::Experimental::Detail::RPageSource::~RPageSource ( )
virtual

Definition at line 34 of file RPageStorage.cxx.

Member Function Documentation

◆ Attach()

virtual void ROOT::Experimental::Detail::RPageSource::Attach ( )
pure virtual

TODO: copy/assignment for creating clones in multiple threads.

Open the physical storage container for the tree

Implemented in ROOT::Experimental::Detail::RPageSourceRoot.

◆ GenerateModel()

virtual std::unique_ptr< ROOT::Experimental::RNTupleModel > ROOT::Experimental::Detail::RPageSource::GenerateModel ( )
pure virtual

◆ GetColumnId()

virtual ColumnId_t ROOT::Experimental::Detail::RPageSource::GetColumnId ( ColumnHandle_t  columnHandle)
pure virtual

◆ GetDescriptor()

virtual const RNTupleDescriptor & ROOT::Experimental::Detail::RPageSource::GetDescriptor ( ) const
pure virtual

◆ GetNElements()

virtual NTupleSize_t ROOT::Experimental::Detail::RPageSource::GetNElements ( ColumnHandle_t  columnHandle)
pure virtual

◆ GetNEntries()

virtual NTupleSize_t ROOT::Experimental::Detail::RPageSource::GetNEntries ( )
pure virtual

◆ GetType()

EPageStorageType ROOT::Experimental::Detail::RPageSource::GetType ( )
inlinefinalvirtual

Implements ROOT::Experimental::Detail::RPageStorage.

Definition at line 121 of file RPageStorage.hxx.

◆ PopulatePage()

virtual void ROOT::Experimental::Detail::RPageSource::PopulatePage ( ColumnHandle_t  columnHandle,
NTupleSize_t  index,
RPage page 
)
pure virtual

Fills a page starting with index rangeStart; the corresponding column is taken from the page object.

Implemented in ROOT::Experimental::Detail::RPageSourceRoot.


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