| /******************************************************************************* |
| * Copyright (c) 2008-2010 The Khronos Group Inc. |
| * |
| * Permission is hereby granted, free of charge, to any person obtaining a |
| * copy of this software and/or associated documentation files (the |
| * "Materials"), to deal in the Materials without restriction, including |
| * without limitation the rights to use, copy, modify, merge, publish, |
| * distribute, sublicense, and/or sell copies of the Materials, and to |
| * permit persons to whom the Materials are furnished to do so, subject to |
| * the following conditions: |
| * |
| * The above copyright notice and this permission notice shall be included |
| * in all copies or substantial portions of the Materials. |
| * |
| * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
| * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
| * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
| * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
| * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
| * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
| * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. |
| ******************************************************************************/ |
| |
| #ifndef __OPENCL_CL_ICD_H |
| #define __OPENCL_CL_ICD_H |
| |
| #include <CL/cl.h> |
| #include <CL/cl_gl.h> |
| |
| #define cl_khr_icd 1 |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif /* __cplusplus */ |
| |
| typedef cl_int (CL_API_CALL * clGetPlatformIDs_fn)( |
| cl_uint /* num_entries */, |
| cl_platform_id * /* platforms */, |
| cl_uint * /* num_platforms */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetPlatformInfo_fn)( |
| cl_platform_id /* platform */, |
| cl_platform_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetDeviceIDs_fn)( |
| cl_platform_id /* platform */, |
| cl_device_type /* device_type */, |
| cl_uint /* num_entries */, |
| cl_device_id * /* devices */, |
| cl_uint * /* num_devices */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetDeviceInfo_fn)( |
| cl_device_id /* device */, |
| cl_device_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_context (CL_API_CALL * clCreateContext_fn)( |
| const cl_context_properties * /* properties */, |
| cl_uint /* num_devices */, |
| const cl_device_id * /* devices */, |
| void (CL_CALLBACK * /* pfn_notify */)(const char *, const void *, size_t, void *), |
| void * /* user_data */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_context (CL_API_CALL * clCreateContextFromType_fn)( |
| const cl_context_properties * /* properties */, |
| cl_device_type /* device_type */, |
| void (CL_CALLBACK * /* pfn_notify*/ )(const char *, const void *, size_t, void *), |
| void * /* user_data */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clRetainContext_fn)( |
| cl_context /* context */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseContext_fn)( |
| cl_context /* context */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetContextInfo_fn)( |
| cl_context /* context */, |
| cl_context_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_command_queue (CL_API_CALL * clCreateCommandQueue_fn)( |
| cl_context /* context */, |
| cl_device_id /* device */, |
| cl_command_queue_properties /* properties */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clRetainCommandQueue_fn)( |
| cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseCommandQueue_fn)( |
| cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetCommandQueueInfo_fn)( |
| cl_command_queue /* command_queue */, |
| cl_command_queue_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clSetCommandQueueProperty_fn)( |
| cl_command_queue /* command_queue */, |
| cl_command_queue_properties /* properties */, |
| cl_bool /* enable */, |
| cl_command_queue_properties * /* old_properties */) /*CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED*/; |
| |
| typedef cl_mem (CL_API_CALL * clCreateBuffer_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| size_t /* size */, |
| void * /* host_ptr */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreateSubBuffer_fn)( |
| cl_mem /* buffer */, |
| cl_mem_flags /* flags */, |
| cl_buffer_create_type /* buffer_create_type */, |
| const void * /* buffer_create_info */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_mem (CL_API_CALL * clCreateImage2D_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| const cl_image_format * /* image_format */, |
| size_t /* image_width */, |
| size_t /* image_height */, |
| size_t /* image_row_pitch */, |
| void * /* host_ptr */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreateImage3D_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| const cl_image_format * /* image_format */, |
| size_t /* image_width */, |
| size_t /* image_height */, |
| size_t /* image_depth */, |
| size_t /* image_row_pitch */, |
| size_t /* image_slice_pitch */, |
| void * /* host_ptr */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clRetainMemObject_fn)( |
| cl_mem /* memobj */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseMemObject_fn)( |
| cl_mem /* memobj */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetSupportedImageFormats_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_mem_object_type /* image_type */, |
| cl_uint /* num_entries */, |
| cl_image_format * /* image_formats */, |
| cl_uint * /* num_image_formats */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetMemObjectInfo_fn)( |
| cl_mem /* memobj */, |
| cl_mem_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetImageInfo_fn)( |
| cl_mem /* image */, |
| cl_image_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clSetMemObjectDestructorCallback_fn)( |
| cl_mem /* memobj */, |
| void (CL_CALLBACK * /*pfn_notify*/)( cl_mem /* memobj */, void* /*user_data*/), |
| void * /*user_data */ ) CL_API_SUFFIX__VERSION_1_1; |
| |
| /* Sampler APIs */ |
| typedef cl_sampler (CL_API_CALL * clCreateSampler_fn)( |
| cl_context /* context */, |
| cl_bool /* normalized_coords */, |
| cl_addressing_mode /* addressing_mode */, |
| cl_filter_mode /* filter_mode */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clRetainSampler_fn)( |
| cl_sampler /* sampler */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseSampler_fn)( |
| cl_sampler /* sampler */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetSamplerInfo_fn)( |
| cl_sampler /* sampler */, |
| cl_sampler_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| /* Program Object APIs */ |
| typedef cl_program (CL_API_CALL * clCreateProgramWithSource_fn)( |
| cl_context /* context */, |
| cl_uint /* count */, |
| const char ** /* strings */, |
| const size_t * /* lengths */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_program (CL_API_CALL * clCreateProgramWithBinary_fn)( |
| cl_context /* context */, |
| cl_uint /* num_devices */, |
| const cl_device_id * /* device_list */, |
| const size_t * /* lengths */, |
| const unsigned char ** /* binaries */, |
| cl_int * /* binary_status */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clRetainProgram_fn)( |
| cl_program /* program */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseProgram_fn)( |
| cl_program /* program */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clBuildProgram_fn)( |
| cl_program /* program */, |
| cl_uint /* num_devices */, |
| const cl_device_id * /* device_list */, |
| const char * /* options */, |
| void (CL_CALLBACK * /* pfn_notify */)(cl_program /* program */, void * /* user_data */), |
| void * /* user_data */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clUnloadCompiler_fn)(void) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetProgramInfo_fn)( |
| cl_program /* program */, |
| cl_program_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetProgramBuildInfo_fn)( |
| cl_program /* program */, |
| cl_device_id /* device */, |
| cl_program_build_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| /* Kernel Object APIs */ |
| typedef cl_kernel (CL_API_CALL * clCreateKernel_fn)( |
| cl_program /* program */, |
| const char * /* kernel_name */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clCreateKernelsInProgram_fn)( |
| cl_program /* program */, |
| cl_uint /* num_kernels */, |
| cl_kernel * /* kernels */, |
| cl_uint * /* num_kernels_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clRetainKernel_fn)( |
| cl_kernel /* kernel */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseKernel_fn)( |
| cl_kernel /* kernel */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clSetKernelArg_fn)( |
| cl_kernel /* kernel */, |
| cl_uint /* arg_index */, |
| size_t /* arg_size */, |
| const void * /* arg_value */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetKernelInfo_fn)( |
| cl_kernel /* kernel */, |
| cl_kernel_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetKernelWorkGroupInfo_fn)( |
| cl_kernel /* kernel */, |
| cl_device_id /* device */, |
| cl_kernel_work_group_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| /* Event Object APIs */ |
| typedef cl_int (CL_API_CALL * clWaitForEvents_fn)( |
| cl_uint /* num_events */, |
| const cl_event * /* event_list */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetEventInfo_fn)( |
| cl_event /* event */, |
| cl_event_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_event (CL_API_CALL * clCreateUserEvent_fn)( |
| cl_context /* context */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_int (CL_API_CALL * clRetainEvent_fn)( |
| cl_event /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clReleaseEvent_fn)( |
| cl_event /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clSetUserEventStatus_fn)( |
| cl_event /* event */, |
| cl_int /* execution_status */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_int (CL_API_CALL * clSetEventCallback_fn)( |
| cl_event /* event */, |
| cl_int /* command_exec_callback_type */, |
| void (CL_CALLBACK * /* pfn_notify */)(cl_event, cl_int, void *), |
| void * /* user_data */) CL_API_SUFFIX__VERSION_1_1; |
| |
| /* Profiling APIs */ |
| typedef cl_int (CL_API_CALL * clGetEventProfilingInfo_fn)( |
| cl_event /* event */, |
| cl_profiling_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| /* Flush and Finish APIs */ |
| typedef cl_int (CL_API_CALL * clFlush_fn)( |
| cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clFinish_fn)( |
| cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0; |
| |
| /* Enqueued Commands APIs */ |
| typedef cl_int (CL_API_CALL * clEnqueueReadBuffer_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* buffer */, |
| cl_bool /* blocking_read */, |
| size_t /* offset */, |
| size_t /* cb */, |
| void * /* ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueReadBufferRect_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* buffer */, |
| cl_bool /* blocking_read */, |
| const size_t * /* buffer_offset */, |
| const size_t * /* host_offset */, |
| const size_t * /* region */, |
| size_t /* buffer_row_pitch */, |
| size_t /* buffer_slice_pitch */, |
| size_t /* host_row_pitch */, |
| size_t /* host_slice_pitch */, |
| void * /* ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueWriteBuffer_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* buffer */, |
| cl_bool /* blocking_write */, |
| size_t /* offset */, |
| size_t /* cb */, |
| const void * /* ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueWriteBufferRect_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* buffer */, |
| cl_bool /* blocking_read */, |
| const size_t * /* buffer_offset */, |
| const size_t * /* host_offset */, |
| const size_t * /* region */, |
| size_t /* buffer_row_pitch */, |
| size_t /* buffer_slice_pitch */, |
| size_t /* host_row_pitch */, |
| size_t /* host_slice_pitch */, |
| const void * /* ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueCopyBuffer_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* src_buffer */, |
| cl_mem /* dst_buffer */, |
| size_t /* src_offset */, |
| size_t /* dst_offset */, |
| size_t /* cb */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueCopyBufferRect_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* src_buffer */, |
| cl_mem /* dst_buffer */, |
| const size_t * /* src_origin */, |
| const size_t * /* dst_origin */, |
| const size_t * /* region */, |
| size_t /* src_row_pitch */, |
| size_t /* src_slice_pitch */, |
| size_t /* dst_row_pitch */, |
| size_t /* dst_slice_pitch */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueReadImage_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* image */, |
| cl_bool /* blocking_read */, |
| const size_t * /* origin[3] */, |
| const size_t * /* region[3] */, |
| size_t /* row_pitch */, |
| size_t /* slice_pitch */, |
| void * /* ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueWriteImage_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* image */, |
| cl_bool /* blocking_write */, |
| const size_t * /* origin[3] */, |
| const size_t * /* region[3] */, |
| size_t /* input_row_pitch */, |
| size_t /* input_slice_pitch */, |
| const void * /* ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueCopyImage_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* src_image */, |
| cl_mem /* dst_image */, |
| const size_t * /* src_origin[3] */, |
| const size_t * /* dst_origin[3] */, |
| const size_t * /* region[3] */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueCopyImageToBuffer_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* src_image */, |
| cl_mem /* dst_buffer */, |
| const size_t * /* src_origin[3] */, |
| const size_t * /* region[3] */, |
| size_t /* dst_offset */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueCopyBufferToImage_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* src_buffer */, |
| cl_mem /* dst_image */, |
| size_t /* src_offset */, |
| const size_t * /* dst_origin[3] */, |
| const size_t * /* region[3] */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef void * (CL_API_CALL * clEnqueueMapBuffer_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* buffer */, |
| cl_bool /* blocking_map */, |
| cl_map_flags /* map_flags */, |
| size_t /* offset */, |
| size_t /* cb */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef void * (CL_API_CALL * clEnqueueMapImage_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* image */, |
| cl_bool /* blocking_map */, |
| cl_map_flags /* map_flags */, |
| const size_t * /* origin[3] */, |
| const size_t * /* region[3] */, |
| size_t * /* image_row_pitch */, |
| size_t * /* image_slice_pitch */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueUnmapMemObject_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* memobj */, |
| void * /* mapped_ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueNDRangeKernel_fn)( |
| cl_command_queue /* command_queue */, |
| cl_kernel /* kernel */, |
| cl_uint /* work_dim */, |
| const size_t * /* global_work_offset */, |
| const size_t * /* global_work_size */, |
| const size_t * /* local_work_size */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueTask_fn)( |
| cl_command_queue /* command_queue */, |
| cl_kernel /* kernel */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueNativeKernel_fn)( |
| cl_command_queue /* command_queue */, |
| void (CL_CALLBACK *user_func)(void *), |
| void * /* args */, |
| size_t /* cb_args */, |
| cl_uint /* num_mem_objects */, |
| const cl_mem * /* mem_list */, |
| const void ** /* args_mem_loc */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueMarker_fn)( |
| cl_command_queue /* command_queue */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueWaitForEvents_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_events */, |
| const cl_event * /* event_list */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueBarrier_fn)( |
| cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef void * (CL_API_CALL * clGetExtensionFunctionAddress_fn)( |
| const char * /* func_name */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreateFromGLBuffer_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_GLuint /* bufobj */, |
| int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreateFromGLTexture2D_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_GLenum /* target */, |
| cl_GLint /* miplevel */, |
| cl_GLuint /* texture */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreateFromGLTexture3D_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_GLenum /* target */, |
| cl_GLint /* miplevel */, |
| cl_GLuint /* texture */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreateFromGLRenderbuffer_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_GLuint /* renderbuffer */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetGLObjectInfo_fn)( |
| cl_mem /* memobj */, |
| cl_gl_object_type * /* gl_object_type */, |
| cl_GLuint * /* gl_object_name */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clGetGLTextureInfo_fn)( |
| cl_mem /* memobj */, |
| cl_gl_texture_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_event (CL_API_CALL * clCreateEventFromGLsyncKHR_fn) ( |
| cl_context /* context */, |
| cl_GLsync /* cl_GLsync */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueAcquireGLObjects_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_objects */, |
| const cl_mem * /* mem_objects */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueReleaseGLObjects_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_objects */, |
| const cl_mem * /* mem_objects */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0; |
| |
| typedef cl_int (CL_API_CALL * clCreateSubDevices_fn)( |
| cl_device_id /* in_device */, |
| const cl_device_partition_property * /* properties */, |
| cl_uint /* num_entries */, |
| cl_device_id * /* out_devices */, |
| cl_uint * /* num_devices */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clRetainDevice_fn)( |
| cl_device_id /* device */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clReleaseDevice_fn)( |
| cl_device_id /* device */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_mem (CL_API_CALL * clCreateImage_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| const cl_image_format * /* image_format*/, |
| const cl_image_desc * /* image_desc*/, |
| void * /* host_ptr */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_program (CL_API_CALL * clCreateProgramWithBuiltInKernels_fn)( |
| cl_context /* context */, |
| cl_uint /* num_devices */, |
| const cl_device_id * /* device_list */, |
| const char * /* kernel_names */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clCompileProgram_fn)( |
| cl_program /* program */, |
| cl_uint /* num_devices */, |
| const cl_device_id * /* device_list */, |
| const char * /* options */, |
| cl_uint /* num_input_headers */, |
| const cl_program * /* input_headers */, |
| const char ** /* header_include_names */, |
| void (CL_CALLBACK *pfn_notify)(cl_program program, void *user_data), |
| void * /* user_data */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_program (CL_API_CALL * clLinkProgram_fn)( |
| cl_context /* context */, |
| cl_uint /* num_devices */, |
| const cl_device_id * /* device_list */, |
| const char * /* options */, |
| cl_uint /* num_input_programs */, |
| const cl_program * /* input_programs */, |
| void (CL_CALLBACK *pfn_notify)(cl_program program, void *user_data), |
| void * /* user_data */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clUnloadPlatformCompiler_fn)( |
| cl_platform_id /* platform */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clGetKernelArgInfo_fn)( |
| cl_kernel /* kernel */, |
| cl_uint /* arg_indx */, |
| cl_kernel_arg_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueFillBuffer_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* buffer */, |
| const void * /* pattern */, |
| size_t /* pattern_size */, |
| size_t /* offset */, |
| size_t /* size */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueFillImage_fn)( |
| cl_command_queue /* command_queue */, |
| cl_mem /* image */, |
| const void * /* fill_color */, |
| const size_t * /* origin */, |
| const size_t * /* region */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueMigrateMemObjects_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_mem_objects */, |
| const cl_mem * /* mem_objects */, |
| cl_mem_migration_flags /* flags */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueMarkerWithWaitList_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueBarrierWithWaitList_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef void* (CL_API_CALL * clGetExtensionFunctionAddressForPlatform_fn)( |
| cl_platform_id /* platform */, |
| const char * /* funcname */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_mem (CL_API_CALL * clCreateFromGLTexture_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_GLenum /* texture_target */, |
| cl_GLint /* miplevel */, |
| cl_GLuint /* texture */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2; |
| |
| typedef cl_command_queue (CL_API_CALL * clCreateCommandQueueWithProperties_fn)( |
| cl_context /* context */, |
| cl_device_id /* device */, |
| const cl_queue_properties * /* properties */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_sampler (CL_API_CALL * clCreateSamplerWithProperties_fn)( |
| cl_context /* context */, |
| const cl_sampler_properties * /* properties */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef void * (CL_API_CALL * clSVMAlloc_fn)( |
| cl_context /* context */, |
| cl_svm_mem_flags /* flags */, |
| size_t /* size */, |
| cl_uint /* alignment */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef void (CL_API_CALL * clSVMFree_fn)( |
| cl_context /* context */, |
| void * /* svm_pointer */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clSetKernelArgSVMPointer_fn)( |
| cl_kernel /* kernel */, |
| cl_uint /* arg_index */, |
| const void * /* arg_value */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clSetKernelExecInfo_fn)( |
| cl_kernel /* kernel */, |
| cl_kernel_exec_info /* param_name */, |
| size_t /* param_value_size */, |
| const void * /* param_value */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueSVMFree_fn)( |
| cl_command_queue /* command_queue */, |
| cl_uint /* num_svm_pointers */, |
| void *[] /* svm_pointers */, |
| void (CL_CALLBACK * /* pfn_free_func */)(cl_command_queue /* queue */, |
| cl_uint /* num_svm_pointers */, |
| void *[] /* svm_pointers */, |
| void * /* user_data */), |
| void * /* user_data */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueSVMMemcpy_fn)( |
| cl_command_queue /* command_queue */, |
| cl_bool /* blocking_copy */, |
| void * /* dst_ptr */, |
| const void * /* src_ptr */, |
| size_t /* size */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueSVMMemFill_fn)( |
| cl_command_queue /* command_queue */, |
| void * /* svm_ptr */, |
| const void * /* pattern */, |
| size_t /* pattern_size */, |
| size_t /* size */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueSVMMap_fn)( |
| cl_command_queue /* command_queue */, |
| cl_bool /* blocking_map */, |
| cl_map_flags /* flags */, |
| void * /* svm_ptr */, |
| size_t /* size */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clEnqueueSVMUnmap_fn)( |
| cl_command_queue /* command_queue */, |
| void * /* svm_ptr */, |
| cl_uint /* num_events_in_wait_list */, |
| const cl_event * /* event_wait_list */, |
| cl_event * /* event */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_mem (CL_API_CALL * clCreatePipe_fn)( |
| cl_context /* context */, |
| cl_mem_flags /* flags */, |
| cl_uint /* pipe_packet_size */, |
| cl_uint /* pipe_max_packets */, |
| const cl_pipe_properties * /* properties */, |
| cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clGetPipeInfo_fn)( |
| cl_mem /* pipe */, |
| cl_pipe_info /* param_name */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_2_0; |
| |
| typedef cl_int (CL_API_CALL * clGetKernelSubGroupInfoKHR_fn)( |
| cl_kernel /* kernel */, |
| cl_device_id /* device */, |
| cl_kernel_sub_group_info /* param_name */, |
| size_t /* input_value_size */, |
| const void * /* input_value */, |
| size_t /* param_value_size */, |
| void * /* param_value */, |
| size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_2_0; |
| |
| |
| typedef struct _cl_icd_dispatch_table |
| { |
| /* OpenCL 1.0 */ |
| clGetPlatformIDs_fn GetPlatformIDs; |
| clGetPlatformInfo_fn GetPlatformInfo; |
| clGetDeviceIDs_fn GetDeviceIDs; |
| clGetDeviceInfo_fn GetDeviceInfo; |
| clCreateContext_fn CreateContext; |
| clCreateContextFromType_fn CreateContextFromType; |
| clRetainContext_fn RetainContext; |
| clReleaseContext_fn ReleaseContext; |
| clGetContextInfo_fn GetContextInfo; |
| clCreateCommandQueue_fn CreateCommandQueue; |
| clRetainCommandQueue_fn RetainCommandQueue; |
| clReleaseCommandQueue_fn ReleaseCommandQueue; |
| clGetCommandQueueInfo_fn GetCommandQueueInfo; |
| clSetCommandQueueProperty_fn SetCommandQueueProperty; |
| clCreateBuffer_fn CreateBuffer; |
| clCreateImage2D_fn CreateImage2D; |
| clCreateImage3D_fn CreateImage3D; |
| clRetainMemObject_fn RetainMemObject; |
| clReleaseMemObject_fn ReleaseMemObject; |
| clGetSupportedImageFormats_fn GetSupportedImageFormats; |
| clGetMemObjectInfo_fn GetMemObjectInfo; |
| clGetImageInfo_fn GetImageInfo; |
| clCreateSampler_fn CreateSampler; |
| clRetainSampler_fn RetainSampler; |
| clReleaseSampler_fn ReleaseSampler; |
| clGetSamplerInfo_fn GetSamplerInfo; |
| clCreateProgramWithSource_fn CreateProgramWithSource; |
| clCreateProgramWithBinary_fn CreateProgramWithBinary; |
| clRetainProgram_fn RetainProgram; |
| clReleaseProgram_fn ReleaseProgram; |
| clBuildProgram_fn BuildProgram; |
| clUnloadCompiler_fn UnloadCompiler; |
| clGetProgramInfo_fn GetProgramInfo; |
| clGetProgramBuildInfo_fn GetProgramBuildInfo; |
| clCreateKernel_fn CreateKernel; |
| clCreateKernelsInProgram_fn CreateKernelsInProgram; |
| clRetainKernel_fn RetainKernel; |
| clReleaseKernel_fn ReleaseKernel; |
| clSetKernelArg_fn SetKernelArg; |
| clGetKernelInfo_fn GetKernelInfo; |
| clGetKernelWorkGroupInfo_fn GetKernelWorkGroupInfo; |
| clWaitForEvents_fn WaitForEvents; |
| clGetEventInfo_fn GetEventInfo; |
| clRetainEvent_fn RetainEvent; |
| clReleaseEvent_fn ReleaseEvent; |
| clGetEventProfilingInfo_fn GetEventProfilingInfo; |
| clFlush_fn Flush; |
| clFinish_fn Finish; |
| clEnqueueReadBuffer_fn EnqueueReadBuffer; |
| clEnqueueWriteBuffer_fn EnqueueWriteBuffer; |
| clEnqueueCopyBuffer_fn EnqueueCopyBuffer; |
| clEnqueueReadImage_fn EnqueueReadImage; |
| clEnqueueWriteImage_fn EnqueueWriteImage; |
| clEnqueueCopyImage_fn EnqueueCopyImage; |
| clEnqueueCopyImageToBuffer_fn EnqueueCopyImageToBuffer; |
| clEnqueueCopyBufferToImage_fn EnqueueCopyBufferToImage; |
| clEnqueueMapBuffer_fn EnqueueMapBuffer; |
| clEnqueueMapImage_fn EnqueueMapImage; |
| clEnqueueUnmapMemObject_fn EnqueueUnmapMemObject; |
| clEnqueueNDRangeKernel_fn EnqueueNDRangeKernel; |
| clEnqueueTask_fn EnqueueTask; |
| clEnqueueNativeKernel_fn EnqueueNativeKernel; |
| clEnqueueMarker_fn EnqueueMarker; |
| clEnqueueWaitForEvents_fn EnqueueWaitForEvents; |
| clEnqueueBarrier_fn EnqueueBarrier; |
| clGetExtensionFunctionAddress_fn GetExtensionFunctionAddress; |
| clCreateFromGLBuffer_fn CreateFromGLBuffer; |
| clCreateFromGLTexture2D_fn CreateFromGLTexture2D; |
| clCreateFromGLTexture3D_fn CreateFromGLTexture3D; |
| clCreateFromGLRenderbuffer_fn CreateFromGLRenderbuffer; |
| clGetGLObjectInfo_fn GetGLObjectInfo; |
| clGetGLTextureInfo_fn GetGLTextureInfo; |
| clEnqueueAcquireGLObjects_fn EnqueueAcquireGLObjects; |
| clEnqueueReleaseGLObjects_fn EnqueueReleaseGLObjects; |
| clGetGLContextInfoKHR_fn GetGLContextInfoKHR; |
| void* _reservedForD3D10KHR[6]; |
| /* OpenCL 1.1 */ |
| clSetEventCallback_fn SetEventCallback; |
| clCreateSubBuffer_fn CreateSubBuffer; |
| clSetMemObjectDestructorCallback_fn SetMemObjectDestructorCallback; |
| clCreateUserEvent_fn CreateUserEvent; |
| clSetUserEventStatus_fn SetUserEventStatus; |
| clEnqueueReadBufferRect_fn EnqueueReadBufferRect; |
| clEnqueueWriteBufferRect_fn EnqueueWriteBufferRect; |
| clEnqueueCopyBufferRect_fn EnqueueCopyBufferRect; |
| |
| void* _reservedForDeviceFissionEXT[3]; |
| clCreateEventFromGLsyncKHR_fn CreateEventFromGLsyncKHR; |
| |
| /* OpenCL 1.2 */ |
| clCreateSubDevices_fn CreateSubDevices; |
| clRetainDevice_fn RetainDevice; |
| clReleaseDevice_fn ReleaseDevice; |
| clCreateImage_fn CreateImage; |
| clCreateProgramWithBuiltInKernels_fn CreateProgramWithBuiltInKernels; |
| clCompileProgram_fn CompileProgram; |
| clLinkProgram_fn LinkProgram; |
| clUnloadPlatformCompiler_fn UnloadPlatformCompiler; |
| clGetKernelArgInfo_fn GetKernelArgInfo; |
| clEnqueueFillBuffer_fn EnqueueFillBuffer; |
| clEnqueueFillImage_fn EnqueueFillImage; |
| clEnqueueMigrateMemObjects_fn EnqueueMigrateMemObjects; |
| clEnqueueMarkerWithWaitList_fn EnqueueMarkerWithWaitList; |
| clEnqueueBarrierWithWaitList_fn EnqueueBarrierWithWaitList; |
| clGetExtensionFunctionAddressForPlatform_fn GetExtensionFunctionAddressForPlatform; |
| clCreateFromGLTexture_fn CreateFromGLTexture; |
| |
| /* cl_khr_d3d11_sharing, cl_khr_dx9_media_sharing */ |
| void* _reservedD3DExtensions[10]; |
| |
| /* cl_khr_egl_image, cl_khr_egl_event */ |
| void* _reservedEGLExtensions[4]; |
| |
| /* OpenCL 2.0 */ |
| clCreateCommandQueueWithProperties_fn CreateCommandQueueWithProperties; |
| clCreatePipe_fn CreatePipe; |
| clGetPipeInfo_fn GetPipeInfo; |
| clSVMAlloc_fn SVMAlloc; |
| clSVMFree_fn SVMFree; |
| clEnqueueSVMFree_fn EnqueueSVMFree; |
| clEnqueueSVMMemcpy_fn EnqueueSVMMemcpy; |
| clEnqueueSVMMemFill_fn EnqueueSVMMemFill; |
| clEnqueueSVMMap_fn EnqueueSVMMap; |
| clEnqueueSVMUnmap_fn EnqueueSVMUnmap; |
| clCreateSamplerWithProperties_fn CreateSamplerWithProperties; |
| clSetKernelArgSVMPointer_fn SetKernelArgSVMPointer; |
| clSetKernelExecInfo_fn SetKernelExecInfo; |
| |
| clGetKernelSubGroupInfoKHR_fn GetKernelSubGroupInfoKHR; |
| clTerminateContextKHR_fn TerminateContextKHR; |
| } cl_icd_dispatch_table; |
| |
| #ifdef __cplusplus |
| } |
| #endif /* __cplusplus */ |
| |
| #endif /* __OPENCL_CL_ICD_H */ |