![]() |
HTGS
v2.0
The Hybrid Task Graph Scheduler
|
Public Member Functions | |
GraphEdge (std::shared_ptr< Connector< T >> graphConnector) | |
std::shared_ptr< Connector< T > > | getGraphConnector () |
void | setConnector (std::shared_ptr< Connector< T >> connector) |
virtual GraphEdge< T > * | copy (AnyTaskGraphConf *graph)=0 |
Creates a copy of the edge descriptor to be added to other graphs, such as those within execution pipelines. More... | |
virtual void | updateEdge (std::shared_ptr< Connector< T >> newConnector, AnyTaskGraphConf *graph)=0 |
virtual AnyTaskManager * | getTaskManager (AnyTaskGraphConf *graph)=0 |
![]() | |
virtual | ~EdgeDescriptor () |
Destructor. | |
virtual void | applyEdge (AnyTaskGraphConf *graph)=0 |
Applies an edge to a task graph. More... | |
Private Attributes | |
std::shared_ptr< Connector< T > > | graphConnector |
|
pure virtual |
Creates a copy of the edge descriptor to be added to other graphs, such as those within execution pipelines.
The edge descriptor typically has ITasks that are added to a TaskManager, which is then added to the task graph. The copy function is used to copy the ITasks and any other meta data that is needed for applying the edge. The implementation should use the AnyTaskGraphConf::getCopy function to get copies of the ITask.
graph | the graph you are getting ITask copies from. |
Implements htgs::EdgeDescriptor.
Implemented in htgs::GraphRuleProducerEdge< T, U >, htgs::GraphTaskConsumerEdge< T, U >, and htgs::GraphTaskProducerEdge< T, U >.