JOCL v2.6.0-rc-20250722
JOCL, OpenCL® API Binding for Java™ (public API).
CLImpl12.java
Go to the documentation of this file.
1/* !---- DO NOT EDIT: This file autogenerated by com/jogamp/gluegen/procaddress/ProcAddressEmitter.java on Tue Jul 22 05:27:28 CEST 2025 ----! */
2/* !---- Java-Unit: [pkg com.jogamp.opencl.llb.impl, cls CLImpl12], ../build/gensrc/java/com/jogamp/opencl/llb/impl/CLImpl12.java ----! */
3
4package com.jogamp.opencl.llb.impl;
5
6import com.jogamp.opencl.llb.impl.CLImageFormatImpl;
7import com.jogamp.opencl.llb.impl.CLImageDescImpl;
8import com.jogamp.opencl.llb.CL12;
9import java.security.AccessController;
10import java.security.PrivilegedAction;
11import com.jogamp.common.nio.PointerBuffer;
12import com.jogamp.common.util.LongLongHashMap;
13import com.jogamp.opencl.CLErrorHandler;
14import com.jogamp.opencl.CLException;
15import java.nio.ByteBuffer;
16import java.nio.IntBuffer;
17import com.jogamp.common.nio.Buffers;
18import com.jogamp.gluegen.runtime.*;
19import com.jogamp.common.os.*;
20import com.jogamp.common.nio.*;
21import java.nio.*;
22import com.jogamp.common.util.*;
23import java.util.Set;
24import java.util.Map;
25import java.util.HashMap;
26import java.nio.charset.Charset;
27import java.nio.charset.StandardCharsets;
28
29 /**
30 * Java bindings to OpenCL, the Open Computing Language (generated).
31 * @author Michael Bien, GlueGen, et al.
32 */
33public class CLImpl12 implements CL12{
34 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetPlatformIDs}(cl_uint num_entries, cl_platform_id * platforms, cl_uint * num_platforms)</code><br>
35 @param platforms a direct only {@link com.jogamp.common.nio.PointerBuffer}
36 @param num_platforms a direct only {@link java.nio.IntBuffer} */
37 public int clGetPlatformIDs(int num_entries, PointerBuffer platforms, IntBuffer num_platforms) {
38
39 if (!Buffers.isDirect(platforms))
40 throw new IllegalArgumentException("Argument \"platforms\" is not a direct buffer");
41 if (!Buffers.isDirect(num_platforms))
42 throw new IllegalArgumentException("Argument \"num_platforms\" is not a direct buffer");
43 final long __addr_ = addressTable._addressof_clGetPlatformIDs;
44 if (__addr_ == 0) {
45 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetPlatformIDs"));
46 }
47 return dispatch_clGetPlatformIDs0(num_entries, platforms != null ? platforms.getBuffer() : null, Buffers.getDirectBufferByteOffset(platforms), num_platforms, Buffers.getDirectBufferByteOffset(num_platforms), __addr_);
48 }
49
50 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetPlatformIDs}(cl_uint num_entries, cl_platform_id * platforms, cl_uint * num_platforms)</code><br>
51 @param platforms a direct only {@link com.jogamp.common.nio.PointerBuffer}
52 @param num_platforms a direct only {@link java.nio.IntBuffer} */
53 private native int dispatch_clGetPlatformIDs0(int num_entries, Object platforms, int platforms_byte_offset, Object num_platforms, int num_platforms_byte_offset, long procAddress);
54
55 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetPlatformInfo}(cl_platform_id platform, cl_platform_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
56 @param param_value a direct only {@link java.nio.Buffer}
57 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
58 public int clGetPlatformInfo(long platform, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
59
60 if (!Buffers.isDirect(param_value))
61 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
62 if (!Buffers.isDirect(param_value_size_ret))
63 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
64 final long __addr_ = addressTable._addressof_clGetPlatformInfo;
65 if (__addr_ == 0) {
66 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetPlatformInfo"));
67 }
68 return dispatch_clGetPlatformInfo0(platform, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
69 }
70
71 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetPlatformInfo}(cl_platform_id platform, cl_platform_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
72 @param param_value a direct only {@link java.nio.Buffer}
73 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
74 private native int dispatch_clGetPlatformInfo0(long platform, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
75
76 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetDeviceIDs}(cl_platform_id platform, cl_device_type device_type, cl_uint num_entries, cl_device_id * devices, cl_uint * num_devices)</code><br>
77 @param devices a direct only {@link com.jogamp.common.nio.PointerBuffer}
78 @param num_devices a direct only {@link java.nio.IntBuffer} */
79 public int clGetDeviceIDs(long platform, long device_type, int num_entries, PointerBuffer devices, IntBuffer num_devices) {
80
81 if (!Buffers.isDirect(devices))
82 throw new IllegalArgumentException("Argument \"devices\" is not a direct buffer");
83 if (!Buffers.isDirect(num_devices))
84 throw new IllegalArgumentException("Argument \"num_devices\" is not a direct buffer");
85 final long __addr_ = addressTable._addressof_clGetDeviceIDs;
86 if (__addr_ == 0) {
87 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetDeviceIDs"));
88 }
89 return dispatch_clGetDeviceIDs0(platform, device_type, num_entries, devices != null ? devices.getBuffer() : null, Buffers.getDirectBufferByteOffset(devices), num_devices, Buffers.getDirectBufferByteOffset(num_devices), __addr_);
90 }
91
92 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetDeviceIDs}(cl_platform_id platform, cl_device_type device_type, cl_uint num_entries, cl_device_id * devices, cl_uint * num_devices)</code><br>
93 @param devices a direct only {@link com.jogamp.common.nio.PointerBuffer}
94 @param num_devices a direct only {@link java.nio.IntBuffer} */
95 private native int dispatch_clGetDeviceIDs0(long platform, long device_type, int num_entries, Object devices, int devices_byte_offset, Object num_devices, int num_devices_byte_offset, long procAddress);
96
97 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetDeviceInfo}(cl_device_id device, cl_device_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
98 @param param_value a direct only {@link java.nio.Buffer}
99 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
100 public int clGetDeviceInfo(long device, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
101
102 if (!Buffers.isDirect(param_value))
103 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
104 if (!Buffers.isDirect(param_value_size_ret))
105 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
106 final long __addr_ = addressTable._addressof_clGetDeviceInfo;
107 if (__addr_ == 0) {
108 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetDeviceInfo"));
109 }
110 return dispatch_clGetDeviceInfo0(device, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
111 }
112
113 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetDeviceInfo}(cl_device_id device, cl_device_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
114 @param param_value a direct only {@link java.nio.Buffer}
115 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
116 private native int dispatch_clGetDeviceInfo0(long device, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
117
118 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateSubDevices}(cl_device_id in_device, const cl_device_partition_property * properties, cl_uint num_devices, cl_device_id * out_devices, cl_uint * num_devices_ret)</code><br>
119 @param properties a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
120 @param out_devices a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
121 @param num_devices_ret a direct or array-backed {@link java.nio.IntBuffer} */
122 public int clCreateSubDevices(long in_device, PointerBuffer properties, int num_devices, PointerBuffer out_devices, IntBuffer num_devices_ret) {
123
124 final boolean properties_is_direct = Buffers.isDirect(properties);
125 final boolean out_devices_is_direct = Buffers.isDirect(out_devices);
126 final boolean num_devices_ret_is_direct = Buffers.isDirect(num_devices_ret);
127 final long __addr_ = addressTable._addressof_clCreateSubDevices;
128 if (__addr_ == 0) {
129 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSubDevices"));
130 }
131 return dispatch_clCreateSubDevices1(in_device, properties_is_direct ? ( properties != null ? properties.getBuffer() : null ) : Buffers.getArray(properties), properties_is_direct ? Buffers.getDirectBufferByteOffset(properties) : Buffers.getIndirectBufferByteOffset(properties), properties_is_direct, num_devices, out_devices_is_direct ? ( out_devices != null ? out_devices.getBuffer() : null ) : Buffers.getArray(out_devices), out_devices_is_direct ? Buffers.getDirectBufferByteOffset(out_devices) : Buffers.getIndirectBufferByteOffset(out_devices), out_devices_is_direct, num_devices_ret_is_direct ? num_devices_ret : Buffers.getArray(num_devices_ret), num_devices_ret_is_direct ? Buffers.getDirectBufferByteOffset(num_devices_ret) : Buffers.getIndirectBufferByteOffset(num_devices_ret), num_devices_ret_is_direct, __addr_);
132 }
133
134 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateSubDevices}(cl_device_id in_device, const cl_device_partition_property * properties, cl_uint num_devices, cl_device_id * out_devices, cl_uint * num_devices_ret)</code><br>
135 @param properties a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
136 @param out_devices a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
137 @param num_devices_ret a direct or array-backed {@link java.nio.IntBuffer} */
138 private native int dispatch_clCreateSubDevices1(long in_device, Object properties, int properties_byte_offset, boolean properties_is_direct, int num_devices, Object out_devices, int out_devices_byte_offset, boolean out_devices_is_direct, Object num_devices_ret, int num_devices_ret_byte_offset, boolean num_devices_ret_is_direct, long procAddress);
139
140 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateSubDevices}(cl_device_id in_device, const cl_device_partition_property * properties, cl_uint num_devices, cl_device_id * out_devices, cl_uint * num_devices_ret)</code><br>
141 @param properties a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
142 @param out_devices a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
143 public int clCreateSubDevices(long in_device, PointerBuffer properties, int num_devices, PointerBuffer out_devices, int[] num_devices_ret, int num_devices_ret_offset) {
144
145 final boolean properties_is_direct = Buffers.isDirect(properties);
146 final boolean out_devices_is_direct = Buffers.isDirect(out_devices);
147 if(num_devices_ret != null && num_devices_ret.length <= num_devices_ret_offset)
148 throw new IllegalArgumentException("array offset argument \"num_devices_ret_offset\" (" + num_devices_ret_offset + ") equals or exceeds array length (" + num_devices_ret.length + ")");
149 final long __addr_ = addressTable._addressof_clCreateSubDevices;
150 if (__addr_ == 0) {
151 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSubDevices"));
152 }
153 return dispatch_clCreateSubDevices1(in_device, properties_is_direct ? ( properties != null ? properties.getBuffer() : null ) : Buffers.getArray(properties), properties_is_direct ? Buffers.getDirectBufferByteOffset(properties) : Buffers.getIndirectBufferByteOffset(properties), properties_is_direct, num_devices, out_devices_is_direct ? ( out_devices != null ? out_devices.getBuffer() : null ) : Buffers.getArray(out_devices), out_devices_is_direct ? Buffers.getDirectBufferByteOffset(out_devices) : Buffers.getIndirectBufferByteOffset(out_devices), out_devices_is_direct, num_devices_ret, Buffers.SIZEOF_INT * num_devices_ret_offset, false, __addr_);
154 }
155
156 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainDevice}(cl_device_id device)</code><br> */
157 public int clRetainDevice(long device) {
158
159 final long __addr_ = addressTable._addressof_clRetainDevice;
160 if (__addr_ == 0) {
161 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainDevice"));
162 }
163 return dispatch_clRetainDevice1(device, __addr_);
164 }
165
166 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainDevice}(cl_device_id device)</code><br> */
167 private native int dispatch_clRetainDevice1(long device, long procAddress);
168
169 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseDevice}(cl_device_id device)</code><br> */
170 public int clReleaseDevice(long device) {
171
172 final long __addr_ = addressTable._addressof_clReleaseDevice;
173 if (__addr_ == 0) {
174 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseDevice"));
175 }
176 return dispatch_clReleaseDevice1(device, __addr_);
177 }
178
179 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseDevice}(cl_device_id device)</code><br> */
180 private native int dispatch_clReleaseDevice1(long device, long procAddress);
181
182 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainContext}(cl_context context)</code><br> */
183 public int clRetainContext(long context) {
184
185 final long __addr_ = addressTable._addressof_clRetainContext;
186 if (__addr_ == 0) {
187 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainContext"));
188 }
189 return dispatch_clRetainContext1(context, __addr_);
190 }
191
192 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainContext}(cl_context context)</code><br> */
193 private native int dispatch_clRetainContext1(long context, long procAddress);
194
195 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetContextInfo}(cl_context context, cl_context_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
196 @param param_value a direct only {@link java.nio.Buffer}
197 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
198 public int clGetContextInfo(long context, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
199
200 if (!Buffers.isDirect(param_value))
201 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
202 if (!Buffers.isDirect(param_value_size_ret))
203 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
204 final long __addr_ = addressTable._addressof_clGetContextInfo;
205 if (__addr_ == 0) {
206 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetContextInfo"));
207 }
208 return dispatch_clGetContextInfo0(context, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
209 }
210
211 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetContextInfo}(cl_context context, cl_context_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
212 @param param_value a direct only {@link java.nio.Buffer}
213 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
214 private native int dispatch_clGetContextInfo0(long context, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
215
216 /** Entry point (through function pointer) to C language function: <br> <code>cl_command_queue {@native clCreateCommandQueue}(cl_context context, cl_device_id device, cl_command_queue_properties properties, cl_int * errcode_ret)</code><br>
217 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
218 public long clCreateCommandQueue(long context, long device, long properties, IntBuffer errcode_ret) {
219
220 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
221 final long __addr_ = addressTable._addressof_clCreateCommandQueue;
222 if (__addr_ == 0) {
223 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateCommandQueue"));
224 }
225 return dispatch_clCreateCommandQueue1(context, device, properties, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
226 }
227
228 /** Entry point (through function pointer) to C language function: <br> <code>cl_command_queue {@native clCreateCommandQueue}(cl_context context, cl_device_id device, cl_command_queue_properties properties, cl_int * errcode_ret)</code><br>
229 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
230 private native long dispatch_clCreateCommandQueue1(long context, long device, long properties, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
231
232 /** Entry point (through function pointer) to C language function: <br> <code>cl_command_queue {@native clCreateCommandQueue}(cl_context context, cl_device_id device, cl_command_queue_properties properties, cl_int * errcode_ret)</code><br> */
233 public long clCreateCommandQueue(long context, long device, long properties, int[] errcode_ret, int errcode_ret_offset) {
234
235 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
236 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
237 final long __addr_ = addressTable._addressof_clCreateCommandQueue;
238 if (__addr_ == 0) {
239 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateCommandQueue"));
240 }
241 return dispatch_clCreateCommandQueue1(context, device, properties, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
242 }
243
244 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainCommandQueue}(cl_command_queue command_queue)</code><br> */
245 public int clRetainCommandQueue(long command_queue) {
246
247 final long __addr_ = addressTable._addressof_clRetainCommandQueue;
248 if (__addr_ == 0) {
249 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainCommandQueue"));
250 }
251 return dispatch_clRetainCommandQueue1(command_queue, __addr_);
252 }
253
254 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainCommandQueue}(cl_command_queue command_queue)</code><br> */
255 private native int dispatch_clRetainCommandQueue1(long command_queue, long procAddress);
256
257 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseCommandQueue}(cl_command_queue command_queue)</code><br> */
258 public int clReleaseCommandQueue(long command_queue) {
259
260 final long __addr_ = addressTable._addressof_clReleaseCommandQueue;
261 if (__addr_ == 0) {
262 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseCommandQueue"));
263 }
264 return dispatch_clReleaseCommandQueue1(command_queue, __addr_);
265 }
266
267 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseCommandQueue}(cl_command_queue command_queue)</code><br> */
268 private native int dispatch_clReleaseCommandQueue1(long command_queue, long procAddress);
269
270 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetCommandQueueInfo}(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)</code><br>
271 @param param_value a direct only {@link java.nio.Buffer}
272 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
273 public int clGetCommandQueueInfo(long command_queue, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
274
275 if (!Buffers.isDirect(param_value))
276 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
277 if (!Buffers.isDirect(param_value_size_ret))
278 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
279 final long __addr_ = addressTable._addressof_clGetCommandQueueInfo;
280 if (__addr_ == 0) {
281 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetCommandQueueInfo"));
282 }
283 return dispatch_clGetCommandQueueInfo0(command_queue, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
284 }
285
286 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetCommandQueueInfo}(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)</code><br>
287 @param param_value a direct only {@link java.nio.Buffer}
288 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
289 private native int dispatch_clGetCommandQueueInfo0(long command_queue, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
290
291 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateBuffer}(cl_context context, cl_mem_flags flags, size_t size, void * host_ptr, cl_int * errcode_ret)</code><br>
292 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
293 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
294 public long clCreateBuffer(long context, long flags, long size, Buffer host_ptr, IntBuffer errcode_ret) {
295
296 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
297 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
298 final long __addr_ = addressTable._addressof_clCreateBuffer;
299 if (__addr_ == 0) {
300 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateBuffer"));
301 }
302 return dispatch_clCreateBuffer1(context, flags, size, host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
303 }
304
305 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateBuffer}(cl_context context, cl_mem_flags flags, size_t size, void * host_ptr, cl_int * errcode_ret)</code><br>
306 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
307 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
308 private native long dispatch_clCreateBuffer1(long context, long flags, long size, Object host_ptr, int host_ptr_byte_offset, boolean host_ptr_is_direct, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
309
310 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateBuffer}(cl_context context, cl_mem_flags flags, size_t size, void * host_ptr, cl_int * errcode_ret)</code><br>
311 @param host_ptr a direct or array-backed {@link java.nio.Buffer} */
312 public long clCreateBuffer(long context, long flags, long size, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset) {
313
314 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
315 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
316 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
317 final long __addr_ = addressTable._addressof_clCreateBuffer;
318 if (__addr_ == 0) {
319 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateBuffer"));
320 }
321 return dispatch_clCreateBuffer1(context, flags, size, host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
322 }
323
324 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateSubBuffer}(cl_mem buffer, cl_mem_flags flags, cl_buffer_create_type buffer_create_type, const void * buffer_create_info, cl_int * errcode_ret)</code><br>
325 @param buffer_create_info a direct or array-backed {@link java.nio.Buffer}
326 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
327 public long clCreateSubBuffer(long buffer, long flags, int buffer_create_type, Buffer buffer_create_info, IntBuffer errcode_ret) {
328
329 final boolean buffer_create_info_is_direct = Buffers.isDirect(buffer_create_info);
330 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
331 final long __addr_ = addressTable._addressof_clCreateSubBuffer;
332 if (__addr_ == 0) {
333 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSubBuffer"));
334 }
335 return dispatch_clCreateSubBuffer1(buffer, flags, buffer_create_type, buffer_create_info_is_direct ? buffer_create_info : Buffers.getArray(buffer_create_info), buffer_create_info_is_direct ? Buffers.getDirectBufferByteOffset(buffer_create_info) : Buffers.getIndirectBufferByteOffset(buffer_create_info), buffer_create_info_is_direct, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
336 }
337
338 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateSubBuffer}(cl_mem buffer, cl_mem_flags flags, cl_buffer_create_type buffer_create_type, const void * buffer_create_info, cl_int * errcode_ret)</code><br>
339 @param buffer_create_info a direct or array-backed {@link java.nio.Buffer}
340 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
341 private native long dispatch_clCreateSubBuffer1(long buffer, long flags, int buffer_create_type, Object buffer_create_info, int buffer_create_info_byte_offset, boolean buffer_create_info_is_direct, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
342
343 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateSubBuffer}(cl_mem buffer, cl_mem_flags flags, cl_buffer_create_type buffer_create_type, const void * buffer_create_info, cl_int * errcode_ret)</code><br>
344 @param buffer_create_info a direct or array-backed {@link java.nio.Buffer} */
345 public long clCreateSubBuffer(long buffer, long flags, int buffer_create_type, Buffer buffer_create_info, int[] errcode_ret, int errcode_ret_offset) {
346
347 final boolean buffer_create_info_is_direct = Buffers.isDirect(buffer_create_info);
348 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
349 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
350 final long __addr_ = addressTable._addressof_clCreateSubBuffer;
351 if (__addr_ == 0) {
352 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSubBuffer"));
353 }
354 return dispatch_clCreateSubBuffer1(buffer, flags, buffer_create_type, buffer_create_info_is_direct ? buffer_create_info : Buffers.getArray(buffer_create_info), buffer_create_info_is_direct ? Buffers.getDirectBufferByteOffset(buffer_create_info) : Buffers.getIndirectBufferByteOffset(buffer_create_info), buffer_create_info_is_direct, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
355 }
356
357 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage}(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)</code><br>
358 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
359 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
360 public long clCreateImage(long context, long flags, CLImageFormatImpl image_format, CLImageDescImpl image_desc, Buffer host_ptr, IntBuffer errcode_ret) {
361
362 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
363 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
364 final long __addr_ = addressTable._addressof_clCreateImage;
365 if (__addr_ == 0) {
366 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateImage"));
367 }
368 return dispatch_clCreateImage1(context, flags, ((image_format == null) ? null : image_format.getBuffer()), ((image_desc == null) ? null : image_desc.getBuffer()), host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
369 }
370
371 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage}(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)</code><br>
372 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
373 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
374 private native long dispatch_clCreateImage1(long context, long flags, ByteBuffer image_format, ByteBuffer image_desc, Object host_ptr, int host_ptr_byte_offset, boolean host_ptr_is_direct, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
375
376 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage}(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)</code><br>
377 @param host_ptr a direct or array-backed {@link java.nio.Buffer} */
378 public long clCreateImage(long context, long flags, CLImageFormatImpl image_format, CLImageDescImpl image_desc, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset) {
379
380 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
381 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
382 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
383 final long __addr_ = addressTable._addressof_clCreateImage;
384 if (__addr_ == 0) {
385 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateImage"));
386 }
387 return dispatch_clCreateImage1(context, flags, ((image_format == null) ? null : image_format.getBuffer()), ((image_desc == null) ? null : image_desc.getBuffer()), host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
388 }
389
390 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainMemObject}(cl_mem memobj)</code><br> */
391 public int clRetainMemObject(long memobj) {
392
393 final long __addr_ = addressTable._addressof_clRetainMemObject;
394 if (__addr_ == 0) {
395 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainMemObject"));
396 }
397 return dispatch_clRetainMemObject1(memobj, __addr_);
398 }
399
400 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainMemObject}(cl_mem memobj)</code><br> */
401 private native int dispatch_clRetainMemObject1(long memobj, long procAddress);
402
403 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseMemObject}(cl_mem memobj)</code><br> */
404 public int clReleaseMemObject(long memobj) {
405
406 final long __addr_ = addressTable._addressof_clReleaseMemObject;
407 if (__addr_ == 0) {
408 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseMemObject"));
409 }
410 return dispatch_clReleaseMemObject1(memobj, __addr_);
411 }
412
413 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseMemObject}(cl_mem memobj)</code><br> */
414 private native int dispatch_clReleaseMemObject1(long memobj, long procAddress);
415
416 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetSupportedImageFormats}(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)</code><br>
417 @param num_image_formats a direct or array-backed {@link java.nio.IntBuffer} */
418 public int clGetSupportedImageFormats(long context, long flags, int image_type, int num_entries, CLImageFormatImpl image_formats, IntBuffer num_image_formats) {
419
420 final boolean num_image_formats_is_direct = Buffers.isDirect(num_image_formats);
421 final long __addr_ = addressTable._addressof_clGetSupportedImageFormats;
422 if (__addr_ == 0) {
423 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetSupportedImageFormats"));
424 }
425 return dispatch_clGetSupportedImageFormats1(context, flags, image_type, num_entries, ((image_formats == null) ? null : image_formats.getBuffer()), num_image_formats_is_direct ? num_image_formats : Buffers.getArray(num_image_formats), num_image_formats_is_direct ? Buffers.getDirectBufferByteOffset(num_image_formats) : Buffers.getIndirectBufferByteOffset(num_image_formats), num_image_formats_is_direct, __addr_);
426 }
427
428 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetSupportedImageFormats}(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)</code><br>
429 @param num_image_formats a direct or array-backed {@link java.nio.IntBuffer} */
430 private native int dispatch_clGetSupportedImageFormats1(long context, long flags, int image_type, int num_entries, ByteBuffer image_formats, Object num_image_formats, int num_image_formats_byte_offset, boolean num_image_formats_is_direct, long procAddress);
431
432 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetSupportedImageFormats}(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)</code><br> */
433 public int clGetSupportedImageFormats(long context, long flags, int image_type, int num_entries, CLImageFormatImpl image_formats, int[] num_image_formats, int num_image_formats_offset) {
434
435 if(num_image_formats != null && num_image_formats.length <= num_image_formats_offset)
436 throw new IllegalArgumentException("array offset argument \"num_image_formats_offset\" (" + num_image_formats_offset + ") equals or exceeds array length (" + num_image_formats.length + ")");
437 final long __addr_ = addressTable._addressof_clGetSupportedImageFormats;
438 if (__addr_ == 0) {
439 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetSupportedImageFormats"));
440 }
441 return dispatch_clGetSupportedImageFormats1(context, flags, image_type, num_entries, ((image_formats == null) ? null : image_formats.getBuffer()), num_image_formats, Buffers.SIZEOF_INT * num_image_formats_offset, false, __addr_);
442 }
443
444 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetMemObjectInfo}(cl_mem memobj, cl_mem_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
445 @param param_value a direct only {@link java.nio.Buffer}
446 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
447 public int clGetMemObjectInfo(long memobj, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
448
449 if (!Buffers.isDirect(param_value))
450 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
451 if (!Buffers.isDirect(param_value_size_ret))
452 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
453 final long __addr_ = addressTable._addressof_clGetMemObjectInfo;
454 if (__addr_ == 0) {
455 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetMemObjectInfo"));
456 }
457 return dispatch_clGetMemObjectInfo0(memobj, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
458 }
459
460 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetMemObjectInfo}(cl_mem memobj, cl_mem_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
461 @param param_value a direct only {@link java.nio.Buffer}
462 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
463 private native int dispatch_clGetMemObjectInfo0(long memobj, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
464
465 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetImageInfo}(cl_mem image, cl_image_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
466 @param param_value a direct only {@link java.nio.Buffer}
467 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
468 public int clGetImageInfo(long image, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
469
470 if (!Buffers.isDirect(param_value))
471 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
472 if (!Buffers.isDirect(param_value_size_ret))
473 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
474 final long __addr_ = addressTable._addressof_clGetImageInfo;
475 if (__addr_ == 0) {
476 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetImageInfo"));
477 }
478 return dispatch_clGetImageInfo0(image, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
479 }
480
481 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetImageInfo}(cl_mem image, cl_image_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
482 @param param_value a direct only {@link java.nio.Buffer}
483 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
484 private native int dispatch_clGetImageInfo0(long image, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
485
486 /** Entry point (through function pointer) to C language function: <br> <code>cl_sampler {@native clCreateSampler}(cl_context context, cl_bool normalized_coords, cl_addressing_mode addressing_mode, cl_filter_mode filter_mode, cl_int * errcode_ret)</code><br>
487 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
488 public long clCreateSampler(long context, int normalized_coords, int addressing_mode, int filter_mode, IntBuffer errcode_ret) {
489
490 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
491 final long __addr_ = addressTable._addressof_clCreateSampler;
492 if (__addr_ == 0) {
493 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSampler"));
494 }
495 return dispatch_clCreateSampler1(context, normalized_coords, addressing_mode, filter_mode, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
496 }
497
498 /** Entry point (through function pointer) to C language function: <br> <code>cl_sampler {@native clCreateSampler}(cl_context context, cl_bool normalized_coords, cl_addressing_mode addressing_mode, cl_filter_mode filter_mode, cl_int * errcode_ret)</code><br>
499 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
500 private native long dispatch_clCreateSampler1(long context, int normalized_coords, int addressing_mode, int filter_mode, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
501
502 /** Entry point (through function pointer) to C language function: <br> <code>cl_sampler {@native clCreateSampler}(cl_context context, cl_bool normalized_coords, cl_addressing_mode addressing_mode, cl_filter_mode filter_mode, cl_int * errcode_ret)</code><br> */
503 public long clCreateSampler(long context, int normalized_coords, int addressing_mode, int filter_mode, int[] errcode_ret, int errcode_ret_offset) {
504
505 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
506 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
507 final long __addr_ = addressTable._addressof_clCreateSampler;
508 if (__addr_ == 0) {
509 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSampler"));
510 }
511 return dispatch_clCreateSampler1(context, normalized_coords, addressing_mode, filter_mode, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
512 }
513
514 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainSampler}(cl_sampler sampler)</code><br> */
515 public int clRetainSampler(long sampler) {
516
517 final long __addr_ = addressTable._addressof_clRetainSampler;
518 if (__addr_ == 0) {
519 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainSampler"));
520 }
521 return dispatch_clRetainSampler1(sampler, __addr_);
522 }
523
524 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainSampler}(cl_sampler sampler)</code><br> */
525 private native int dispatch_clRetainSampler1(long sampler, long procAddress);
526
527 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseSampler}(cl_sampler sampler)</code><br> */
528 public int clReleaseSampler(long sampler) {
529
530 final long __addr_ = addressTable._addressof_clReleaseSampler;
531 if (__addr_ == 0) {
532 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseSampler"));
533 }
534 return dispatch_clReleaseSampler1(sampler, __addr_);
535 }
536
537 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseSampler}(cl_sampler sampler)</code><br> */
538 private native int dispatch_clReleaseSampler1(long sampler, long procAddress);
539
540 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetSamplerInfo}(cl_sampler sampler, cl_sampler_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
541 @param param_value a direct only {@link java.nio.Buffer}
542 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
543 public int clGetSamplerInfo(long sampler, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
544
545 if (!Buffers.isDirect(param_value))
546 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
547 if (!Buffers.isDirect(param_value_size_ret))
548 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
549 final long __addr_ = addressTable._addressof_clGetSamplerInfo;
550 if (__addr_ == 0) {
551 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetSamplerInfo"));
552 }
553 return dispatch_clGetSamplerInfo0(sampler, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
554 }
555
556 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetSamplerInfo}(cl_sampler sampler, cl_sampler_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
557 @param param_value a direct only {@link java.nio.Buffer}
558 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
559 private native int dispatch_clGetSamplerInfo0(long sampler, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
560
561 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithSource}(cl_context context, cl_uint count, const char * * strings, const size_t * lengths, cl_int * errcode_ret)</code><br>
562 @param lengths a direct only {@link com.jogamp.common.nio.PointerBuffer}
563 @param errcode_ret a direct only {@link java.nio.IntBuffer} */
564 public long clCreateProgramWithSource(long context, int count, String[] strings, PointerBuffer lengths, IntBuffer errcode_ret) {
565
566 if (!Buffers.isDirect(lengths))
567 throw new IllegalArgumentException("Argument \"lengths\" is not a direct buffer");
568 if (!Buffers.isDirect(errcode_ret))
569 throw new IllegalArgumentException("Argument \"errcode_ret\" is not a direct buffer");
570 final long __addr_ = addressTable._addressof_clCreateProgramWithSource;
571 if (__addr_ == 0) {
572 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateProgramWithSource"));
573 }
574 return dispatch_clCreateProgramWithSource0(context, count, strings, lengths != null ? lengths.getBuffer() : null, Buffers.getDirectBufferByteOffset(lengths), errcode_ret, Buffers.getDirectBufferByteOffset(errcode_ret), __addr_);
575 }
576
577 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithSource}(cl_context context, cl_uint count, const char * * strings, const size_t * lengths, cl_int * errcode_ret)</code><br>
578 @param lengths a direct only {@link com.jogamp.common.nio.PointerBuffer}
579 @param errcode_ret a direct only {@link java.nio.IntBuffer} */
580 private native long dispatch_clCreateProgramWithSource0(long context, int count, String[] strings, Object lengths, int lengths_byte_offset, Object errcode_ret, int errcode_ret_byte_offset, long procAddress);
581
582 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithBinary}(cl_context context, cl_uint num_devices, const cl_device_id * device_list, const size_t * lengths, unsigned const char * * binaries, cl_int * binary_status, cl_int * errcode_ret)</code><br>
583 @param device_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
584 @param lengths a direct only {@link com.jogamp.common.nio.PointerBuffer}
585 @param binaries a direct only {@link com.jogamp.common.nio.PointerBuffer}
586 @param binary_status a direct only {@link java.nio.IntBuffer}
587 @param errcode_ret a direct only {@link java.nio.IntBuffer} */
588 public long clCreateProgramWithBinary(long context, int num_devices, PointerBuffer device_list, PointerBuffer lengths, PointerBuffer binaries, IntBuffer binary_status, IntBuffer errcode_ret) {
589
590 if (!Buffers.isDirect(device_list))
591 throw new IllegalArgumentException("Argument \"device_list\" is not a direct buffer");
592 if (!Buffers.isDirect(lengths))
593 throw new IllegalArgumentException("Argument \"lengths\" is not a direct buffer");
594 if (!Buffers.isDirect(binaries))
595 throw new IllegalArgumentException("Argument \"binaries\" is not a direct buffer");
596 if (!Buffers.isDirect(binary_status))
597 throw new IllegalArgumentException("Argument \"binary_status\" is not a direct buffer");
598 if (!Buffers.isDirect(errcode_ret))
599 throw new IllegalArgumentException("Argument \"errcode_ret\" is not a direct buffer");
600 final long __addr_ = addressTable._addressof_clCreateProgramWithBinary;
601 if (__addr_ == 0) {
602 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateProgramWithBinary"));
603 }
604 return dispatch_clCreateProgramWithBinary0(context, num_devices, device_list != null ? device_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(device_list), lengths != null ? lengths.getBuffer() : null, Buffers.getDirectBufferByteOffset(lengths), binaries != null ? binaries.getBuffer() : null, Buffers.getDirectBufferByteOffset(binaries), binary_status, Buffers.getDirectBufferByteOffset(binary_status), errcode_ret, Buffers.getDirectBufferByteOffset(errcode_ret), __addr_);
605 }
606
607 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithBinary}(cl_context context, cl_uint num_devices, const cl_device_id * device_list, const size_t * lengths, unsigned const char * * binaries, cl_int * binary_status, cl_int * errcode_ret)</code><br>
608 @param device_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
609 @param lengths a direct only {@link com.jogamp.common.nio.PointerBuffer}
610 @param binaries a direct only {@link com.jogamp.common.nio.PointerBuffer}
611 @param binary_status a direct only {@link java.nio.IntBuffer}
612 @param errcode_ret a direct only {@link java.nio.IntBuffer} */
613 private native long dispatch_clCreateProgramWithBinary0(long context, int num_devices, Object device_list, int device_list_byte_offset, Object lengths, int lengths_byte_offset, Object binaries, int binaries_byte_offset, Object binary_status, int binary_status_byte_offset, Object errcode_ret, int errcode_ret_byte_offset, long procAddress);
614
615 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithBuiltInKernels}(cl_context context, cl_uint num_devices, const cl_device_id * device_list, const char * kernel_names, cl_int * errcode_ret)</code><br>
616 @param device_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
617 @param kernel_names a direct or array-backed {@link java.nio.ByteBuffer}
618 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
619 public long clCreateProgramWithBuiltInKernels(long context, int num_devices, PointerBuffer device_list, ByteBuffer kernel_names, IntBuffer errcode_ret) {
620
621 final boolean device_list_is_direct = Buffers.isDirect(device_list);
622 final boolean kernel_names_is_direct = Buffers.isDirect(kernel_names);
623 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
624 final long __addr_ = addressTable._addressof_clCreateProgramWithBuiltInKernels;
625 if (__addr_ == 0) {
626 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateProgramWithBuiltInKernels"));
627 }
628 return dispatch_clCreateProgramWithBuiltInKernels1(context, num_devices, device_list_is_direct ? ( device_list != null ? device_list.getBuffer() : null ) : Buffers.getArray(device_list), device_list_is_direct ? Buffers.getDirectBufferByteOffset(device_list) : Buffers.getIndirectBufferByteOffset(device_list), device_list_is_direct, kernel_names_is_direct ? kernel_names : Buffers.getArray(kernel_names), kernel_names_is_direct ? Buffers.getDirectBufferByteOffset(kernel_names) : Buffers.getIndirectBufferByteOffset(kernel_names), kernel_names_is_direct, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
629 }
630
631 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithBuiltInKernels}(cl_context context, cl_uint num_devices, const cl_device_id * device_list, const char * kernel_names, cl_int * errcode_ret)</code><br>
632 @param device_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
633 @param kernel_names a direct or array-backed {@link java.nio.ByteBuffer}
634 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
635 private native long dispatch_clCreateProgramWithBuiltInKernels1(long context, int num_devices, Object device_list, int device_list_byte_offset, boolean device_list_is_direct, Object kernel_names, int kernel_names_byte_offset, boolean kernel_names_is_direct, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
636
637 /** Entry point (through function pointer) to C language function: <br> <code>cl_program {@native clCreateProgramWithBuiltInKernels}(cl_context context, cl_uint num_devices, const cl_device_id * device_list, const char * kernel_names, cl_int * errcode_ret)</code><br>
638 @param device_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
639 public long clCreateProgramWithBuiltInKernels(long context, int num_devices, PointerBuffer device_list, byte[] kernel_names, int kernel_names_offset, int[] errcode_ret, int errcode_ret_offset) {
640
641 final boolean device_list_is_direct = Buffers.isDirect(device_list);
642 if(kernel_names != null && kernel_names.length <= kernel_names_offset)
643 throw new IllegalArgumentException("array offset argument \"kernel_names_offset\" (" + kernel_names_offset + ") equals or exceeds array length (" + kernel_names.length + ")");
644 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
645 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
646 final long __addr_ = addressTable._addressof_clCreateProgramWithBuiltInKernels;
647 if (__addr_ == 0) {
648 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateProgramWithBuiltInKernels"));
649 }
650 return dispatch_clCreateProgramWithBuiltInKernels1(context, num_devices, device_list_is_direct ? ( device_list != null ? device_list.getBuffer() : null ) : Buffers.getArray(device_list), device_list_is_direct ? Buffers.getDirectBufferByteOffset(device_list) : Buffers.getIndirectBufferByteOffset(device_list), device_list_is_direct, kernel_names, kernel_names_offset, false, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
651 }
652
653 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainProgram}(cl_program program)</code><br> */
654 public int clRetainProgram(long program) {
655
656 final long __addr_ = addressTable._addressof_clRetainProgram;
657 if (__addr_ == 0) {
658 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainProgram"));
659 }
660 return dispatch_clRetainProgram1(program, __addr_);
661 }
662
663 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainProgram}(cl_program program)</code><br> */
664 private native int dispatch_clRetainProgram1(long program, long procAddress);
665
666 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseProgram}(cl_program program)</code><br> */
667 public int clReleaseProgram(long program) {
668
669 final long __addr_ = addressTable._addressof_clReleaseProgram;
670 if (__addr_ == 0) {
671 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseProgram"));
672 }
673 return dispatch_clReleaseProgram1(program, __addr_);
674 }
675
676 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseProgram}(cl_program program)</code><br> */
677 private native int dispatch_clReleaseProgram1(long program, long procAddress);
678
679 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clUnloadPlatformCompiler}(cl_platform_id platform)</code><br> */
680 public int clUnloadPlatformCompiler(long platform) {
681
682 final long __addr_ = addressTable._addressof_clUnloadPlatformCompiler;
683 if (__addr_ == 0) {
684 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clUnloadPlatformCompiler"));
685 }
686 return dispatch_clUnloadPlatformCompiler1(platform, __addr_);
687 }
688
689 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clUnloadPlatformCompiler}(cl_platform_id platform)</code><br> */
690 private native int dispatch_clUnloadPlatformCompiler1(long platform, long procAddress);
691
692 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetProgramInfo}(cl_program program, cl_program_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
693 @param param_value a direct only {@link java.nio.Buffer}
694 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
695 public int clGetProgramInfo(long program, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
696
697 if (!Buffers.isDirect(param_value))
698 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
699 if (!Buffers.isDirect(param_value_size_ret))
700 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
701 final long __addr_ = addressTable._addressof_clGetProgramInfo;
702 if (__addr_ == 0) {
703 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetProgramInfo"));
704 }
705 return dispatch_clGetProgramInfo0(program, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
706 }
707
708 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetProgramInfo}(cl_program program, cl_program_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
709 @param param_value a direct only {@link java.nio.Buffer}
710 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
711 private native int dispatch_clGetProgramInfo0(long program, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
712
713 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetProgramBuildInfo}(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)</code><br>
714 @param param_value a direct only {@link java.nio.Buffer}
715 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
716 public int clGetProgramBuildInfo(long program, long device, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
717
718 if (!Buffers.isDirect(param_value))
719 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
720 if (!Buffers.isDirect(param_value_size_ret))
721 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
722 final long __addr_ = addressTable._addressof_clGetProgramBuildInfo;
723 if (__addr_ == 0) {
724 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetProgramBuildInfo"));
725 }
726 return dispatch_clGetProgramBuildInfo0(program, device, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
727 }
728
729 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetProgramBuildInfo}(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)</code><br>
730 @param param_value a direct only {@link java.nio.Buffer}
731 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
732 private native int dispatch_clGetProgramBuildInfo0(long program, long device, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
733
734 /** Entry point (through function pointer) to C language function: <br> <code>cl_kernel {@native clCreateKernel}(cl_program program, const char * kernel_name, cl_int * errcode_ret)</code><br>
735 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
736 public long clCreateKernel(long program, String kernel_name, IntBuffer errcode_ret) {
737
738 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
739 final long __addr_ = addressTable._addressof_clCreateKernel;
740 if (__addr_ == 0) {
741 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateKernel"));
742 }
743 return dispatch_clCreateKernel1(program, kernel_name, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
744 }
745
746 /** Entry point (through function pointer) to C language function: <br> <code>cl_kernel {@native clCreateKernel}(cl_program program, const char * kernel_name, cl_int * errcode_ret)</code><br>
747 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
748 private native long dispatch_clCreateKernel1(long program, String kernel_name, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
749
750 /** Entry point (through function pointer) to C language function: <br> <code>cl_kernel {@native clCreateKernel}(cl_program program, const char * kernel_name, cl_int * errcode_ret)</code><br> */
751 public long clCreateKernel(long program, String kernel_name, int[] errcode_ret, int errcode_ret_offset) {
752
753 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
754 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
755 final long __addr_ = addressTable._addressof_clCreateKernel;
756 if (__addr_ == 0) {
757 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateKernel"));
758 }
759 return dispatch_clCreateKernel1(program, kernel_name, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
760 }
761
762 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateKernelsInProgram}(cl_program program, cl_uint num_kernels, cl_kernel * kernels, cl_uint * num_kernels_ret)</code><br>
763 @param kernels a direct only {@link com.jogamp.common.nio.PointerBuffer}
764 @param num_kernels_ret a direct only {@link java.nio.IntBuffer} */
765 public int clCreateKernelsInProgram(long program, int num_kernels, PointerBuffer kernels, IntBuffer num_kernels_ret) {
766
767 if (!Buffers.isDirect(kernels))
768 throw new IllegalArgumentException("Argument \"kernels\" is not a direct buffer");
769 if (!Buffers.isDirect(num_kernels_ret))
770 throw new IllegalArgumentException("Argument \"num_kernels_ret\" is not a direct buffer");
771 final long __addr_ = addressTable._addressof_clCreateKernelsInProgram;
772 if (__addr_ == 0) {
773 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateKernelsInProgram"));
774 }
775 return dispatch_clCreateKernelsInProgram0(program, num_kernels, kernels != null ? kernels.getBuffer() : null, Buffers.getDirectBufferByteOffset(kernels), num_kernels_ret, Buffers.getDirectBufferByteOffset(num_kernels_ret), __addr_);
776 }
777
778 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateKernelsInProgram}(cl_program program, cl_uint num_kernels, cl_kernel * kernels, cl_uint * num_kernels_ret)</code><br>
779 @param kernels a direct only {@link com.jogamp.common.nio.PointerBuffer}
780 @param num_kernels_ret a direct only {@link java.nio.IntBuffer} */
781 private native int dispatch_clCreateKernelsInProgram0(long program, int num_kernels, Object kernels, int kernels_byte_offset, Object num_kernels_ret, int num_kernels_ret_byte_offset, long procAddress);
782
783 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainKernel}(cl_kernel kernel)</code><br> */
784 public int clRetainKernel(long kernel) {
785
786 final long __addr_ = addressTable._addressof_clRetainKernel;
787 if (__addr_ == 0) {
788 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainKernel"));
789 }
790 return dispatch_clRetainKernel1(kernel, __addr_);
791 }
792
793 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainKernel}(cl_kernel kernel)</code><br> */
794 private native int dispatch_clRetainKernel1(long kernel, long procAddress);
795
796 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseKernel}(cl_kernel kernel)</code><br> */
797 public int clReleaseKernel(long kernel) {
798
799 final long __addr_ = addressTable._addressof_clReleaseKernel;
800 if (__addr_ == 0) {
801 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseKernel"));
802 }
803 return dispatch_clReleaseKernel1(kernel, __addr_);
804 }
805
806 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseKernel}(cl_kernel kernel)</code><br> */
807 private native int dispatch_clReleaseKernel1(long kernel, long procAddress);
808
809 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clSetKernelArg}(cl_kernel kernel, cl_uint arg_index, size_t arg_size, const void * arg_value)</code><br>
810 @param arg_value a direct only {@link java.nio.Buffer} */
811 public int clSetKernelArg(long kernel, int arg_index, long arg_size, Buffer arg_value) {
812
813 if (!Buffers.isDirect(arg_value))
814 throw new IllegalArgumentException("Argument \"arg_value\" is not a direct buffer");
815 final long __addr_ = addressTable._addressof_clSetKernelArg;
816 if (__addr_ == 0) {
817 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clSetKernelArg"));
818 }
819 return dispatch_clSetKernelArg0(kernel, arg_index, arg_size, arg_value, Buffers.getDirectBufferByteOffset(arg_value), __addr_);
820 }
821
822 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clSetKernelArg}(cl_kernel kernel, cl_uint arg_index, size_t arg_size, const void * arg_value)</code><br>
823 @param arg_value a direct only {@link java.nio.Buffer} */
824 private native int dispatch_clSetKernelArg0(long kernel, int arg_index, long arg_size, Object arg_value, int arg_value_byte_offset, long procAddress);
825
826 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetKernelInfo}(cl_kernel kernel, cl_kernel_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
827 @param param_value a direct only {@link java.nio.Buffer}
828 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
829 public int clGetKernelInfo(long kernel, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
830
831 if (!Buffers.isDirect(param_value))
832 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
833 if (!Buffers.isDirect(param_value_size_ret))
834 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
835 final long __addr_ = addressTable._addressof_clGetKernelInfo;
836 if (__addr_ == 0) {
837 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetKernelInfo"));
838 }
839 return dispatch_clGetKernelInfo0(kernel, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
840 }
841
842 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetKernelInfo}(cl_kernel kernel, cl_kernel_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
843 @param param_value a direct only {@link java.nio.Buffer}
844 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
845 private native int dispatch_clGetKernelInfo0(long kernel, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
846
847 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetKernelArgInfo}(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)</code><br>
848 @param param_value a direct or array-backed {@link java.nio.Buffer}
849 @param param_value_size_ret a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
850 public int clGetKernelArgInfo(long kernel, int arg_indx, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
851
852 final boolean param_value_is_direct = Buffers.isDirect(param_value);
853 final boolean param_value_size_ret_is_direct = Buffers.isDirect(param_value_size_ret);
854 final long __addr_ = addressTable._addressof_clGetKernelArgInfo;
855 if (__addr_ == 0) {
856 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetKernelArgInfo"));
857 }
858 return dispatch_clGetKernelArgInfo1(kernel, arg_indx, param_name, param_value_size, param_value_is_direct ? param_value : Buffers.getArray(param_value), param_value_is_direct ? Buffers.getDirectBufferByteOffset(param_value) : Buffers.getIndirectBufferByteOffset(param_value), param_value_is_direct, param_value_size_ret_is_direct ? ( param_value_size_ret != null ? param_value_size_ret.getBuffer() : null ) : Buffers.getArray(param_value_size_ret), param_value_size_ret_is_direct ? Buffers.getDirectBufferByteOffset(param_value_size_ret) : Buffers.getIndirectBufferByteOffset(param_value_size_ret), param_value_size_ret_is_direct, __addr_);
859 }
860
861 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetKernelArgInfo}(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)</code><br>
862 @param param_value a direct or array-backed {@link java.nio.Buffer}
863 @param param_value_size_ret a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
864 private native int dispatch_clGetKernelArgInfo1(long kernel, int arg_indx, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, boolean param_value_is_direct, Object param_value_size_ret, int param_value_size_ret_byte_offset, boolean param_value_size_ret_is_direct, long procAddress);
865
866 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetKernelWorkGroupInfo}(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)</code><br>
867 @param param_value a direct only {@link java.nio.Buffer}
868 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
869 public int clGetKernelWorkGroupInfo(long kernel, long device, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
870
871 if (!Buffers.isDirect(param_value))
872 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
873 if (!Buffers.isDirect(param_value_size_ret))
874 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
875 final long __addr_ = addressTable._addressof_clGetKernelWorkGroupInfo;
876 if (__addr_ == 0) {
877 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetKernelWorkGroupInfo"));
878 }
879 return dispatch_clGetKernelWorkGroupInfo0(kernel, device, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
880 }
881
882 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetKernelWorkGroupInfo}(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)</code><br>
883 @param param_value a direct only {@link java.nio.Buffer}
884 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
885 private native int dispatch_clGetKernelWorkGroupInfo0(long kernel, long device, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
886
887 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clWaitForEvents}(cl_uint num_events, const cl_event * event_list)</code><br>
888 @param event_list a direct only {@link com.jogamp.common.nio.PointerBuffer} */
889 public int clWaitForEvents(int num_events, PointerBuffer event_list) {
890
891 if (!Buffers.isDirect(event_list))
892 throw new IllegalArgumentException("Argument \"event_list\" is not a direct buffer");
893 final long __addr_ = addressTable._addressof_clWaitForEvents;
894 if (__addr_ == 0) {
895 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clWaitForEvents"));
896 }
897 return dispatch_clWaitForEvents0(num_events, event_list != null ? event_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_list), __addr_);
898 }
899
900 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clWaitForEvents}(cl_uint num_events, const cl_event * event_list)</code><br>
901 @param event_list a direct only {@link com.jogamp.common.nio.PointerBuffer} */
902 private native int dispatch_clWaitForEvents0(int num_events, Object event_list, int event_list_byte_offset, long procAddress);
903
904 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetEventInfo}(cl_event event, cl_event_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
905 @param param_value a direct only {@link java.nio.Buffer}
906 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
907 public int clGetEventInfo(long event, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
908
909 if (!Buffers.isDirect(param_value))
910 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
911 if (!Buffers.isDirect(param_value_size_ret))
912 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
913 final long __addr_ = addressTable._addressof_clGetEventInfo;
914 if (__addr_ == 0) {
915 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetEventInfo"));
916 }
917 return dispatch_clGetEventInfo0(event, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
918 }
919
920 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetEventInfo}(cl_event event, cl_event_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
921 @param param_value a direct only {@link java.nio.Buffer}
922 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
923 private native int dispatch_clGetEventInfo0(long event, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
924
925 /** Entry point (through function pointer) to C language function: <br> <code>cl_event {@native clCreateUserEvent}(cl_context context, cl_int * errcode_ret)</code><br>
926 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
927 public long clCreateUserEvent(long context, IntBuffer errcode_ret) {
928
929 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
930 final long __addr_ = addressTable._addressof_clCreateUserEvent;
931 if (__addr_ == 0) {
932 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateUserEvent"));
933 }
934 return dispatch_clCreateUserEvent1(context, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
935 }
936
937 /** Entry point (through function pointer) to C language function: <br> <code>cl_event {@native clCreateUserEvent}(cl_context context, cl_int * errcode_ret)</code><br>
938 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
939 private native long dispatch_clCreateUserEvent1(long context, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
940
941 /** Entry point (through function pointer) to C language function: <br> <code>cl_event {@native clCreateUserEvent}(cl_context context, cl_int * errcode_ret)</code><br> */
942 public long clCreateUserEvent(long context, int[] errcode_ret, int errcode_ret_offset) {
943
944 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
945 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
946 final long __addr_ = addressTable._addressof_clCreateUserEvent;
947 if (__addr_ == 0) {
948 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateUserEvent"));
949 }
950 return dispatch_clCreateUserEvent1(context, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
951 }
952
953 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainEvent}(cl_event event)</code><br> */
954 public int clRetainEvent(long event) {
955
956 final long __addr_ = addressTable._addressof_clRetainEvent;
957 if (__addr_ == 0) {
958 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainEvent"));
959 }
960 return dispatch_clRetainEvent1(event, __addr_);
961 }
962
963 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainEvent}(cl_event event)</code><br> */
964 private native int dispatch_clRetainEvent1(long event, long procAddress);
965
966 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseEvent}(cl_event event)</code><br> */
967 public int clReleaseEvent(long event) {
968
969 final long __addr_ = addressTable._addressof_clReleaseEvent;
970 if (__addr_ == 0) {
971 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseEvent"));
972 }
973 return dispatch_clReleaseEvent1(event, __addr_);
974 }
975
976 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseEvent}(cl_event event)</code><br> */
977 private native int dispatch_clReleaseEvent1(long event, long procAddress);
978
979 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clSetUserEventStatus}(cl_event event, cl_int execution_status)</code><br> */
980 public int clSetUserEventStatus(long event, int execution_status) {
981
982 final long __addr_ = addressTable._addressof_clSetUserEventStatus;
983 if (__addr_ == 0) {
984 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clSetUserEventStatus"));
985 }
986 return dispatch_clSetUserEventStatus1(event, execution_status, __addr_);
987 }
988
989 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clSetUserEventStatus}(cl_event event, cl_int execution_status)</code><br> */
990 private native int dispatch_clSetUserEventStatus1(long event, int execution_status, long procAddress);
991
992 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetEventProfilingInfo}(cl_event event, cl_profiling_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
993 @param param_value a direct only {@link java.nio.Buffer}
994 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
995 public int clGetEventProfilingInfo(long event, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
996
997 if (!Buffers.isDirect(param_value))
998 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
999 if (!Buffers.isDirect(param_value_size_ret))
1000 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
1001 final long __addr_ = addressTable._addressof_clGetEventProfilingInfo;
1002 if (__addr_ == 0) {
1003 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetEventProfilingInfo"));
1004 }
1005 return dispatch_clGetEventProfilingInfo0(event, param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
1006 }
1007
1008 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetEventProfilingInfo}(cl_event event, cl_profiling_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
1009 @param param_value a direct only {@link java.nio.Buffer}
1010 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1011 private native int dispatch_clGetEventProfilingInfo0(long event, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
1012
1013 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clFlush}(cl_command_queue command_queue)</code><br> */
1014 public int clFlush(long command_queue) {
1015
1016 final long __addr_ = addressTable._addressof_clFlush;
1017 if (__addr_ == 0) {
1018 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clFlush"));
1019 }
1020 return dispatch_clFlush1(command_queue, __addr_);
1021 }
1022
1023 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clFlush}(cl_command_queue command_queue)</code><br> */
1024 private native int dispatch_clFlush1(long command_queue, long procAddress);
1025
1026 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clFinish}(cl_command_queue command_queue)</code><br> */
1027 public int clFinish(long command_queue) {
1028
1029 final long __addr_ = addressTable._addressof_clFinish;
1030 if (__addr_ == 0) {
1031 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clFinish"));
1032 }
1033 return dispatch_clFinish1(command_queue, __addr_);
1034 }
1035
1036 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clFinish}(cl_command_queue command_queue)</code><br> */
1037 private native int dispatch_clFinish1(long command_queue, long procAddress);
1038
1039 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReadBuffer}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_read, size_t offset, size_t size, void * ptr, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1040 @param ptr a direct only {@link java.nio.Buffer}
1041 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1042 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1043 public int clEnqueueReadBuffer(long command_queue, long buffer, int blocking_read, long offset, long size, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1044
1045 if (!Buffers.isDirect(ptr))
1046 throw new IllegalArgumentException("Argument \"ptr\" is not a direct buffer");
1047 if (!Buffers.isDirect(event_wait_list))
1048 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1049 if (!Buffers.isDirect(event))
1050 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1051 final long __addr_ = addressTable._addressof_clEnqueueReadBuffer;
1052 if (__addr_ == 0) {
1053 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueReadBuffer"));
1054 }
1055 return dispatch_clEnqueueReadBuffer0(command_queue, buffer, blocking_read, offset, size, ptr, Buffers.getDirectBufferByteOffset(ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1056 }
1057
1058 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReadBuffer}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_read, size_t offset, size_t size, void * ptr, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1059 @param ptr a direct only {@link java.nio.Buffer}
1060 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1061 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1062 private native int dispatch_clEnqueueReadBuffer0(long command_queue, long buffer, int blocking_read, long offset, long size, Object ptr, int ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1063
1064 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReadBufferRect}(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)</code><br>
1065 @param buffer_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1066 @param host_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1067 @param region a direct only {@link com.jogamp.common.nio.PointerBuffer}
1068 @param ptr a direct only {@link java.nio.Buffer}
1069 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1070 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1071 public int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1072
1073 if (!Buffers.isDirect(buffer_offset))
1074 throw new IllegalArgumentException("Argument \"buffer_offset\" is not a direct buffer");
1075 if (!Buffers.isDirect(host_offset))
1076 throw new IllegalArgumentException("Argument \"host_offset\" is not a direct buffer");
1077 if (!Buffers.isDirect(region))
1078 throw new IllegalArgumentException("Argument \"region\" is not a direct buffer");
1079 if (!Buffers.isDirect(ptr))
1080 throw new IllegalArgumentException("Argument \"ptr\" is not a direct buffer");
1081 if (!Buffers.isDirect(event_wait_list))
1082 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1083 if (!Buffers.isDirect(event))
1084 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1085 final long __addr_ = addressTable._addressof_clEnqueueReadBufferRect;
1086 if (__addr_ == 0) {
1087 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueReadBufferRect"));
1088 }
1089 return dispatch_clEnqueueReadBufferRect0(command_queue, buffer, blocking_read, buffer_offset != null ? buffer_offset.getBuffer() : null, Buffers.getDirectBufferByteOffset(buffer_offset), host_offset != null ? host_offset.getBuffer() : null, Buffers.getDirectBufferByteOffset(host_offset), region != null ? region.getBuffer() : null, Buffers.getDirectBufferByteOffset(region), buffer_row_pitch, buffer_slice_pitch, host_row_pitch, host_slice_pitch, ptr, Buffers.getDirectBufferByteOffset(ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1090 }
1091
1092 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReadBufferRect}(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)</code><br>
1093 @param buffer_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1094 @param host_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1095 @param region a direct only {@link com.jogamp.common.nio.PointerBuffer}
1096 @param ptr a direct only {@link java.nio.Buffer}
1097 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1098 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1099 private native int dispatch_clEnqueueReadBufferRect0(long command_queue, long buffer, int blocking_read, Object buffer_offset, int buffer_offset_byte_offset, Object host_offset, int host_offset_byte_offset, Object region, int region_byte_offset, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, Object ptr, int ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1100
1101 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWriteBuffer}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_write, size_t offset, size_t size, const void * ptr, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1102 @param ptr a direct only {@link java.nio.Buffer}
1103 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1104 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1105 public int clEnqueueWriteBuffer(long command_queue, long buffer, int blocking_write, long offset, long size, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1106
1107 if (!Buffers.isDirect(ptr))
1108 throw new IllegalArgumentException("Argument \"ptr\" is not a direct buffer");
1109 if (!Buffers.isDirect(event_wait_list))
1110 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1111 if (!Buffers.isDirect(event))
1112 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1113 final long __addr_ = addressTable._addressof_clEnqueueWriteBuffer;
1114 if (__addr_ == 0) {
1115 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueWriteBuffer"));
1116 }
1117 return dispatch_clEnqueueWriteBuffer0(command_queue, buffer, blocking_write, offset, size, ptr, Buffers.getDirectBufferByteOffset(ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1118 }
1119
1120 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWriteBuffer}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_write, size_t offset, size_t size, const void * ptr, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1121 @param ptr a direct only {@link java.nio.Buffer}
1122 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1123 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1124 private native int dispatch_clEnqueueWriteBuffer0(long command_queue, long buffer, int blocking_write, long offset, long size, Object ptr, int ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1125
1126 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWriteBufferRect}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_write, 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)</code><br>
1127 @param buffer_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1128 @param host_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1129 @param region a direct only {@link com.jogamp.common.nio.PointerBuffer}
1130 @param ptr a direct only {@link java.nio.Buffer}
1131 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1132 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1133 public int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1134
1135 if (!Buffers.isDirect(buffer_offset))
1136 throw new IllegalArgumentException("Argument \"buffer_offset\" is not a direct buffer");
1137 if (!Buffers.isDirect(host_offset))
1138 throw new IllegalArgumentException("Argument \"host_offset\" is not a direct buffer");
1139 if (!Buffers.isDirect(region))
1140 throw new IllegalArgumentException("Argument \"region\" is not a direct buffer");
1141 if (!Buffers.isDirect(ptr))
1142 throw new IllegalArgumentException("Argument \"ptr\" is not a direct buffer");
1143 if (!Buffers.isDirect(event_wait_list))
1144 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1145 if (!Buffers.isDirect(event))
1146 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1147 final long __addr_ = addressTable._addressof_clEnqueueWriteBufferRect;
1148 if (__addr_ == 0) {
1149 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueWriteBufferRect"));
1150 }
1151 return dispatch_clEnqueueWriteBufferRect0(command_queue, buffer, blocking_write, buffer_offset != null ? buffer_offset.getBuffer() : null, Buffers.getDirectBufferByteOffset(buffer_offset), host_offset != null ? host_offset.getBuffer() : null, Buffers.getDirectBufferByteOffset(host_offset), region != null ? region.getBuffer() : null, Buffers.getDirectBufferByteOffset(region), buffer_row_pitch, buffer_slice_pitch, host_row_pitch, host_slice_pitch, ptr, Buffers.getDirectBufferByteOffset(ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1152 }
1153
1154 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWriteBufferRect}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_write, 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)</code><br>
1155 @param buffer_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1156 @param host_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1157 @param region a direct only {@link com.jogamp.common.nio.PointerBuffer}
1158 @param ptr a direct only {@link java.nio.Buffer}
1159 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1160 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1161 private native int dispatch_clEnqueueWriteBufferRect0(long command_queue, long buffer, int blocking_write, Object buffer_offset, int buffer_offset_byte_offset, Object host_offset, int host_offset_byte_offset, Object region, int region_byte_offset, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, Object ptr, int ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1162
1163 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueFillBuffer}(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)</code><br>
1164 @param pattern a direct or array-backed {@link java.nio.Buffer}
1165 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1166 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1167 public int clEnqueueFillBuffer(long command_queue, long buffer, Buffer pattern, long pattern_size, long offset, long size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1168
1169 final boolean pattern_is_direct = Buffers.isDirect(pattern);
1170 final boolean event_wait_list_is_direct = Buffers.isDirect(event_wait_list);
1171 final boolean event_is_direct = Buffers.isDirect(event);
1172 final long __addr_ = addressTable._addressof_clEnqueueFillBuffer;
1173 if (__addr_ == 0) {
1174 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueFillBuffer"));
1175 }
1176 return dispatch_clEnqueueFillBuffer1(command_queue, buffer, pattern_is_direct ? pattern : Buffers.getArray(pattern), pattern_is_direct ? Buffers.getDirectBufferByteOffset(pattern) : Buffers.getIndirectBufferByteOffset(pattern), pattern_is_direct, pattern_size, offset, size, num_events_in_wait_list, event_wait_list_is_direct ? ( event_wait_list != null ? event_wait_list.getBuffer() : null ) : Buffers.getArray(event_wait_list), event_wait_list_is_direct ? Buffers.getDirectBufferByteOffset(event_wait_list) : Buffers.getIndirectBufferByteOffset(event_wait_list), event_wait_list_is_direct, event_is_direct ? ( event != null ? event.getBuffer() : null ) : Buffers.getArray(event), event_is_direct ? Buffers.getDirectBufferByteOffset(event) : Buffers.getIndirectBufferByteOffset(event), event_is_direct, __addr_);
1177 }
1178
1179 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueFillBuffer}(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)</code><br>
1180 @param pattern a direct or array-backed {@link java.nio.Buffer}
1181 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1182 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1183 private native int dispatch_clEnqueueFillBuffer1(long command_queue, long buffer, Object pattern, int pattern_byte_offset, boolean pattern_is_direct, long pattern_size, long offset, long size, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, boolean event_wait_list_is_direct, Object event, int event_byte_offset, boolean event_is_direct, long procAddress);
1184
1185 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyBuffer}(cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_buffer, size_t src_offset, size_t dst_offset, size_t size, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1186 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1187 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1188 public int clEnqueueCopyBuffer(long command_queue, long src_buffer, long dst_buffer, long src_offset, long dst_offset, long size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1189
1190 if (!Buffers.isDirect(event_wait_list))
1191 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1192 if (!Buffers.isDirect(event))
1193 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1194 final long __addr_ = addressTable._addressof_clEnqueueCopyBuffer;
1195 if (__addr_ == 0) {
1196 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueCopyBuffer"));
1197 }
1198 return dispatch_clEnqueueCopyBuffer0(command_queue, src_buffer, dst_buffer, src_offset, dst_offset, size, num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1199 }
1200
1201 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyBuffer}(cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_buffer, size_t src_offset, size_t dst_offset, size_t size, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1202 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1203 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1204 private native int dispatch_clEnqueueCopyBuffer0(long command_queue, long src_buffer, long dst_buffer, long src_offset, long dst_offset, long size, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1205
1206 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyBufferRect}(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)</code><br>
1207 @param src_origin a direct only {@link com.jogamp.common.nio.PointerBuffer}
1208 @param dst_origin a direct only {@link com.jogamp.common.nio.PointerBuffer}
1209 @param region a direct only {@link com.jogamp.common.nio.PointerBuffer}
1210 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1211 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1212 public int clEnqueueCopyBufferRect(long command_queue, long src_buffer, long dst_buffer, PointerBuffer src_origin, PointerBuffer dst_origin, PointerBuffer region, long src_row_pitch, long src_slice_pitch, long dst_row_pitch, long dst_slice_pitch, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1213
1214 if (!Buffers.isDirect(src_origin))
1215 throw new IllegalArgumentException("Argument \"src_origin\" is not a direct buffer");
1216 if (!Buffers.isDirect(dst_origin))
1217 throw new IllegalArgumentException("Argument \"dst_origin\" is not a direct buffer");
1218 if (!Buffers.isDirect(region))
1219 throw new IllegalArgumentException("Argument \"region\" is not a direct buffer");
1220 if (!Buffers.isDirect(event_wait_list))
1221 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1222 if (!Buffers.isDirect(event))
1223 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1224 final long __addr_ = addressTable._addressof_clEnqueueCopyBufferRect;
1225 if (__addr_ == 0) {
1226 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueCopyBufferRect"));
1227 }
1228 return dispatch_clEnqueueCopyBufferRect0(command_queue, src_buffer, dst_buffer, src_origin != null ? src_origin.getBuffer() : null, Buffers.getDirectBufferByteOffset(src_origin), dst_origin != null ? dst_origin.getBuffer() : null, Buffers.getDirectBufferByteOffset(dst_origin), region != null ? region.getBuffer() : null, Buffers.getDirectBufferByteOffset(region), src_row_pitch, src_slice_pitch, dst_row_pitch, dst_slice_pitch, num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1229 }
1230
1231 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyBufferRect}(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)</code><br>
1232 @param src_origin a direct only {@link com.jogamp.common.nio.PointerBuffer}
1233 @param dst_origin a direct only {@link com.jogamp.common.nio.PointerBuffer}
1234 @param region a direct only {@link com.jogamp.common.nio.PointerBuffer}
1235 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1236 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1237 private native int dispatch_clEnqueueCopyBufferRect0(long command_queue, long src_buffer, long dst_buffer, Object src_origin, int src_origin_byte_offset, Object dst_origin, int dst_origin_byte_offset, Object region, int region_byte_offset, long src_row_pitch, long src_slice_pitch, long dst_row_pitch, long dst_slice_pitch, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1238
1239 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReadImage}(cl_command_queue command_queue, cl_mem image, cl_bool blocking_read, const size_t * , const size_t * , 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)</code><br>
1240 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1241 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1242 @param ptr a direct only {@link java.nio.Buffer}
1243 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1244 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1245 public int clEnqueueReadImage(long command_queue, long image, int blocking_read, PointerBuffer arg3, PointerBuffer arg4, long row_pitch, long slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1246
1247 if (!Buffers.isDirect(arg3))
1248 throw new IllegalArgumentException("Argument \"arg3\" is not a direct buffer");
1249 if (!Buffers.isDirect(arg4))
1250 throw new IllegalArgumentException("Argument \"arg4\" is not a direct buffer");
1251 if (!Buffers.isDirect(ptr))
1252 throw new IllegalArgumentException("Argument \"ptr\" is not a direct buffer");
1253 if (!Buffers.isDirect(event_wait_list))
1254 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1255 if (!Buffers.isDirect(event))
1256 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1257 final long __addr_ = addressTable._addressof_clEnqueueReadImage;
1258 if (__addr_ == 0) {
1259 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueReadImage"));
1260 }
1261 return dispatch_clEnqueueReadImage0(command_queue, image, blocking_read, arg3 != null ? arg3.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg3), arg4 != null ? arg4.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg4), row_pitch, slice_pitch, ptr, Buffers.getDirectBufferByteOffset(ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1262 }
1263
1264 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReadImage}(cl_command_queue command_queue, cl_mem image, cl_bool blocking_read, const size_t * , const size_t * , 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)</code><br>
1265 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1266 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1267 @param ptr a direct only {@link java.nio.Buffer}
1268 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1269 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1270 private native int dispatch_clEnqueueReadImage0(long command_queue, long image, int blocking_read, Object arg3, int arg3_byte_offset, Object arg4, int arg4_byte_offset, long row_pitch, long slice_pitch, Object ptr, int ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1271
1272 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWriteImage}(cl_command_queue command_queue, cl_mem image, cl_bool blocking_write, const size_t * , const size_t * , 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)</code><br>
1273 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1274 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1275 @param ptr a direct only {@link java.nio.Buffer}
1276 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1277 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1278 public int clEnqueueWriteImage(long command_queue, long image, int blocking_write, PointerBuffer arg3, PointerBuffer arg4, long input_row_pitch, long input_slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1279
1280 if (!Buffers.isDirect(arg3))
1281 throw new IllegalArgumentException("Argument \"arg3\" is not a direct buffer");
1282 if (!Buffers.isDirect(arg4))
1283 throw new IllegalArgumentException("Argument \"arg4\" is not a direct buffer");
1284 if (!Buffers.isDirect(ptr))
1285 throw new IllegalArgumentException("Argument \"ptr\" is not a direct buffer");
1286 if (!Buffers.isDirect(event_wait_list))
1287 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1288 if (!Buffers.isDirect(event))
1289 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1290 final long __addr_ = addressTable._addressof_clEnqueueWriteImage;
1291 if (__addr_ == 0) {
1292 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueWriteImage"));
1293 }
1294 return dispatch_clEnqueueWriteImage0(command_queue, image, blocking_write, arg3 != null ? arg3.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg3), arg4 != null ? arg4.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg4), input_row_pitch, input_slice_pitch, ptr, Buffers.getDirectBufferByteOffset(ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1295 }
1296
1297 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWriteImage}(cl_command_queue command_queue, cl_mem image, cl_bool blocking_write, const size_t * , const size_t * , 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)</code><br>
1298 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1299 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1300 @param ptr a direct only {@link java.nio.Buffer}
1301 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1302 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1303 private native int dispatch_clEnqueueWriteImage0(long command_queue, long image, int blocking_write, Object arg3, int arg3_byte_offset, Object arg4, int arg4_byte_offset, long input_row_pitch, long input_slice_pitch, Object ptr, int ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1304
1305 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueFillImage}(cl_command_queue command_queue, cl_mem image, const void * fill_color, const size_t * , const size_t * , cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1306 @param fill_color a direct or array-backed {@link java.nio.Buffer}
1307 @param arg3 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1308 @param arg4 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1309 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1310 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1311 public int clEnqueueFillImage(long command_queue, long image, Buffer fill_color, PointerBuffer arg3, PointerBuffer arg4, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1312
1313 final boolean fill_color_is_direct = Buffers.isDirect(fill_color);
1314 final boolean arg3_is_direct = Buffers.isDirect(arg3);
1315 final boolean arg4_is_direct = Buffers.isDirect(arg4);
1316 final boolean event_wait_list_is_direct = Buffers.isDirect(event_wait_list);
1317 final boolean event_is_direct = Buffers.isDirect(event);
1318 final long __addr_ = addressTable._addressof_clEnqueueFillImage;
1319 if (__addr_ == 0) {
1320 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueFillImage"));
1321 }
1322 return dispatch_clEnqueueFillImage1(command_queue, image, fill_color_is_direct ? fill_color : Buffers.getArray(fill_color), fill_color_is_direct ? Buffers.getDirectBufferByteOffset(fill_color) : Buffers.getIndirectBufferByteOffset(fill_color), fill_color_is_direct, arg3_is_direct ? ( arg3 != null ? arg3.getBuffer() : null ) : Buffers.getArray(arg3), arg3_is_direct ? Buffers.getDirectBufferByteOffset(arg3) : Buffers.getIndirectBufferByteOffset(arg3), arg3_is_direct, arg4_is_direct ? ( arg4 != null ? arg4.getBuffer() : null ) : Buffers.getArray(arg4), arg4_is_direct ? Buffers.getDirectBufferByteOffset(arg4) : Buffers.getIndirectBufferByteOffset(arg4), arg4_is_direct, num_events_in_wait_list, event_wait_list_is_direct ? ( event_wait_list != null ? event_wait_list.getBuffer() : null ) : Buffers.getArray(event_wait_list), event_wait_list_is_direct ? Buffers.getDirectBufferByteOffset(event_wait_list) : Buffers.getIndirectBufferByteOffset(event_wait_list), event_wait_list_is_direct, event_is_direct ? ( event != null ? event.getBuffer() : null ) : Buffers.getArray(event), event_is_direct ? Buffers.getDirectBufferByteOffset(event) : Buffers.getIndirectBufferByteOffset(event), event_is_direct, __addr_);
1323 }
1324
1325 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueFillImage}(cl_command_queue command_queue, cl_mem image, const void * fill_color, const size_t * , const size_t * , cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1326 @param fill_color a direct or array-backed {@link java.nio.Buffer}
1327 @param arg3 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1328 @param arg4 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1329 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1330 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1331 private native int dispatch_clEnqueueFillImage1(long command_queue, long image, Object fill_color, int fill_color_byte_offset, boolean fill_color_is_direct, Object arg3, int arg3_byte_offset, boolean arg3_is_direct, Object arg4, int arg4_byte_offset, boolean arg4_is_direct, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, boolean event_wait_list_is_direct, Object event, int event_byte_offset, boolean event_is_direct, long procAddress);
1332
1333 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyImage}(cl_command_queue command_queue, cl_mem src_image, cl_mem dst_image, const size_t * , const size_t * , const size_t * , cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1334 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1335 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1336 @param arg5 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1337 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1338 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1339 public int clEnqueueCopyImage(long command_queue, long src_image, long dst_image, PointerBuffer arg3, PointerBuffer arg4, PointerBuffer arg5, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1340
1341 if (!Buffers.isDirect(arg3))
1342 throw new IllegalArgumentException("Argument \"arg3\" is not a direct buffer");
1343 if (!Buffers.isDirect(arg4))
1344 throw new IllegalArgumentException("Argument \"arg4\" is not a direct buffer");
1345 if (!Buffers.isDirect(arg5))
1346 throw new IllegalArgumentException("Argument \"arg5\" is not a direct buffer");
1347 if (!Buffers.isDirect(event_wait_list))
1348 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1349 if (!Buffers.isDirect(event))
1350 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1351 final long __addr_ = addressTable._addressof_clEnqueueCopyImage;
1352 if (__addr_ == 0) {
1353 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueCopyImage"));
1354 }
1355 return dispatch_clEnqueueCopyImage0(command_queue, src_image, dst_image, arg3 != null ? arg3.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg3), arg4 != null ? arg4.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg4), arg5 != null ? arg5.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg5), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1356 }
1357
1358 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyImage}(cl_command_queue command_queue, cl_mem src_image, cl_mem dst_image, const size_t * , const size_t * , const size_t * , cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1359 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1360 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1361 @param arg5 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1362 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1363 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1364 private native int dispatch_clEnqueueCopyImage0(long command_queue, long src_image, long dst_image, Object arg3, int arg3_byte_offset, Object arg4, int arg4_byte_offset, Object arg5, int arg5_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1365
1366 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyImageToBuffer}(cl_command_queue command_queue, cl_mem src_image, cl_mem dst_buffer, const size_t * , const size_t * , size_t dst_offset, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1367 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1368 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1369 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1370 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1371 public int clEnqueueCopyImageToBuffer(long command_queue, long src_image, long dst_buffer, PointerBuffer arg3, PointerBuffer arg4, long dst_offset, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1372
1373 if (!Buffers.isDirect(arg3))
1374 throw new IllegalArgumentException("Argument \"arg3\" is not a direct buffer");
1375 if (!Buffers.isDirect(arg4))
1376 throw new IllegalArgumentException("Argument \"arg4\" is not a direct buffer");
1377 if (!Buffers.isDirect(event_wait_list))
1378 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1379 if (!Buffers.isDirect(event))
1380 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1381 final long __addr_ = addressTable._addressof_clEnqueueCopyImageToBuffer;
1382 if (__addr_ == 0) {
1383 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueCopyImageToBuffer"));
1384 }
1385 return dispatch_clEnqueueCopyImageToBuffer0(command_queue, src_image, dst_buffer, arg3 != null ? arg3.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg3), arg4 != null ? arg4.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg4), dst_offset, num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1386 }
1387
1388 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyImageToBuffer}(cl_command_queue command_queue, cl_mem src_image, cl_mem dst_buffer, const size_t * , const size_t * , size_t dst_offset, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1389 @param arg3 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1390 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1391 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1392 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1393 private native int dispatch_clEnqueueCopyImageToBuffer0(long command_queue, long src_image, long dst_buffer, Object arg3, int arg3_byte_offset, Object arg4, int arg4_byte_offset, long dst_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1394
1395 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyBufferToImage}(cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_image, size_t src_offset, const size_t * , const size_t * , cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1396 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1397 @param arg5 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1398 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1399 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1400 public int clEnqueueCopyBufferToImage(long command_queue, long src_buffer, long dst_image, long src_offset, PointerBuffer arg4, PointerBuffer arg5, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1401
1402 if (!Buffers.isDirect(arg4))
1403 throw new IllegalArgumentException("Argument \"arg4\" is not a direct buffer");
1404 if (!Buffers.isDirect(arg5))
1405 throw new IllegalArgumentException("Argument \"arg5\" is not a direct buffer");
1406 if (!Buffers.isDirect(event_wait_list))
1407 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1408 if (!Buffers.isDirect(event))
1409 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1410 final long __addr_ = addressTable._addressof_clEnqueueCopyBufferToImage;
1411 if (__addr_ == 0) {
1412 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueCopyBufferToImage"));
1413 }
1414 return dispatch_clEnqueueCopyBufferToImage0(command_queue, src_buffer, dst_image, src_offset, arg4 != null ? arg4.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg4), arg5 != null ? arg5.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg5), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1415 }
1416
1417 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueCopyBufferToImage}(cl_command_queue command_queue, cl_mem src_buffer, cl_mem dst_image, size_t src_offset, const size_t * , const size_t * , cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1418 @param arg4 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1419 @param arg5 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1420 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1421 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1422 private native int dispatch_clEnqueueCopyBufferToImage0(long command_queue, long src_buffer, long dst_image, long src_offset, Object arg4, int arg4_byte_offset, Object arg5, int arg5_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1423
1424 /** Entry point (through function pointer) to C language function: <br> <code>void * {@native clEnqueueMapBuffer}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_map, cl_map_flags map_flags, size_t offset, size_t size, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event, cl_int * errcode_ret)</code><br>
1425 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1426 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer}
1427 @param errcode_ret a direct only {@link java.nio.IntBuffer} */
1428 public ByteBuffer clEnqueueMapBuffer(long command_queue, long buffer, int blocking_map, long map_flags, long offset, long size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event, IntBuffer errcode_ret) {
1429
1430 if (!Buffers.isDirect(event_wait_list))
1431 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1432 if (!Buffers.isDirect(event))
1433 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1434 if (!Buffers.isDirect(errcode_ret))
1435 throw new IllegalArgumentException("Argument \"errcode_ret\" is not a direct buffer");
1436 final long __addr_ = addressTable._addressof_clEnqueueMapBuffer;
1437 if (__addr_ == 0) {
1438 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueMapBuffer"));
1439 }
1440 final ByteBuffer _res;
1441 _res = dispatch_clEnqueueMapBuffer0(command_queue, buffer, blocking_map, map_flags, offset, size, num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), errcode_ret, Buffers.getDirectBufferByteOffset(errcode_ret), __addr_);
1442 if (_res == null) return null;
1443 Buffers.nativeOrder(_res);
1444 return _res;
1445 }
1446
1447 /** Entry point (through function pointer) to C language function: <br> <code>void * {@native clEnqueueMapBuffer}(cl_command_queue command_queue, cl_mem buffer, cl_bool blocking_map, cl_map_flags map_flags, size_t offset, size_t size, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event, cl_int * errcode_ret)</code><br>
1448 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1449 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer}
1450 @param errcode_ret a direct only {@link java.nio.IntBuffer} */
1451 private native ByteBuffer dispatch_clEnqueueMapBuffer0(long command_queue, long buffer, int blocking_map, long map_flags, long offset, long size, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, Object errcode_ret, int errcode_ret_byte_offset, long procAddress);
1452
1453 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueUnmapMemObject}(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)</code><br>
1454 @param mapped_ptr a direct only {@link java.nio.Buffer}
1455 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1456 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1457 public int clEnqueueUnmapMemObject(long command_queue, long memobj, Buffer mapped_ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1458
1459 if (!Buffers.isDirect(mapped_ptr))
1460 throw new IllegalArgumentException("Argument \"mapped_ptr\" is not a direct buffer");
1461 if (!Buffers.isDirect(event_wait_list))
1462 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1463 if (!Buffers.isDirect(event))
1464 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1465 final long __addr_ = addressTable._addressof_clEnqueueUnmapMemObject;
1466 if (__addr_ == 0) {
1467 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueUnmapMemObject"));
1468 }
1469 return dispatch_clEnqueueUnmapMemObject0(command_queue, memobj, mapped_ptr, Buffers.getDirectBufferByteOffset(mapped_ptr), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1470 }
1471
1472 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueUnmapMemObject}(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)</code><br>
1473 @param mapped_ptr a direct only {@link java.nio.Buffer}
1474 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1475 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1476 private native int dispatch_clEnqueueUnmapMemObject0(long command_queue, long memobj, Object mapped_ptr, int mapped_ptr_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1477
1478 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueMigrateMemObjects}(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)</code><br>
1479 @param mem_objects a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1480 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1481 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1482 public int clEnqueueMigrateMemObjects(long command_queue, int num_mem_objects, PointerBuffer mem_objects, long flags, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1483
1484 final boolean mem_objects_is_direct = Buffers.isDirect(mem_objects);
1485 final boolean event_wait_list_is_direct = Buffers.isDirect(event_wait_list);
1486 final boolean event_is_direct = Buffers.isDirect(event);
1487 final long __addr_ = addressTable._addressof_clEnqueueMigrateMemObjects;
1488 if (__addr_ == 0) {
1489 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueMigrateMemObjects"));
1490 }
1491 return dispatch_clEnqueueMigrateMemObjects1(command_queue, num_mem_objects, mem_objects_is_direct ? ( mem_objects != null ? mem_objects.getBuffer() : null ) : Buffers.getArray(mem_objects), mem_objects_is_direct ? Buffers.getDirectBufferByteOffset(mem_objects) : Buffers.getIndirectBufferByteOffset(mem_objects), mem_objects_is_direct, flags, num_events_in_wait_list, event_wait_list_is_direct ? ( event_wait_list != null ? event_wait_list.getBuffer() : null ) : Buffers.getArray(event_wait_list), event_wait_list_is_direct ? Buffers.getDirectBufferByteOffset(event_wait_list) : Buffers.getIndirectBufferByteOffset(event_wait_list), event_wait_list_is_direct, event_is_direct ? ( event != null ? event.getBuffer() : null ) : Buffers.getArray(event), event_is_direct ? Buffers.getDirectBufferByteOffset(event) : Buffers.getIndirectBufferByteOffset(event), event_is_direct, __addr_);
1492 }
1493
1494 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueMigrateMemObjects}(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)</code><br>
1495 @param mem_objects a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1496 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1497 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1498 private native int dispatch_clEnqueueMigrateMemObjects1(long command_queue, int num_mem_objects, Object mem_objects, int mem_objects_byte_offset, boolean mem_objects_is_direct, long flags, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, boolean event_wait_list_is_direct, Object event, int event_byte_offset, boolean event_is_direct, long procAddress);
1499
1500 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueNDRangeKernel}(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)</code><br>
1501 @param global_work_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1502 @param global_work_size a direct only {@link com.jogamp.common.nio.PointerBuffer}
1503 @param local_work_size a direct only {@link com.jogamp.common.nio.PointerBuffer}
1504 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1505 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1506 public int clEnqueueNDRangeKernel(long command_queue, long kernel, int work_dim, PointerBuffer global_work_offset, PointerBuffer global_work_size, PointerBuffer local_work_size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1507
1508 if (!Buffers.isDirect(global_work_offset))
1509 throw new IllegalArgumentException("Argument \"global_work_offset\" is not a direct buffer");
1510 if (!Buffers.isDirect(global_work_size))
1511 throw new IllegalArgumentException("Argument \"global_work_size\" is not a direct buffer");
1512 if (!Buffers.isDirect(local_work_size))
1513 throw new IllegalArgumentException("Argument \"local_work_size\" is not a direct buffer");
1514 if (!Buffers.isDirect(event_wait_list))
1515 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1516 if (!Buffers.isDirect(event))
1517 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1518 final long __addr_ = addressTable._addressof_clEnqueueNDRangeKernel;
1519 if (__addr_ == 0) {
1520 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueNDRangeKernel"));
1521 }
1522 return dispatch_clEnqueueNDRangeKernel0(command_queue, kernel, work_dim, global_work_offset != null ? global_work_offset.getBuffer() : null, Buffers.getDirectBufferByteOffset(global_work_offset), global_work_size != null ? global_work_size.getBuffer() : null, Buffers.getDirectBufferByteOffset(global_work_size), local_work_size != null ? local_work_size.getBuffer() : null, Buffers.getDirectBufferByteOffset(local_work_size), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1523 }
1524
1525 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueNDRangeKernel}(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)</code><br>
1526 @param global_work_offset a direct only {@link com.jogamp.common.nio.PointerBuffer}
1527 @param global_work_size a direct only {@link com.jogamp.common.nio.PointerBuffer}
1528 @param local_work_size a direct only {@link com.jogamp.common.nio.PointerBuffer}
1529 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1530 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1531 private native int dispatch_clEnqueueNDRangeKernel0(long command_queue, long kernel, int work_dim, Object global_work_offset, int global_work_offset_byte_offset, Object global_work_size, int global_work_size_byte_offset, Object local_work_size, int local_work_size_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1532
1533 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueTask}(cl_command_queue command_queue, cl_kernel kernel, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1534 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1535 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1536 public int clEnqueueTask(long command_queue, long kernel, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1537
1538 if (!Buffers.isDirect(event_wait_list))
1539 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1540 if (!Buffers.isDirect(event))
1541 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1542 final long __addr_ = addressTable._addressof_clEnqueueTask;
1543 if (__addr_ == 0) {
1544 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueTask"));
1545 }
1546 return dispatch_clEnqueueTask0(command_queue, kernel, num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1547 }
1548
1549 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueTask}(cl_command_queue command_queue, cl_kernel kernel, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1550 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1551 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1552 private native int dispatch_clEnqueueTask0(long command_queue, long kernel, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
1553
1554 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueMarkerWithWaitList}(cl_command_queue command_queue, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1555 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1556 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1557 public int clEnqueueMarkerWithWaitList(long command_queue, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1558
1559 final boolean event_wait_list_is_direct = Buffers.isDirect(event_wait_list);
1560 final boolean event_is_direct = Buffers.isDirect(event);
1561 final long __addr_ = addressTable._addressof_clEnqueueMarkerWithWaitList;
1562 if (__addr_ == 0) {
1563 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueMarkerWithWaitList"));
1564 }
1565 return dispatch_clEnqueueMarkerWithWaitList1(command_queue, num_events_in_wait_list, event_wait_list_is_direct ? ( event_wait_list != null ? event_wait_list.getBuffer() : null ) : Buffers.getArray(event_wait_list), event_wait_list_is_direct ? Buffers.getDirectBufferByteOffset(event_wait_list) : Buffers.getIndirectBufferByteOffset(event_wait_list), event_wait_list_is_direct, event_is_direct ? ( event != null ? event.getBuffer() : null ) : Buffers.getArray(event), event_is_direct ? Buffers.getDirectBufferByteOffset(event) : Buffers.getIndirectBufferByteOffset(event), event_is_direct, __addr_);
1566 }
1567
1568 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueMarkerWithWaitList}(cl_command_queue command_queue, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1569 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1570 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1571 private native int dispatch_clEnqueueMarkerWithWaitList1(long command_queue, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, boolean event_wait_list_is_direct, Object event, int event_byte_offset, boolean event_is_direct, long procAddress);
1572
1573 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueBarrierWithWaitList}(cl_command_queue command_queue, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1574 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1575 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1576 public int clEnqueueBarrierWithWaitList(long command_queue, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1577
1578 final boolean event_wait_list_is_direct = Buffers.isDirect(event_wait_list);
1579 final boolean event_is_direct = Buffers.isDirect(event);
1580 final long __addr_ = addressTable._addressof_clEnqueueBarrierWithWaitList;
1581 if (__addr_ == 0) {
1582 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueBarrierWithWaitList"));
1583 }
1584 return dispatch_clEnqueueBarrierWithWaitList1(command_queue, num_events_in_wait_list, event_wait_list_is_direct ? ( event_wait_list != null ? event_wait_list.getBuffer() : null ) : Buffers.getArray(event_wait_list), event_wait_list_is_direct ? Buffers.getDirectBufferByteOffset(event_wait_list) : Buffers.getIndirectBufferByteOffset(event_wait_list), event_wait_list_is_direct, event_is_direct ? ( event != null ? event.getBuffer() : null ) : Buffers.getArray(event), event_is_direct ? Buffers.getDirectBufferByteOffset(event) : Buffers.getIndirectBufferByteOffset(event), event_is_direct, __addr_);
1585 }
1586
1587 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueBarrierWithWaitList}(cl_command_queue command_queue, cl_uint num_events_in_wait_list, const cl_event * event_wait_list, cl_event * event)</code><br>
1588 @param event_wait_list a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1589 @param event a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1590 private native int dispatch_clEnqueueBarrierWithWaitList1(long command_queue, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, boolean event_wait_list_is_direct, Object event, int event_byte_offset, boolean event_is_direct, long procAddress);
1591
1592 /** Entry point (through function pointer) to C language function: <br> <code>void * {@native clGetExtensionFunctionAddressForPlatform}(cl_platform_id platform, const char * func_name)</code><br>
1593 @param func_name a direct or array-backed {@link java.nio.ByteBuffer} */
1594 public ByteBuffer clGetExtensionFunctionAddressForPlatform(long platform, ByteBuffer func_name) {
1595
1596 final boolean func_name_is_direct = Buffers.isDirect(func_name);
1597 final long __addr_ = addressTable._addressof_clGetExtensionFunctionAddressForPlatform;
1598 if (__addr_ == 0) {
1599 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetExtensionFunctionAddressForPlatform"));
1600 }
1601 final ByteBuffer _res;
1602 _res = dispatch_clGetExtensionFunctionAddressForPlatform1(platform, func_name_is_direct ? func_name : Buffers.getArray(func_name), func_name_is_direct ? Buffers.getDirectBufferByteOffset(func_name) : Buffers.getIndirectBufferByteOffset(func_name), func_name_is_direct, __addr_);
1603 if (_res == null) return null;
1604 Buffers.nativeOrder(_res);
1605 return _res;
1606 }
1607
1608 /** Entry point (through function pointer) to C language function: <br> <code>void * {@native clGetExtensionFunctionAddressForPlatform}(cl_platform_id platform, const char * func_name)</code><br>
1609 @param func_name a direct or array-backed {@link java.nio.ByteBuffer} */
1610 private native ByteBuffer dispatch_clGetExtensionFunctionAddressForPlatform1(long platform, Object func_name, int func_name_byte_offset, boolean func_name_is_direct, long procAddress);
1611
1612 /** Entry point (through function pointer) to C language function: <br> <code>void * {@native clGetExtensionFunctionAddressForPlatform}(cl_platform_id platform, const char * func_name)</code><br> */
1613 public ByteBuffer clGetExtensionFunctionAddressForPlatform(long platform, byte[] func_name, int func_name_offset) {
1614
1615 if(func_name != null && func_name.length <= func_name_offset)
1616 throw new IllegalArgumentException("array offset argument \"func_name_offset\" (" + func_name_offset + ") equals or exceeds array length (" + func_name.length + ")");
1617 final long __addr_ = addressTable._addressof_clGetExtensionFunctionAddressForPlatform;
1618 if (__addr_ == 0) {
1619 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetExtensionFunctionAddressForPlatform"));
1620 }
1621 final ByteBuffer _res;
1622 _res = dispatch_clGetExtensionFunctionAddressForPlatform1(platform, func_name, func_name_offset, false, __addr_);
1623 if (_res == null) return null;
1624 Buffers.nativeOrder(_res);
1625 return _res;
1626 }
1627
1628 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage2D}(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)</code><br>
1629 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
1630 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1631 public long clCreateImage2D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_row_pitch, Buffer host_ptr, IntBuffer errcode_ret) {
1632
1633 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
1634 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
1635 final long __addr_ = addressTable._addressof_clCreateImage2D;
1636 if (__addr_ == 0) {
1637 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateImage2D"));
1638 }
1639 return dispatch_clCreateImage2D1(context, flags, ((image_format == null) ? null : image_format.getBuffer()), image_width, image_height, image_row_pitch, host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
1640 }
1641
1642 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage2D}(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)</code><br>
1643 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
1644 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1645 private native long dispatch_clCreateImage2D1(long context, long flags, ByteBuffer image_format, long image_width, long image_height, long image_row_pitch, Object host_ptr, int host_ptr_byte_offset, boolean host_ptr_is_direct, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
1646
1647 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage2D}(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)</code><br>
1648 @param host_ptr a direct or array-backed {@link java.nio.Buffer} */
1649 public long clCreateImage2D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_row_pitch, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset) {
1650
1651 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
1652 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
1653 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
1654 final long __addr_ = addressTable._addressof_clCreateImage2D;
1655 if (__addr_ == 0) {
1656 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateImage2D"));
1657 }
1658 return dispatch_clCreateImage2D1(context, flags, ((image_format == null) ? null : image_format.getBuffer()), image_width, image_height, image_row_pitch, host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
1659 }
1660
1661 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage3D}(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)</code><br>
1662 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
1663 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1664 public long clCreateImage3D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_depth, long image_row_pitch, long image_slice_pitch, Buffer host_ptr, IntBuffer errcode_ret) {
1665
1666 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
1667 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
1668 final long __addr_ = addressTable._addressof_clCreateImage3D;
1669 if (__addr_ == 0) {
1670 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateImage3D"));
1671 }
1672 return dispatch_clCreateImage3D1(context, flags, ((image_format == null) ? null : image_format.getBuffer()), image_width, image_height, image_depth, image_row_pitch, image_slice_pitch, host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
1673 }
1674
1675 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage3D}(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)</code><br>
1676 @param host_ptr a direct or array-backed {@link java.nio.Buffer}
1677 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1678 private native long dispatch_clCreateImage3D1(long context, long flags, ByteBuffer image_format, long image_width, long image_height, long image_depth, long image_row_pitch, long image_slice_pitch, Object host_ptr, int host_ptr_byte_offset, boolean host_ptr_is_direct, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
1679
1680 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateImage3D}(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)</code><br>
1681 @param host_ptr a direct or array-backed {@link java.nio.Buffer} */
1682 public long clCreateImage3D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_depth, long image_row_pitch, long image_slice_pitch, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset) {
1683
1684 final boolean host_ptr_is_direct = Buffers.isDirect(host_ptr);
1685 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
1686 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
1687 final long __addr_ = addressTable._addressof_clCreateImage3D;
1688 if (__addr_ == 0) {
1689 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateImage3D"));
1690 }
1691 return dispatch_clCreateImage3D1(context, flags, ((image_format == null) ? null : image_format.getBuffer()), image_width, image_height, image_depth, image_row_pitch, image_slice_pitch, host_ptr_is_direct ? host_ptr : Buffers.getArray(host_ptr), host_ptr_is_direct ? Buffers.getDirectBufferByteOffset(host_ptr) : Buffers.getIndirectBufferByteOffset(host_ptr), host_ptr_is_direct, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
1692 }
1693
1694 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueMarker}(cl_command_queue command_queue, cl_event * event)</code><br>
1695 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1696 public int clEnqueueMarker(long command_queue, PointerBuffer event) {
1697
1698 if (!Buffers.isDirect(event))
1699 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
1700 final long __addr_ = addressTable._addressof_clEnqueueMarker;
1701 if (__addr_ == 0) {
1702 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueMarker"));
1703 }
1704 return dispatch_clEnqueueMarker0(command_queue, event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
1705 }
1706
1707 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueMarker}(cl_command_queue command_queue, cl_event * event)</code><br>
1708 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1709 private native int dispatch_clEnqueueMarker0(long command_queue, Object event, int event_byte_offset, long procAddress);
1710
1711 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWaitForEvents}(cl_command_queue command_queue, cl_uint num_events, const cl_event * event_list)</code><br>
1712 @param event_list a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1713 public int clEnqueueWaitForEvents(long command_queue, int num_events, PointerBuffer event_list) {
1714
1715 if (!Buffers.isDirect(event_list))
1716 throw new IllegalArgumentException("Argument \"event_list\" is not a direct buffer");
1717 final long __addr_ = addressTable._addressof_clEnqueueWaitForEvents;
1718 if (__addr_ == 0) {
1719 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueWaitForEvents"));
1720 }
1721 return dispatch_clEnqueueWaitForEvents0(command_queue, num_events, event_list != null ? event_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_list), __addr_);
1722 }
1723
1724 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueWaitForEvents}(cl_command_queue command_queue, cl_uint num_events, const cl_event * event_list)</code><br>
1725 @param event_list a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1726 private native int dispatch_clEnqueueWaitForEvents0(long command_queue, int num_events, Object event_list, int event_list_byte_offset, long procAddress);
1727
1728 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueBarrier}(cl_command_queue command_queue)</code><br> */
1729 public int clEnqueueBarrier(long command_queue) {
1730
1731 final long __addr_ = addressTable._addressof_clEnqueueBarrier;
1732 if (__addr_ == 0) {
1733 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueBarrier"));
1734 }
1735 return dispatch_clEnqueueBarrier0(command_queue, __addr_);
1736 }
1737
1738 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueBarrier}(cl_command_queue command_queue)</code><br> */
1739 private native int dispatch_clEnqueueBarrier0(long command_queue, long procAddress);
1740
1741 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clUnloadCompiler}()</code><br> */
1742 public int clUnloadCompiler() {
1743
1744 final long __addr_ = addressTable._addressof_clUnloadCompiler;
1745 if (__addr_ == 0) {
1746 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clUnloadCompiler"));
1747 }
1748 return dispatch_clUnloadCompiler1(__addr_);
1749 }
1750
1751 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clUnloadCompiler}()</code><br> */
1752 private native int dispatch_clUnloadCompiler1(long procAddress);
1753
1754 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clIcdGetPlatformIDsKHR}(cl_uint, cl_platform_id * , cl_uint * )</code><br>
1755 @param arg1 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1756 @param arg2 a direct only {@link java.nio.IntBuffer} */
1757 public int clIcdGetPlatformIDsKHR(int arg0, PointerBuffer arg1, IntBuffer arg2) {
1758
1759 if (!Buffers.isDirect(arg1))
1760 throw new IllegalArgumentException("Argument \"arg1\" is not a direct buffer");
1761 if (!Buffers.isDirect(arg2))
1762 throw new IllegalArgumentException("Argument \"arg2\" is not a direct buffer");
1763 final long __addr_ = addressTable._addressof_clIcdGetPlatformIDsKHR;
1764 if (__addr_ == 0) {
1765 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clIcdGetPlatformIDsKHR"));
1766 }
1767 return dispatch_clIcdGetPlatformIDsKHR0(arg0, arg1 != null ? arg1.getBuffer() : null, Buffers.getDirectBufferByteOffset(arg1), arg2, Buffers.getDirectBufferByteOffset(arg2), __addr_);
1768 }
1769
1770 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clIcdGetPlatformIDsKHR}(cl_uint, cl_platform_id * , cl_uint * )</code><br>
1771 @param arg1 a direct only {@link com.jogamp.common.nio.PointerBuffer}
1772 @param arg2 a direct only {@link java.nio.IntBuffer} */
1773 private native int dispatch_clIcdGetPlatformIDsKHR0(int arg0, Object arg1, int arg1_byte_offset, Object arg2, int arg2_byte_offset, long procAddress);
1774
1775 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clTerminateContextKHR}(cl_context)</code><br> */
1776 public int clTerminateContextKHR(long arg0) {
1777
1778 final long __addr_ = addressTable._addressof_clTerminateContextKHR;
1779 if (__addr_ == 0) {
1780 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clTerminateContextKHR"));
1781 }
1782 return dispatch_clTerminateContextKHR1(arg0, __addr_);
1783 }
1784
1785 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clTerminateContextKHR}(cl_context)</code><br> */
1786 private native int dispatch_clTerminateContextKHR1(long arg0, long procAddress);
1787
1788 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseDeviceEXT}(cl_device_id)</code><br> */
1789 public int clReleaseDeviceEXT(long arg0) {
1790
1791 final long __addr_ = addressTable._addressof_clReleaseDeviceEXT;
1792 if (__addr_ == 0) {
1793 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clReleaseDeviceEXT"));
1794 }
1795 return dispatch_clReleaseDeviceEXT1(arg0, __addr_);
1796 }
1797
1798 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clReleaseDeviceEXT}(cl_device_id)</code><br> */
1799 private native int dispatch_clReleaseDeviceEXT1(long arg0, long procAddress);
1800
1801 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainDeviceEXT}(cl_device_id)</code><br> */
1802 public int clRetainDeviceEXT(long arg0) {
1803
1804 final long __addr_ = addressTable._addressof_clRetainDeviceEXT;
1805 if (__addr_ == 0) {
1806 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clRetainDeviceEXT"));
1807 }
1808 return dispatch_clRetainDeviceEXT1(arg0, __addr_);
1809 }
1810
1811 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clRetainDeviceEXT}(cl_device_id)</code><br> */
1812 private native int dispatch_clRetainDeviceEXT1(long arg0, long procAddress);
1813
1814 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateSubDevicesEXT}(cl_device_id, const cl_device_partition_property_ext * , cl_uint, cl_device_id * , cl_uint * )</code><br>
1815 @param arg1 a direct or array-backed {@link java.nio.LongBuffer}
1816 @param arg3 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1817 @param arg4 a direct or array-backed {@link java.nio.IntBuffer} */
1818 public int clCreateSubDevicesEXT(long arg0, LongBuffer arg1, int arg2, PointerBuffer arg3, IntBuffer arg4) {
1819
1820 final boolean arg1_is_direct = Buffers.isDirect(arg1);
1821 final boolean arg3_is_direct = Buffers.isDirect(arg3);
1822 final boolean arg4_is_direct = Buffers.isDirect(arg4);
1823 final long __addr_ = addressTable._addressof_clCreateSubDevicesEXT;
1824 if (__addr_ == 0) {
1825 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSubDevicesEXT"));
1826 }
1827 return dispatch_clCreateSubDevicesEXT1(arg0, arg1_is_direct ? arg1 : Buffers.getArray(arg1), arg1_is_direct ? Buffers.getDirectBufferByteOffset(arg1) : Buffers.getIndirectBufferByteOffset(arg1), arg1_is_direct, arg2, arg3_is_direct ? ( arg3 != null ? arg3.getBuffer() : null ) : Buffers.getArray(arg3), arg3_is_direct ? Buffers.getDirectBufferByteOffset(arg3) : Buffers.getIndirectBufferByteOffset(arg3), arg3_is_direct, arg4_is_direct ? arg4 : Buffers.getArray(arg4), arg4_is_direct ? Buffers.getDirectBufferByteOffset(arg4) : Buffers.getIndirectBufferByteOffset(arg4), arg4_is_direct, __addr_);
1828 }
1829
1830 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateSubDevicesEXT}(cl_device_id, const cl_device_partition_property_ext * , cl_uint, cl_device_id * , cl_uint * )</code><br>
1831 @param arg1 a direct or array-backed {@link java.nio.LongBuffer}
1832 @param arg3 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer}
1833 @param arg4 a direct or array-backed {@link java.nio.IntBuffer} */
1834 private native int dispatch_clCreateSubDevicesEXT1(long arg0, Object arg1, int arg1_byte_offset, boolean arg1_is_direct, int arg2, Object arg3, int arg3_byte_offset, boolean arg3_is_direct, Object arg4, int arg4_byte_offset, boolean arg4_is_direct, long procAddress);
1835
1836 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clCreateSubDevicesEXT}(cl_device_id, const cl_device_partition_property_ext * , cl_uint, cl_device_id * , cl_uint * )</code><br>
1837 @param arg3 a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1838 public int clCreateSubDevicesEXT(long arg0, long[] arg1, int arg1_offset, int arg2, PointerBuffer arg3, int[] arg4, int arg4_offset) {
1839
1840 if(arg1 != null && arg1.length <= arg1_offset)
1841 throw new IllegalArgumentException("array offset argument \"arg1_offset\" (" + arg1_offset + ") equals or exceeds array length (" + arg1.length + ")");
1842 final boolean arg3_is_direct = Buffers.isDirect(arg3);
1843 if(arg4 != null && arg4.length <= arg4_offset)
1844 throw new IllegalArgumentException("array offset argument \"arg4_offset\" (" + arg4_offset + ") equals or exceeds array length (" + arg4.length + ")");
1845 final long __addr_ = addressTable._addressof_clCreateSubDevicesEXT;
1846 if (__addr_ == 0) {
1847 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateSubDevicesEXT"));
1848 }
1849 return dispatch_clCreateSubDevicesEXT1(arg0, arg1, Buffers.SIZEOF_LONG * arg1_offset, false, arg2, arg3_is_direct ? ( arg3 != null ? arg3.getBuffer() : null ) : Buffers.getArray(arg3), arg3_is_direct ? Buffers.getDirectBufferByteOffset(arg3) : Buffers.getIndirectBufferByteOffset(arg3), arg3_is_direct, arg4, Buffers.SIZEOF_INT * arg4_offset, false, __addr_);
1850 }
1851
1852 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLBuffer}(cl_context context, cl_mem_flags flags, cl_GLuint bufobj, int * errcode_ret)</code><br>
1853 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1854 public long clCreateFromGLBuffer(long context, long flags, int bufobj, IntBuffer errcode_ret) {
1855
1856 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
1857 final long __addr_ = addressTable._addressof_clCreateFromGLBuffer;
1858 if (__addr_ == 0) {
1859 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLBuffer"));
1860 }
1861 return dispatch_clCreateFromGLBuffer1(context, flags, bufobj, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
1862 }
1863
1864 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLBuffer}(cl_context context, cl_mem_flags flags, cl_GLuint bufobj, int * errcode_ret)</code><br>
1865 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1866 private native long dispatch_clCreateFromGLBuffer1(long context, long flags, int bufobj, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
1867
1868 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLBuffer}(cl_context context, cl_mem_flags flags, cl_GLuint bufobj, int * errcode_ret)</code><br> */
1869 public long clCreateFromGLBuffer(long context, long flags, int bufobj, int[] errcode_ret, int errcode_ret_offset) {
1870
1871 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
1872 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
1873 final long __addr_ = addressTable._addressof_clCreateFromGLBuffer;
1874 if (__addr_ == 0) {
1875 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLBuffer"));
1876 }
1877 return dispatch_clCreateFromGLBuffer1(context, flags, bufobj, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
1878 }
1879
1880 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br>
1881 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1882 public long clCreateFromGLTexture(long context, long flags, int target, int miplevel, int texture, IntBuffer errcode_ret) {
1883
1884 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
1885 final long __addr_ = addressTable._addressof_clCreateFromGLTexture;
1886 if (__addr_ == 0) {
1887 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLTexture"));
1888 }
1889 return dispatch_clCreateFromGLTexture1(context, flags, target, miplevel, texture, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
1890 }
1891
1892 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br>
1893 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1894 private native long dispatch_clCreateFromGLTexture1(long context, long flags, int target, int miplevel, int texture, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
1895
1896 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br> */
1897 public long clCreateFromGLTexture(long context, long flags, int target, int miplevel, int texture, int[] errcode_ret, int errcode_ret_offset) {
1898
1899 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
1900 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
1901 final long __addr_ = addressTable._addressof_clCreateFromGLTexture;
1902 if (__addr_ == 0) {
1903 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLTexture"));
1904 }
1905 return dispatch_clCreateFromGLTexture1(context, flags, target, miplevel, texture, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
1906 }
1907
1908 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLRenderbuffer}(cl_context context, cl_mem_flags flags, cl_GLuint renderbuffer, cl_int * errcode_ret)</code><br>
1909 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1910 public long clCreateFromGLRenderbuffer(long context, long flags, int renderbuffer, IntBuffer errcode_ret) {
1911
1912 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
1913 final long __addr_ = addressTable._addressof_clCreateFromGLRenderbuffer;
1914 if (__addr_ == 0) {
1915 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLRenderbuffer"));
1916 }
1917 return dispatch_clCreateFromGLRenderbuffer1(context, flags, renderbuffer, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
1918 }
1919
1920 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLRenderbuffer}(cl_context context, cl_mem_flags flags, cl_GLuint renderbuffer, cl_int * errcode_ret)</code><br>
1921 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
1922 private native long dispatch_clCreateFromGLRenderbuffer1(long context, long flags, int renderbuffer, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
1923
1924 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLRenderbuffer}(cl_context context, cl_mem_flags flags, cl_GLuint renderbuffer, cl_int * errcode_ret)</code><br> */
1925 public long clCreateFromGLRenderbuffer(long context, long flags, int renderbuffer, int[] errcode_ret, int errcode_ret_offset) {
1926
1927 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
1928 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
1929 final long __addr_ = addressTable._addressof_clCreateFromGLRenderbuffer;
1930 if (__addr_ == 0) {
1931 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLRenderbuffer"));
1932 }
1933 return dispatch_clCreateFromGLRenderbuffer1(context, flags, renderbuffer, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
1934 }
1935
1936 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLObjectInfo}(cl_mem memobj, cl_gl_object_type * gl_object_type, cl_GLuint * gl_object_name)</code><br>
1937 @param gl_object_type a direct or array-backed {@link java.nio.IntBuffer}
1938 @param gl_object_name a direct or array-backed {@link java.nio.IntBuffer} */
1939 public int clGetGLObjectInfo(long memobj, IntBuffer gl_object_type, IntBuffer gl_object_name) {
1940
1941 final boolean gl_object_type_is_direct = Buffers.isDirect(gl_object_type);
1942 final boolean gl_object_name_is_direct = Buffers.isDirect(gl_object_name);
1943 final long __addr_ = addressTable._addressof_clGetGLObjectInfo;
1944 if (__addr_ == 0) {
1945 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetGLObjectInfo"));
1946 }
1947 return dispatch_clGetGLObjectInfo1(memobj, gl_object_type_is_direct ? gl_object_type : Buffers.getArray(gl_object_type), gl_object_type_is_direct ? Buffers.getDirectBufferByteOffset(gl_object_type) : Buffers.getIndirectBufferByteOffset(gl_object_type), gl_object_type_is_direct, gl_object_name_is_direct ? gl_object_name : Buffers.getArray(gl_object_name), gl_object_name_is_direct ? Buffers.getDirectBufferByteOffset(gl_object_name) : Buffers.getIndirectBufferByteOffset(gl_object_name), gl_object_name_is_direct, __addr_);
1948 }
1949
1950 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLObjectInfo}(cl_mem memobj, cl_gl_object_type * gl_object_type, cl_GLuint * gl_object_name)</code><br>
1951 @param gl_object_type a direct or array-backed {@link java.nio.IntBuffer}
1952 @param gl_object_name a direct or array-backed {@link java.nio.IntBuffer} */
1953 private native int dispatch_clGetGLObjectInfo1(long memobj, Object gl_object_type, int gl_object_type_byte_offset, boolean gl_object_type_is_direct, Object gl_object_name, int gl_object_name_byte_offset, boolean gl_object_name_is_direct, long procAddress);
1954
1955 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLObjectInfo}(cl_mem memobj, cl_gl_object_type * gl_object_type, cl_GLuint * gl_object_name)</code><br> */
1956 public int clGetGLObjectInfo(long memobj, int[] gl_object_type, int gl_object_type_offset, int[] gl_object_name, int gl_object_name_offset) {
1957
1958 if(gl_object_type != null && gl_object_type.length <= gl_object_type_offset)
1959 throw new IllegalArgumentException("array offset argument \"gl_object_type_offset\" (" + gl_object_type_offset + ") equals or exceeds array length (" + gl_object_type.length + ")");
1960 if(gl_object_name != null && gl_object_name.length <= gl_object_name_offset)
1961 throw new IllegalArgumentException("array offset argument \"gl_object_name_offset\" (" + gl_object_name_offset + ") equals or exceeds array length (" + gl_object_name.length + ")");
1962 final long __addr_ = addressTable._addressof_clGetGLObjectInfo;
1963 if (__addr_ == 0) {
1964 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetGLObjectInfo"));
1965 }
1966 return dispatch_clGetGLObjectInfo1(memobj, gl_object_type, Buffers.SIZEOF_INT * gl_object_type_offset, false, gl_object_name, Buffers.SIZEOF_INT * gl_object_name_offset, false, __addr_);
1967 }
1968
1969 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLTextureInfo}(cl_mem memobj, cl_gl_texture_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
1970 @param param_value a direct or array-backed {@link java.nio.Buffer}
1971 @param param_value_size_ret a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1972 public int clGetGLTextureInfo(long memobj, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
1973
1974 final boolean param_value_is_direct = Buffers.isDirect(param_value);
1975 final boolean param_value_size_ret_is_direct = Buffers.isDirect(param_value_size_ret);
1976 final long __addr_ = addressTable._addressof_clGetGLTextureInfo;
1977 if (__addr_ == 0) {
1978 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetGLTextureInfo"));
1979 }
1980 return dispatch_clGetGLTextureInfo1(memobj, param_name, param_value_size, param_value_is_direct ? param_value : Buffers.getArray(param_value), param_value_is_direct ? Buffers.getDirectBufferByteOffset(param_value) : Buffers.getIndirectBufferByteOffset(param_value), param_value_is_direct, param_value_size_ret_is_direct ? ( param_value_size_ret != null ? param_value_size_ret.getBuffer() : null ) : Buffers.getArray(param_value_size_ret), param_value_size_ret_is_direct ? Buffers.getDirectBufferByteOffset(param_value_size_ret) : Buffers.getIndirectBufferByteOffset(param_value_size_ret), param_value_size_ret_is_direct, __addr_);
1981 }
1982
1983 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLTextureInfo}(cl_mem memobj, cl_gl_texture_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
1984 @param param_value a direct or array-backed {@link java.nio.Buffer}
1985 @param param_value_size_ret a direct or array-backed {@link com.jogamp.common.nio.PointerBuffer} */
1986 private native int dispatch_clGetGLTextureInfo1(long memobj, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, boolean param_value_is_direct, Object param_value_size_ret, int param_value_size_ret_byte_offset, boolean param_value_size_ret_is_direct, long procAddress);
1987
1988 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueAcquireGLObjects}(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)</code><br>
1989 @param mem_objects a direct only {@link com.jogamp.common.nio.PointerBuffer}
1990 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
1991 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
1992 public int clEnqueueAcquireGLObjects(long command_queue, int num_objects, PointerBuffer mem_objects, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
1993
1994 if (!Buffers.isDirect(mem_objects))
1995 throw new IllegalArgumentException("Argument \"mem_objects\" is not a direct buffer");
1996 if (!Buffers.isDirect(event_wait_list))
1997 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
1998 if (!Buffers.isDirect(event))
1999 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
2000 final long __addr_ = addressTable._addressof_clEnqueueAcquireGLObjects;
2001 if (__addr_ == 0) {
2002 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueAcquireGLObjects"));
2003 }
2004 return dispatch_clEnqueueAcquireGLObjects0(command_queue, num_objects, mem_objects != null ? mem_objects.getBuffer() : null, Buffers.getDirectBufferByteOffset(mem_objects), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
2005 }
2006
2007 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueAcquireGLObjects}(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)</code><br>
2008 @param mem_objects a direct only {@link com.jogamp.common.nio.PointerBuffer}
2009 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
2010 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
2011 private native int dispatch_clEnqueueAcquireGLObjects0(long command_queue, int num_objects, Object mem_objects, int mem_objects_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
2012
2013 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReleaseGLObjects}(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)</code><br>
2014 @param mem_objects a direct only {@link com.jogamp.common.nio.PointerBuffer}
2015 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
2016 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
2017 public int clEnqueueReleaseGLObjects(long command_queue, int num_objects, PointerBuffer mem_objects, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event) {
2018
2019 if (!Buffers.isDirect(mem_objects))
2020 throw new IllegalArgumentException("Argument \"mem_objects\" is not a direct buffer");
2021 if (!Buffers.isDirect(event_wait_list))
2022 throw new IllegalArgumentException("Argument \"event_wait_list\" is not a direct buffer");
2023 if (!Buffers.isDirect(event))
2024 throw new IllegalArgumentException("Argument \"event\" is not a direct buffer");
2025 final long __addr_ = addressTable._addressof_clEnqueueReleaseGLObjects;
2026 if (__addr_ == 0) {
2027 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clEnqueueReleaseGLObjects"));
2028 }
2029 return dispatch_clEnqueueReleaseGLObjects0(command_queue, num_objects, mem_objects != null ? mem_objects.getBuffer() : null, Buffers.getDirectBufferByteOffset(mem_objects), num_events_in_wait_list, event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list), event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), __addr_);
2030 }
2031
2032 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clEnqueueReleaseGLObjects}(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)</code><br>
2033 @param mem_objects a direct only {@link com.jogamp.common.nio.PointerBuffer}
2034 @param event_wait_list a direct only {@link com.jogamp.common.nio.PointerBuffer}
2035 @param event a direct only {@link com.jogamp.common.nio.PointerBuffer} */
2036 private native int dispatch_clEnqueueReleaseGLObjects0(long command_queue, int num_objects, Object mem_objects, int mem_objects_byte_offset, int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event, int event_byte_offset, long procAddress);
2037
2038 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture2D}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br>
2039 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
2040 public long clCreateFromGLTexture2D(long context, long flags, int target, int miplevel, int texture, IntBuffer errcode_ret) {
2041
2042 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
2043 final long __addr_ = addressTable._addressof_clCreateFromGLTexture2D;
2044 if (__addr_ == 0) {
2045 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLTexture2D"));
2046 }
2047 return dispatch_clCreateFromGLTexture2D1(context, flags, target, miplevel, texture, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
2048 }
2049
2050 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture2D}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br>
2051 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
2052 private native long dispatch_clCreateFromGLTexture2D1(long context, long flags, int target, int miplevel, int texture, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
2053
2054 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture2D}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br> */
2055 public long clCreateFromGLTexture2D(long context, long flags, int target, int miplevel, int texture, int[] errcode_ret, int errcode_ret_offset) {
2056
2057 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
2058 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
2059 final long __addr_ = addressTable._addressof_clCreateFromGLTexture2D;
2060 if (__addr_ == 0) {
2061 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLTexture2D"));
2062 }
2063 return dispatch_clCreateFromGLTexture2D1(context, flags, target, miplevel, texture, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
2064 }
2065
2066 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture3D}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br>
2067 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
2068 public long clCreateFromGLTexture3D(long context, long flags, int target, int miplevel, int texture, IntBuffer errcode_ret) {
2069
2070 final boolean errcode_ret_is_direct = Buffers.isDirect(errcode_ret);
2071 final long __addr_ = addressTable._addressof_clCreateFromGLTexture3D;
2072 if (__addr_ == 0) {
2073 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLTexture3D"));
2074 }
2075 return dispatch_clCreateFromGLTexture3D1(context, flags, target, miplevel, texture, errcode_ret_is_direct ? errcode_ret : Buffers.getArray(errcode_ret), errcode_ret_is_direct ? Buffers.getDirectBufferByteOffset(errcode_ret) : Buffers.getIndirectBufferByteOffset(errcode_ret), errcode_ret_is_direct, __addr_);
2076 }
2077
2078 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture3D}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br>
2079 @param errcode_ret a direct or array-backed {@link java.nio.IntBuffer} */
2080 private native long dispatch_clCreateFromGLTexture3D1(long context, long flags, int target, int miplevel, int texture, Object errcode_ret, int errcode_ret_byte_offset, boolean errcode_ret_is_direct, long procAddress);
2081
2082 /** Entry point (through function pointer) to C language function: <br> <code>cl_mem {@native clCreateFromGLTexture3D}(cl_context context, cl_mem_flags flags, cl_GLenum target, cl_GLint miplevel, cl_GLuint texture, cl_int * errcode_ret)</code><br> */
2083 public long clCreateFromGLTexture3D(long context, long flags, int target, int miplevel, int texture, int[] errcode_ret, int errcode_ret_offset) {
2084
2085 if(errcode_ret != null && errcode_ret.length <= errcode_ret_offset)
2086 throw new IllegalArgumentException("array offset argument \"errcode_ret_offset\" (" + errcode_ret_offset + ") equals or exceeds array length (" + errcode_ret.length + ")");
2087 final long __addr_ = addressTable._addressof_clCreateFromGLTexture3D;
2088 if (__addr_ == 0) {
2089 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateFromGLTexture3D"));
2090 }
2091 return dispatch_clCreateFromGLTexture3D1(context, flags, target, miplevel, texture, errcode_ret, Buffers.SIZEOF_INT * errcode_ret_offset, false, __addr_);
2092 }
2093
2094 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLContextInfoKHR}(const cl_context_properties * properties, cl_gl_context_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
2095 @param properties a direct only {@link com.jogamp.common.nio.PointerBuffer}
2096 @param param_value a direct only {@link java.nio.Buffer}
2097 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
2098 public int clGetGLContextInfoKHR(PointerBuffer properties, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret) {
2099
2100 if (!Buffers.isDirect(properties))
2101 throw new IllegalArgumentException("Argument \"properties\" is not a direct buffer");
2102 if (!Buffers.isDirect(param_value))
2103 throw new IllegalArgumentException("Argument \"param_value\" is not a direct buffer");
2104 if (!Buffers.isDirect(param_value_size_ret))
2105 throw new IllegalArgumentException("Argument \"param_value_size_ret\" is not a direct buffer");
2106 final long __addr_ = addressTable._addressof_clGetGLContextInfoKHR;
2107 if (__addr_ == 0) {
2108 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clGetGLContextInfoKHR"));
2109 }
2110 return dispatch_clGetGLContextInfoKHR0(properties != null ? properties.getBuffer() : null, Buffers.getDirectBufferByteOffset(properties), param_name, param_value_size, param_value, Buffers.getDirectBufferByteOffset(param_value), param_value_size_ret != null ? param_value_size_ret.getBuffer() : null, Buffers.getDirectBufferByteOffset(param_value_size_ret), __addr_);
2111 }
2112
2113 /** Entry point (through function pointer) to C language function: <br> <code>cl_int {@native clGetGLContextInfoKHR}(const cl_context_properties * properties, cl_gl_context_info param_name, size_t param_value_size, void * param_value, size_t * param_value_size_ret)</code><br>
2114 @param properties a direct only {@link com.jogamp.common.nio.PointerBuffer}
2115 @param param_value a direct only {@link java.nio.Buffer}
2116 @param param_value_size_ret a direct only {@link com.jogamp.common.nio.PointerBuffer} */
2117 private native int dispatch_clGetGLContextInfoKHR0(Object properties, int properties_byte_offset, int param_name, long param_value_size, Object param_value, int param_value_byte_offset, Object param_value_size_ret, int param_value_size_ret_byte_offset, long procAddress);
2118
2119 /** Entry point (through function pointer) to C language function: <br> <code>cl_event {@native clCreateEventFromGLsyncKHR}(cl_context, cl_GLsync, cl_int * )</code><br>
2120 @param arg2 a direct or array-backed {@link java.nio.IntBuffer} */
2121 public long clCreateEventFromGLsyncKHR(long arg0, long arg1, IntBuffer arg2) {
2122
2123 final boolean arg2_is_direct = Buffers.isDirect(arg2);
2124 final long __addr_ = addressTable._addressof_clCreateEventFromGLsyncKHR;
2125 if (__addr_ == 0) {
2126 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateEventFromGLsyncKHR"));
2127 }
2128 return dispatch_clCreateEventFromGLsyncKHR1(arg0, arg1, arg2_is_direct ? arg2 : Buffers.getArray(arg2), arg2_is_direct ? Buffers.getDirectBufferByteOffset(arg2) : Buffers.getIndirectBufferByteOffset(arg2), arg2_is_direct, __addr_);
2129 }
2130
2131 /** Entry point (through function pointer) to C language function: <br> <code>cl_event {@native clCreateEventFromGLsyncKHR}(cl_context, cl_GLsync, cl_int * )</code><br>
2132 @param arg2 a direct or array-backed {@link java.nio.IntBuffer} */
2133 private native long dispatch_clCreateEventFromGLsyncKHR1(long arg0, long arg1, Object arg2, int arg2_byte_offset, boolean arg2_is_direct, long procAddress);
2134
2135 /** Entry point (through function pointer) to C language function: <br> <code>cl_event {@native clCreateEventFromGLsyncKHR}(cl_context, cl_GLsync, cl_int * )</code><br> */
2136 public long clCreateEventFromGLsyncKHR(long arg0, long arg1, int[] arg2, int arg2_offset) {
2137
2138 if(arg2 != null && arg2.length <= arg2_offset)
2139 throw new IllegalArgumentException("array offset argument \"arg2_offset\" (" + arg2_offset + ") equals or exceeds array length (" + arg2.length + ")");
2140 final long __addr_ = addressTable._addressof_clCreateEventFromGLsyncKHR;
2141 if (__addr_ == 0) {
2142 throw new UnsupportedOperationException(String.format("Method \"%s\" not available", "clCreateEventFromGLsyncKHR"));
2143 }
2144 return dispatch_clCreateEventFromGLsyncKHR1(arg0, arg1, arg2, Buffers.SIZEOF_INT * arg2_offset, false, __addr_);
2145 }
2146
2147
2148 // --- Begin CustomJavaCode .cfg declarations
2149
2150 protected static final CLProcAddressTable12 addressTable;
2151
2152 static {
2154 }
2155
2157
2158 public CLImpl12() {
2159 init();
2160 }
2161 /** If null, OpenCL is not available on this machine. */
2162 static final DynamicLibraryBundle dynamicLookupHelper;
2163
2164 static {
2165 dynamicLookupHelper = AccessController.doPrivileged(new PrivilegedAction<DynamicLibraryBundle>() {
2166 public DynamicLibraryBundle run() {
2167 final DynamicLibraryBundle bundle = new DynamicLibraryBundle(new CLDynamicLibraryBundleInfo());
2168 if(!bundle.isToolLibLoaded()) {
2169 // couldn't load native CL library
2170 // TODO: log this?
2171 return null;
2172 }
2173 if(!bundle.isLibComplete()) {
2174 System.err.println("Couln't load native CL/JNI glue library");
2175 return null;
2176 }
2177 addressTable.reset(bundle);
2178 /** Not required nor forced
2179 if( !initializeImpl() ) {
2180 System.err.println("Native initialization failure of CL/JNI glue library");
2181 return null;
2182 } */
2183 return bundle;
2184 } } );
2185 }
2186
2187 // maps the context id to its error handler's global object pointer
2188 private final LongLongHashMap contextCallbackMap = new LongLongHashMap();
2189
2190 // to use in subclass constructors
2191 protected void init() {
2192 this.contextCallbackMap.setKeyNotFoundValue(0);
2193 }
2194
2195 /**
2196 * Accessor.
2197 * @returns true if OpenCL is available on this machine.
2198 */
2199 public static boolean isAvailable() { return dynamicLookupHelper != null; }
2200
2201 static long clGetExtensionFunctionAddress(long clGetExtensionFunctionAddressHandle, java.lang.String procname)
2202 {
2203 if (clGetExtensionFunctionAddressHandle == 0) {
2204 throw new RuntimeException("Passed null pointer for method \"clGetExtensionFunctionAddress\"");
2205 }
2206 return dispatch_clGetExtensionFunctionAddressStatic(procname, clGetExtensionFunctionAddressHandle);
2207 }
2208
2209 /** Entry point (through function pointer) to C language function: <br> <code> void* clGetExtensionFunctionAddress(const char * fname); </code> */
2210 long clGetExtensionFunctionAddress(String fname) {
2211
2212 final long __addr_ = addressTable._addressof_clGetExtensionFunctionAddress;
2213 if (__addr_ == 0) {
2214 throw new UnsupportedOperationException("Method \"clGetExtensionFunctionAddress\" not available");
2215 }
2216 return dispatch_clGetExtensionFunctionAddressStatic(fname, __addr_);
2217 }
2218
2219 /** Entry point (through function pointer) to C language function: <br> <code> void* clGetExtensionFunctionAddress(const char * fname); </code> */
2220 private static native long dispatch_clGetExtensionFunctionAddressStatic(String fname, long procAddress);
2221
2222 @Override
2223 public long clCreateContext(final PointerBuffer properties, final PointerBuffer devices, final CLErrorHandler pfn_notify, final IntBuffer errcode_ret) {
2224
2225 if (properties != null && !properties.isDirect()) {
2226 throw new RuntimeException("Argument \"properties\" was not a direct buffer");
2227 }
2228
2229 if (errcode_ret != null && !errcode_ret.isDirect()) {
2230 throw new RuntimeException("Argument \"errcode_ret\" was not a direct buffer");
2231 }
2232
2233 final long address = addressTable._addressof_clCreateContext;
2234 if (address == 0) {
2235 throw new UnsupportedOperationException("Method not available");
2236 }
2237
2238 final long[] global = new long[1];
2239 final long ctx = this.clCreateContext0(
2240 properties != null ? properties.getBuffer() : null, Buffers.getDirectBufferByteOffset(properties),
2241 devices != null ? devices.remaining() : 0, devices != null ? devices.getBuffer() : null, Buffers.getDirectBufferByteOffset(devices),
2242 pfn_notify, global, errcode_ret, Buffers.getDirectBufferByteOffset(errcode_ret), address);
2243
2244 if (pfn_notify != null && global[0] != 0) {
2245 synchronized (contextCallbackMap) {
2246 contextCallbackMap.put(ctx, global[0]);
2247 }
2248 }
2249 return ctx;
2250 }
2251
2252 private native long clCreateContext0(Object cl_context_properties, int props_offset, int numDevices, Object devices, int devices_offset, Object pfn_notify, long[] global, Object errcode_ret, int err_offset, long address);
2253
2254 @Override
2255 public long clCreateContextFromType(final PointerBuffer properties, final long device_type, final CLErrorHandler pfn_notify, final IntBuffer errcode_ret) {
2256 if (properties != null && !properties.isDirect()) {
2257 throw new RuntimeException("Argument \"properties\" was not a direct buffer");
2258 }
2259
2260 if (errcode_ret != null && !errcode_ret.isDirect()) {
2261 throw new RuntimeException("Argument \"errcode_ret\" was not a direct buffer");
2262 }
2263
2264 final long address = addressTable._addressof_clCreateContextFromType;
2265 if (address == 0) {
2266 throw new UnsupportedOperationException("Method not available");
2267 }
2268
2269 final long[] global = new long[1];
2270 final long ctx = this.clCreateContextFromType0(
2271 properties != null ? properties.getBuffer() : null, Buffers.getDirectBufferByteOffset(properties),
2272 device_type, pfn_notify, global, errcode_ret, Buffers.getDirectBufferByteOffset(errcode_ret), address);
2273
2274 if (pfn_notify != null && global[0] != 0) {
2275 synchronized (contextCallbackMap) {
2276 contextCallbackMap.put(ctx, global[0]);
2277 }
2278 }
2279 return ctx;
2280 }
2281
2282 private native long clCreateContextFromType0(Object properties, int props_offset, long device_type, Object pfn_notify, long[] global, Object errcode_ret, int err_offset, long address);
2283
2284 @Override
2285 public int clReleaseContext(final long context) {
2286 long global = 0;
2287 synchronized (contextCallbackMap) {
2288 global = contextCallbackMap.remove(context);
2289 }
2290
2291 final long address = addressTable._addressof_clReleaseContext;
2292 if (address == 0) {
2293 throw new UnsupportedOperationException("Method not available");
2294 }
2295 return clReleaseContextImpl(context, global, address);
2296 }
2297
2298 /** Interface to C language function: <br> <code> int32_t {@native clReleaseContext}(cl_context context); </code> */
2299 public native int clReleaseContextImpl(long context, long global, long address);
2300
2301 /** Interface to C language function: <br> <code> int32_t clBuildProgram(cl_program, uint32_t, cl_device_id * , const char * , void * ); </code> */
2302 @Override
2303 public int clBuildProgram(final long program, final int deviceCount, final PointerBuffer deviceList, final String options, final BuildProgramCallback cb) {
2304 if (deviceList != null && !deviceList.isDirect()) {
2305 throw new RuntimeException("Argument \"properties\" was not a direct buffer");
2306 }
2307
2308 final long address = addressTable._addressof_clBuildProgram;
2309 if (address == 0) {
2310 throw new UnsupportedOperationException("Method not available");
2311 }
2312 return clBuildProgram0(program, deviceCount, deviceList != null ? deviceList.getBuffer() : null,
2313 Buffers.getDirectBufferByteOffset(deviceList), options, cb, address);
2314 }
2315
2316 /** Entry point to C language function: <code> int32_t clBuildProgram(cl_program, uint32_t, cl_device_id * , const char * , void * ); </code> */
2317 private native int clBuildProgram0(long program, int deviceCount, Object deviceList, int deviceListOffset, String options, BuildProgramCallback cb, long address);
2318
2319
2320 @Override
2321 public int clSetEventCallback(final long event, final int trigger, final CLEventCallback callback) {
2322 final long address = addressTable._addressof_clSetEventCallback;
2323 if (address == 0) {
2324 throw new UnsupportedOperationException("Method not available");
2325 }
2326 return clSetEventCallback0(event, trigger, callback, address);
2327 }
2328
2329 private native int clSetEventCallback0(long event, int type, CLEventCallback cb, long address);
2330
2331
2332 @Override
2333 public int clSetMemObjectDestructorCallback(final long memObjID, final CLMemObjectDestructorCallback cb) {
2334 final long address = addressTable._addressof_clSetMemObjectDestructorCallback;
2335 if (address == 0) {
2336 throw new UnsupportedOperationException("Method not available");
2337 }
2338 return clSetMemObjectDestructorCallback0(memObjID, cb, address);
2339 }
2340
2341 private native int clSetMemObjectDestructorCallback0(long memObjID, CLMemObjectDestructorCallback cb, long address);
2342
2343
2344 /** Interface to C language function: <br> <code> void * {@native clEnqueueMapImage}(cl_command_queue command_queue, cl_mem image, uint32_t blocking_map, uint64_t map_flags, const size_t * , const size_t * , size_t * image_row_pitch, size_t * image_slice_pitch, uint32_t num_events_in_wait_list, cl_event * event_wait_list, cl_event * event, int32_t * errcode_ret); </code>
2345 @param origin a direct {@link com.jogamp.common.nio.PointerBuffer}
2346 @param range a direct {@link com.jogamp.common.nio.PointerBuffer}
2347 @param image_row_pitch a direct {@link com.jogamp.common.nio.PointerBuffer}
2348 @param image_slice_pitch a direct {@link com.jogamp.common.nio.PointerBuffer}
2349 @param event_wait_list a direct {@link com.jogamp.common.nio.PointerBuffer}
2350 @param event a direct {@link com.jogamp.common.nio.PointerBuffer}
2351 @param errcode_ret a direct {@link java.nio.IntBuffer} */
2352 @Override
2353 public ByteBuffer clEnqueueMapImage(final long command_queue, final long image, final int blocking_map, final long map_flags,
2354 final PointerBuffer origin, final PointerBuffer range,
2355 final PointerBuffer image_row_pitch, final PointerBuffer image_slice_pitch,
2356 final int num_events_in_wait_list,
2357 final PointerBuffer event_wait_list, final PointerBuffer event, final IntBuffer errcode_ret) {
2358
2359 if (origin != null && !origin.isDirect()) {
2360 throw new CLException("Argument \"origin\" was not a direct buffer");
2361 }
2362 if (range != null && !range.isDirect()) {
2363 throw new CLException("Argument \"range\" was not a direct buffer");
2364 }
2365 if (image_row_pitch != null && !image_row_pitch.isDirect()) {
2366 throw new CLException("Argument \"image_row_pitch\" was not a direct buffer");
2367 }
2368 if (image_slice_pitch != null && !image_slice_pitch.isDirect()) {
2369 throw new CLException("Argument \"image_slice_pitch\" was not a direct buffer");
2370 }
2371 if (event_wait_list != null && !event_wait_list.isDirect()) {
2372 throw new CLException("Argument \"event_wait_list\" was not a direct buffer");
2373 }
2374 if (event != null && !event.isDirect()) {
2375 throw new CLException("Argument \"event\" was not a direct buffer");
2376 }
2377 if (errcode_ret != null && !errcode_ret.isDirect()) {
2378 throw new CLException("Argument \"errcode_ret\" was not a direct buffer");
2379 }
2380
2381 final long getImageInfoAddress = addressTable._addressof_clGetImageInfo;
2382 if (getImageInfoAddress == 0) {
2383 throw new UnsupportedOperationException("Method not available");
2384 }
2385 final long mapImageAddress = addressTable._addressof_clEnqueueMapImage;
2386 if (mapImageAddress == 0) {
2387 throw new UnsupportedOperationException("Method not available");
2388 }
2389 ByteBuffer _res;
2390 _res = clEnqueueMapImage0(command_queue, image, blocking_map, map_flags, origin != null ? origin.getBuffer() : null,
2391 Buffers.getDirectBufferByteOffset(origin), range != null ? range.getBuffer() : null,
2392 Buffers.getDirectBufferByteOffset(range), image_row_pitch != null ? image_row_pitch.getBuffer() : null,
2393 Buffers.getDirectBufferByteOffset(image_row_pitch), image_slice_pitch != null ? image_slice_pitch.getBuffer() : null,
2394 Buffers.getDirectBufferByteOffset(image_slice_pitch), num_events_in_wait_list,
2395 event_wait_list != null ? event_wait_list.getBuffer() : null, Buffers.getDirectBufferByteOffset(event_wait_list),
2396 event != null ? event.getBuffer() : null, Buffers.getDirectBufferByteOffset(event), errcode_ret,
2397 Buffers.getDirectBufferByteOffset(errcode_ret), getImageInfoAddress, mapImageAddress);
2398 if (_res == null) {
2399 return null;
2400 }
2401 Buffers.nativeOrder(_res);
2402 return _res;
2403 }
2404
2405 /** Entry point to C language function: <code> void * {@native clEnqueueMapImage}(cl_command_queue command_queue, cl_mem image, uint32_t blocking_map, uint64_t map_flags, const size_t * , const size_t * , size_t * image_row_pitch, size_t * image_slice_pitch, uint32_t num_events_in_wait_list, cl_event * event_wait_list, cl_event * event, int32_t * errcode_ret); </code>
2406 @param origin a direct {@link com.jogamp.common.nio.PointerBuffer}
2407 @param range a direct {@link com.jogamp.common.nio.PointerBuffer}
2408 @param image_row_pitch a direct {@link com.jogamp.common.nio.PointerBuffer}
2409 @param image_slice_pitch a direct {@link com.jogamp.common.nio.PointerBuffer}
2410 @param event_wait_list a direct {@link com.jogamp.common.nio.PointerBuffer}
2411 @param event a direct {@link com.jogamp.common.nio.PointerBuffer}
2412 @param errcode_ret a direct {@link java.nio.IntBuffer} */
2413 private native ByteBuffer clEnqueueMapImage0(long command_queue, long image, int blocking_map, long map_flags,
2414 Object origin, int origin_byte_offset, Object range, int range_byte_offset, Object image_row_pitch,
2415 int image_row_pitch_byte_offset, Object image_slice_pitch, int image_slice_pitch_byte_offset,
2416 int num_events_in_wait_list, Object event_wait_list, int event_wait_list_byte_offset, Object event,
2417 int event_byte_offset, Object errcode_ret, int errcode_ret_byte_offset,
2418 long getImageInfoAddress, long mapImageAddress);
2419 // ---- End CustomJavaCode .cfg declarations
2420} // end of class CLImpl12
Main Exception type for runtime OpenCL errors and failed function calls (e.g.
Struct accessor for cl_image_desc.
final java.nio.ByteBuffer getBuffer()
Return the underlying native direct ByteBuffer.
Struct accessor for cl_image_format.
final java.nio.ByteBuffer getBuffer()
Return the underlying native direct ByteBuffer.
Java bindings to OpenCL, the Open Computing Language (generated).
Definition: CLImpl12.java:33
int clRetainSampler(long sampler)
Entry point (through function pointer) to C language function: cl_int {@native clRetainSampler}(cl_...
Definition: CLImpl12.java:515
int clGetCommandQueueInfo(long command_queue, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetCommandQueueInf...
Definition: CLImpl12.java:273
int clEnqueueReleaseGLObjects(long command_queue, int num_objects, PointerBuffer mem_objects, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueReleaseGLOb...
Definition: CLImpl12.java:2017
int clUnloadPlatformCompiler(long platform)
Entry point (through function pointer) to C language function: cl_int {@native clUnloadPlatformComp...
Definition: CLImpl12.java:680
long clCreateCommandQueue(long context, long device, long properties, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_command_queue {@native clCreateCo...
Definition: CLImpl12.java:218
long clCreateKernel(long program, String kernel_name, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_kernel {@native clCreateKernel}(c...
Definition: CLImpl12.java:751
int clGetMemObjectInfo(long memobj, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetMemObjectInfo}(...
Definition: CLImpl12.java:447
long clCreateKernel(long program, String kernel_name, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_kernel {@native clCreateKernel}(c...
Definition: CLImpl12.java:736
int clGetDeviceIDs(long platform, long device_type, int num_entries, PointerBuffer devices, IntBuffer num_devices)
Entry point (through function pointer) to C language function: cl_int {@native clGetDeviceIDs}(cl_p...
Definition: CLImpl12.java:79
int clRetainMemObject(long memobj)
Entry point (through function pointer) to C language function: cl_int {@native clRetainMemObject}(c...
Definition: CLImpl12.java:391
long clCreateFromGLTexture3D(long context, long flags, int target, int miplevel, int texture, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLTextur...
Definition: CLImpl12.java:2083
int clSetEventCallback(final long event, final int trigger, final CLEventCallback callback)
Interface to C language function: int32_t {@native clSetEventCallback}(cl_event event,...
Definition: CLImpl12.java:2321
int clEnqueueWriteBuffer(long command_queue, long buffer, int blocking_write, long offset, long size, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueWriteBuffer...
Definition: CLImpl12.java:1105
int clEnqueueMigrateMemObjects(long command_queue, int num_mem_objects, PointerBuffer mem_objects, long flags, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueMigrateMemO...
Definition: CLImpl12.java:1482
int clEnqueueNDRangeKernel(long command_queue, long kernel, int work_dim, PointerBuffer global_work_offset, PointerBuffer global_work_size, PointerBuffer local_work_size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueNDRangeKern...
Definition: CLImpl12.java:1506
int clReleaseDevice(long device)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseDevice}(cl_...
Definition: CLImpl12.java:170
long clCreateProgramWithBuiltInKernels(long context, int num_devices, PointerBuffer device_list, ByteBuffer kernel_names, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_program {@native clCreateProgramW...
Definition: CLImpl12.java:619
int clReleaseEvent(long event)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseEvent}(cl_e...
Definition: CLImpl12.java:967
long clCreateFromGLTexture(long context, long flags, int target, int miplevel, int texture, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLTextur...
Definition: CLImpl12.java:1897
int clEnqueueBarrier(long command_queue)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueBarrier}(cl...
Definition: CLImpl12.java:1729
int clRetainDeviceEXT(long arg0)
Entry point (through function pointer) to C language function: cl_int {@native clRetainDeviceEXT}(c...
Definition: CLImpl12.java:1802
long clCreateFromGLRenderbuffer(long context, long flags, int renderbuffer, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLRender...
Definition: CLImpl12.java:1925
long clCreateFromGLBuffer(long context, long flags, int bufobj, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLBuffer...
Definition: CLImpl12.java:1869
int clGetSamplerInfo(long sampler, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetSamplerInfo}(cl...
Definition: CLImpl12.java:543
int clReleaseProgram(long program)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseProgram}(cl...
Definition: CLImpl12.java:667
long clCreateContext(final PointerBuffer properties, final PointerBuffer devices, final CLErrorHandler pfn_notify, final IntBuffer errcode_ret)
Interface to C language function: cl_context {@native clCreateContext}(intptr_t * ,...
Definition: CLImpl12.java:2223
int clGetProgramInfo(long program, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetProgramInfo}(cl...
Definition: CLImpl12.java:695
int clEnqueueCopyBuffer(long command_queue, long src_buffer, long dst_buffer, long src_offset, long dst_offset, long size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueCopyBuffer}...
Definition: CLImpl12.java:1188
long clCreateProgramWithSource(long context, int count, String[] strings, PointerBuffer lengths, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_program {@native clCreateProgramW...
Definition: CLImpl12.java:564
int clGetPlatformIDs(int num_entries, PointerBuffer platforms, IntBuffer num_platforms)
Entry point (through function pointer) to C language function: cl_int {@native clGetPlatformIDs}(cl...
Definition: CLImpl12.java:37
int clEnqueueUnmapMemObject(long command_queue, long memobj, Buffer mapped_ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueUnmapMemObj...
Definition: CLImpl12.java:1457
long clCreateContextFromType(final PointerBuffer properties, final long device_type, final CLErrorHandler pfn_notify, final IntBuffer errcode_ret)
Interface to C language function: cl_context {@native clCreateContextFromType}(cl_context_properti...
Definition: CLImpl12.java:2255
long clCreateImage(long context, long flags, CLImageFormatImpl image_format, CLImageDescImpl image_desc, Buffer host_ptr, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateImage}(cl_co...
Definition: CLImpl12.java:360
int clEnqueueReadBuffer(long command_queue, long buffer, int blocking_read, long offset, long size, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueReadBuffer}...
Definition: CLImpl12.java:1043
int clBuildProgram(final long program, final int deviceCount, final PointerBuffer deviceList, final String options, final BuildProgramCallback cb)
Interface to C language function: int32_t clBuildProgram(cl_program, uint32_t, cl_device_id * ,...
Definition: CLImpl12.java:2303
int clGetDeviceInfo(long device, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetDeviceInfo}(cl_...
Definition: CLImpl12.java:100
native int clReleaseContextImpl(long context, long global, long address)
Interface to C language function: int32_t {@native clReleaseContext}(cl_context context);
int clGetContextInfo(long context, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetContextInfo}(cl...
Definition: CLImpl12.java:198
long clCreateUserEvent(long context, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_event {@native clCreateUserEvent}...
Definition: CLImpl12.java:942
static boolean isAvailable()
Accessor.
Definition: CLImpl12.java:2199
int clCreateSubDevices(long in_device, PointerBuffer properties, int num_devices, PointerBuffer out_devices, IntBuffer num_devices_ret)
Entry point (through function pointer) to C language function: cl_int {@native clCreateSubDevices}(...
Definition: CLImpl12.java:122
long clCreateSampler(long context, int normalized_coords, int addressing_mode, int filter_mode, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_sampler {@native clCreateSampler}...
Definition: CLImpl12.java:488
long clCreateSampler(long context, int normalized_coords, int addressing_mode, int filter_mode, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_sampler {@native clCreateSampler}...
Definition: CLImpl12.java:503
long clCreateFromGLTexture2D(long context, long flags, int target, int miplevel, int texture, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLTextur...
Definition: CLImpl12.java:2055
int clGetImageInfo(long image, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetImageInfo}(cl_m...
Definition: CLImpl12.java:468
int clGetProgramBuildInfo(long program, long device, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetProgramBuildInf...
Definition: CLImpl12.java:716
int clReleaseDeviceEXT(long arg0)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseDeviceEXT}(...
Definition: CLImpl12.java:1789
int clSetMemObjectDestructorCallback(final long memObjID, final CLMemObjectDestructorCallback cb)
Interface to C language function: int32_t {@native clSetMemObjectDestructorCallback}(cl_mem memobj...
Definition: CLImpl12.java:2333
long clCreateBuffer(long context, long flags, long size, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateBuffer}(cl_c...
Definition: CLImpl12.java:312
int clFlush(long command_queue)
Entry point (through function pointer) to C language function: cl_int {@native clFlush}(cl_command_...
Definition: CLImpl12.java:1014
int clEnqueueMarkerWithWaitList(long command_queue, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueMarkerWithW...
Definition: CLImpl12.java:1557
long clCreateFromGLBuffer(long context, long flags, int bufobj, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLBuffer...
Definition: CLImpl12.java:1854
int clIcdGetPlatformIDsKHR(int arg0, PointerBuffer arg1, IntBuffer arg2)
Entry point (through function pointer) to C language function: cl_int {@native clIcdGetPlatformIDsK...
Definition: CLImpl12.java:1757
ByteBuffer clGetExtensionFunctionAddressForPlatform(long platform, ByteBuffer func_name)
Entry point (through function pointer) to C language function: void * {@native clGetExtensionFuncti...
Definition: CLImpl12.java:1594
long clCreateProgramWithBinary(long context, int num_devices, PointerBuffer device_list, PointerBuffer lengths, PointerBuffer binaries, IntBuffer binary_status, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_program {@native clCreateProgramW...
Definition: CLImpl12.java:588
int clWaitForEvents(int num_events, PointerBuffer event_list)
Entry point (through function pointer) to C language function: cl_int {@native clWaitForEvents}(cl_...
Definition: CLImpl12.java:889
int clCreateSubDevicesEXT(long arg0, long[] arg1, int arg1_offset, int arg2, PointerBuffer arg3, int[] arg4, int arg4_offset)
Entry point (through function pointer) to C language function: cl_int {@native clCreateSubDevicesEX...
Definition: CLImpl12.java:1838
int clGetSupportedImageFormats(long context, long flags, int image_type, int num_entries, CLImageFormatImpl image_formats, IntBuffer num_image_formats)
Entry point (through function pointer) to C language function: cl_int {@native clGetSupportedImageF...
Definition: CLImpl12.java:418
long clCreateFromGLRenderbuffer(long context, long flags, int renderbuffer, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLRender...
Definition: CLImpl12.java:1910
long clCreateProgramWithBuiltInKernels(long context, int num_devices, PointerBuffer device_list, byte[] kernel_names, int kernel_names_offset, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_program {@native clCreateProgramW...
Definition: CLImpl12.java:639
int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueWriteBuffer...
Definition: CLImpl12.java:1133
int clEnqueueWriteImage(long command_queue, long image, int blocking_write, PointerBuffer arg3, PointerBuffer arg4, long input_row_pitch, long input_slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueWriteImage}...
Definition: CLImpl12.java:1278
int clReleaseCommandQueue(long command_queue)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseCommandQueu...
Definition: CLImpl12.java:258
int clCreateKernelsInProgram(long program, int num_kernels, PointerBuffer kernels, IntBuffer num_kernels_ret)
Entry point (through function pointer) to C language function: cl_int {@native clCreateKernelsInPro...
Definition: CLImpl12.java:765
int clEnqueueWaitForEvents(long command_queue, int num_events, PointerBuffer event_list)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueWaitForEven...
Definition: CLImpl12.java:1713
int clEnqueueCopyImageToBuffer(long command_queue, long src_image, long dst_buffer, PointerBuffer arg3, PointerBuffer arg4, long dst_offset, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueCopyImageTo...
Definition: CLImpl12.java:1371
long clCreateImage3D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_depth, long image_row_pitch, long image_slice_pitch, Buffer host_ptr, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateImage3D}(cl_...
Definition: CLImpl12.java:1664
int clEnqueueReadImage(long command_queue, long image, int blocking_read, PointerBuffer arg3, PointerBuffer arg4, long row_pitch, long slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueReadImage}(...
Definition: CLImpl12.java:1245
long clCreateImage3D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_depth, long image_row_pitch, long image_slice_pitch, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateImage3D}(cl_...
Definition: CLImpl12.java:1682
int clRetainDevice(long device)
Entry point (through function pointer) to C language function: cl_int {@native clRetainDevice}(cl_d...
Definition: CLImpl12.java:157
int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, Buffer ptr, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueReadBufferR...
Definition: CLImpl12.java:1071
int clReleaseContext(final long context)
Interface to C language function: cl_int {@native clReleaseContext}(cl_context context)
Definition: CLImpl12.java:2285
long clCreateFromGLTexture3D(long context, long flags, int target, int miplevel, int texture, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLTextur...
Definition: CLImpl12.java:2068
int clCreateSubDevicesEXT(long arg0, LongBuffer arg1, int arg2, PointerBuffer arg3, IntBuffer arg4)
Entry point (through function pointer) to C language function: cl_int {@native clCreateSubDevicesEX...
Definition: CLImpl12.java:1818
ByteBuffer clEnqueueMapBuffer(long command_queue, long buffer, int blocking_map, long map_flags, long offset, long size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: void * {@native clEnqueueMapBuffer}(...
Definition: CLImpl12.java:1428
int clGetGLObjectInfo(long memobj, int[] gl_object_type, int gl_object_type_offset, int[] gl_object_name, int gl_object_name_offset)
Entry point (through function pointer) to C language function: cl_int {@native clGetGLObjectInfo}(c...
Definition: CLImpl12.java:1956
long clCreateEventFromGLsyncKHR(long arg0, long arg1, int[] arg2, int arg2_offset)
Entry point (through function pointer) to C language function: cl_event {@native clCreateEventFromG...
Definition: CLImpl12.java:2136
int clGetPlatformInfo(long platform, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetPlatformInfo}(c...
Definition: CLImpl12.java:58
int clGetEventInfo(long event, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetEventInfo}(cl_e...
Definition: CLImpl12.java:907
int clReleaseSampler(long sampler)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseSampler}(cl...
Definition: CLImpl12.java:528
static final CLProcAddressTable12 addressTable
Definition: CLImpl12.java:2150
int clGetKernelArgInfo(long kernel, int arg_indx, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetKernelArgInfo}(...
Definition: CLImpl12.java:850
long clCreateImage2D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_row_pitch, Buffer host_ptr, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateImage2D}(cl_...
Definition: CLImpl12.java:1631
static CLProcAddressTable12 getAddressTable()
Definition: CLImpl12.java:2156
int clEnqueueBarrierWithWaitList(long command_queue, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueBarrierWith...
Definition: CLImpl12.java:1576
int clRetainProgram(long program)
Entry point (through function pointer) to C language function: cl_int {@native clRetainProgram}(cl_...
Definition: CLImpl12.java:654
int clGetKernelWorkGroupInfo(long kernel, long device, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetKernelWorkGroup...
Definition: CLImpl12.java:869
int clEnqueueFillBuffer(long command_queue, long buffer, Buffer pattern, long pattern_size, long offset, long size, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueFillBuffer}...
Definition: CLImpl12.java:1167
int clFinish(long command_queue)
Entry point (through function pointer) to C language function: cl_int {@native clFinish}(cl_command...
Definition: CLImpl12.java:1027
int clEnqueueTask(long command_queue, long kernel, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueTask}(cl_co...
Definition: CLImpl12.java:1536
ByteBuffer clEnqueueMapImage(final long command_queue, final long image, final int blocking_map, final long map_flags, final PointerBuffer origin, final PointerBuffer range, final PointerBuffer image_row_pitch, final PointerBuffer image_slice_pitch, final int num_events_in_wait_list, final PointerBuffer event_wait_list, final PointerBuffer event, final IntBuffer errcode_ret)
Interface to C language function: void * {@native clEnqueueMapImage}(cl_command_queue command_queu...
Definition: CLImpl12.java:2353
int clTerminateContextKHR(long arg0)
Entry point (through function pointer) to C language function: cl_int {@native clTerminateContextKH...
Definition: CLImpl12.java:1776
long clCreateFromGLTexture(long context, long flags, int target, int miplevel, int texture, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLTextur...
Definition: CLImpl12.java:1882
int clGetEventProfilingInfo(long event, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetEventProfilingI...
Definition: CLImpl12.java:995
int clEnqueueAcquireGLObjects(long command_queue, int num_objects, PointerBuffer mem_objects, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueAcquireGLOb...
Definition: CLImpl12.java:1992
int clGetSupportedImageFormats(long context, long flags, int image_type, int num_entries, CLImageFormatImpl image_formats, int[] num_image_formats, int num_image_formats_offset)
Entry point (through function pointer) to C language function: cl_int {@native clGetSupportedImageF...
Definition: CLImpl12.java:433
int clRetainCommandQueue(long command_queue)
Entry point (through function pointer) to C language function: cl_int {@native clRetainCommandQueue...
Definition: CLImpl12.java:245
int clEnqueueFillImage(long command_queue, long image, Buffer fill_color, PointerBuffer arg3, PointerBuffer arg4, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueFillImage}(...
Definition: CLImpl12.java:1311
int clGetGLContextInfoKHR(PointerBuffer properties, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetGLContextInfoKH...
Definition: CLImpl12.java:2098
long clCreateImage(long context, long flags, CLImageFormatImpl image_format, CLImageDescImpl image_desc, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateImage}(cl_co...
Definition: CLImpl12.java:378
int clGetGLTextureInfo(long memobj, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetGLTextureInfo}(...
Definition: CLImpl12.java:1972
int clSetUserEventStatus(long event, int execution_status)
Entry point (through function pointer) to C language function: cl_int {@native clSetUserEventStatus...
Definition: CLImpl12.java:980
int clRetainKernel(long kernel)
Entry point (through function pointer) to C language function: cl_int {@native clRetainKernel}(cl_k...
Definition: CLImpl12.java:784
int clGetKernelInfo(long kernel, int param_name, long param_value_size, Buffer param_value, PointerBuffer param_value_size_ret)
Entry point (through function pointer) to C language function: cl_int {@native clGetKernelInfo}(cl_...
Definition: CLImpl12.java:829
long clCreateSubBuffer(long buffer, long flags, int buffer_create_type, Buffer buffer_create_info, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateSubBuffer}(c...
Definition: CLImpl12.java:345
int clEnqueueCopyBufferRect(long command_queue, long src_buffer, long dst_buffer, PointerBuffer src_origin, PointerBuffer dst_origin, PointerBuffer region, long src_row_pitch, long src_slice_pitch, long dst_row_pitch, long dst_slice_pitch, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueCopyBufferR...
Definition: CLImpl12.java:1212
int clEnqueueMarker(long command_queue, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueMarker}(cl_...
Definition: CLImpl12.java:1696
long clCreateEventFromGLsyncKHR(long arg0, long arg1, IntBuffer arg2)
Entry point (through function pointer) to C language function: cl_event {@native clCreateEventFromG...
Definition: CLImpl12.java:2121
int clUnloadCompiler()
Entry point (through function pointer) to C language function: cl_int {@native clUnloadCompiler}()
Definition: CLImpl12.java:1742
long clCreateBuffer(long context, long flags, long size, Buffer host_ptr, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateBuffer}(cl_c...
Definition: CLImpl12.java:294
int clSetKernelArg(long kernel, int arg_index, long arg_size, Buffer arg_value)
Entry point (through function pointer) to C language function: cl_int {@native clSetKernelArg}(cl_k...
Definition: CLImpl12.java:811
int clGetGLObjectInfo(long memobj, IntBuffer gl_object_type, IntBuffer gl_object_name)
Entry point (through function pointer) to C language function: cl_int {@native clGetGLObjectInfo}(c...
Definition: CLImpl12.java:1939
int clReleaseMemObject(long memobj)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseMemObject}(...
Definition: CLImpl12.java:404
int clRetainEvent(long event)
Entry point (through function pointer) to C language function: cl_int {@native clRetainEvent}(cl_ev...
Definition: CLImpl12.java:954
long clCreateImage2D(long context, long flags, CLImageFormatImpl image_format, long image_width, long image_height, long image_row_pitch, Buffer host_ptr, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateImage2D}(cl_...
Definition: CLImpl12.java:1649
long clCreateSubBuffer(long buffer, long flags, int buffer_create_type, Buffer buffer_create_info, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateSubBuffer}(c...
Definition: CLImpl12.java:327
int clReleaseKernel(long kernel)
Entry point (through function pointer) to C language function: cl_int {@native clReleaseKernel}(cl_...
Definition: CLImpl12.java:797
long clCreateUserEvent(long context, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_event {@native clCreateUserEvent}...
Definition: CLImpl12.java:927
int clEnqueueCopyImage(long command_queue, long src_image, long dst_image, PointerBuffer arg3, PointerBuffer arg4, PointerBuffer arg5, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueCopyImage}(...
Definition: CLImpl12.java:1339
int clRetainContext(long context)
Entry point (through function pointer) to C language function: cl_int {@native clRetainContext}(cl_...
Definition: CLImpl12.java:183
int clEnqueueCopyBufferToImage(long command_queue, long src_buffer, long dst_image, long src_offset, PointerBuffer arg4, PointerBuffer arg5, int num_events_in_wait_list, PointerBuffer event_wait_list, PointerBuffer event)
Entry point (through function pointer) to C language function: cl_int {@native clEnqueueCopyBufferT...
Definition: CLImpl12.java:1400
long clCreateCommandQueue(long context, long device, long properties, int[] errcode_ret, int errcode_ret_offset)
Entry point (through function pointer) to C language function: cl_command_queue {@native clCreateCo...
Definition: CLImpl12.java:233
long clCreateFromGLTexture2D(long context, long flags, int target, int miplevel, int texture, IntBuffer errcode_ret)
Entry point (through function pointer) to C language function: cl_mem {@native clCreateFromGLTextur...
Definition: CLImpl12.java:2040
ByteBuffer clGetExtensionFunctionAddressForPlatform(long platform, byte[] func_name, int func_name_offset)
Entry point (through function pointer) to C language function: void * {@native clGetExtensionFuncti...
Definition: CLImpl12.java:1613
int clCreateSubDevices(long in_device, PointerBuffer properties, int num_devices, PointerBuffer out_devices, int[] num_devices_ret, int num_devices_ret_offset)
Entry point (through function pointer) to C language function: cl_int {@native clCreateSubDevices}(...
Definition: CLImpl12.java:143
This table is a cache of pointers to the dynamically-linkable C library.
Experimental: the api may change in future, feedback appreciated.
A callback an application can register to be called when the program executable has been built (succe...
A callback for a specific command execution status.
A callback which is invoked by the OpenCL implementation when the memory object is deleted and its re...