11#ifndef ROOT_RACTIONBASE
12#define ROOT_RACTIONBASE
26class RCustomColumnBase;
32namespace GraphDrawing {
39namespace GraphDrawing {
41 const std::shared_ptr<ROOT::Detail::RDF::RCustomColumnBase> &column);
82 virtual std::shared_ptr<ROOT::Internal::RDF::GraphDrawing::GraphNode>
GetGraph() = 0;
The head node of a RDF computation graph.
Class used to create the operation graph to be printed in the dot representation.
const ColumnNames_t fColumnNames
virtual void ClearValueReaders(unsigned int slot)=0
virtual void Initialize()=0
const unsigned int fNSlots
Number of thread slots used by this node.
RActionBase & operator=(const RActionBase &)=delete
virtual void TriggerChildrenCount()=0
RActionBase(RLoopManager *lm, const ColumnNames_t &colNames, RBookedCustomColumns &&customColumns)
unsigned int GetNSlots() const
virtual void Run(unsigned int slot, Long64_t entry)=0
const ColumnNames_t & GetColumnNames() const
virtual void FinalizeSlot(unsigned int)=0
RActionBase(const RActionBase &)=delete
virtual bool HasRun() const
virtual void * PartialUpdate(unsigned int slot)=0
This method is invoked to update a partial result during the event loop, right before passing the res...
virtual std::shared_ptr< ROOT::Internal::RDF::GraphDrawing::GraphNode > GetGraph()=0
RBookedCustomColumns fCustomColumns
RLoopManager * GetLoopManager()
RLoopManager * fLoopManager
A raw pointer to the RLoopManager at the root of this functional graph.
virtual void Finalize()=0
virtual void InitSlot(TTreeReader *r, unsigned int slot)=0
RBookedCustomColumns & GetCustomColumns()
Encapsulates the columns defined by the user.
A simple, robust and fast interface to read values from ROOT columnar datasets such as TTree,...
bool CheckIfDefaultOrDSColumn(const std::string &name, const std::shared_ptr< ROOT::Detail::RDF::RCustomColumnBase > &column)
Namespace for new ROOT classes and functions.
ROOT::Detail::RDF::ColumnNames_t ColumnNames_t