11#ifndef ROOT_RACTIONBASE 
   12#define ROOT_RACTIONBASE 
   28class RMergeableValueBase;
 
   34namespace GraphDrawing {
 
   80   virtual std::shared_ptr<ROOT::Internal::RDF::GraphDrawing::GraphNode>
 
   81   GetGraph(std::unordered_map<
void *, std::shared_ptr<ROOT::Internal::RDF::GraphDrawing::GraphNode>> &
visitedMap) = 0;
 
 
Basic types used by ROOT and required by TInterpreter.
 
long long Long64_t
Portable signed long integer 8 bytes.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
 
The head node of a RDF computation graph.
 
const ColumnNames_t fColumnNames
 
std::vector< std::string > fVariations
List of systematic variations that affect the result of this action ("nominal" excluded).
 
virtual void Initialize()=0
 
const unsigned int fNSlots
Number of thread slots used by this node.
 
RActionBase & operator=(const RActionBase &)=delete
 
virtual std::unique_ptr< RMergeableValueBase > GetMergeableValue() const =0
Retrieve a wrapper to the result of the action that knows how to merge with others of the same type.
 
virtual void TriggerChildrenCount()=0
 
RActionBase(RLoopManager *lm, const ColumnNames_t &colNames, const RColumnRegister &colRegister, const std::vector< std::string > &prevVariations)
 
unsigned int GetNSlots() const
 
const std::vector< std::string > & GetVariations() const
 
virtual std::unique_ptr< RActionBase > CloneAction(void *newResult)=0
 
virtual void Run(unsigned int slot, Long64_t entry)=0
 
const ColumnNames_t & GetColumnNames() const
 
virtual void FinalizeSlot(unsigned int)=0
 
virtual ROOT::RDF::SampleCallback_t GetSampleCallback()=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...
 
RLoopManager * GetLoopManager()
 
RColumnRegister fColRegister
 
RLoopManager * fLoopManager
A raw pointer to the RLoopManager at the root of this functional graph.
 
RColumnRegister & GetColRegister()
 
virtual std::unique_ptr< RActionBase > MakeVariedAction(std::vector< void * > &&results)=0
 
virtual void Finalize()=0
 
virtual void InitSlot(TTreeReader *r, unsigned int slot)=0
 
virtual std::shared_ptr< ROOT::Internal::RDF::GraphDrawing::GraphNode > GetGraph(std::unordered_map< void *, std::shared_ptr< ROOT::Internal::RDF::GraphDrawing::GraphNode > > &visitedMap)=0
 
A binder for user-defined columns, variations and aliases.
 
A simple, robust and fast interface to read values from ROOT columnar datasets such as TTree,...
 
std::function< void(unsigned int, const ROOT::RDF::RSampleInfo &)> SampleCallback_t
The type of a data-block callback, registered with an RDataFrame computation graph via e....
 
std::vector< std::string > ColumnNames_t