Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > > Class Template Reference

#include <flow_graph.h>

Inheritance diagram for tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >:
Collaboration diagram for tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >:

Public Types

typedef wrap_key_tuple_elements< 8, key_matching_port, key_matching< K, KHash >, OutputTuple >::type input_ports_type
 
typedef OutputTuple output_type
 
- Public Types inherited from tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >
typedef OutputTuple output_type
 
typedef sender< output_type >::successor_type successor_type
 
typedef join_node_FE< JP, InputTuple, OutputTuple > input_ports_type
 
- Public Types inherited from tbb::flow::interface11::internal::untyped_sender
typedef untyped_receiver successor_type
 The successor type for this node. More...
 

Public Member Functions

 unfolded_join_node (graph &g)
 
template<typename Body0 , typename Body1 , typename Body2 , typename Body3 , typename Body4 , typename Body5 , typename Body6 , typename Body7 >
 unfolded_join_node (graph &g, Body0 body0, Body1 body1, Body2 body2, Body3 body3, Body4 body4, Body5 body5, Body6 body6, Body7 body7)
 
 unfolded_join_node (const unfolded_join_node &other)
 
- Public Member Functions inherited from tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >
 join_node_base (graph &g)
 
 join_node_base (const join_node_base &other)
 
template<typename FunctionTuple >
 join_node_base (graph &g, FunctionTuple f)
 
bool register_successor (successor_type &r) __TBB_override
 Add a new successor to this node. More...
 
bool remove_successor (successor_type &r) __TBB_override
 Removes a successor from this node. More...
 
bool try_get (output_type &v) __TBB_override
 Request an item from the sender. More...
 
- Public Member Functions inherited from tbb::flow::interface11::graph_node
 graph_node (graph &g)
 
virtual ~graph_node ()
 
- Public Member Functions inherited from tbb::flow::interface11::sender< OutputTuple >
virtual bool try_reserve (OutputTuple &)
 Reserves an item in the sender. More...
 
- Public Member Functions inherited from tbb::flow::interface11::internal::untyped_sender
virtual ~untyped_sender ()
 
virtual bool try_release ()
 Releases the reserved item. More...
 
virtual bool try_consume ()
 Consumes the reserved item. More...
 

Private Types

typedef tbb::flow::tuple_element< 0, OutputTuple >::type T0
 
typedef tbb::flow::tuple_element< 1, OutputTuple >::type T1
 
typedef tbb::flow::tuple_element< 2, OutputTuple >::type T2
 
typedef tbb::flow::tuple_element< 3, OutputTuple >::type T3
 
typedef tbb::flow::tuple_element< 4, OutputTuple >::type T4
 
typedef tbb::flow::tuple_element< 5, OutputTuple >::type T5
 
typedef tbb::flow::tuple_element< 6, OutputTuple >::type T6
 
typedef tbb::flow::tuple_element< 7, OutputTuple >::type T7
 
typedef join_node_base< key_matching< K, KHash >, input_ports_type, output_typebase_type
 
typedef internal::type_to_key_function_body< T0, K > * f0_p
 
typedef internal::type_to_key_function_body< T1, K > * f1_p
 
typedef internal::type_to_key_function_body< T2, K > * f2_p
 
typedef internal::type_to_key_function_body< T3, K > * f3_p
 
typedef internal::type_to_key_function_body< T4, K > * f4_p
 
typedef internal::type_to_key_function_body< T5, K > * f5_p
 
typedef internal::type_to_key_function_body< T6, K > * f6_p
 
typedef internal::type_to_key_function_body< T7, K > * f7_p
 
typedef tbb::flow::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p, f6_p, f7_pfunc_initializer_type
 

Additional Inherited Members

- Public Attributes inherited from tbb::flow::interface11::sender< OutputTuple >
__TBB_DEPRECATED typedef OutputTuple output_type
 The output type of this sender. More...
 
__TBB_DEPRECATED typedef internal::async_helpers< OutputTuple >::filtered_type filtered_type
 
- Protected Member Functions inherited from tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >
void reset_node (reset_flags f) __TBB_override
 
- Protected Member Functions inherited from tbb::flow::interface11::sender< OutputTuple >
virtual bool try_get_wrapper (void *p, bool is_async) __TBB_override
 
virtual bool try_reserve_wrapper (void *p, bool is_async) __TBB_override
 
- Protected Member Functions inherited from tbb::flow::interface11::internal::untyped_sender
template<typename X >
bool try_get (X &t)
 Request an item from the sender. More...
 
template<typename X >
bool try_reserve (X &t)
 Reserves an item in the sender. More...
 
- Protected Attributes inherited from tbb::flow::interface11::internal::join_node_base< JP, InputTuple, OutputTuple >
graphmy_graph
 
- Protected Attributes inherited from tbb::flow::interface11::graph_node
graphmy_graph
 
graph_nodenext
 
graph_nodeprev
 

Detailed Description

template<typename OutputTuple, typename K, typename KHash>
class tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >

Definition at line 1804 of file flow_graph.h.

Member Typedef Documentation

◆ base_type

template<typename OutputTuple , typename K , typename KHash >
typedef join_node_base<key_matching<K,KHash> , input_ports_type, output_type > tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::base_type
private

