Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
flow_graph.h File Reference

The graph related classes and functions. More...

Include dependency graph for flow_graph.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tbb::flow::interface11::null_type
 A generic null type. More...
 
class  tbb::flow::interface11::continue_msg
 An empty class used for messages that mean "I'm done". More...
 
class  tbb::flow::interface11::sender< T >
 Forward declaration section. More...
 
class  tbb::flow::interface11::receiver< T >
 Pure virtual template class that defines a receiver of messages of type T. More...
 
class  tbb::flow::interface11::limiter_node< T, DecrementType >
 Forwards messages only if the threshold has not been reached. More...
 
class  tbb::flow::interface11::run_and_put_task< R, B >
 
class  tbb::flow::interface11::internal::successor_cache< T, M >
 An abstract cache of successors. More...
 
class  tbb::flow::interface11::internal::broadcast_cache< T, M >
 A cache of successors that are broadcast to. More...
 
class  tbb::flow::interface11::internal::round_robin_cache< T, M >
 A cache of successors that are put in a round-robin fashion. More...
 
class  tbb::flow::interface11::internal::predecessor_cache< T, M >
 A cache of predecessors that only supports try_get. More...
 
class  tbb::flow::interface11::internal::reservable_predecessor_cache< T, M >
 An cache of predecessors that supports requests and reservations. More...
 
class  tbb::flow::interface11::internal::async_storage< T >
 
struct  tbb::flow::interface11::internal::async_helpers< T, typename >
 
struct  tbb::flow::interface11::internal::async_helpers< T, typename std::enable_if< std::is_base_of< async_msg< typename T::async_msg_data_type >, T >::value >::type >
 
class  tbb::flow::interface11::internal::untyped_sender
 
class  tbb::flow::interface11::internal::untyped_receiver
 
class  tbb::flow::interface11::sender< T >
 Forward declaration section. More...
 
class  tbb::flow::interface11::receiver< T >
 Pure virtual template class that defines a receiver of messages of type T. More...
 
class  tbb::flow::interface11::continue_receiver
 Base class for receivers of completion messages. More...
 
struct  tbb::flow::interface11::internal::Policy< Policies >
 
struct  tbb::flow::interface11::internal::has_policy< Policies >
 
struct  tbb::flow::interface11::internal::has_policy< ExpectedPolicy, FirstPolicy, Policies... >
 
struct  tbb::flow::interface11::internal::has_policy< ExpectedPolicy, SinglePolicy >
 
struct  tbb::flow::interface11::internal::has_policy< ExpectedPolicy, Policy< Policies... > >
 
struct  tbb::flow::interface11::internal::graph_policy_namespace::rejecting
 
struct  tbb::flow::interface11::internal::graph_policy_namespace::reserving
 
struct  tbb::flow::interface11::internal::graph_policy_namespace::queueing
 
struct  tbb::flow::interface11::internal::graph_policy_namespace::lightweight
 
struct  tbb::flow::interface11::internal::graph_policy_namespace::key_matching< K, KHash >
 field of type K being used for matching. More...
 
class  tbb::flow::interface11::internal::input_body< Output >
 A functor that takes no input and generates a value of type Output. More...
 
class  tbb::flow::interface11::internal::input_body_leaf< Output, Body >
 The leaf for input_body. More...
 
class  tbb::flow::interface11::internal::source_body< Output >
 
class  tbb::flow::interface11::internal::source_body_leaf< Output, Body >
 The leaf for source_body. More...
 
class  tbb::flow::interface11::internal::function_body< Input, Output >
 A functor that takes an Input and generates an Output. More...
 
class  tbb::flow::interface11::internal::function_body_leaf< Input, Output, B >
 the leaf for function_body More...
 
class  tbb::flow::interface11::internal::function_body_leaf< continue_msg, continue_msg, B >
 the leaf for function_body specialized for Input and output of continue_msg More...
 
class  tbb::flow::interface11::internal::function_body_leaf< Input, continue_msg, B >
 the leaf for function_body specialized for Output of continue_msg More...
 
class  tbb::flow::interface11::internal::function_body_leaf< continue_msg, Output, B >
 the leaf for function_body specialized for Input of continue_msg More...
 
class  tbb::flow::interface11::internal::multifunction_body< Input, OutputSet >
 function_body that takes an Input and a set of output ports More...
 
