Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
dlopencl.h
Go to the documentation of this file.
1/*
2 This file is part of darktable,
3 Copyright (C) 2011, 2014, 2016 Ulrich Pegelow.
4 Copyright (C) 2012 johannes hanika.
5 Copyright (C) 2012 parafin.
6 Copyright (C) 2012 Richard Wonka.
7 Copyright (C) 2012-2014, 2016 Tobias Ellinghaus.
8 Copyright (C) 2020 Pascal Obry.
9 Copyright (C) 2022 Martin Baƙinka.
10
11 darktable is free software: you can redistribute it and/or modify
12 it under the terms of the GNU General Public License as published by
13 the Free Software Foundation, either version 3 of the License, or
14 (at your option) any later version.
15
16 darktable is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU General Public License for more details.
20
21 You should have received a copy of the GNU General Public License
22 along with darktable. If not, see <http://www.gnu.org/licenses/>.
23*/
24
25#ifndef DT_COMMON_DLOPENCL_H
26#define DT_COMMON_DLOPENCL_H
27
28#ifdef HAVE_OPENCL
29
30#ifdef HAVE_CONFIG_H
31#include "config.h"
32#endif
33
34#include <CL/cl.h>
35
36typedef cl_int (*dt_clGetPlatformIDs_t)(cl_uint, cl_platform_id *, cl_uint *);
37typedef cl_int (*dt_clGetPlatformInfo_t)(cl_platform_id, cl_platform_info, size_t, void *, size_t *);
38typedef cl_int (*dt_clGetDeviceIDs_t)(cl_platform_id, cl_device_type, cl_uint, cl_device_id *, cl_uint *);
39typedef cl_int (*dt_clGetDeviceInfo_t)(cl_device_id, cl_device_info, size_t, void *, size_t *);
40typedef cl_context (*dt_clCreateContext_t)(const cl_context_properties *, cl_uint, const cl_device_id *,
41 void (*)(const char *, const void *, size_t, void *), void *,
42 cl_int *);
43typedef cl_context (*dt_clCreateContextFromType_t)(const cl_context_properties *, cl_device_type,
44 void (*)(const char *, const void *, size_t, void *),
45 void *, cl_int *);
46typedef cl_int (*dt_clRetainContext_t)(cl_context);
47typedef cl_int (*dt_clReleaseContext_t)(cl_context);
48typedef cl_int (*dt_clGetContextInfo_t)(cl_context, cl_context_info, size_t, void *, size_t *);
49typedef cl_command_queue (*dt_clCreateCommandQueue_t)(cl_context, cl_device_id, cl_command_queue_properties,
50 cl_int *);
51typedef cl_int (*dt_clRetainCommandQueue_t)(cl_command_queue);
52typedef cl_int (*dt_clReleaseCommandQueue_t)(cl_command_queue);
53typedef cl_int (*dt_clGetCommandQueueInfo_t)(cl_command_queue, cl_command_queue_info, size_t, void *,
54 size_t *);
55typedef cl_int (*dt_clSetCommandQueueProperty_t)(cl_command_queue, cl_command_queue_properties, cl_bool,
56 cl_command_queue_properties *);
57typedef cl_mem (*dt_clCreateBuffer_t)(cl_context, cl_mem_flags, size_t, void *, cl_int *);
58typedef cl_mem (*dt_clCreateSubBuffer_t)(cl_mem, cl_mem_flags, cl_buffer_create_type, const void *, cl_int *);
59typedef cl_mem (*dt_clCreateImage2D_t)(cl_context, cl_mem_flags, const cl_image_format *, size_t, size_t,
60 size_t, void *, cl_int *);
61typedef cl_mem (*dt_clCreateImage3D_t)(cl_context, cl_mem_flags, const cl_image_format *, size_t, size_t,
62 size_t, size_t, size_t, void *, cl_int *);
63typedef cl_int (*dt_clRetainMemObject_t)(cl_mem);
64typedef cl_int (*dt_clReleaseMemObject_t)(cl_mem);
65typedef cl_int (*dt_clGetSupportedImageFormats_t)(cl_context, cl_mem_flags, cl_mem_object_type, cl_uint,
66 cl_image_format *, cl_uint *);
67typedef cl_int (*dt_clGetMemObjectInfo_t)(cl_mem, cl_mem_info, size_t, void *, size_t *);
68typedef cl_int (*dt_clGetImageInfo_t)(cl_mem, cl_image_info, size_t, void *, size_t *);
69typedef cl_int (*dt_clSetMemObjectDestructorCallback_t)(cl_mem, void(*), void *);
70typedef cl_sampler (*dt_clCreateSampler_t)(cl_context, cl_bool, cl_addressing_mode, cl_filter_mode, cl_int *);
71typedef cl_int (*dt_clRetainSampler_t)(cl_sampler);
72typedef cl_int (*dt_clReleaseSampler_t)(cl_sampler);
73typedef cl_int (*dt_clGetSamplerInfo_t)(cl_sampler, cl_sampler_info, size_t, void *, size_t *);
74typedef cl_program (*dt_clCreateProgramWithSource_t)(cl_context, cl_uint, const char **, const size_t *,
75 cl_int *);
76typedef cl_program (*dt_clCreateProgramWithBinary_t)(cl_context, cl_uint, const cl_device_id *,
77 const size_t *, const unsigned char **, cl_int *,
78 cl_int *);
79typedef cl_int (*dt_clRetainProgram_t)(cl_program);
80typedef cl_int (*dt_clReleaseProgram_t)(cl_program);
81typedef cl_int (*dt_clBuildProgram_t)(cl_program, cl_uint, const cl_device_id *, const char *, void(*),
82 void *);
83typedef cl_int (*dt_clUnloadCompiler_t)(void);
84typedef cl_int (*dt_clGetProgramInfo_t)(cl_program, cl_program_info, size_t, void *, size_t *);
85typedef cl_int (*dt_clGetProgramBuildInfo_t)(cl_program, cl_device_id, cl_program_build_info, size_t, void *,
86 size_t *);
87typedef cl_kernel (*dt_clCreateKernel_t)(cl_program, const char *, cl_int *);
88typedef cl_int (*dt_clCreateKernelsInProgram_t)(cl_program, cl_uint, cl_kernel *, cl_uint *);
89typedef cl_int (*dt_clRetainKernel_t)(cl_kernel);
90typedef cl_int (*dt_clReleaseKernel_t)(cl_kernel);
91typedef cl_int (*dt_clSetKernelArg_t)(cl_kernel, cl_uint, size_t, const void *);
92typedef cl_int (*dt_clGetKernelInfo_t)(cl_kernel, cl_kernel_info, size_t, void *, size_t *);
93typedef cl_int (*dt_clGetKernelWorkGroupInfo_t)(cl_kernel, cl_device_id, cl_kernel_work_group_info, size_t,
94 void *, size_t *);
95typedef cl_int (*dt_clWaitForEvents_t)(cl_uint, const cl_event *);
96typedef cl_int (*dt_clGetEventInfo_t)(cl_event, cl_event_info, size_t, void *, size_t *);
97typedef cl_event (*dt_clCreateUserEvent_t)(cl_context, cl_int *);
98typedef cl_int (*dt_clRetainEvent_t)(cl_event);
99typedef cl_int (*dt_clReleaseEvent_t)(cl_event);
100typedef cl_int (*dt_clSetUserEventStatus_t)(cl_event, cl_int);
101typedef cl_int (*dt_clSetEventCallback_t)(cl_event, cl_int, void (*)(cl_event, cl_int, void *), void *);
102typedef cl_int (*dt_clGetEventProfilingInfo_t)(cl_event, cl_profiling_info, size_t, void *, size_t *);
103typedef cl_int (*dt_clFlush_t)(cl_command_queue);
104typedef cl_int (*dt_clFinish_t)(cl_command_queue);
105typedef cl_int (*dt_clEnqueueReadBuffer_t)(cl_command_queue, cl_mem, cl_bool, size_t, size_t, void *, cl_uint,
106 const cl_event *, cl_event *);
107typedef cl_int (*dt_clEnqueueReadBufferRect_t)(cl_command_queue, cl_mem, cl_bool, const size_t *,
108 const size_t *, const size_t *, size_t, size_t, size_t, size_t,
109 void *, cl_uint, const cl_event *, cl_event *);
110typedef cl_int (*dt_clEnqueueWriteBuffer_t)(cl_command_queue, cl_mem, cl_bool, size_t, size_t, const void *,
111 cl_uint, const cl_event *, cl_event *);
112typedef cl_int (*dt_clEnqueueWriteBufferRect_t)(cl_command_queue, cl_mem, cl_bool, const size_t *,
113 const size_t *, const size_t *, size_t, size_t, size_t,
114 size_t, const void *, cl_uint, const cl_event *, cl_event *);
115typedef cl_int (*dt_clEnqueueCopyBuffer_t)(cl_command_queue, cl_mem, cl_mem, size_t, size_t, size_t, cl_uint,
116 const cl_event *, cl_event *);
117typedef cl_int (*dt_clEnqueueCopyBufferRect_t)(cl_command_queue, cl_mem, cl_mem, const size_t *,
118 const size_t *, const size_t *, size_t, size_t, size_t, size_t,
119 cl_uint, const cl_event *, cl_event *);
120typedef cl_int (*dt_clEnqueueReadImage_t)(cl_command_queue, cl_mem, cl_bool, const size_t *, const size_t *,
121 size_t, size_t, void *, cl_uint, const cl_event *, cl_event *);
122typedef cl_int (*dt_clEnqueueWriteImage_t)(cl_command_queue, cl_mem, cl_bool, const size_t *, const size_t *,
123 size_t, size_t, const void *, cl_uint, const cl_event *,
124 cl_event *);
125typedef cl_int (*dt_clEnqueueCopyImage_t)(cl_command_queue, cl_mem, cl_mem, const size_t *, const size_t *,
126 const size_t *, cl_uint, const cl_event *, cl_event *);
127typedef cl_int (*dt_clEnqueueCopyImageToBuffer_t)(cl_command_queue, cl_mem, cl_mem, const size_t *,
128 const size_t *, size_t, cl_uint, const cl_event *,
129 cl_event *);
130typedef cl_int (*dt_clEnqueueCopyBufferToImage_t)(cl_command_queue, cl_mem, cl_mem, size_t, const size_t *,
131 const size_t *, cl_uint, const cl_event *, cl_event *);
132typedef void *(*dt_clEnqueueMapBuffer_t)(cl_command_queue, cl_mem, cl_bool, cl_map_flags, size_t, size_t,
133 cl_uint, const cl_event *, cl_event *, cl_int *);
134typedef void *(*dt_clEnqueueMapImage_t)(cl_command_queue, cl_mem, cl_bool, cl_map_flags, const size_t *,
135 const size_t *, size_t *, size_t *, cl_uint, const cl_event *,
136 cl_event *, cl_int *);
137typedef cl_int (*dt_clEnqueueUnmapMemObject_t)(cl_command_queue, cl_mem, void *, cl_uint, const cl_event *,
138 cl_event *);
139typedef cl_int (*dt_clEnqueueNDRangeKernel_t)(cl_command_queue, cl_kernel, cl_uint, const size_t *,
140 const size_t *, const size_t *, cl_uint, const cl_event *,
141 cl_event *);
142typedef cl_int (*dt_clEnqueueTask_t)(cl_command_queue, cl_kernel, cl_uint, const cl_event *, cl_event *);
143typedef cl_int (*dt_clEnqueueNativeKernel_t)(cl_command_queue, void (*user_func)(void *), void *, size_t,
144 cl_uint, const cl_mem *, const void **, cl_uint,
145 const cl_event *, cl_event *);
146typedef cl_int (*dt_clEnqueueMarker_t)(cl_command_queue, cl_event *);
147typedef cl_int (*dt_clEnqueueWaitForEvents_t)(cl_command_queue, cl_uint, const cl_event *);
148typedef cl_int (*dt_clEnqueueBarrier_t)(cl_command_queue);
149
151{
226
227
228
235
236/* default noop function for all unassigned function pointers */
237void dt_dlopencl_noop(void);
238
239/* dynamically load OpenCL library and bind needed functions */
240dt_dlopencl_t *dt_dlopencl_init(const char *);
241
242#endif // HAVE_OPENCL
243
244#endif // DT_COMMON_DLOPENCL_H
245
246// clang-format off
247// modelines: These editor modelines have been set for all relevant files by tools/update_modelines.py
248// vim: shiftwidth=2 expandtab tabstop=2 cindent
249// kate: tab-indents: off; indent-width 2; replace-tabs on; indent-mode cstyle; remove-trailing-spaces modified;
250// clang-format on
251
typedef void((*dt_cache_allocate_t)(void *userdata, dt_cache_entry_t *entry))
void *(* dt_clEnqueueMapBuffer_t)(cl_command_queue, cl_mem, cl_bool, cl_map_flags, size_t, size_t, cl_uint, const cl_event *, cl_event *, cl_int *)
Definition dlopencl.h:132
cl_int(* dt_clGetSupportedImageFormats_t)(cl_context, cl_mem_flags, cl_mem_object_type, cl_uint, cl_image_format *, cl_uint *)
Definition dlopencl.h:65
cl_int(* dt_clSetEventCallback_t)(cl_event, cl_int, void(*)(cl_event, cl_int, void *), void *)
Definition dlopencl.h:101
cl_command_queue(* dt_clCreateCommandQueue_t)(cl_context, cl_device_id, cl_command_queue_properties, cl_int *)
Definition dlopencl.h:49
cl_int(* dt_clGetEventInfo_t)(cl_event, cl_event_info, size_t, void *, size_t *)
Definition dlopencl.h:96
cl_int(* dt_clFlush_t)(cl_command_queue)
Definition dlopencl.h:103
cl_mem(* dt_clCreateImage2D_t)(cl_context, cl_mem_flags, const cl_image_format *, size_t, size_t, size_t, void *, cl_int *)
Definition dlopencl.h:59
cl_int(* dt_clRetainMemObject_t)(cl_mem)
Definition dlopencl.h:63
cl_int(* dt_clEnqueueCopyBuffer_t)(cl_command_queue, cl_mem, cl_mem, size_t, size_t, size_t, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:115
cl_int(* dt_clReleaseKernel_t)(cl_kernel)
Definition dlopencl.h:90
cl_int(* dt_clRetainProgram_t)(cl_program)
Definition dlopencl.h:79
cl_int(* dt_clGetDeviceIDs_t)(cl_platform_id, cl_device_type, cl_uint, cl_device_id *, cl_uint *)
Definition dlopencl.h:38
cl_int(* dt_clGetEventProfilingInfo_t)(cl_event, cl_profiling_info, size_t, void *, size_t *)
Definition dlopencl.h:102
cl_int(* dt_clRetainSampler_t)(cl_sampler)
Definition dlopencl.h:71
cl_int(* dt_clEnqueueNDRangeKernel_t)(cl_command_queue, cl_kernel, cl_uint, const size_t *, const size_t *, const size_t *, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:139
cl_int(* dt_clGetSamplerInfo_t)(cl_sampler, cl_sampler_info, size_t, void *, size_t *)
Definition dlopencl.h:73
cl_int(* dt_clRetainKernel_t)(cl_kernel)
Definition dlopencl.h:89
cl_int(* dt_clGetCommandQueueInfo_t)(cl_command_queue, cl_command_queue_info, size_t, void *, size_t *)
Definition dlopencl.h:53
cl_int(* dt_clReleaseMemObject_t)(cl_mem)
Definition dlopencl.h:64
void *(* dt_clEnqueueMapImage_t)(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 *)
Definition dlopencl.h:134
cl_int(* dt_clEnqueueReadBuffer_t)(cl_command_queue, cl_mem, cl_bool, size_t, size_t, void *, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:105
cl_int(* dt_clReleaseEvent_t)(cl_event)
Definition dlopencl.h:99
cl_int(* dt_clEnqueueCopyImage_t)(cl_command_queue, cl_mem, cl_mem, const size_t *, const size_t *, const size_t *, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:125
cl_int(* dt_clGetPlatformInfo_t)(cl_platform_id, cl_platform_info, size_t, void *, size_t *)
Definition dlopencl.h:37
cl_context(* dt_clCreateContext_t)(const cl_context_properties *, cl_uint, const cl_device_id *, void(*)(const char *, const void *, size_t, void *), void *, cl_int *)
Definition dlopencl.h:40
cl_int(* dt_clSetCommandQueueProperty_t)(cl_command_queue, cl_command_queue_properties, cl_bool, cl_command_queue_properties *)
Definition dlopencl.h:55
dt_dlopencl_t * dt_dlopencl_init(const char *)
Definition dlopencl.c:65
cl_int(* dt_clEnqueueMarker_t)(cl_command_queue, cl_event *)
Definition dlopencl.h:146
cl_int(* dt_clBuildProgram_t)(cl_program, cl_uint, const cl_device_id *, const char *, void(*), void *)
Definition dlopencl.h:81
cl_program(* dt_clCreateProgramWithBinary_t)(cl_context, cl_uint, const cl_device_id *, const size_t *, const unsigned char **, cl_int *, cl_int *)
Definition dlopencl.h:76
cl_int(* dt_clUnloadCompiler_t)(void)
Definition dlopencl.h:83
cl_int(* dt_clGetProgramInfo_t)(cl_program, cl_program_info, size_t, void *, size_t *)
Definition dlopencl.h:84
cl_int(* dt_clGetContextInfo_t)(cl_context, cl_context_info, size_t, void *, size_t *)
Definition dlopencl.h:48
cl_int(* dt_clEnqueueNativeKernel_t)(cl_command_queue, void(*user_func)(void *), void *, size_t, cl_uint, const cl_mem *, const void **, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:143
cl_program(* dt_clCreateProgramWithSource_t)(cl_context, cl_uint, const char **, const size_t *, cl_int *)
Definition dlopencl.h:74
cl_int(* dt_clGetMemObjectInfo_t)(cl_mem, cl_mem_info, size_t, void *, size_t *)
Definition dlopencl.h:67
void dt_dlopencl_noop(void)
Definition dlopencl.c:56
cl_int(* dt_clWaitForEvents_t)(cl_uint, const cl_event *)
Definition dlopencl.h:95
cl_int(* dt_clGetProgramBuildInfo_t)(cl_program, cl_device_id, cl_program_build_info, size_t, void *, size_t *)
Definition dlopencl.h:85
cl_int(* dt_clEnqueueBarrier_t)(cl_command_queue)
Definition dlopencl.h:148
cl_int(* dt_clEnqueueWriteBuffer_t)(cl_command_queue, cl_mem, cl_bool, size_t, size_t, const void *, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:110
cl_int(* dt_clEnqueueWaitForEvents_t)(cl_command_queue, cl_uint, const cl_event *)
Definition dlopencl.h:147
cl_int(* dt_clSetKernelArg_t)(cl_kernel, cl_uint, size_t, const void *)
Definition dlopencl.h:91
cl_int(* dt_clEnqueueReadImage_t)(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 *)
Definition dlopencl.h:120
cl_int(* dt_clEnqueueCopyBufferRect_t)(cl_command_queue, cl_mem, cl_mem, const size_t *, const size_t *, const size_t *, size_t, size_t, size_t, size_t, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:117
cl_int(* dt_clGetPlatformIDs_t)(cl_uint, cl_platform_id *, cl_uint *)
Definition dlopencl.h:36
cl_int(* dt_clEnqueueUnmapMemObject_t)(cl_command_queue, cl_mem, void *, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:137
cl_int(* dt_clFinish_t)(cl_command_queue)
Definition dlopencl.h:104
cl_int(* dt_clEnqueueCopyBufferToImage_t)(cl_command_queue, cl_mem, cl_mem, size_t, const size_t *, const size_t *, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:130
cl_int(* dt_clGetKernelWorkGroupInfo_t)(cl_kernel, cl_device_id, cl_kernel_work_group_info, size_t, void *, size_t *)
Definition dlopencl.h:93
cl_int(* dt_clSetUserEventStatus_t)(cl_event, cl_int)
Definition dlopencl.h:100
cl_int(* dt_clGetKernelInfo_t)(cl_kernel, cl_kernel_info, size_t, void *, size_t *)
Definition dlopencl.h:92
cl_int(* dt_clEnqueueWriteBufferRect_t)(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 *)
Definition dlopencl.h:112
cl_kernel(* dt_clCreateKernel_t)(cl_program, const char *, cl_int *)
Definition dlopencl.h:87
cl_int(* dt_clReleaseSampler_t)(cl_sampler)
Definition dlopencl.h:72
cl_int(* dt_clEnqueueReadBufferRect_t)(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 *)
Definition dlopencl.h:107
cl_int(* dt_clSetMemObjectDestructorCallback_t)(cl_mem, void(*), void *)
Definition dlopencl.h:69
cl_int(* dt_clRetainCommandQueue_t)(cl_command_queue)
Definition dlopencl.h:51
cl_mem(* dt_clCreateSubBuffer_t)(cl_mem, cl_mem_flags, cl_buffer_create_type, const void *, cl_int *)
Definition dlopencl.h:58
cl_int(* dt_clGetImageInfo_t)(cl_mem, cl_image_info, size_t, void *, size_t *)
Definition dlopencl.h:68
cl_int(* dt_clEnqueueTask_t)(cl_command_queue, cl_kernel, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:142
cl_int(* dt_clRetainEvent_t)(cl_event)
Definition dlopencl.h:98
cl_event(* dt_clCreateUserEvent_t)(cl_context, cl_int *)
Definition dlopencl.h:97
cl_int(* dt_clRetainContext_t)(cl_context)
Definition dlopencl.h:46
cl_mem(* dt_clCreateImage3D_t)(cl_context, cl_mem_flags, const cl_image_format *, size_t, size_t, size_t, size_t, size_t, void *, cl_int *)
Definition dlopencl.h:61
cl_int(* dt_clEnqueueWriteImage_t)(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 *)
Definition dlopencl.h:122
cl_context(* dt_clCreateContextFromType_t)(const cl_context_properties *, cl_device_type, void(*)(const char *, const void *, size_t, void *), void *, cl_int *)
Definition dlopencl.h:43
cl_int(* dt_clReleaseCommandQueue_t)(cl_command_queue)
Definition dlopencl.h:52
cl_int(* dt_clGetDeviceInfo_t)(cl_device_id, cl_device_info, size_t, void *, size_t *)
Definition dlopencl.h:39
cl_sampler(* dt_clCreateSampler_t)(cl_context, cl_bool, cl_addressing_mode, cl_filter_mode, cl_int *)
Definition dlopencl.h:70
cl_int(* dt_clEnqueueCopyImageToBuffer_t)(cl_command_queue, cl_mem, cl_mem, const size_t *, const size_t *, size_t, cl_uint, const cl_event *, cl_event *)
Definition dlopencl.h:127
cl_int(* dt_clCreateKernelsInProgram_t)(cl_program, cl_uint, cl_kernel *, cl_uint *)
Definition dlopencl.h:88
cl_mem(* dt_clCreateBuffer_t)(cl_context, cl_mem_flags, size_t, void *, cl_int *)
Definition dlopencl.h:57
cl_int(* dt_clReleaseProgram_t)(cl_program)
Definition dlopencl.h:80
cl_int(* dt_clReleaseContext_t)(cl_context)
Definition dlopencl.h:47
dt_clEnqueueReadImage_t dt_clEnqueueReadImage
Definition dlopencl.h:211
dt_clFlush_t dt_clFlush
Definition dlopencl.h:203
dt_clGetEventInfo_t dt_clGetEventInfo
Definition dlopencl.h:196
dt_clEnqueueWaitForEvents_t dt_clEnqueueWaitForEvents
Definition dlopencl.h:223
dt_clEnqueueReadBufferRect_t dt_clEnqueueReadBufferRect
Definition dlopencl.h:206
dt_clEnqueueCopyBufferRect_t dt_clEnqueueCopyBufferRect
Definition dlopencl.h:210
dt_clReleaseCommandQueue_t dt_clReleaseCommandQueue
Definition dlopencl.h:163
dt_clEnqueueUnmapMemObject_t dt_clEnqueueUnmapMemObject
Definition dlopencl.h:218
dt_clGetKernelInfo_t dt_clGetKernelInfo
Definition dlopencl.h:193
dt_clGetEventProfilingInfo_t dt_clGetEventProfilingInfo
Definition dlopencl.h:202
dt_clCreateImage3D_t dt_clCreateImage3D
Definition dlopencl.h:169
dt_clCreateCommandQueue_t dt_clCreateCommandQueue
Definition dlopencl.h:161
dt_clCreateImage2D_t dt_clCreateImage2D
Definition dlopencl.h:168
dt_clEnqueueNativeKernel_t dt_clEnqueueNativeKernel
Definition dlopencl.h:221
dt_clRetainContext_t dt_clRetainContext
Definition dlopencl.h:158
dt_clEnqueueCopyBuffer_t dt_clEnqueueCopyBuffer
Definition dlopencl.h:209
dt_clGetPlatformInfo_t dt_clGetPlatformInfo
Definition dlopencl.h:153
dt_clEnqueueMarker_t dt_clEnqueueMarker
Definition dlopencl.h:222
dt_clSetCommandQueueProperty_t dt_clSetCommandQueueProperty
Definition dlopencl.h:165
dt_clBuildProgram_t dt_clBuildProgram
Definition dlopencl.h:184
dt_clEnqueueWriteBuffer_t dt_clEnqueueWriteBuffer
Definition dlopencl.h:207
dt_clCreateContext_t dt_clCreateContext
Definition dlopencl.h:156
dt_clCreateSubBuffer_t dt_clCreateSubBuffer
Definition dlopencl.h:167
dt_clGetDeviceIDs_t dt_clGetDeviceIDs
Definition dlopencl.h:154
dt_clGetMemObjectInfo_t dt_clGetMemObjectInfo
Definition dlopencl.h:173
dt_clEnqueueCopyImage_t dt_clEnqueueCopyImage
Definition dlopencl.h:213
dt_clReleaseContext_t dt_clReleaseContext
Definition dlopencl.h:159
dt_clCreateContextFromType_t dt_clCreateContextFromType
Definition dlopencl.h:157
dt_clCreateKernelsInProgram_t dt_clCreateKernelsInProgram
Definition dlopencl.h:189
dt_clUnloadCompiler_t dt_clUnloadCompiler
Definition dlopencl.h:185
dt_clRetainCommandQueue_t dt_clRetainCommandQueue
Definition dlopencl.h:162
dt_clRetainSampler_t dt_clRetainSampler
Definition dlopencl.h:177
dt_clFinish_t dt_clFinish
Definition dlopencl.h:204
dt_clGetDeviceInfo_t dt_clGetDeviceInfo
Definition dlopencl.h:155
dt_clEnqueueCopyImageToBuffer_t dt_clEnqueueCopyImageToBuffer
Definition dlopencl.h:214
dt_clGetImageInfo_t dt_clGetImageInfo
Definition dlopencl.h:174
dt_clEnqueueWriteBufferRect_t dt_clEnqueueWriteBufferRect
Definition dlopencl.h:208
dt_clCreateBuffer_t dt_clCreateBuffer
Definition dlopencl.h:166
dt_clRetainMemObject_t dt_clRetainMemObject
Definition dlopencl.h:170
dt_clCreateProgramWithBinary_t dt_clCreateProgramWithBinary
Definition dlopencl.h:181
dt_clCreateUserEvent_t dt_clCreateUserEvent
Definition dlopencl.h:197
dt_clRetainEvent_t dt_clRetainEvent
Definition dlopencl.h:198
dt_clReleaseKernel_t dt_clReleaseKernel
Definition dlopencl.h:191
dt_clEnqueueWriteImage_t dt_clEnqueueWriteImage
Definition dlopencl.h:212
dt_clSetEventCallback_t dt_clSetEventCallback
Definition dlopencl.h:201
dt_clSetKernelArg_t dt_clSetKernelArg
Definition dlopencl.h:192
dt_clReleaseEvent_t dt_clReleaseEvent
Definition dlopencl.h:199
dt_clRetainKernel_t dt_clRetainKernel
Definition dlopencl.h:190
dt_clCreateSampler_t dt_clCreateSampler
Definition dlopencl.h:176
dt_clEnqueueMapImage_t dt_clEnqueueMapImage
Definition dlopencl.h:217
dt_clEnqueueBarrier_t dt_clEnqueueBarrier
Definition dlopencl.h:224
dt_clGetPlatformIDs_t dt_clGetPlatformIDs
Definition dlopencl.h:152
dt_clSetMemObjectDestructorCallback_t dt_clSetMemObjectDestructorCallback
Definition dlopencl.h:175
dt_clGetProgramInfo_t dt_clGetProgramInfo
Definition dlopencl.h:186
dt_clGetSupportedImageFormats_t dt_clGetSupportedImageFormats
Definition dlopencl.h:172
dt_clGetSamplerInfo_t dt_clGetSamplerInfo
Definition dlopencl.h:179
dt_clGetKernelWorkGroupInfo_t dt_clGetKernelWorkGroupInfo
Definition dlopencl.h:194
dt_clReleaseMemObject_t dt_clReleaseMemObject
Definition dlopencl.h:171
dt_clGetProgramBuildInfo_t dt_clGetProgramBuildInfo
Definition dlopencl.h:187
dt_clReleaseSampler_t dt_clReleaseSampler
Definition dlopencl.h:178
dt_clReleaseProgram_t dt_clReleaseProgram
Definition dlopencl.h:183
dt_clEnqueueNDRangeKernel_t dt_clEnqueueNDRangeKernel
Definition dlopencl.h:219
dt_clEnqueueTask_t dt_clEnqueueTask
Definition dlopencl.h:220
dt_clWaitForEvents_t dt_clWaitForEvents
Definition dlopencl.h:195
dt_clSetUserEventStatus_t dt_clSetUserEventStatus
Definition dlopencl.h:200
dt_clEnqueueReadBuffer_t dt_clEnqueueReadBuffer
Definition dlopencl.h:205
dt_clGetCommandQueueInfo_t dt_clGetCommandQueueInfo
Definition dlopencl.h:164
dt_clEnqueueCopyBufferToImage_t dt_clEnqueueCopyBufferToImage
Definition dlopencl.h:215
dt_clEnqueueMapBuffer_t dt_clEnqueueMapBuffer
Definition dlopencl.h:216
dt_clRetainProgram_t dt_clRetainProgram
Definition dlopencl.h:182
dt_clGetContextInfo_t dt_clGetContextInfo
Definition dlopencl.h:160
dt_clCreateKernel_t dt_clCreateKernel
Definition dlopencl.h:188
dt_clCreateProgramWithSource_t dt_clCreateProgramWithSource
Definition dlopencl.h:180
dt_dlopencl_symbols_t * symbols
Definition dlopencl.h:232
char * library
Definition dlopencl.h:233