tf::syclTask class

handle to a node of the internal CUDA graph

Constructors, destructors, conversion operators

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

Public functions

auto operator=(const syclTask&) -> syclTask& defaulted
copy-assigns a syclTask
template<typename... Ts>
auto precede(Ts && ... tasks) -> syclTask&
adds precedence links from this to other tasks
template<typename... Ts>
auto succeed(Ts && ... tasks) -> syclTask&
adds precedence links from other tasks to this
auto name(const std::string& name) -> syclTask&
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 syclNode
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&, const syclTask&) -> std::ostream&
overload of ostream inserter operator for syclTask

Function documentation

template<typename... Ts>
syclTask& tf::syclTask::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>
syclTask& tf::syclTask::succeed(Ts && ... tasks)

adds precedence links from other tasks to this

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

syclTask& tf::syclTask::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::syclTask::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