class  tbb::flow::interface11::internal::multifunction_body_leaf< Input, OutputSet, B >
 leaf for multifunction. OutputSet can be a std::tuple or a vector. More...
 
class  tbb::flow::interface11::internal::type_to_key_function_body< Input, Output >
 
class  tbb::flow::interface11::internal::type_to_key_function_body< Input, Output & >
 
class  tbb::flow::interface11::internal::type_to_key_function_body_leaf< Input, Output, B >
 
class  tbb::flow::interface11::internal::type_to_key_function_body_leaf< Input, Output &, B >
 
class  tbb::flow::interface11::internal::forward_task_bypass< NodeType >
 A task that calls a node's forward_task function. More...
 
class  tbb::flow::interface11::internal::apply_body_task_bypass< NodeType, Input >
 A task that calls a node's apply_body_bypass function, passing in an input of type Input. More...
 
class  tbb::flow::interface11::internal::source_task_bypass< NodeType >
 A task that calls a node's apply_body_bypass function with no input. More...
 
struct  tbb::flow::interface11::internal::empty_body< Input, Output >
 An empty functor that takes an Input and returns a default constructed Output. More...
 
class  tbb::flow::interface11::internal::decrementer< T, DecrementType, DummyType >
 
class  tbb::flow::interface11::internal::decrementer< T, DecrementType, typename tbb::internal::enable_if< tbb::internal::is_integral< DecrementType >::value, void >::type >
 
class  tbb::flow::interface11::internal::decrementer< T, continue_msg, void >
 
class  tbb::flow::interface11::internal::node_cache< T, M >
 A node_cache maintains a std::queue of elements of type T. Each operation is protected by a lock. More...
 
class  tbb::flow::interface11::internal::predecessor_cache< T, M >
 A cache of predecessors that only supports try_get. More...
 
class  tbb::flow::interface11::internal::reservable_predecessor_cache< T, M >
 An cache of predecessors that supports requests and reservations. More...
 
class  tbb::flow::interface11::internal::successor_cache< T, M >
 An abstract cache of successors. More...
 
class  tbb::flow::interface11::internal::successor_cache< continue_msg, M >
 An abstract cache of successors, specialized to continue_msg. More...
 
class  tbb::flow::interface11::internal::broadcast_cache< T, M >
 A cache of successors that are broadcast to. More...
 
class  tbb::flow::interface11::internal::round_robin_cache< T, M >
 A cache of successors that are put in a round-robin fashion. More...
 
struct  tbb::flow::interface11::internal::KeyTrait< Kp, KHashp, Tp >
 
struct  tbb::flow::interface11::internal::wrap_tuple_elements< N, PT, TypeTuple >
 
struct  tbb::flow::interface11::internal::wrap_key_tuple_elements< N, PT, KeyTraits, TypeTuple >
 
struct  tbb::flow::interface11::internal::wrap_tuple_elements< N, PT, tbb::flow::tuple< Args... > >
 
struct  tbb::flow::interface11::internal::wrap_key_tuple_elements< N, PT, KeyTraits, tbb::flow::tuple< Args... > >
 
class  tbb::flow::interface11::internal::sequence< S >
 
struct  tbb::flow::interface11::internal::make_sequence< N, S >
 
struct  tbb::flow::interface11::internal::make_sequence< 0, S... >
 
class  tbb::flow::interface11::internal::initializer_list_wrapper< T >
 
struct  tbb::flow::interface11::internal::type_plus_align< T1, T2, REM >
 type mimicking std::pair but with trailing fill to ensure each element of an array More...
 
struct  tbb::flow::interface11::internal::type_plus_align< T1, T2, 0 >
 
struct  tbb::flow::interface11::internal::alignment_of< U >
 
struct  tbb::flow::interface11::internal::alignment_of< U >::test_alignment
 
struct  tbb::flow::interface11::internal::aligned_pair< T1, T2 >
 
struct  tbb::flow::interface11::internal::default_constructed
 
struct  tbb::flow::interface11::internal::WrapperBase
 
struct  tbb::flow::interface11::internal::Wrapper< T >
 
struct  tbb::flow::interface11::internal::Wrapper< T >::_unwind_space
 
struct  tbb::flow::interface11::internal::Wrapper< T[N]>
 
