#ifndef CL_FN
#define CL_FN(ret, fn, args)
#endif
CL_FN(cl_int,
clGetPlatformIDs, (cl_uint ,
cl_platform_id * ,
cl_uint * ));
CL_FN(cl_int,
clGetPlatformInfo, (cl_platform_id ,
cl_platform_info ,
size_t ,
void * ,
size_t * ));
CL_FN(cl_int,
clGetDeviceIDs, (cl_platform_id ,
cl_device_type ,
cl_uint ,
cl_device_id * ,
cl_uint * ));
CL_FN(cl_int,
clGetDeviceInfo, (cl_device_id ,
cl_device_info ,
size_t ,
void * ,
size_t * ));
#ifdef HAVE_OPENCL_12
CL_FN(cl_int,
clCreateSubDevices, (cl_device_id ,
const cl_device_partition_property * ,
cl_uint ,
cl_device_id * ,
cl_uint * ));
CL_FN(cl_int,
clRetainDevice, (cl_device_id ));
CL_FN(cl_int,
clReleaseDevice, (cl_device_id ));
#endif
CL_FN(cl_context,
clCreateContext, (const cl_context_properties * ,
cl_uint ,
const cl_device_id * ,
void (CL_CALLBACK * )(const char *, const void *, size_t, void *),
void * ,
cl_int * ));
CL_FN(cl_context,
clCreateContextFromType, (const cl_context_properties * ,
cl_device_type ,
void (CL_CALLBACK * )(const char *, const void *, size_t, void *),
void * ,
cl_int * ));
CL_FN(cl_int,
clRetainContext, (cl_context ));
CL_FN(cl_int,
clReleaseContext, (cl_context ));
CL_FN(cl_int,
clGetContextInfo, (cl_context ,
cl_context_info ,
size_t ,
void * ,
size_t * ));
CL_FN(cl_command_queue,
clCreateCommandQueue, (cl_context ,
cl_device_id ,
cl_command_queue_properties ,
cl_int * ));
CL_FN(cl_int,
clRetainCommandQueue, (cl_command_queue ));
CL_FN(cl_int,
clReleaseCommandQueue, (cl_command_queue ));
CL_FN(cl_int,
clGetCommandQueueInfo, (cl_command_queue ,
cl_command_queue_info ,
size_t ,
void * ,
size_t * ));
CL_FN(cl_mem,
clCreateBuffer, (cl_context ,
cl_mem_flags ,
size_t ,
void * ,
cl_int * ));
CL_FN(cl_mem,
clCreateSubBuffer, (cl_mem ,
cl_mem_flags ,
cl_buffer_create_type ,
const void * ,
cl_int * ));
#ifdef HAVE_OPENCL_12
CL_FN(cl_mem,
clCreateImage, (cl_context ,
cl_mem_flags ,
const cl_image_format * ,
const cl_image_desc * ,
void * ,
cl_int * ));
#endif
CL_FN(cl_int,
clRetainMemObject, (cl_mem ));
CL_FN(cl_int,
clReleaseMemObject, (cl_mem ));
CL_FN(cl_int,
clGetSupportedImageFormats, (cl_context ,
cl_mem_flags ,
cl_mem_object_type ,
cl_uint ,
cl_image_format * ,
cl_uint * ));
CL_FN(cl_int,
clGetMemObjectInfo, (cl_mem ,
cl_mem_info ,
size_t ,
void * ,
size_t * ));
CL_FN(cl_int,
clGetImageInfo, (cl_mem ,
cl_image_info ,
size_t ,
void * ,
size_t * ));
CL_FN(cl_int,
clSetMemObjectDestructorCallback, (cl_mem ,
void (CL_CALLBACK * )( cl_mem , void* ),
void * ));
CL_FN(cl_program,
clCreateProgramWithSource, (cl_context ,
cl_uint ,
const char ** ,
const size_t * ,
cl_int * ));
CL_FN(cl_int,
clRetainProgram, (cl_program ));
CL_FN(cl_int,
clReleaseProgram, (cl_program ));
CL_FN(cl_int,
clBuildProgram, (cl_program ,
cl_uint ,
const cl_device_id * ,
const char * ,
void (CL_CALLBACK * )(cl_program , void * ),
void * ));
CL_FN(cl_int,
clGetProgramBuildInfo, (cl_program ,
cl_device_id ,
cl_program_build_info ,
size_t ,
void * ,
size_t * ));
CL_FN(cl_kernel,
clCreateKernel, (cl_program ,
const char * ,
cl_int * ));
CL_FN(cl_int,
clRetainKernel, (cl_kernel ));
CL_FN(cl_int,
clReleaseKernel, (cl_kernel ));
CL_FN(cl_int,
clSetKernelArg, (cl_kernel ,
cl_uint ,
size_t ,
const void * ));
CL_FN(cl_int,
clFlush, (cl_command_queue ));
CL_FN(cl_int,
clFinish, (cl_command_queue ));
CL_FN(cl_int,
clEnqueueReadBuffer, (cl_command_queue ,
cl_mem ,
cl_bool ,
size_t ,
size_t ,
void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(cl_int,
clEnqueueReadBufferRect, (cl_command_queue ,
cl_mem ,
cl_bool ,
const size_t * ,
const size_t * ,
const size_t * ,
size_t ,
size_t ,
size_t ,
size_t ,
void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(cl_int,
clEnqueueWriteBuffer, (cl_command_queue ,
cl_mem ,
cl_bool ,
size_t ,
size_t ,
const void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(cl_int,
clEnqueueWriteBufferRect, (cl_command_queue ,
cl_mem ,
cl_bool ,
const size_t * ,
const size_t * ,
const size_t * ,
size_t ,
size_t ,
size_t ,
size_t ,
const void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(cl_int,
clEnqueueReadImage, (cl_command_queue ,
cl_mem ,
cl_bool ,
const size_t * ,
const size_t * ,
size_t ,
size_t ,
void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(cl_int,
clEnqueueWriteImage, (cl_command_queue ,
cl_mem ,
cl_bool ,
const size_t * ,
const size_t * ,
size_t ,
size_t ,
const void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(void *,
clEnqueueMapBuffer, (cl_command_queue ,
cl_mem ,
cl_bool ,
cl_map_flags ,
size_t ,
size_t ,
cl_uint ,
const cl_event * ,
cl_event * ,
cl_int * ));
CL_FN(void *,
clEnqueueMapImage, (cl_command_queue ,
cl_mem ,
cl_bool ,
cl_map_flags ,
const size_t * ,
const size_t * ,
size_t * ,
size_t * ,
cl_uint ,
const cl_event * ,
cl_event * ,
cl_int * ));
CL_FN(cl_int,
clEnqueueUnmapMemObject, (cl_command_queue ,
cl_mem ,
void * ,
cl_uint ,
const cl_event * ,
cl_event * ));
CL_FN(cl_int,
clEnqueueNDRangeKernel, (cl_command_queue ,
cl_kernel ,
cl_uint ,
const size_t * ,
const size_t * ,
const size_t * ,
cl_uint ,
const cl_event * ,
cl_event * ));
#undef CL_FN