Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
#include <flow_graph.h>
Public Types | |
typedef untyped_sender | predecessor_type |
The predecessor type for this node. More... | |
Public Member Functions | |
virtual | ~untyped_receiver () |
Destructor. More... | |
template<typename X > | |
bool | try_put (const X &t) |
Put an item to the receiver. More... | |
virtual bool | register_predecessor (predecessor_type &) |
Add a predecessor to the node. More... | |
virtual bool | remove_predecessor (predecessor_type &) |
Remove a predecessor from the node. More... | |
Protected Member Functions | |
template<typename X > | |
task * | try_put_task (const X &t) |
virtual task * | try_put_task_wrapper (const void *p, bool is_async)=0 |
virtual graph & | graph_reference () const =0 |
virtual void | reset_receiver (reset_flags f=rf_reset_protocol)=0 |
put receiver back in initial state More... | |
virtual bool | is_continue_receiver () |
Friends | |
template<typename , typename > | |
class | run_and_put_task |
template<typename , typename > | |
class | internal::broadcast_cache |
template<typename , typename > | |
class | internal::round_robin_cache |
template<typename , typename > | |
class | internal::successor_cache |
template<typename , typename > | |
class | proxy_dependency_receiver |
Definition at line 350 of file flow_graph.h.
The predecessor type for this node.
Definition at line 362 of file flow_graph.h.
|
inlinevirtual |
|
protectedpure virtual |
Implemented in tbb::flow::interface11::overwrite_node< T >, tbb::flow::interface11::limiter_node< T, DecrementType >, tbb::flow::interface11::buffer_node< T, A >, tbb::flow::interface11::broadcast_node< T >, tbb::flow::interface11::split_node< TupleType, Allocator >, internal::function_input_base< Input, Policy, A, ImplType >, internal::function_input_base< Input, Policy, A, function_input< Input, Output, Policy, A > >, internal::function_input_base< Input, Policy, Allocator, function_input< Input, Output, Policy, Allocator > >, internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< tuple< Output > >::value, internal::multifunction_output, tuple< Output > >::type, Policy, Allocator > >, internal::function_input_base< Input, Policy, A, multifunction_input< Input, OutputPortSet, Policy, A > >, and internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< Output >::value, internal::multifunction_output, Output >::type, Policy, Allocator > >.
Referenced by try_put(), and tbb::flow::interface11::internal::async_helpers< Output >::try_put_task_wrapper_impl().
|
inlineprotectedvirtual |
Reimplemented in tbb::flow::interface11::continue_receiver.
Definition at line 410 of file flow_graph.h.
|
inlinevirtual |
Add a predecessor to the node.
Reimplemented in tbb::flow::interface11::limiter_node< T, DecrementType >, internal::function_input_base< Input, Policy, A, ImplType >, internal::function_input_base< Input, Policy, A, function_input< Input, Output, Policy, A > >, internal::function_input_base< Input, Policy, Allocator, function_input< Input, Output, Policy, Allocator > >, internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< tuple< Output > >::value, internal::multifunction_output, tuple< Output > >::type, Policy, Allocator > >, internal::function_input_base< Input, Policy, A, multifunction_input< Input, OutputPortSet, Policy, A > >, internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< Output >::value, internal::multifunction_output, Output >::type, Policy, Allocator > >, and tbb::flow::interface11::continue_receiver.
Definition at line 381 of file flow_graph.h.
|
inlinevirtual |
Remove a predecessor from the node.
Reimplemented in tbb::flow::interface11::limiter_node< T, DecrementType >, internal::function_input_base< Input, Policy, A, ImplType >, internal::function_input_base< Input, Policy, A, function_input< Input, Output, Policy, A > >, internal::function_input_base< Input, Policy, Allocator, function_input< Input, Output, Policy, Allocator > >, internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< tuple< Output > >::value, internal::multifunction_output, tuple< Output > >::type, Policy, Allocator > >, internal::function_input_base< Input, Policy, A, multifunction_input< Input, OutputPortSet, Policy, A > >, internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< Output >::value, internal::multifunction_output, Output >::type, Policy, Allocator > >, and tbb::flow::interface11::continue_receiver.
Definition at line 384 of file flow_graph.h.
|
protectedpure virtual |
put receiver back in initial state
Implemented in tbb::flow::interface11::overwrite_node< T >, tbb::flow::interface11::limiter_node< T, DecrementType >, tbb::flow::interface11::buffer_node< T, A >, tbb::flow::interface11::broadcast_node< T >, tbb::flow::interface11::split_node< TupleType, Allocator >, and tbb::flow::interface11::continue_receiver.
|
inline |
Put an item to the receiver.
Definition at line 369 of file flow_graph.h.
References graph_reference(), tbb::flow::interface11::internal::spawn_in_graph_arena(), tbb::flow::internal::SUCCESSFULLY_ENQUEUED, and try_put_task().
Referenced by tbb::flow::interface11::receiver< input_type >::try_put().
|
inlineprotected |
Definition at line 397 of file flow_graph.h.
References try_put_task_wrapper().
Referenced by try_put().
|
protectedpure virtual |
Implemented in tbb::flow::interface11::receiver< T >, tbb::flow::interface11::receiver< continue_msg >, tbb::flow::interface11::receiver< TupleType >, tbb::flow::interface11::receiver< Input >, and tbb::flow::interface11::receiver< input_type >.
Referenced by try_put_task().
|
friend |
Definition at line 353 of file flow_graph.h.
|
friend |
Definition at line 354 of file flow_graph.h.
|
friend |
Definition at line 355 of file flow_graph.h.
|
friend |
Definition at line 358 of file flow_graph.h.
|
friend |
Definition at line 351 of file flow_graph.h.