struct  tbb::flow::interface11::internal::Wrapper< T[N]>::_unwind_class
 
struct  tbb::flow::interface11::internal::pick_one< bool, T1, T2 >
 
struct  tbb::flow::interface11::internal::pick_one< true, T1, T2 >
 
struct  tbb::flow::interface11::internal::pick_one< false, T1, T2 >
 
struct  tbb::flow::interface11::internal::pick_max< Selector, T1, T2 >
 
struct  tbb::flow::interface11::internal::size_of< T >
 
struct  tbb::flow::interface11::internal::pick_tuple_max< N, Tuple, Selector >
 
struct  tbb::flow::interface11::internal::pick_tuple_max< 0, Tuple, Selector >
 
struct  tbb::flow::interface11::internal::is_element_of< Q, N, Tuple >
 
struct  tbb::flow::interface11::internal::is_element_of< Q, 0, Tuple >
 
struct  tbb::flow::interface11::internal::ERROR_Type_Not_allowed_In_Tagged_Msg_Not_Member_Of_Tuple< T >
 
struct  tbb::flow::interface11::internal::do_if< T, BUILD_IT >
 
struct  tbb::flow::interface11::internal::do_if< T, true >
 
struct  tbb::flow::interface11::internal::do_if< T, false >
 
struct  tbb::flow::interface11::internal::tagged_null_type
 
class  tbb::flow::interface11::internal::tagged_msg< TagType, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9 >
 
class  tbb::flow::interface11::internal::tagged_msg< TagType, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::variant
 
class  tbb::flow::interface11::internal::async_storage< T >
 
class  tbb::flow::interface11::async_msg< T >
 
class  tbb::flow::interface11::internal::item_buffer< T, A >
 
class  tbb::flow::interface11::internal::reservable_item_buffer< T, A >
 item_buffer with reservable front-end. NOTE: if reserving, do not More...
 
class  tbb::flow::interface11::internal::function_input_queue< T, A >
 
class  tbb::flow::interface11::internal::function_input_base< Input, Policy, A, ImplType >
 Input and scheduling for a function node that takes a type Input as input. More...
 
class  tbb::flow::interface11::internal::function_input_base< Input, Policy, A, ImplType >::operation_type
 
class  tbb::flow::interface11::internal::function_input< Input, Output, Policy, A >
 Implements methods for a function node that takes a type Input as input and sends. More...
 
struct  tbb::flow::interface11::internal::clear_element< N >
 
struct  tbb::flow::interface11::internal::clear_element< 1 >
 
struct  tbb::flow::interface11::internal::init_output_ports< OutputTuple >
 
class  tbb::flow::interface11::internal::multifunction_input< Input, OutputPortSet, Policy, A >
 Implements methods for a function node that takes a type Input as input. More...
 
struct  tbb::flow::interface11::internal::emit_element< N >
 
struct  tbb::flow::interface11::internal::emit_element< 1 >
 
class  tbb::flow::interface11::internal::continue_input< Output, Policy >
 Implements methods for an executable node that takes continue_msg as input. More...
 
class  tbb::flow::interface11::internal::function_output< Output >
 Implements methods for both executable and function nodes that puts Output to its successors. More...
 
class  tbb::flow::interface11::internal::multifunction_output< Output >
 
class  tbb::flow::interface11::input_node< Output >
 An executable node that acts as a source, i.e. it has no predecessors. More...
 
class  tbb::flow::interface11::source_node< Output >
 An executable node that acts as a source, i.e. it has no predecessors. More...
 
class  tbb::flow::interface11::function_node< Input, Output, Policy, Allocator >
 Implements a function node that supports Input -> Output. More...
 
class  tbb::flow::interface11::multifunction_node< Input, Output, Policy, Allocator >
 implements a function node that supports Input -> (set of outputs) More...
 
class  tbb::flow::interface11::split_node< TupleType, Allocator >
 split_node: accepts a tuple as input, forwards each element of the tuple to its More...
 
class  tbb::flow::interface11::continue_node< Output, Policy >
 Implements an executable node that supports continue_msg -> Output. More...
 
class  tbb::flow::interface11::broadcast_node< T >
 Forwards messages of type T to all successors. More...
 
class  tbb::flow::interface11::buffer_node< T, Allocator >
 Forwards messages in arbitrary order. More...
 
