VOX
A little voxel engine
Loading...
Searching...
No Matches
task::TaskNode Class Reference

#include <Node.hpp>

Collaboration diagram for task::TaskNode:
Collaboration graph

Public Types

enum class  type { NONE , NODE , GRAPH }
 

Public Member Functions

 TaskNode (std::shared_ptr< TaskGraph > graph, std::function< void()> task)
 
 TaskNode (std::shared_ptr< TaskGraph > host_graph, std::shared_ptr< TaskGraph > composed_graph)
 
 ~TaskNode ()
 
 TaskNode (const TaskNode &)=delete
 
TaskNodeoperator= (const TaskNode &)=delete
 
 TaskNode (TaskNode &&)=delete
 
TaskNodeoperator= (TaskNode &&)=delete
 
void addDependent (TaskNode &node)
 
void addSuccessor (TaskNode &node)
 
void removeDependent (TaskNode &node)
 
void removeSucessor (TaskNode &node)
 
void setName (const std::string &name)
 
std::string getName () const
 
type getType () const
 
std::shared_ptr< TaskGraphgetGraph () const
 
std::vector< TaskNode * > & getDependents ()
 
std::vector< TaskNode * > & getSucessors ()
 

Friends

class TaskGraph
 
class task::Executor
 

Member Enumeration Documentation

◆ type

enum class task::TaskNode::type
strong
Enumerator
NONE 
NODE 
GRAPH 

Constructor & Destructor Documentation

◆ TaskNode() [1/4]

task::TaskNode::TaskNode ( std::shared_ptr< TaskGraph graph,
std::function< void()>  task 
)
inline

◆ TaskNode() [2/4]

task::TaskNode::TaskNode ( std::shared_ptr< TaskGraph host_graph,
std::shared_ptr< TaskGraph composed_graph 
)
inline

◆ ~TaskNode()

task::TaskNode::~TaskNode ( )
inline

◆ TaskNode() [3/4]

task::TaskNode::TaskNode ( const TaskNode )
delete

◆ TaskNode() [4/4]

task::TaskNode::TaskNode ( TaskNode &&  )
delete

Member Function Documentation

◆ addDependent()

void task::TaskNode::addDependent ( TaskNode node)
inline

◆ addSuccessor()

void task::TaskNode::addSuccessor ( TaskNode node)
inline

◆ getDependents()

std::vector< TaskNode * > & task::TaskNode::getDependents ( )
inline

◆ getGraph()

std::shared_ptr< TaskGraph > task::TaskNode::getGraph ( ) const
inline

◆ getName()

std::string task::TaskNode::getName ( ) const
inline

◆ getSucessors()

std::vector< TaskNode * > & task::TaskNode::getSucessors ( )
inline

◆ getType()

type task::TaskNode::getType ( ) const
inline

◆ operator=() [1/2]

TaskNode & task::TaskNode::operator= ( const TaskNode )
delete

◆ operator=() [2/2]

TaskNode & task::TaskNode::operator= ( TaskNode &&  )
delete

◆ removeDependent()

void task::TaskNode::removeDependent ( TaskNode node)
inline

◆ removeSucessor()

void task::TaskNode::removeSucessor ( TaskNode node)
inline

◆ setName()

void task::TaskNode::setName ( const std::string &  name)
inline

Friends And Related Function Documentation

◆ task::Executor

friend class task::Executor
friend

◆ TaskGraph

friend class TaskGraph
friend

The documentation for this class was generated from the following file: