16#ifndef ROOT7_RNTupleParallelWriter 
   17#define ROOT7_RNTupleParallelWriter 
   30namespace Experimental {
 
   36class RNTupleFillContext;
 
   65   std::unique_ptr<Internal::RPageSink> 
fSink;
 
   67   std::unique_ptr<RNTupleModel> 
fModel;
 
   78   static std::unique_ptr<RNTupleParallelWriter> 
Recreate(std::unique_ptr<RNTupleModel> model,
 
   82   static std::unique_ptr<RNTupleParallelWriter> 
Append(std::unique_ptr<RNTupleModel> model,
 
 
A collection of Counter objects with a name, a unit, and a description.
 
A writer to fill an RNTuple from multiple contexts.
 
RNTupleParallelWriter(std::unique_ptr< RNTupleModel > model, std::unique_ptr< Internal::RPageSink > sink)
 
std::vector< std::weak_ptr< RNTupleFillContext > > fFillContexts
List of all created helpers. They must be destroyed before this RNTupleParallelWriter is destructed.
 
RNTupleParallelWriter(const RNTupleParallelWriter &)=delete
 
std::unique_ptr< RNTupleModel > fModel
The original RNTupleModel connected to fSink; needs to be destructed before it.
 
std::unique_ptr< Internal::RPageSink > fSink
The final RPageSink that represents the synchronization point.
 
static std::unique_ptr< RNTupleParallelWriter > Recreate(std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, std::string_view storage, const RNTupleWriteOptions &options=RNTupleWriteOptions())
Recreate a new file and return a writer to write an ntuple.
 
std::mutex fSinkMutex
A mutex to synchronize the final page sink.
 
std::shared_ptr< RNTupleFillContext > CreateFillContext()
Create a new RNTupleFillContext that can be used to fill entries and prepare clusters in parallel.
 
RNTupleParallelWriter & operator=(const RNTupleParallelWriter &)=delete
 
std::mutex fMutex
A global mutex to protect the internal data structures of this object.
 
static std::unique_ptr< RNTupleParallelWriter > Append(std::unique_ptr< RNTupleModel > model, std::string_view ntupleName, TFile &file, const RNTupleWriteOptions &options=RNTupleWriteOptions())
Append an ntuple to the existing file, which must not be accessed while data is filled into any creat...
 
Detail::RNTupleMetrics fMetrics
 
const Detail::RNTupleMetrics & GetMetrics() const
 
Common user-tunable settings for storing ntuples.
 
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
 
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...