| 
    Intel(R) Threading Building Blocks Doxygen Documentation
    version 4.2.3
    
   | 
 
#include <flow_graph_opencl_node.h>
Classes | |
| struct | finalize_fn | 
| struct | finalize_fn_leaf | 
| class | kernel | 
Public Types | |
| template<typename T > | |
| using | async_msg_type = opencl_async_msg< T, opencl_factory< DeviceFilter > > | 
| typedef opencl_device | device_type | 
| typedef kernel | kernel_type | 
| typedef opencl_range | range_type | 
Public Member Functions | |
| opencl_factory () | |
| ~opencl_factory () | |
| bool | init (const opencl_device_list &device_list) | 
| template<typename ... Args> | |
| void | send_kernel (opencl_device device, const kernel_type &kernel, const range_type &work_size, Args &... args) | 
| template<typename T , typename ... Rest> | |
| void | send_data (opencl_device device, T &t, Rest &... args) | 
| void | send_data (opencl_device) | 
| template<typename FinalizeFn , typename ... Args> | |
| void | finalize (opencl_device device, FinalizeFn fn, Args &... args) | 
| const opencl_device_list & | devices () | 
Private Member Functions | |
| template<typename Factory > | |
| void | enqueue_map_buffer (opencl_device device, opencl_buffer_impl< Factory > &buffer, opencl_async_msg< void *, Factory > &dmsg) | 
| template<typename Factory > | |
| void | enqueue_unmap_buffer (opencl_device device, opencl_memory< Factory > &memory, opencl_async_msg< void *, Factory > &dmsg) | 
| template<size_t NUM_ARGS, typename T > | |
| void | process_one_arg (const kernel_type &kernel, std::array< cl_event, NUM_ARGS > &, int &, int &place, const T &t) | 
| template<size_t NUM_ARGS, typename T , typename F > | |
| void | process_one_arg (const kernel_type &kernel, std::array< cl_event, NUM_ARGS > &events, int &num_events, int &place, const opencl_async_msg< T, F > &msg) | 
| template<size_t NUM_ARGS, typename T , typename ... Rest> | |
| void | process_arg_list (const kernel_type &kernel, std::array< cl_event, NUM_ARGS > &events, int &num_events, int &place, const T &t, const Rest &... args) | 
| template<size_t NUM_ARGS> | |
| void | process_arg_list (const kernel_type &, std::array< cl_event, NUM_ARGS > &, int &, int &) | 
| template<typename T > | |
| void | update_one_arg (cl_event, T &) | 
| template<typename T , typename F > | |
| void | update_one_arg (cl_event e, opencl_async_msg< T, F > &msg) | 
| template<typename T , typename ... Rest> | |
| void | update_arg_list (cl_event e, T &t, Rest &... args) | 
| void | update_arg_list (cl_event) | 
| cl_event | send_kernel_impl (opencl_device device, const cl_kernel &kernel, const range_type &work_size, cl_uint num_events, cl_event *event_list) | 
| template<typename T > | |
| bool | get_event_from_one_arg (cl_event &, const T &) | 
| template<typename T , typename F > | |
| bool | get_event_from_one_arg (cl_event &e, const opencl_async_msg< T, F > &msg) | 
| template<typename T , typename ... Rest> | |
| bool | get_event_from_args (cl_event &e, const T &t, const Rest &... args) | 
| bool | get_event_from_args (cl_event &) | 
| bool | is_same_context (opencl_device::device_id_type d1, opencl_device::device_id_type d2) | 
| opencl_factory (const opencl_factory &) | |
| opencl_factory & | operator= (const opencl_factory &) | 
| cl_context | context () | 
| void | init_once () | 
Static Private Member Functions | |
| static void CL_CALLBACK | finalize_callback (cl_event, cl_int event_command_exec_status, void *data) | 
Private Attributes | |
| std::once_flag | my_once_flag | 
| opencl_device_list | my_devices | 
| cl_context | my_cl_context | 
| tbb::spin_mutex | my_devices_mutex | 
Friends | |
| template<typename Factory > | |
| class | opencl_program | 
| template<typename Factory > | |
| class | opencl_buffer_impl | 
| template<typename Factory > | |
| class | opencl_memory | 
Definition at line 59 of file flow_graph_opencl_node.h.
| using tbb::flow::interface11::opencl_factory< DeviceFilter >::async_msg_type = opencl_async_msg<T, opencl_factory<DeviceFilter> > | 
Definition at line 826 of file flow_graph_opencl_node.h.
| typedef opencl_device tbb::flow::interface11::opencl_factory< DeviceFilter >::device_type | 
Definition at line 827 of file flow_graph_opencl_node.h.
| typedef kernel tbb::flow::interface11::opencl_factory< DeviceFilter >::kernel_type | 
Definition at line 869 of file flow_graph_opencl_node.h.
| typedef opencl_range tbb::flow::interface11::opencl_factory< DeviceFilter >::range_type | 
Definition at line 873 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 875 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 876 of file flow_graph_opencl_node.h.
      
  | 
  private | 
      
  | 
  inlineprivate | 
Definition at line 1092 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 1075 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 897 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 911 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 1064 of file flow_graph_opencl_node.h.
      
  | 
  inlinestaticprivate | 
Definition at line 1051 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 1026 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 1034 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 1009 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 1014 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 885 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 1097 of file flow_graph_opencl_node.h.
Referenced by tbb::flow::interface11::opencl_factory< default_device_filter >::context(), and tbb::flow::interface11::opencl_factory< default_device_filter >::devices().
      
  | 
  inlineprivate | 
Definition at line 1081 of file flow_graph_opencl_node.h.
      
  | 
  private | 
      
  | 
  inlineprivate | 
Definition at line 941 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 947 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 923 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 929 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 983 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 988 of file flow_graph_opencl_node.h.
      
  | 
  inline | 
Definition at line 967 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 992 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 958 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 963 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 950 of file flow_graph_opencl_node.h.
      
  | 
  inlineprivate | 
Definition at line 953 of file flow_graph_opencl_node.h.
Definition at line 1176 of file flow_graph_opencl_node.h.
Definition at line 1178 of file flow_graph_opencl_node.h.
Definition at line 1174 of file flow_graph_opencl_node.h.
      
  | 
  private | 
Definition at line 1169 of file flow_graph_opencl_node.h.
      
  | 
  private | 
Definition at line 1168 of file flow_graph_opencl_node.h.
      
  | 
  private | 
Definition at line 1171 of file flow_graph_opencl_node.h.
      
  | 
  private | 
Definition at line 1167 of file flow_graph_opencl_node.h.