tf::Graph class

class to create a graph object

A graph is the ultimate storage for a task dependency graph and is the main gateway to interact with an executor. A graph manages a set of nodes in a global object pool that animates and recycles node objects efficiently without going through repetitive and expensive memory allocations and deallocations. This class is mainly used for creating an opaque graph object in a custom class to interact with the executor through taskflow composition.

A graph object is move-only.

Constructors, destructors, conversion operators

Graph() defaulted
constructs a graph object
Graph(const Graph&) deleted
disabled copy constructor
Graph(Graph&&)
constructs a graph using move semantics
~Graph()
destructs the graph object

Public functions

auto operator=(const Graph&) -> Graph& deleted
disabled copy assignment operator
auto operator=(Graph&&) -> Graph&
assigns a graph using move semantics
auto empty() const -> bool
queries if the graph is empty
auto size() const -> size_t
queries the number of nodes in the graph
void clear()
clears the graph