class  tbb::flow::interface11::buffer_node< T, Allocator >::buffer_operation
 
class  tbb::flow::interface11::queue_node< T, Allocator >
 Forwards messages in FIFO order. More...
 
class  tbb::flow::interface11::sequencer_node< T, Allocator >
 Forwards messages in sequence order. More...
 
class  tbb::flow::interface11::priority_queue_node< T, Compare, Allocator >
 Forwards messages in priority order. More...
 
class  tbb::flow::interface11::limiter_node< T, DecrementType >
 Forwards messages only if the threshold has not been reached. More...
 
struct  tbb::flow::interface11::internal::forwarding_base
 
struct  tbb::flow::interface11::internal::matching_forwarding_base< KeyType >
 
struct  tbb::flow::interface11::internal::join_helper< N >
 
struct  tbb::flow::interface11::internal::join_helper< 1 >
 
class  tbb::flow::interface11::internal::reserving_port< T >
 The two-phase join port. More...
 
class  tbb::flow::interface11::internal::reserving_port< T >::reserving_port_operation
 
class  tbb::flow::interface11::internal::queueing_port< T >
 queueing join_port More...
 
class  tbb::flow::interface11::internal::queueing_port< T >::queueing_port_operation
 
struct  tbb::flow::interface11::internal::buffer_element_type< ValueType >
 
class  tbb::flow::interface11::internal::hash_buffer< Key, ValueType, ValueToKey, HashCompare, Allocator >
 
struct  tbb::flow::interface11::internal::hash_buffer< Key, ValueType, ValueToKey, HashCompare, Allocator >::DoCleanup
 
struct  tbb::flow::interface11::internal::count_element< K >
 
struct  tbb::flow::interface11::internal::key_to_count_functor< K >
 
class  tbb::flow::interface11::internal::key_matching_port< TraitsType >
 
class  tbb::flow::interface11::internal::key_matching_port< TraitsType >::key_matching_port_operation
 
class  tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >
 join_node_base More...
 
class  tbb::flow::interface11::internal::join_node_FE< JP, InputTuple, OutputTuple >
 join_node_FE : implements input port policy More...
 
class  tbb::flow::interface11::internal::join_node_FE< reserving, InputTuple, OutputTuple >
 
class  tbb::flow::interface11::internal::join_node_FE< queueing, InputTuple, OutputTuple >
 
class  tbb::flow::interface11::internal::join_node_FE< key_matching< K, KHash >, InputTuple, OutputTuple >
 
class  tbb::flow::interface11::internal::join_node_FE< key_matching< K, KHash >, InputTuple, OutputTuple >::key_matching_FE_operation
 
class  tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >
 join_node_base More...
 
class  tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >::join_node_base_operation
 
struct  tbb::flow::interface11::internal::join_base< N, PT, OutputTuple, JP >
 
struct  tbb::flow::interface11::internal::join_base< N, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< N, PT, OutputTuple, JP >
 unfolded_join_node : passes input_ports_type to join_node_base. We build the input port type More...
 
struct  tbb::flow::interface11::internal::key_from_message_body< K, T >
 
struct  tbb::flow::interface11::internal::key_from_message_body< K &, T >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 2, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 3, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 4, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 5, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 6, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 7, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 9, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::internal::unfolded_join_node< 10, key_matching_port, OutputTuple, key_matching< K, KHash > >
 
class  tbb::flow::interface11::join_node< OutputTuple, JP >
 
class  tbb::flow::interface11::join_node< OutputTuple, reserving >
 
class  tbb::flow::interface11::join_node< OutputTuple, queueing >
 
class  tbb::flow::interface11::join_node< OutputTuple, key_matching< K, KHash > >
 
struct  tbb::flow::interface11::internal::indexer_helper< TupleTypes, N >
 
struct  tbb::flow::interface11::internal::indexer_helper< TupleTypes, 1 >
 
class  tbb::flow::interface11::internal::indexer_input_port< T >
 
class  tbb::flow::interface11::internal::indexer_node_FE< InputTuple, OutputType, StructTypes >
 
class  tbb::flow::interface11::internal::indexer_node_base< InputTuple, OutputType, StructTypes >
 indexer_node_base More...
 
class  tbb::flow::interface11::internal::indexer_node_base< InputTuple, OutputType, StructTypes >::indexer_node_base_operation
 
