11#ifndef ROOT_RDF_GRAPHNODE
12#define ROOT_RDF_GRAPHNODE
24namespace GraphDrawing {
105 fName +=
"\\n(already run)";
143 for (
const auto &col :
columns) {
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Helper class that provides the operation graph nodes.
Class used to create the operation graph to be printed in the dot representation.
void SetDefine()
Gives a different shape based on the node type.
void SetExplored()
Allows to stop the graph traversal when an explored node is encountered.
void SetPrevNode(const std::shared_ptr< GraphNode > &node)
Appends a node on the head of the current node.
std::string GetColor() const
const std::vector< std::string > & GetDefinedColumns() const
Gets the column defined up to the node.
void SetAction(bool hasRun)
Gives a different shape based on the node type.
void SetRoot()
Gives a different shape based on the node type.
GraphNode(std::string_view name, unsigned int id, ENodeType t)
Creates a node with a name.
void SetRange()
Gives a different shape based on the node type.
unsigned int fID
Nodes may share the same name (e.g.
std::string GetShape() const
void AddDefinedColumns(const std::vector< std::string_view > &columns)
Adds the column defined up to the node.
std::vector< std::string > fDefinedColumns
Columns defined up to this node.
std::string GetName() const
void SetFilter()
Gives a different shape based on the node type.
unsigned int GetID() const
GraphNode * GetPrevNode() const
void SetNotNew()
Mark this node as "not newly created".
bool fIsNew
A just created node.
bool fIsExplored
When the graph is reconstructed, the first time this node has been explored this flag is set and it w...
std::shared_ptr< GraphNode > fPrevNode
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...