Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
internal::convert_and_call_impl< A1, Args1... > Struct Template Reference

#include <_flow_graph_streaming_node.h>

Collaboration diagram for internal::convert_and_call_impl< A1, Args1... >:

Static Public Member Functions

template<typename F , typename Tuple , typename ... Args2>
static void doit (F &f, Tuple &t, A1 &a1, Args1 &... args1, Args2 &... args2)
 
template<typename F , typename Tuple , typename ... Args2>
static void doit_impl (std::false_type, F &f, Tuple &t, A1 &a1, Args1 &... args1, Args2 &... args2)
 
template<typename F , typename Tuple , int N1, int N2, typename ... Args2>
static void doit_impl (std::true_type x, F &f, Tuple &t, port_ref_impl< N1, N2 >, Args1 &... args1, Args2 &... args2)
 
template<typename F , typename Tuple , int N, typename ... Args2>
static void doit_impl (std::true_type, F &f, Tuple &t, port_ref_impl< N, N >, Args1 &... args1, Args2 &... args2)
 
template<typename F , typename Tuple , int N1, int N2, typename ... Args2>
static void doit_impl (std::true_type x, F &f, Tuple &t, port_ref_impl< N1, N2 >(*fn)(), Args1 &... args1, Args2 &... args2)
 
template<typename F , typename Tuple , int N, typename ... Args2>
static void doit_impl (std::true_type x, F &f, Tuple &t, port_ref_impl< N, N >(*fn)(), Args1 &... args1, Args2 &... args2)
 

Static Public Attributes

static const size_t my_delta = 1
 

Detailed Description

template<typename A1, typename ... Args1>
struct internal::convert_and_call_impl< A1, Args1... >

Definition at line 127 of file _flow_graph_streaming_node.h.

Member Function Documentation

◆ doit()

template<typename A1 , typename ... Args1>
template<typename F , typename Tuple , typename ... Args2>
static void internal::convert_and_call_impl< A1, Args1... >::doit ( F &  f,
Tuple &  t,
A1 &  a1,
Args1 &...  args1,
Args2 &...  args2 
)
inlinestatic

Definition at line 131 of file _flow_graph_streaming_node.h.

131  {
132  convert_and_call_impl<A1, Args1...>::doit_impl(typename is_port_ref<A1>::type(), f, t, a1, args1..., args2...);
133  }
static void doit_impl(std::false_type, F &f, Tuple &t, A1 &a1, Args1 &... args1, Args2 &... args2)
is_port_ref_impl< typename tbb::internal::strip< T >::type >::type type

◆ doit_impl() [1/5]

template<typename A1 , typename ... Args1>
template<typename F , typename Tuple , typename ... Args2>
static void internal::convert_and_call_impl< A1, Args1... >::doit_impl ( std::false_type  ,
F &  f,
Tuple &  t,
A1 &  a1,
Args1 &...  args1,
Args2 &...  args2 
)
inlinestatic

Definition at line 135 of file _flow_graph_streaming_node.h.

135  {
136  convert_and_call_impl<Args1...>::doit(f, t, args1..., args2..., a1);
137  }

◆ doit_impl() [2/5]

template<typename A1 , typename ... Args1>
template<typename F , typename Tuple , int N1, int N2, typename ... Args2>
static void internal::convert_and_call_impl< A1, Args1... >::doit_impl ( std::true_type  x,
F &  f,
Tuple &  t,
port_ref_impl< N1, N2 >  ,
Args1 &...  args1,
Args2 &...  args2 
)
inlinestatic

Definition at line 139 of file _flow_graph_streaming_node.h.

139  {
140  convert_and_call_impl<port_ref_impl<N1 + 1,N2>, Args1...>::doit_impl(x, f, t, port_ref<N1 + 1, N2>(), args1...,
141  args2..., std::get<N1 + my_delta>(t));
142  }
static void doit_impl(std::false_type, F &f, Tuple &t, A1 &a1, Args1 &... args1, Args2 &... args2)

◆ doit_impl() [3/5]

template<typename A1 , typename ... Args1>
template<typename F , typename Tuple , int N, typename ... Args2>
static void internal::convert_and_call_impl< A1, Args1... >::doit_impl ( std::true_type  ,
F &  f,
Tuple &  t,
port_ref_impl< N, N >  ,
Args1 &...  args1,
Args2 &...  args2 
)
inlinestatic

Definition at line 144 of file _flow_graph_streaming_node.h.

144  {
145  convert_and_call_impl<Args1...>::doit(f, t, args1..., args2..., std::get<N + my_delta>(t));
146  }

◆ doit_impl() [4/5]

