6 std::string_view colName,
const std::type_info &ti)
8 if (defineOrVariationReader !=
nullptr)
9 return defineOrVariationReader;
14 if (datasetColReader !=
nullptr)
15 return datasetColReader;
23 const std::vector<const std::type_info *> &colTypeIDs,
const std::string &variationName)
26 std::vector<ROOT::Detail::RDF::RColumnReaderBase *> readers;
27 auto nCols = colNames.size();
28 readers.reserve(nCols);
29 for (
decltype(nCols) i{}; i < nCols; i++) {
32 lm, treeReader, colNames[i], *colTypeIDs[i]));
The head node of a RDF computation graph.
RColumnReaderBase * AddDataSourceColumnReader(unsigned int slot, std::string_view col, const std::type_info &ti, TTreeReader *treeReader)
RColumnReaderBase * GetDatasetColumnReader(unsigned int slot, std::string_view col, const std::type_info &ti) const
A binder for user-defined columns, variations and aliases.
RDFDetail::RColumnReaderBase * GetReaderUnchecked(unsigned int slot, const std::string &colName, const std::string &variationName)
Return a RDefineReader or a RVariationReader, or nullptr if not available.
A simple, robust and fast interface to read values from ROOT columnar datasets such as TTree,...
RDFDetail::RColumnReaderBase * GetColumnReader(unsigned int slot, RColumnReaderBase *defineOrVariationReader, RLoopManager &lm, TTreeReader *treeReader, std::string_view colName, const std::type_info &ti)
std::vector< RDFDetail::RColumnReaderBase * > GetUntypedColumnReaders(unsigned int slot, TTreeReader *treeReader, ROOT::Internal::RDF::RColumnRegister &colRegister, ROOT::Detail::RDF::RLoopManager &lm, const std::vector< std::string > &colNames, const std::vector< const std::type_info * > &colTypeIDs, const std::string &variationName="nominal")