11#ifndef ROOT_RDF_RDEFINEREADER
12#define ROOT_RDF_RDEFINEREADER
25#include <unordered_map>
26#include <unordered_set>
40 void *fValuePtr =
nullptr;
43 unsigned int fSlot = std::numeric_limits<unsigned int>::max();
47 fDefine.
Update(fSlot, entry);
53 : fDefine(define), fValuePtr(define.GetValuePtr(slot)), fSlot(slot)
63 std::shared_ptr<ROOT::Detail::RDF::RDefineBase>
fDefine;
71 RDefinesWithReaders(std::shared_ptr<ROOT::Detail::RDF::RDefineBase> define,
unsigned int nSlots,
virtual void Update(unsigned int slot, Long64_t entry)=0
Update the value at the address returned by GetValuePtr with the content corresponding to the given e...
Column reader for defined columns.
void * GetImpl(Long64_t entry) final
RDefineReader(unsigned int slot, RDFDetail::RDefineBase &define)
RDFDetail::RDefineBase & fDefine
Non-owning reference to the node responsible for the defined column.
A helper type that keeps track of RDefine objects and their corresponding RDefineReaders.
std::shared_ptr< ROOT::Detail::RDF::RDefineBase > fDefine
std::vector< std::unordered_map< std::string_view, std::unique_ptr< RDefineReader > > > fReadersPerVariation
ROOT::Detail::RDF::RDefineBase & GetDefine() const
ROOT::Internal::RDF::RStringCache & fCachedColNames
A Thread-safe cache for strings.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...