struct  tbb::flow::interface11::internal::input_types< N, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 1, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 2, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 3, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 4, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 5, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 6, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 7, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 8, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 9, InputTuple >
 
struct  tbb::flow::interface11::internal::input_types< 10, InputTuple >
 
struct  tbb::flow::interface11::internal::indexer_types< OutputTuple >
 
class  tbb::flow::interface11::internal::unfolded_indexer_node< OutputTuple >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9 >
 
class  tbb::flow::interface11::indexer_node< T0 >
 
class  tbb::flow::interface11::indexer_node< T0, T1 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4, T5 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4, T5, T6 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4, T5, T6, T7 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4, T5, T6, T7, T8 >
 
class  tbb::flow::interface11::indexer_node< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9 >
 
class  tbb::flow::interface11::composite_node< InputTuple, OutputTuple >
 
class  tbb::flow::interface11::composite_node< tbb::flow::tuple< InputTypes... >, tbb::flow::tuple< OutputTypes... > >
 
class  tbb::flow::interface11::composite_node< tbb::flow::tuple< InputTypes... >, tbb::flow::tuple<> >
 
class  tbb::flow::interface11::composite_node< tbb::flow::tuple<>, tbb::flow::tuple< OutputTypes... > >
 
class  tbb::flow::interface11::internal::async_body_base< Gateway >
 
class  tbb::flow::interface11::internal::async_body< Input, Ports, Gateway, Body >
 
class  tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >
 Implements async node. More...
 
struct  tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::try_put_functor
 
class  tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl
 
struct  tbb::flow::interface11::internal::port_ref_impl< N1, N2 >
 
struct  tbb::flow::interface11::internal::num_arguments< T >
 
struct  tbb::flow::interface11::internal::num_arguments< port_ref_impl< N1, N2 >(*)()>
 
struct  tbb::flow::interface11::internal::num_arguments< port_ref_impl< N1, N2 > >
 
struct  tbb::flow::interface11::internal::key_from_policy< JP >
 
struct  tbb::flow::interface11::internal::key_from_policy< key_matching< Key > >
 
struct  tbb::flow::interface11::internal::key_from_policy< key_matching< Key & > >
 
class  tbb::flow::interface11::internal::streaming_device_with_key< Device, Key >
 
struct  tbb::flow::interface11::internal::is_port_ref_impl< T >
 
struct  tbb::flow::interface11::internal::is_port_ref_impl< port_ref_impl< N1, N2 > >
 
struct  tbb::flow::interface11::internal::is_port_ref_impl< port_ref_impl< N1, N2 >(*)() >
 
struct  tbb::flow::interface11::internal::is_port_ref< T >
 
struct  tbb::flow::interface11::internal::convert_and_call_impl< Args1 >
 
struct  tbb::flow::interface11::internal::convert_and_call_impl< A1, Args1... >
 
struct  tbb::flow::interface11::internal::convert_and_call_impl<>
 
struct  tbb::flow::interface11::internal::streaming_node_traits< JP, StreamFactory, Ports >
 
struct  tbb::flow::interface11::internal::streaming_node_traits< JP, StreamFactory, Ports >::async_msg_type< T >
 
class  tbb::flow::interface11::internal::kernel_executor_helper< StreamFactory, KernelInputTuple, typename >
 
class  tbb::flow::interface11::internal::kernel_executor_helper< StreamFactory, KernelInputTuple, typename tbb::internal::void_t< typename StreamFactory::range_type >::type >
 
struct  tbb::flow::interface11::internal::kernel_executor_helper< StreamFactory, KernelInputTuple, typename tbb::internal::void_t< typename StreamFactory::range_type >::type >::range_wrapper
 
struct  tbb::flow::interface11::internal::kernel_executor_helper< StreamFactory, KernelInputTuple, typename tbb::internal::void_t< typename StreamFactory::range_type >::type >::range_value
 
struct  tbb::flow::interface11::internal::kernel_executor_helper< StreamFactory, KernelInputTuple, typename tbb::internal::void_t< typename StreamFactory::range_type >::type >::range_mapper< N >
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::device_selector_base
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::device_selector< UserFunctor >
 
struct  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::device_selector< UserFunctor >::epoch_desc
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::device_selector_body
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage_base
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage< Args >
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage< Args >::run_kernel_func
 