template<typename A1 , typename ... Args1>
template<typename F , typename Tuple , int N1, int N2, typename ... Args2>
static void internal::convert_and_call_impl< A1, Args1... >::doit_impl ( std::true_type  x,
F &  f,
Tuple &  t,
port_ref_impl< N1, N2 >(*)()  fn,
Args1 &...  args1,
Args2 &...  args2 
)
inlinestatic

Definition at line 149 of file _flow_graph_streaming_node.h.

149  {
150  doit_impl(x, f, t, fn(), args1..., args2...);
151  }
static void doit_impl(std::false_type, F &f, Tuple &t, A1 &a1, Args1 &... args1, Args2 &... args2)
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_id __itt_string_handle __itt_metadata_type size_t void ITT_FORMAT p const __itt_domain __itt_id __itt_string_handle const wchar_t size_t ITT_FORMAT lu const __itt_domain __itt_id __itt_relation __itt_id ITT_FORMAT p const wchar_t int ITT_FORMAT __itt_group_mark d __itt_event ITT_FORMAT __itt_group_mark d void const wchar_t const wchar_t int ITT_FORMAT __itt_group_sync __itt_group_fsync x void const wchar_t int const wchar_t int int ITT_FORMAT __itt_group_sync __itt_group_fsync x void ITT_FORMAT __itt_group_sync __itt_group_fsync p void ITT_FORMAT __itt_group_sync __itt_group_fsync p void size_t ITT_FORMAT lu no args __itt_obj_prop_t __itt_obj_state_t ITT_FORMAT d const char ITT_FORMAT s const char ITT_FORMAT s __itt_frame ITT_FORMAT p __itt_counter ITT_FORMAT p __itt_counter unsigned long long ITT_FORMAT lu __itt_counter unsigned long long ITT_FORMAT lu __itt_counter __itt_clock_domain unsigned long long void ITT_FORMAT p const wchar_t ITT_FORMAT S __itt_mark_type const wchar_t ITT_FORMAT S __itt_mark_type const char ITT_FORMAT s __itt_mark_type ITT_FORMAT d __itt_caller ITT_FORMAT p __itt_caller ITT_FORMAT p no args const __itt_domain __itt_clock_domain unsigned long long __itt_id ITT_FORMAT lu const __itt_domain __itt_clock_domain unsigned long long __itt_id __itt_id void * fn

References fn.

◆ doit_impl() [5/5]

template<typename A1 , typename ... Args1>
template<typename F , typename Tuple , int N, typename ... Args2>
static void internal::convert_and_call_impl< A1, Args1... >::doit_impl ( std::true_type  x,
F &  f,
Tuple &  t,
port_ref_impl< N, N >(*)()  fn,
Args1 &...  args1,
Args2 &...  args2 
)
inlinestatic

Definition at line 153 of file _flow_graph_streaming_node.h.

153  {
154  doit_impl(x, f, t, fn(), args1..., args2...);
155  }
static void doit_impl(std::false_type, F &f, Tuple &t, A1 &a1, Args1 &... args1, Args2 &... args2)
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_id __itt_string_handle __itt_metadata_type size_t void ITT_FORMAT p const __itt_domain __itt_id __itt_string_handle const wchar_t size_t ITT_FORMAT lu const __itt_domain __itt_id __itt_relation __itt_id ITT_FORMAT p const wchar_t int ITT_FORMAT __itt_group_mark d __itt_event ITT_FORMAT __itt_group_mark d void const wchar_t const wchar_t int ITT_FORMAT __itt_group_sync __itt_group_fsync x void const wchar_t int const wchar_t int int ITT_FORMAT __itt_group_sync __itt_group_fsync x void ITT_FORMAT __itt_group_sync __itt_group_fsync p void ITT_FORMAT __itt_group_sync __itt_group_fsync p void size_t ITT_FORMAT lu no args __itt_obj_prop_t __itt_obj_state_t ITT_FORMAT d const char ITT_FORMAT s const char ITT_FORMAT s __itt_frame ITT_FORMAT p __itt_counter ITT_FORMAT p __itt_counter unsigned long long ITT_FORMAT lu __itt_counter unsigned long long ITT_FORMAT lu __itt_counter __itt_clock_domain unsigned long long void ITT_FORMAT p const wchar_t ITT_FORMAT S __itt_mark_type const wchar_t ITT_FORMAT S __itt_mark_type const char ITT_FORMAT s __itt_mark_type ITT_FORMAT d __itt_caller ITT_FORMAT p __itt_caller ITT_FORMAT p no args const __itt_domain __itt_clock_domain unsigned long long __itt_id ITT_FORMAT lu const __itt_domain __itt_clock_domain unsigned long long __itt_id __itt_id void * fn

References fn.

Member Data Documentation

◆ my_delta

template<typename A1 , typename ... Args1>
const size_t internal::convert_and_call_impl< A1, Args1... >::my_delta = 1
static

Definition at line 128 of file _flow_graph_streaming_node.h.


The documentation for this struct 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.