33                                                 std::unique_ptr<ROOT::Experimental::Internal::RPageSink> 
sink)
 
   34   : fFillContext(std::
move(model), std::
move(
sink)), fMetrics(
"RNTupleWriter")
 
   39      fZipTasks = std::make_unique<Internal::RNTupleImtTaskScheduler>();
 
 
   51      fFillContext.fSink->CommitDataset();
 
 
   57std::unique_ptr<ROOT::Experimental::RNTupleWriter>
 
   62      sink = std::make_unique<Internal::RPageSinkBuf>(std::move(
sink));
 
   64   return std::unique_ptr<RNTupleWriter>(
new RNTupleWriter(std::move(model), std::move(
sink)));
 
 
   67std::unique_ptr<ROOT::Experimental::RNTupleWriter>
 
   72   return Create(std::move(model), std::move(
sink), options);
 
 
   75std::unique_ptr<ROOT::Experimental::RNTupleWriter>
 
   86      model->AddField(
field.Unwrap());
 
   88   return Create(std::move(model), std::move(
sink), options);
 
 
   91std::unique_ptr<ROOT::Experimental::RNTupleWriter>
 
   95   auto sink = std::make_unique<Internal::RPageSinkFile>(
ntupleName, file, options);
 
   96   return Create(std::move(model), std::move(
sink), options);
 
 
  101   if (GetNEntries() == fLastCommittedClusterGroup)
 
  103   fFillContext.fSink->CommitClusterGroup();
 
  104   fLastCommittedClusterGroup = GetNEntries();
 
 
  107std::unique_ptr<ROOT::Experimental::RNTupleWriter>
 
  109                                                  std::unique_ptr<ROOT::Experimental::Internal::RPageSink> 
sink)
 
  111   return std::unique_ptr<ROOT::Experimental::RNTupleWriter>(
 
 
#define R__LOG_ERROR(...)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
void ObserveMetrics(RNTupleMetrics &observee)
static std::unique_ptr< RPageSink > Create(std::string_view ntupleName, std::string_view location, const RNTupleWriteOptions &options=RNTupleWriteOptions())
Guess the concrete derived page source from the location.
Base class for all ROOT issued exceptions.
const RError & GetError() const
static RResult< std::unique_ptr< RFieldBase > > Create(const std::string &fieldName, const std::string &canonicalType, const std::string &typeAlias, bool fContinueOnError=false)
Factory method to resurrect a field from the stored on-disk type information.
std::unique_ptr< Internal::RPageSink > fSink
static std::unique_ptr< RNTupleModel > Create()
Common user-tunable settings for storing ntuples.
bool GetUseBufferedWrite() const
An RNTuple that gets filled with entries (data) and writes them to storage.
RNTupleWriter(std::unique_ptr< RNTupleModel > model, std::unique_ptr< Internal::RPageSink > sink)
std::unique_ptr< Internal::RPageStorage::RTaskScheduler > fZipTasks
The page sink's parallel page compression scheduler if IMT is on.
static std::unique_ptr< RNTupleWriter > Create(std::unique_ptr< RNTupleModel > model, std::unique_ptr< Internal::RPageSink > sink, const RNTupleWriteOptions &options)
Create a writer, potentially wrapping the sink in a RPageSinkBuf.
void CommitClusterGroup()
Detail::RNTupleMetrics fMetrics
static std::unique_ptr< RNTupleWriter > Recreate(std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, std::string_view storage, const RNTupleWriteOptions &options=RNTupleWriteOptions())
Throws an exception if the model is null.
RNTupleFillContext fFillContext
static std::unique_ptr< RNTupleWriter > Append(std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, TFile &file, const RNTupleWriteOptions &options=RNTupleWriteOptions())
Throws an exception if the model is null.
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
std::unique_ptr< RNTupleWriter > CreateRNTupleWriter(std::unique_ptr< RNTupleModel > model, std::unique_ptr< Internal::RPageSink > sink)
RLogChannel & NTupleLog()
Log channel for RNTuple diagnostics.
Bool_t IsImplicitMTEnabled()
Returns true if the implicit multi-threading in ROOT is enabled.