An RNTuple that gets filled with entries (data) and writes them to storage.
An output ntuple can be filled with entries. The caller has to make sure that the data that gets filled into an ntuple is not modified for the time of the Fill() call. The fill call serializes the C++ object into the column format and writes data into the corresponding column page buffers. Writing of the buffers to storage is deferred and can be triggered by Flush() or by destructing the ntuple. On I/O errors, an exception is thrown.
Definition at line 213 of file RNTuple.hxx.
Public Member Functions | |
RNTupleWriter (const RNTupleWriter &)=delete | |
RNTupleWriter (std::unique_ptr< RNTupleModel > model, std::unique_ptr< Detail::RPageSink > sink) | |
~RNTupleWriter () | |
void | CommitCluster () |
Ensure that the data from the so far seen Fill calls has been written to storage. | |
void | Fill () |
The simplest user interface if the default entry that comes with the ntuple model is used. | |
void | Fill (REntry &entry) |
Multiple entries can have been instantiated from the tnuple model. | |
RNTupleWriter & | operator= (const RNTupleWriter &)=delete |
Static Public Member Functions | |
static std::unique_ptr< RNTupleWriter > | Append (std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, TFile &file, const RNTupleWriteOptions &options=RNTupleWriteOptions()) |
static std::unique_ptr< RNTupleWriter > | Recreate (std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, std::string_view storage, const RNTupleWriteOptions &options=RNTupleWriteOptions()) |
Private Attributes | |
NTupleSize_t | fClusterSizeEntries |
NTupleSize_t | fLastCommitted |
std::unique_ptr< RNTupleModel > | fModel |
Needs to be destructed before fSink. | |
NTupleSize_t | fNEntries |
std::unique_ptr< Detail::RPageSink > | fSink |
Static Private Attributes | |
static constexpr NTupleSize_t | kDefaultClusterSizeEntries = 64000 |
#include <ROOT/RNTuple.hxx>
ROOT::Experimental::RNTupleWriter::RNTupleWriter | ( | std::unique_ptr< RNTupleModel > | model, |
std::unique_ptr< Detail::RPageSink > | sink | ||
) |
Definition at line 247 of file RNTuple.cxx.
|
delete |
ROOT::Experimental::RNTupleWriter::~RNTupleWriter | ( | ) |
Definition at line 259 of file RNTuple.cxx.
|
static |
Definition at line 274 of file RNTuple.cxx.
void ROOT::Experimental::RNTupleWriter::CommitCluster | ( | ) |
Ensure that the data from the so far seen Fill calls has been written to storage.
Definition at line 285 of file RNTuple.cxx.
|
inline |
The simplest user interface if the default entry that comes with the ntuple model is used.
Definition at line 238 of file RNTuple.hxx.
Multiple entries can have been instantiated from the tnuple model.
This method will perform a light check whether the entry comes from the ntuple's own model
Definition at line 241 of file RNTuple.hxx.
|
delete |
|
static |
Definition at line 265 of file RNTuple.cxx.
|
private |
Definition at line 219 of file RNTuple.hxx.
|
private |
Definition at line 220 of file RNTuple.hxx.
|
private |
Needs to be destructed before fSink.
Definition at line 218 of file RNTuple.hxx.
|
private |
Definition at line 221 of file RNTuple.hxx.
|
private |
Definition at line 216 of file RNTuple.hxx.
|
staticconstexprprivate |
Definition at line 215 of file RNTuple.hxx.