16#ifndef ROOT7_RNTupleProcessor
17#define ROOT7_RNTupleProcessor
33namespace Experimental {
170 std::size_t ntupleIndex)
257 RNTupleProcessor(
const std::vector<RNTupleSourceSpec> &ntuples, std::unique_ptr<RNTupleModel> model =
nullptr);
RFieldContext(std::unique_ptr< RFieldBase > protoField, REntry::RFieldToken token)
std::unique_ptr< RFieldBase > fProtoField
void ResetConcreteField()
We need to disconnect the concrete fields before swapping the page sources.
std::unique_ptr< RFieldBase > fConcreteField
REntry::RFieldToken fToken
const RFieldBase & GetProtoField() const
NTupleSize_t GetGlobalEntryIndex() const
NTupleSize_t fLocalEntryIndex
std::size_t fNTupleIndex
Index of the currently open RNTuple in the chain of ntuples.
RProcessorState(const REntry &entry, NTupleSize_t globalEntryIndex, NTupleSize_t localEntryIndex, std::size_t ntupleIndex)
const REntry * operator->() const
NTupleSize_t fGlobalEntryIndex
const REntry & GetEntry() const
NTupleSize_t GetLocalEntryIndex() const
std::size_t GetNTupleIndex() const
std::ptrdiff_t difference_type
RIterator(RNTupleProcessor &processor, std::size_t ntupleIndex, NTupleSize_t globalEntryIndex)
bool operator!=(const iterator &rh) const
void Advance()
Increments the entry index.
RNTupleProcessor & fProcessor
bool operator==(const iterator &rh) const
std::forward_iterator_tag iterator_category
std::unique_ptr< REntry > fEntry
std::unique_ptr< Internal::RPageSource > fPageSource
NTupleSize_t ConnectNTuple(const RNTupleSourceSpec &ntuple)
Connect an RNTuple for processing.
void ConnectFields()
Creates and connects concrete fields to the current page source, based on the proto-fields.
std::vector< RFieldContext > fFieldContexts
std::vector< RNTupleSourceSpec > fNTuples
const REntry & GetEntry() const
Returns a reference to the entry used by the processor.
The field token identifies a top-level field in this entry.
The REntry is a collection of values in an ntuple corresponding to a complete row in the data set.
A field translates read and write calls from/to underlying columns to/from tree values.
std::uint64_t NTupleSize_t
Integer type long enough to hold the maximum number of entries in a column.
constexpr NTupleSize_t kInvalidNTupleIndex
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Helper type representing the name and storage location of an RNTuple.
RNTupleSourceSpec(std::string_view n, std::string_view s)
RNTupleSourceSpec()=default