EnTT 3.13.0
|
Utility class for creating task graphs. More...
#include <flow.hpp>
Public Types | |
using | allocator_type = Allocator |
Allocator type. | |
using | size_type = std::size_t |
Unsigned integer type. | |
using | iterable = iterable_adaptor< typename task_container_type::const_iterator > |
Iterable task list. | |
using | graph_type = adjacency_matrix_type |
Adjacency matrix type. | |
Public Member Functions | |
basic_flow () | |
Default constructor. | |
basic_flow (const allocator_type &allocator) | |
Constructs a flow builder with a given allocator. | |
basic_flow (const basic_flow &)=default | |
Default copy constructor. | |
basic_flow (const basic_flow &other, const allocator_type &allocator) | |
Allocator-extended copy constructor. | |
basic_flow (basic_flow &&) noexcept=default | |
Default move constructor. | |
basic_flow (basic_flow &&other, const allocator_type &allocator) | |
Allocator-extended move constructor. | |
basic_flow & | operator= (const basic_flow &)=default |
Default copy assignment operator. | |
basic_flow & | operator= (basic_flow &&) noexcept=default |
Default move assignment operator. | |
constexpr allocator_type | get_allocator () const noexcept |
Returns the associated allocator. | |
id_type | operator[] (const size_type pos) const |
Returns the identifier at specified location. | |
void | clear () noexcept |
Clears the flow builder. | |
void | swap (basic_flow &other) |
Exchanges the contents with those of a given flow builder. | |
size_type | size () const noexcept |
Returns the number of tasks. | |
basic_flow & | bind (const id_type value) |
Binds a task to a flow builder. | |
basic_flow & | sync () |
Turns the current task into a sync point. | |
basic_flow & | set (const id_type res, bool is_rw=false) |
Assigns a resource to the current task with a given access mode. | |
basic_flow & | ro (const id_type res) |
Assigns a read-only resource to the current task. | |
template<typename It > | |
std::enable_if_t< std::is_same_v< std::remove_const_t< typename std::iterator_traits< It >::value_type >, id_type >, basic_flow & > | ro (It first, It last) |
Assigns a range of read-only resources to the current task. | |
basic_flow & | rw (const id_type res) |
Assigns a writable resource to the current task. | |
template<typename It > | |
std::enable_if_t< std::is_same_v< std::remove_const_t< typename std::iterator_traits< It >::value_type >, id_type >, basic_flow & > | rw (It first, It last) |
Assigns a range of writable resources to the current task. | |
graph_type | graph () const |
Generates a task graph for the current content. | |
Utility class for creating task graphs.
Allocator | Type of allocator used to manage memory and elements. |
using entt::basic_flow< Allocator >::allocator_type = Allocator |
using entt::basic_flow< Allocator >::graph_type = adjacency_matrix_type |
using entt::basic_flow< Allocator >::iterable = iterable_adaptor<typename task_container_type::const_iterator> |
using entt::basic_flow< Allocator >::size_type = std::size_t |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlineconstexprnoexcept |
|
inline |
|
defaultnoexcept |
Default move assignment operator.
|
default |
Default copy assignment operator.
|
inline |
|
inline |
|
inline |
Assigns a range of read-only resources to the current task.
It | Type of input iterator. |
first | An iterator to the first element of the range of elements. |
last | An iterator past the last element of the range of elements. |
|
inline |
|
inline |
Assigns a range of writable resources to the current task.
It | Type of input iterator. |
first | An iterator to the first element of the range of elements. |
last | An iterator past the last element of the range of elements. |
|
inline |
|
inlinenoexcept |
|
inline |
|
inline |