struct  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage< Args >::run_kernel_func::kernel_func
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage< Args >::run_finalize_func< FinalizeFn >
 
struct  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage< Args >::run_finalize_func< FinalizeFn >::finalize_func
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::args_storage< Args >::send_func
 
class  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::kernel_body
 
struct  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::wrap_to_async< T, U >
 
struct  tbb::flow::interface11::streaming_node< tuple< Ports... >, JP, StreamFactory >::wrap_to_async< T, std::false_type >
 
class  tbb::flow::interface11::overwrite_node< T >
 
struct  tbb::flow::interface11::overwrite_node< T >::register_predecessor_task
 Breaks an infinite loop between the node reservation and register_successor call. More...
 
class  tbb::flow::interface11::write_once_node< T >
 

Namespaces

 tbb
 The graph class.
 
 tbb::flow
 
 tbb::flow::interface11
 
 tbb::flow::interface11::internal
 
 tbb::flow::interface11::internal::graph_policy_namespace
 
 tbb::flow::interface10
 

Macros

#define __TBB_flow_graph_H_include_area
 
#define __TBB_NOINLINE_SYM
 
#define FLOW_SPAWN(a)   tbb::task::spawn((a))
 
#define __TBB_DEFAULT_NODE_ALLOCATOR(T)   null_type
 

Typedefs

typedef tbb::internal::uint64_t tbb::flow::interface11::internal::tag_value
 
typedef key_matching< tag_value > tbb::flow::interface11::internal::graph_policy_namespace::tag_matching
 
typedef interface11::internal::Policy< queueing, lightweighttbb::flow::interface11::internal::graph_policy_namespace::queueing_lightweight
 
typedef interface11::internal::Policy< rejecting, lightweighttbb::flow::interface11::internal::graph_policy_namespace::rejecting_lightweight
 

Enumerations

enum  tbb::flow::concurrency { tbb::flow::unlimited = 0, tbb::flow::serial = 1 }
 An enumeration the provides the two most common concurrency levels: unlimited and serial. More...
 
enum  tbb::flow::interface11::internal::op_stat { tbb::flow::interface11::internal::WAIT = 0, tbb::flow::interface11::internal::SUCCEEDED, tbb::flow::interface11::internal::FAILED }
 

Functions

static tbb::tasktbb::flow::interface11::combine_tasks (graph &g, tbb::task *left, tbb::task *right)
 
template<typename K , typename T >
tbb::flow::key_from_message (const T &t)
 
template<typename Body >
void tbb::flow::interface11::internal::check_input_node_body_input_type_impl (Body)
 
template<typename Body >
void tbb::flow::interface11::internal::check_input_node_body_input_type (Body)
 
template<typename ReturnType , typename T >
void tbb::flow::interface11::internal::check_input_node_body_input_type (ReturnType(*)(T))
 
template<typename V , typename T >
const V & tbb::flow::interface11::internal::cast_to (T const &t)
 
template<typename V , typename T >
bool tbb::flow::interface11::internal::is_a (T const &t)
 
template<size_t N, typename MOP >
tbb::flow::tuple_element< N, typename MOP::output_ports_type >::typetbb::flow::interface11::internal::output_port (MOP &op)
 
void tbb::flow::interface11::internal::check_task_and_spawn (graph &g, task *t)
 
template<typename CompositeType >
void tbb::flow::interface11::internal::add_nodes_impl (CompositeType *, bool)
 
template<typename CompositeType , typename NodeType1 , typename... NodeTypes>
void tbb::flow::interface11::internal::add_nodes_impl (CompositeType *c_node, bool visible, const NodeType1 &n1, const NodeTypes &... n)
 
template<size_t N, typename JNT >
tbb::flow::tuple_element< N, typename JNT::input_ports_type >::typetbb::flow::interface11::internal::input_port (JNT &jn)
 templated function to refer to input ports of the join node More...
 
template<typename IndexerNodeBaseType , typename T , size_t K>
tasktbb::flow::interface11::internal::do_try_put (const T &v, void *p)
 
void tbb::flow::interface11::internal_make_edge (internal::untyped_sender &p, internal::untyped_receiver &s)
 