Definition at line 1818 of file flow_graph.h.

◆ f0_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T0, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f0_p
private

Definition at line 1819 of file flow_graph.h.

◆ f1_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T1, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f1_p
private

Definition at line 1820 of file flow_graph.h.

◆ f2_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T2, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f2_p
private

Definition at line 1821 of file flow_graph.h.

◆ f3_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T3, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f3_p
private

Definition at line 1822 of file flow_graph.h.

◆ f4_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T4, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f4_p
private

Definition at line 1823 of file flow_graph.h.

◆ f5_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T5, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f5_p
private

Definition at line 1824 of file flow_graph.h.

◆ f6_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T6, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f6_p
private

Definition at line 1825 of file flow_graph.h.

◆ f7_p

template<typename OutputTuple , typename K , typename KHash >
typedef internal::type_to_key_function_body<T7, K>* tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::f7_p
private

Definition at line 1826 of file flow_graph.h.

◆ func_initializer_type

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p, f6_p, f7_p > tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::func_initializer_type
private

Definition at line 1827 of file flow_graph.h.

◆ input_ports_type

template<typename OutputTuple , typename K , typename KHash >
typedef wrap_key_tuple_elements<8,key_matching_port,key_matching<K,KHash>,OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::input_ports_type

Definition at line 1815 of file flow_graph.h.

◆ output_type

template<typename OutputTuple , typename K , typename KHash >
typedef OutputTuple tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::output_type

Definition at line 1816 of file flow_graph.h.

◆ T0

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<0, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T0
private

Definition at line 1806 of file flow_graph.h.

◆ T1

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<1, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T1
private

Definition at line 1807 of file flow_graph.h.

◆ T2

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<2, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T2
private

Definition at line 1808 of file flow_graph.h.

◆ T3

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<3, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T3
private

Definition at line 1809 of file flow_graph.h.

◆ T4

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<4, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T4
private

Definition at line 1810 of file flow_graph.h.

◆ T5

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<5, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T5
private

Definition at line 1811 of file flow_graph.h.

◆ T6

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<6, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T6
private

Definition at line 1812 of file flow_graph.h.

◆ T7

template<typename OutputTuple , typename K , typename KHash >
typedef tbb::flow::tuple_element<7, OutputTuple>::type tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::T7
private

Definition at line 1813 of file flow_graph.h.

Constructor & Destructor Documentation

◆ unfolded_join_node() [1/3]

template<typename OutputTuple , typename K , typename KHash >
tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::unfolded_join_node ( graph g)
inline

Definition at line 1830 of file flow_graph.h.

1837  : graph_node(g)
1838  , input_impl_type(g, number_of_predecessors, __TBB_FLOW_GRAPH_PRIORITY_ARG1(body, priority)),
1839  fOutput_type(g) {
1840  tbb::internal::fgt_node_with_body( CODEPTR(), tbb::internal::FLOW_CONTINUE_NODE, &this->my_graph,
1841  static_cast<receiver<input_type> *>(this),
#define CODEPTR()
#define __TBB_FLOW_GRAPH_PRIORITY_ARG1(arg1, priority)
static void fgt_node_with_body(void *, string_index, void *, void *, void *)

References CODEPTR, tbb::internal::fgt_node_with_body(), and tbb::flow::interface11::graph_node::my_graph.

Here is the call graph for this function:

◆ unfolded_join_node() [2/3]

template<typename OutputTuple , typename K , typename KHash >
template<typename Body0 , typename Body1 , typename Body2 , typename Body3 , typename Body4 , typename Body5 , typename Body6 , typename Body7 >
tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::unfolded_join_node ( graph g,
Body0  body0,
Body1  body1,
Body2  body2,
Body3  body3,
Body4  body4,
Body5  body5,
Body6  body6,
Body7  body7 
)
inline

Definition at line 1845 of file flow_graph.h.

1848  : continue_node(g, number_of_predecessors, body, Policy(), priority) {}
1849 #endif
1850 
1851 #if __TBB_PREVIEW_FLOW_GRAPH_NODE_SET
1852  template <typename Body, typename... Args>
1853  continue_node( const node_set<Args...>& nodes, int number_of_predecessors,
1854  Body body, __TBB_FLOW_GRAPH_PRIORITY_ARG1( Policy p = Policy(), node_priority_t priority = tbb::flow::internal::no_priority ))
1855  : continue_node(nodes.graph_reference(), number_of_predecessors, body, __TBB_FLOW_GRAPH_PRIORITY_ARG1(p, priority)) {
1856  make_edges_in_order(nodes, *this);
1857  }
unsigned int node_priority_t
#define __TBB_FLOW_GRAPH_PRIORITY_ARG1(arg1, priority)
void const char const char int ITT_FORMAT __itt_group_sync p
static const node_priority_t no_priority

◆ unfolded_join_node() [3/3]

template<typename OutputTuple , typename K , typename KHash >
tbb::flow::interface11::internal::unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > >::unfolded_join_node ( const unfolded_join_node< 8, key_matching_port, OutputTuple, key_matching< K, KHash > > &  other)
inline

Definition at line 1858 of file flow_graph.h.

1863 : continue_node(nodes, number_of_predecessors, body, Policy(), priority) {}

The documentation for this class was generated from the following file:

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.