tf::cudaTask class

class to create a task handle over an internal node of a cudaFlow graph

Constructors, destructors, conversion operators

cudaTask() defaulted
constructs an empty cudaTask
cudaTask(const cudaTask&) defaulted
copy-constructs a cudaTask

Public functions

auto operator=(const cudaTask&) -> cudaTask& defaulted
copy-assigns a cudaTask
template<typename... Ts>
auto precede(Ts && ... tasks) -> cudaTask&
adds precedence links from this to other tasks
template<typename... Ts>
auto succeed(Ts && ... tasks) -> cudaTask&
adds precedence links from other tasks to this
auto name(const std::string& name) -> cudaTask&
assigns a name to the task
auto name() const -> const std::string&
queries the name of the task
auto num_successors() const -> size_t
queries the number of successors
auto num_dependents() const -> size_t
queries the number of dependents
auto empty() const -> bool
queries if the task is associated with a cudaFlowNode
auto type() const -> cudaTaskType
queries the task type
template<typename T>
void dump(T& ostream) const
dumps the task through an output stream
template<typename V>
void for_each_successor(V&& visitor) const
applies an visitor callable to each successor of the task
template<typename V>
void for_each_dependent(V&& visitor) const
applies an visitor callable to each dependents of the task

Friends

auto operator<<(std::ostream& os, const cudaTask& ct) -> std::ostream&
overload of ostream inserter operator for cudaTask

Function documentation

template<typename... Ts>
cudaTask& tf::cudaTask::precede(Ts && ... tasks)

adds precedence links from this to other tasks

Template parameters
Ts parameter pack
Parameters
tasks one or multiple tasks
Returns *this

template<typename... Ts>
cudaTask& tf::cudaTask::succeed(Ts && ... tasks)

adds precedence links from other tasks to this

Template parameters
Ts parameter pack
Parameters
tasks one or multiple tasks
Returns *this

cudaTask& tf::cudaTask::name(const std::string& name)

assigns a name to the task

Parameters
name a std::string acceptable string
Returns *this

template<typename T>
void tf::cudaTask::dump(T& ostream) const

dumps the task through an output stream

Template parameters
T output stream type with insertion operator (<<) defined
Parameters
ostream an output stream target