#include <graph.h>
Inherited by dispenso::BiPropNode.
|
| template<class F , class X = std::enable_if_t<!std::is_base_of<Node, F>::value, void>> |
| | Node (F &&f) |
| |
|
| template<class N > |
| class | SubgraphT |
| |
|
template<typename G > |
| void | setAllNodesIncomplete (const G &graph) |
| |
Class to store task with dependencies
- Examples
- graph_example.cpp.
Definition at line 229 of file graph.h.
◆ Node() [1/2]
| dispenso::Node::Node |
( |
Node && | other | ) |
|
|
inlinenoexcept |
Move constructor.
Definition at line 235 of file graph.h.
◆ ~Node()
| dispenso::Node::~Node |
( |
| ) |
|
|
inline |
◆ Node() [2/2]
template<class F , class X = std::enable_if_t<!std::is_base_of<Node, F>::value, void>>
| dispenso::Node::Node |
( |
F && | f | ) |
|
|
inlineprotected |
Construct a Node with a functor.
- Parameters
-
| f | The functor to execute when the node runs. |
Definition at line 330 of file graph.h.
◆ dependsOn()
template<typename... Ns>
| void dispenso::Node::dependsOn |
( |
Ns &... | nodes | ) |
|
|
inline |
Make this node depends on nodes. This is not concurrency safe.
- Parameters
-
| nodes | predecessors of the node |
- Examples
- graph_example.cpp.
Definition at line 255 of file graph.h.
◆ forEachDependent() [1/2]
template<class F >
| void dispenso::Node::forEachDependent |
( |
F && | func | ) |
|
|
inline |
apply an func to each dependent of the node This is not concurrency safe.
- Parameters
-
| func | a functor with signature void(Node&) |
Definition at line 283 of file graph.h.
◆ forEachDependent() [2/2]
template<class F >
| void dispenso::Node::forEachDependent |
( |
F && | func | ) |
const |
|
inline |
apply an func to each dependent of the node
- Parameters
-
| func | a functor with signature void(const Node&) |
Definition at line 272 of file graph.h.
◆ isCompleted()
| bool dispenso::Node::isCompleted |
( |
| ) |
const |
|
inline |
Return true if node is completed. New node always incomplete. If node was invoked it become completed. this state can be changed by calling setIncomplete() Concurrency safe.
Definition at line 300 of file graph.h.
◆ numPredecessors()
| size_t dispenso::Node::numPredecessors |
( |
| ) |
const |
|
inline |
Return the number of nodes this node depends on. Concurrency safe.
Definition at line 291 of file graph.h.
◆ run()
| void dispenso::Node::run |
( |
| ) |
const |
|
inline |
Invoke the type-erased functor. Change competed state of the node to "Incomplete". Concurrency safe.
Definition at line 262 of file graph.h.
◆ setCompleted()
| void dispenso::Node::setCompleted |
( |
| ) |
const |
|
inline |
Mark node completed. Concurrency safe. This methods should never be called concurrent to when the graph execution is happening
Definition at line 323 of file graph.h.
◆ setIncomplete()
| bool dispenso::Node::setIncomplete |
( |
| ) |
const |
|
inline |
Mark node incomplete. (that allows reevaluate this node again). Concurrency safe. This methods should never be called concurrent to when the graph execution is happening
- Returns
- true if state was changed.
- Examples
- graph_example.cpp.
Definition at line 310 of file graph.h.
◆ SubgraphT
The documentation for this class was generated from the following file: