11#ifndef ROOT_RVARIATIONBASE
12#define ROOT_RVARIATIONBASE
53 RVariationBase(
const std::vector<std::string> &colNames, std::string_view variationName,
54 const std::vector<std::string> &variationTags, std::string_view
type,
66 virtual void *
GetValuePtr(
unsigned int slot,
const std::string &column,
const std::string &variation) = 0;
67 virtual const std::type_info &
GetTypeId()
const = 0;
long long Long64_t
Portable signed long integer 8 bytes.
The head node of a RDF computation graph.
A binder for user-defined columns, variations and aliases.
std::vector< std::string > fColNames
The names of the varied columns.
const std::vector< std::string > & GetVariationNames() const
const std::vector< std::string > & GetColumnNames() const
RVariationBase & operator=(RVariationBase &&)=default
std::string fType
The type of the custom column as a text string.
std::string fVariationName
The name of the systematic variation.
virtual void FinalizeSlot(unsigned int slot)=0
Clean-up operations to be performed at the end of a task.
const std::string & GetVariationName() const
virtual const std::type_info & GetTypeId() const =0
RLoopManager * fLoopManager
RVariationBase(const std::vector< std::string > &colNames, std::string_view variationName, const std::vector< std::string > &variationTags, std::string_view type, const RColumnRegister &colRegister, RLoopManager &lm, const ColumnNames_t &inputColNames)
ROOT::RVecB fIsDefine
The nth flag signals whether the nth input column is a custom column or not.
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...
std::vector< std::string > fVariationNames
The tags of the systematic variation.
ColumnNames_t fInputColumns
RVariationBase(RVariationBase &&)=default
std::vector< Long64_t > fLastCheckedEntry
RColumnRegister fColumnRegister
std::string GetTypeName() const
virtual void * GetValuePtr(unsigned int slot, const std::string &column, const std::string &variation)=0
Return the (type-erased) address of the value of one variation of one column (can be safely cast back...
virtual ~RVariationBase()
virtual void InitSlot(TTreeReader *r, unsigned int slot)=0
RVariationBase(const RVariationBase &)=delete
RVariationBase & operator=(const RVariationBase &)=delete
RDataSource defines an API that RDataFrame can use to read arbitrary data formats.
A simple, robust and fast interface to read values from ROOT columnar datasets such as TTree,...
Special implementation of ROOT::RRangeCast for TCollection, including a check that the cast target ty...
std::vector< std::string > ColumnNames_t
ROOT::VecOps::RVec< bool > RVecB