38 std::vector<std::unique_ptr<TChain>>
fChains;
43 std::string
AsString() {
return "ROOT data source"; };
46 RRootDS(std::string_view treeName, std::string_view fileNameGlob);
48 std::string
GetTypeName(std::string_view colName)
const;
50 bool HasColumn(std::string_view colName)
const;
unsigned long long ULong64_t
This class is unused and it has only been implemented as a proof of concept.
void FinaliseSlot(unsigned int slot)
Convenience method called at the end of the data processing associated to a slot.
std::string fFileNameGlob
void Initialise()
Convenience method called before starting an event-loop.
bool HasColumn(std::string_view colName) const
Checks if the dataset has a certain column.
const std::vector< std::string > & GetColumnNames() const
Returns a reference to the collection of the dataset's column names.
std::string GetLabel()
Return a string representation of the datasource type.
std::string GetTypeName(std::string_view colName) const
Type of a column as a string, e.g.
std::vector< std::vector< void * > > fBranchAddresses
std::vector< std::unique_ptr< TChain > > fChains
std::vector< void * > GetColumnReadersImpl(std::string_view, const std::type_info &)
type-erased vector of pointers to pointers to column values - one per slot
void SetNSlots(unsigned int nSlots)
Inform RDataSource of the number of processing slots (i.e.
std::vector< std::string > fListOfBranches
std::vector< double * > fAddressesToFree
std::vector< std::pair< ULong64_t, ULong64_t > > GetEntryRanges()
Return ranges of entries to distribute to tasks.
void InitSlot(unsigned int slot, ULong64_t firstEntry)
Convenience method called at the start of the data processing associated to a slot.
std::vector< std::pair< ULong64_t, ULong64_t > > fEntryRanges
bool SetEntry(unsigned int slot, ULong64_t entry)
Advance the "cursors" returned by GetColumnReaders to the selected entry for a particular slot.
RDataSource defines an API that RDataFrame can use to read arbitrary data formats.
ROOT's RDataFrame offers a high level interface for analyses of data stored in TTree,...
A chain is a collection of files containing TTree objects.
RDataFrame MakeRootDataFrame(std::string_view treeName, std::string_view fileNameGlob)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...