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

Abstract interface to write data into a tree.

The page sink takes the list of columns and afterwards a series of page commits and cluster commits. The user is responsible to commit clusters at consistent point, i.e. when all pages corresponding to data up to the given entry number are committed.

Definition at line 91 of file RPageStorage.hxx.

Public Member Functions

 RPageSink (std::string_view treeName)
 
virtual ~RPageSink ()
 
virtual void CommitCluster (NTupleSize_t nEntries)=0
 Finalize the current cluster and create a new one for the following data. More...
 
virtual void CommitDataset ()=0
 Finalize the current cluster and the entrire data set. More...
 
virtual void CommitPage (ColumnHandle_t columnHandle, const RPage &page)=0
 Write a page to the storage. The column must have been added before. More...
 
virtual void Create (RNTupleModel *model)=0
 Physically creates the storage container to hold the tree (e.g., a directory in a TFile or a S3 bucket) More...
 
EPageStorageType GetType () final
 
- 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::RPageSink:
[legend]

Constructor & Destructor Documentation

◆ RPageSink()

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

Definition at line 38 of file RPageStorage.cxx.

◆ ~RPageSink()

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

Definition at line 42 of file RPageStorage.cxx.

Member Function Documentation

◆ CommitCluster()

virtual void ROOT::Experimental::Detail::RPageSink::CommitCluster ( NTupleSize_t  nEntries)
pure virtual

Finalize the current cluster and create a new one for the following data.

Implemented in ROOT::Experimental::Detail::RPageSinkRoot.

◆ CommitDataset()

virtual void ROOT::Experimental::Detail::RPageSink::CommitDataset ( )
pure virtual

Finalize the current cluster and the entrire data set.

Implemented in ROOT::Experimental::Detail::RPageSinkRoot.

◆ CommitPage()

virtual void ROOT::Experimental::Detail::RPageSink::CommitPage ( ColumnHandle_t  columnHandle,
const RPage page 
)
pure virtual

Write a page to the storage. The column must have been added before.

Implemented in ROOT::Experimental::Detail::RPageSinkRoot.

◆ Create()

virtual void ROOT::Experimental::Detail::RPageSink::Create ( RNTupleModel model)
pure virtual

Physically creates the storage container to hold the tree (e.g., a directory in a TFile or a S3 bucket)

Implemented in ROOT::Experimental::Detail::RPageSinkRoot.

◆ GetType()

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

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

Definition at line 95 of file RPageStorage.hxx.


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