Singleton class managing a computational graph. More...
#include <computational_graph_manager.h>
Public Member Functions | |
virtual | ~ComputationalGraphManager () |
ComputationalGraphManager (const ComputationalGraphManager &)=delete | |
ComputationalGraphManager (ComputationalGraphManager &&)=delete | |
ComputationalGraphManager & | operator= (const ComputationalGraphManager &)=delete |
ComputationalGraphManager & | operator= (ComputationalGraphManager &&)=delete |
void | registerNode (std::shared_ptr< ComputationalNode > &obj) |
Register a node in the graph. More... | |
ComputationalNode * | getNode (const std::string &id) |
Retrieve a node from the graph as a pointer. More... | |
template<class T_IN , class T_OUT > | |
void | registerEdge (OutputPort< T_IN > *source, InputPort< T_IN, T_OUT > *target) |
Connects an InputPort to an Output port and registers an edge in the graph between their parent nodes. More... | |
void | compute () |
Executes ComputationalGraph. More... | |
void | configure () |
Configure ComputationalGraph. More... | |
void | graphLoadComplete () |
Function to be called externally after all nodes has been added to the graph. More... | |
void | clear () |
Resets ComputationalGraphManager. More... | |
void | setExecMode (ComputationalGraph::ExecMode mode) |
ComputationalGraph::ExecMode | getExecMode () |
Static Public Member Functions | |
static ComputationalGraphManager & | getInstance () |
Get singleton instance of ComputationalGraphManager. More... | |
static ComputationalGraphManager & | resetInstance () |
Reset singleton instance. More... | |
Singleton class managing a computational graph.
ComputationalGraph is only concerned about the graph structure and node execution policies while ComputationalGraphManager remains responsible for managing the registration of nodes and edges, establishing the actual connections between ports. It owns a ComputationalGraph and all its nodes.
|
virtual |
|
delete |
|
delete |
|
inline |
Resets ComputationalGraphManager.
|
inline |
Executes ComputationalGraph.
|
inline |
Configure ComputationalGraph.
|
inline |
|
static |
Get singleton instance of ComputationalGraphManager.
|
inline |
Retrieve a node from the graph as a pointer.
|
inline |
Function to be called externally after all nodes has been added to the graph.
|
delete |
|
delete |
|
inline |
Connects an InputPort to an Output port and registers an edge in the graph between their parent nodes.
|
inline |
Register a node in the graph.
If the node is of type 'Functional', an attempt to register a node with an 'id' already existing is considered an error and an exception is thrown. If the type is different to 'Functional' the new node is not registered and the reference obj is shifted to the existing node with the same 'id'
|
static |
Reset singleton instance.
|
inline |