template<typename T >
void tbb::flow::interface11::make_edge (sender< T > &p, receiver< T > &s)
 Makes an edge between a single predecessor and a single successor. More...
 
template<typename TS , typename TR , typename = typename tbb::internal::enable_if<tbb::internal::is_same_type<TS, internal::untyped_sender>::value || tbb::internal::is_same_type<TR, internal::untyped_receiver>::value>::type>
void tbb::flow::interface11::make_edge (TS &p, TR &s)
 
template<typename T >
void tbb::flow::interface11::make_edge (sender< T > &p, receiver< typename T::async_msg_data_type > &s)
 
template<typename T >
void tbb::flow::interface11::make_edge (sender< typename T::async_msg_data_type > &p, receiver< T > &s)
 
template<typename T , typename V , typename = typename T::output_ports_type, typename = typename V::input_ports_type>
void tbb::flow::interface11::make_edge (T &output, V &input)
 
template<typename T , typename R , typename = typename T::output_ports_type>
void tbb::flow::interface11::make_edge (T &output, receiver< R > &input)
 
template<typename S , typename V , typename = typename V::input_ports_type>
void tbb::flow::interface11::make_edge (sender< S > &output, V &input)
 
void tbb::flow::interface11::internal_remove_edge (internal::untyped_sender &p, internal::untyped_receiver &s)
 
template<typename T >
void tbb::flow::interface11::remove_edge (sender< T > &p, receiver< T > &s)
 Removes an edge between a single predecessor and a single successor. More...
 
template<typename TS , typename TR , typename = typename tbb::internal::enable_if<tbb::internal::is_same_type<TS, internal::untyped_sender>::value || tbb::internal::is_same_type<TR, internal::untyped_receiver>::value>::type>
void tbb::flow::interface11::remove_edge (TS &p, TR &s)
 
template<typename T >
void tbb::flow::interface11::remove_edge (sender< T > &p, receiver< typename T::async_msg_data_type > &s)
 
template<typename T >
void tbb::flow::interface11::remove_edge (sender< typename T::async_msg_data_type > &p, receiver< T > &s)
 
template<typename T , typename V , typename = typename T::output_ports_type, typename = typename V::input_ports_type>
void tbb::flow::interface11::remove_edge (T &output, V &input)
 
template<typename T , typename R , typename = typename T::output_ports_type>
void tbb::flow::interface11::remove_edge (T &output, receiver< R > &input)
 
template<typename S , typename V , typename = typename V::input_ports_type>
void tbb::flow::interface11::remove_edge (sender< S > &output, V &input)
 
template<typename Body , typename Node >
Body tbb::flow::interface11::copy_body (Node &n)
 Returns a copy of the body from a function or continue node. More...
 
template<int N1, int N2 = N1>
__TBB_DEPRECATED internal::port_ref_impl< N1, N2 > tbb::flow::interface11::port_ref ()
 
template<typename... Args>
void tbb::flow::interface11::internal::ignore_return_values (Args &&...)
 
template<typename T >
tbb::flow::interface11::internal::or_return_values (T &&t)
 
template<typename T , typename... Rest>
tbb::flow::interface11::internal::or_return_values (T &&t, Rest &&... rest)
 

Variables

template<typename T >
class __TBB_DEPRECATED tbb::flow::interface11::async_msg
 
template<typename... Args>
class __TBB_DEPRECATED tbb::flow::interface11::streaming_node
 

Detailed Description

The graph related classes and functions.

There are some applications that best express dependencies as messages passed between nodes in a graph. These messages may contain data or simply act as signals that a predecessors has completed. The graph class and its associated node classes can be used to express such applications.

Definition in file flow_graph.h.

Macro Definition Documentation

◆ __TBB_DEFAULT_NODE_ALLOCATOR

#define __TBB_DEFAULT_NODE_ALLOCATOR (   T)    null_type

Definition at line 71 of file flow_graph.h.

◆ __TBB_flow_graph_H_include_area

#define __TBB_flow_graph_H_include_area

Definition at line 20 of file flow_graph.h.

◆ __TBB_NOINLINE_SYM

#define __TBB_NOINLINE_SYM

Definition at line 47 of file flow_graph.h.

◆ FLOW_SPAWN

#define FLOW_SPAWN (   a)    tbb::task::spawn((a))

Definition at line 65 of file flow_graph.h.


Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.