summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--resources/cl-if.cfg6
-rw-r--r--resources/clImplCustomCode.c2
-rw-r--r--src/com/jogamp/opencl/CLBuffer.java4
-rw-r--r--src/com/jogamp/opencl/CLCommandQueue.java104
-rw-r--r--src/com/jogamp/opencl/CLContext.java20
-rw-r--r--src/com/jogamp/opencl/CLDevice.java4
-rw-r--r--src/com/jogamp/opencl/CLEvent.java8
-rw-r--r--src/com/jogamp/opencl/CLEventList.java16
-rw-r--r--src/com/jogamp/opencl/CLImage.java5
-rw-r--r--src/com/jogamp/opencl/CLInfoAccessor.java12
-rw-r--r--src/com/jogamp/opencl/CLKernel.java4
-rw-r--r--src/com/jogamp/opencl/CLMemory.java6
-rw-r--r--src/com/jogamp/opencl/CLPlatform.java18
-rw-r--r--src/com/jogamp/opencl/CLProgram.java29
-rw-r--r--src/com/jogamp/opencl/CLSampler.java4
-rw-r--r--src/com/jogamp/opencl/gl/CLGLContext.java18
-rw-r--r--src/com/jogamp/opencl/impl/CLImpl.java56
-rw-r--r--src/com/jogamp/opencl/util/CLBuildListener.java2
-rw-r--r--test/com/jogamp/opencl/LowLevelBindingTest.java26
19 files changed, 172 insertions, 172 deletions
diff --git a/resources/cl-if.cfg b/resources/cl-if.cfg
index f65a417b..aa7de799 100644
--- a/resources/cl-if.cfg
+++ b/resources/cl-if.cfg
@@ -23,17 +23,17 @@ Ignore CL_GL_.*|cl.*GL.*
Ignore clCreateContext
CustomJavaCode CL
CustomJavaCode CL /** Interface to C language function: <br> <code> cl_context {@native clCreateContext}(intptr_t * , uint32_t, cl_device_id * , void (*pfn_notify)(const char *, const void *, size_t, void *), void *, int32_t * ); </code> */
-CustomJavaCode CL public long clCreateContext(PointerBuffer properties, PointerBuffer devices, CLErrorHandler pfn_notify, IntBuffer errcode_ret);
+CustomJavaCode CL public long clCreateContext(NativeSizeBuffer properties, NativeSizeBuffer devices, CLErrorHandler pfn_notify, IntBuffer errcode_ret);
Ignore clCreateContextFromType
CustomJavaCode CL
CustomJavaCode CL /** Interface to C language function: <br> <code> cl_context {@native clCreateContextFromType}(cl_context_properties *properties, cl_device_type device_type, void (*pfn_notify)(const char *errinfo, const void *private_info, size_t cb, void *user_data), void *user_data, cl_int *errcode_ret) ; </code> */
-CustomJavaCode CL public long clCreateContextFromType(PointerBuffer properties, long device_type, CLErrorHandler pfn_notify, IntBuffer errcode_ret);
+CustomJavaCode CL public long clCreateContextFromType(NativeSizeBuffer properties, long device_type, CLErrorHandler pfn_notify, IntBuffer errcode_ret);
Ignore clBuildProgram
CustomJavaCode CL
CustomJavaCode CL /** Interface to C language function: <br> <code> int32_t {@native clBuildProgram}(cl_program, uint32_t, cl_device_id * , const char * , void (*pfn_notify)(cl_program, void *user_data), void * ); </code> */
-CustomJavaCode CL public int clBuildProgram(long program, int deviceCount, PointerBuffer devices, String options, BuildProgramCallback cb);
+CustomJavaCode CL public int clBuildProgram(long program, int deviceCount, NativeSizeBuffer devices, String options, BuildProgramCallback cb);
Ignore clSetEventCallback
CustomJavaCode CL
diff --git a/resources/clImplCustomCode.c b/resources/clImplCustomCode.c
index f0ff3651..789491c6 100644
--- a/resources/clImplCustomCode.c
+++ b/resources/clImplCustomCode.c
@@ -299,7 +299,7 @@ Java_com_jogamp_opencl_impl_CLImpl_clBuildProgram0(JNIEnv *env, jobject _unused,
/* Java->C glue code:
* Java package: com.jogamp.opencl.impl.CLImpl
- * Java method: java.nio.ByteBuffer clEnqueueMapImage(long command_queue, long image, int blocking_map, long map_flags, com.jogamp.gluegen.runtime.PointerBuffer origin, com.jogamp.gluegen.runtime.PointerBuffer range, com.jogamp.gluegen.runtime.PointerBuffer image_row_pitch, com.jogamp.gluegen.runtime.PointerBuffer image_slice_pitch, int num_events_in_wait_list, com.jogamp.gluegen.runtime.PointerBuffer event_wait_list, com.jogamp.gluegen.runtime.PointerBuffer event, java.nio.IntBuffer errcode_ret)
+ * Java method: java.nio.ByteBuffer clEnqueueMapImage(long command_queue, long image, int blocking_map, long map_flags, com.jogamp.gluegen.common.nio.NativeSizeBuffer origin, com.jogamp.gluegen.common.nio.NativeSizeBuffer range, com.jogamp.gluegen.common.nio.NativeSizeBuffer image_row_pitch, com.jogamp.gluegen.common.nio.NativeSizeBuffer image_slice_pitch, int num_events_in_wait_list, com.jogamp.gluegen.common.nio.NativeSizeBuffer event_wait_list, com.jogamp.gluegen.common.nio.NativeSizeBuffer event, java.nio.IntBuffer errcode_ret)
* C function: void * 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);
*/
JNIEXPORT jobject JNICALL
diff --git a/src/com/jogamp/opencl/CLBuffer.java b/src/com/jogamp/opencl/CLBuffer.java
index 57fba461..6f00247c 100644
--- a/src/com/jogamp/opencl/CLBuffer.java
+++ b/src/com/jogamp/opencl/CLBuffer.java
@@ -30,7 +30,7 @@ package com.jogamp.opencl;
import com.jogamp.common.nio.Buffers;
import java.util.List;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.opencl.CLMemory.Mem;
import java.nio.Buffer;
import java.util.ArrayList;
@@ -108,7 +108,7 @@ public class CLBuffer<B extends Buffer> extends CLMemory<B> {
size *= elemSize;
}
- PointerBuffer info = PointerBuffer.allocateDirect(2);
+ NativeSizeBuffer info = NativeSizeBuffer.allocateDirect(2);
info.put(offset).put(size).rewind();
int bitset = Mem.flagsToInt(flags);
diff --git a/src/com/jogamp/opencl/CLCommandQueue.java b/src/com/jogamp/opencl/CLCommandQueue.java
index 7c567013..40c5cc02 100644
--- a/src/com/jogamp/opencl/CLCommandQueue.java
+++ b/src/com/jogamp/opencl/CLCommandQueue.java
@@ -30,7 +30,7 @@ package com.jogamp.opencl;
import com.jogamp.common.nio.CachedBufferFactory;
import com.jogamp.opencl.gl.CLGLI;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
@@ -65,9 +65,9 @@ public class CLCommandQueue extends CLObject implements CLResource {
* Those direct memory buffers are used to move data between the JVM and OpenCL.
*/
private final IntBuffer pbA;
- private final PointerBuffer ibA;
- private final PointerBuffer ibB;
- private final PointerBuffer ibC;
+ private final NativeSizeBuffer ibA;
+ private final NativeSizeBuffer ibB;
+ private final NativeSizeBuffer ibC;
private CLCommandQueue(CLContext context, long id, CLDevice device, long properties) {
super(context, id);
@@ -75,12 +75,12 @@ public class CLCommandQueue extends CLObject implements CLResource {
this.device = device;
this.properties = properties;
- int pbsize = PointerBuffer.elementSize();
+ int pbsize = NativeSizeBuffer.elementSize();
CachedBufferFactory factory = CachedBufferFactory.create(9*pbsize + 4, true);
- this.ibA = PointerBuffer.wrap(factory.newDirectByteBuffer(3*pbsize));
- this.ibB = PointerBuffer.wrap(factory.newDirectByteBuffer(3*pbsize));
- this.ibC = PointerBuffer.wrap(factory.newDirectByteBuffer(3*pbsize));
+ this.ibA = NativeSizeBuffer.wrap(factory.newDirectByteBuffer(3*pbsize));
+ this.ibB = NativeSizeBuffer.wrap(factory.newDirectByteBuffer(3*pbsize));
+ this.ibC = NativeSizeBuffer.wrap(factory.newDirectByteBuffer(3*pbsize));
this.pbA = factory.newDirectIntBuffer(1);
@@ -116,7 +116,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putWriteBuffer(CLBuffer<?> writeBuffer, boolean blockingWrite, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -160,7 +160,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putReadBuffer(CLBuffer<?> readBuffer, boolean blockingRead, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -209,7 +209,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putCopyBuffer(CLBuffer<?> src, CLBuffer<?> dest, int srcOffset, int destOffset, long bytesToCopy, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -279,7 +279,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
long rowPitch, long slicePitch, long hostRowPitch, long hostSlicePitch,
boolean blockingWrite, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -357,7 +357,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
long rowPitch, long slicePitch, long hostRowPitch, long hostSlicePitch,
boolean blockingRead, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -438,7 +438,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
long srcRowPitch, long srcSlicePitch, long destRowPitch, long destSlicePitch,
CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -506,7 +506,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
public CLCommandQueue putWriteImage(CLImage2d<?> writeImage, int inputRowPitch,
int originX, int originY, int rangeX, int rangeY, boolean blockingWrite, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -568,7 +568,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
public CLCommandQueue putWriteImage(CLImage3d<?> writeImage, int inputRowPitch, int inputSlicePitch,
int originX, int originY, int originZ, int rangeX, int rangeY, int rangeZ, boolean blockingWrite, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -629,7 +629,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
public CLCommandQueue putReadImage(CLImage2d<?> readImage, int inputRowPitch,
int originX, int originY, int rangeX, int rangeY, boolean blockingRead, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -691,7 +691,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
public CLCommandQueue putReadImage(CLImage3d<?> readImage, int inputRowPitch, int inputSlicePitch,
int originX, int originY, int originZ, int rangeX, int rangeY, int rangeZ, boolean blockingRead, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -755,7 +755,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
int dstOriginX, int dstOriginY,
int rangeX, int rangeY, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -824,7 +824,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
int dstOriginX, int dstOriginY, int dstOriginZ,
int rangeX, int rangeY, int rangeZ, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -888,7 +888,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
long srcOffset, int dstOriginX, int dstOriginY,
int rangeX, int rangeY, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -955,7 +955,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
long srcOffset, int dstOriginX, int dstOriginY, int dstOriginZ,
int rangeX, int rangeY, int rangeZ, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1019,7 +1019,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
int srcOriginX, int srcOriginY,
int rangeX, int rangeY, long dstOffset, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1086,7 +1086,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
int srcOriginX, int srcOriginY, int srcOriginZ,
int rangeX, int rangeY, int rangeZ, long dstOffset, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1144,7 +1144,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public ByteBuffer putMapBuffer(CLBuffer<?> buffer, CLMemory.Map flag, long offset, long length, boolean blockingMap, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1204,7 +1204,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
int offsetX, int offsetY,
int rangeX, int rangeY, boolean blockingMap, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1270,7 +1270,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
int offsetX, int offsetY, int offsetZ,
int rangeX, int rangeY, int rangeZ, boolean blockingMap, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1314,7 +1314,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putUnmapMemory(CLMemory<?> memory, Buffer mapped, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1350,7 +1350,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putWaitForEvent(CLEventList list, int index, boolean blockingWait) {
- PointerBuffer ids = PointerBuffer.wrap(list.IDs.getBuffer().duplicate()).position(index);
+ NativeSizeBuffer ids = NativeSizeBuffer.wrap(list.IDs.getBuffer().duplicate()).position(index);
int ret = blockingWait ? cl.clWaitForEvents(1, ids)
: cl.clEnqueueWaitForEvents(ID, 1, ids);
@@ -1407,7 +1407,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putTask(CLKernel kernel, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1444,9 +1444,9 @@ public class CLCommandQueue extends CLObject implements CLResource {
* Calls {@native clEnqueueNDRangeKernel}.
*/
public CLCommandQueue put1DRangeKernel(CLKernel kernel, long globalWorkOffset, long globalWorkSize, long localWorkSize, CLEventList condition, CLEventList events) {
- PointerBuffer globWO = null;
- PointerBuffer globWS = null;
- PointerBuffer locWS = null;
+ NativeSizeBuffer globWO = null;
+ NativeSizeBuffer globWS = null;
+ NativeSizeBuffer locWS = null;
if(globalWorkOffset != 0) {
globWO = copy2NIO(ibA, globalWorkOffset);
@@ -1495,9 +1495,9 @@ public class CLCommandQueue extends CLObject implements CLResource {
public CLCommandQueue put2DRangeKernel(CLKernel kernel, long globalWorkOffsetX, long globalWorkOffsetY,
long globalWorkSizeX, long globalWorkSizeY,
long localWorkSizeX, long localWorkSizeY, CLEventList condition, CLEventList events) {
- PointerBuffer globalWorkOffset = null;
- PointerBuffer globalWorkSize = null;
- PointerBuffer localWorkSize = null;
+ NativeSizeBuffer globalWorkOffset = null;
+ NativeSizeBuffer globalWorkSize = null;
+ NativeSizeBuffer localWorkSize = null;
if(globalWorkOffsetX != 0 || globalWorkOffsetY != 0) {
globalWorkOffset = copy2NIO(ibA, globalWorkOffsetX, globalWorkOffsetY);
@@ -1545,9 +1545,9 @@ public class CLCommandQueue extends CLObject implements CLResource {
public CLCommandQueue put3DRangeKernel(CLKernel kernel, long globalWorkOffsetX, long globalWorkOffsetY, long globalWorkOffsetZ,
long globalWorkSizeX, long globalWorkSizeY, long globalWorkSizeZ,
long localWorkSizeX, long localWorkSizeY, long localWorkSizeZ, CLEventList condition, CLEventList events) {
- PointerBuffer globalWorkOffset = null;
- PointerBuffer globalWorkSize = null;
- PointerBuffer localWorkSize = null;
+ NativeSizeBuffer globalWorkOffset = null;
+ NativeSizeBuffer globalWorkSize = null;
+ NativeSizeBuffer localWorkSize = null;
if(globalWorkOffsetX != 0 || globalWorkOffsetY != 0 || globalWorkOffsetZ != 0) {
globalWorkOffset = copy2NIO(ibA, globalWorkOffsetX, globalWorkOffsetY, globalWorkOffsetZ);
@@ -1565,7 +1565,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
/**
* Calls {@native clEnqueueNDRangeKernel}.
*/
- public CLCommandQueue putNDRangeKernel(CLKernel kernel, int workDimension, PointerBuffer globalWorkOffset, PointerBuffer globalWorkSize, PointerBuffer localWorkSize) {
+ public CLCommandQueue putNDRangeKernel(CLKernel kernel, int workDimension, NativeSizeBuffer globalWorkOffset, NativeSizeBuffer globalWorkSize, NativeSizeBuffer localWorkSize) {
this.putNDRangeKernel(kernel, workDimension, globalWorkOffset, globalWorkSize, localWorkSize, null, null);
return this;
}
@@ -1573,7 +1573,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
/**
* Calls {@native clEnqueueNDRangeKernel}.
*/
- public CLCommandQueue putNDRangeKernel(CLKernel kernel, int workDimension, PointerBuffer globalWorkOffset, PointerBuffer globalWorkSize, PointerBuffer localWorkSize, CLEventList events) {
+ public CLCommandQueue putNDRangeKernel(CLKernel kernel, int workDimension, NativeSizeBuffer globalWorkOffset, NativeSizeBuffer globalWorkSize, NativeSizeBuffer localWorkSize, CLEventList events) {
this.putNDRangeKernel(kernel, workDimension, globalWorkOffset, globalWorkSize, localWorkSize, null, events);
return this;
}
@@ -1581,10 +1581,10 @@ public class CLCommandQueue extends CLObject implements CLResource {
/**
* Calls {@native clEnqueueNDRangeKernel}.
*/
- public CLCommandQueue putNDRangeKernel(CLKernel kernel, int workDimension, PointerBuffer globalWorkOffset,
- PointerBuffer globalWorkSize, PointerBuffer localWorkSize, CLEventList condition, CLEventList events) {
+ public CLCommandQueue putNDRangeKernel(CLKernel kernel, int workDimension, NativeSizeBuffer globalWorkOffset,
+ NativeSizeBuffer globalWorkSize, NativeSizeBuffer localWorkSize, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1635,7 +1635,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putAcquireGLObject(long glObject, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1644,7 +1644,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
CLGLI xl = (CLGLI) cl;
- PointerBuffer glObj = copy2NIO(ibA, glObject);
+ NativeSizeBuffer glObj = copy2NIO(ibA, glObject);
int ret = xl.clEnqueueAcquireGLObjects(ID, 1, glObj,
conditions, conditionIDs,
@@ -1682,7 +1682,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
*/
public CLCommandQueue putReleaseGLObject(long glObject, CLEventList condition, CLEventList events) {
- PointerBuffer conditionIDs = null;
+ NativeSizeBuffer conditionIDs = null;
int conditions = 0;
if(condition != null) {
conditionIDs = condition.IDsView;
@@ -1691,7 +1691,7 @@ public class CLCommandQueue extends CLObject implements CLResource {
CLGLI xl = (CLGLI) cl;
- PointerBuffer glObj = copy2NIO(ibA, glObject);
+ NativeSizeBuffer glObj = copy2NIO(ibA, glObject);
int ret = xl.clEnqueueReleaseGLObjects(ID, 1, glObj,
conditions, conditionIDs,
@@ -1748,19 +1748,19 @@ public class CLCommandQueue extends CLObject implements CLResource {
}
}
- private static PointerBuffer copy2NIO(PointerBuffer buffer, long a) {
+ private static NativeSizeBuffer copy2NIO(NativeSizeBuffer buffer, long a) {
return buffer.put(2, a).position(2);
}
- private static PointerBuffer copy2NIO(PointerBuffer buffer, long a, long b) {
+ private static NativeSizeBuffer copy2NIO(NativeSizeBuffer buffer, long a, long b) {
return buffer.position(1).put(a).put(b).position(1);
}
- private static PointerBuffer copy2NIO(PointerBuffer buffer, long a, long b, long c) {
+ private static NativeSizeBuffer copy2NIO(NativeSizeBuffer buffer, long a, long b, long c) {
return buffer.rewind().put(a).put(b).put(c).rewind();
}
- private static String toStr(PointerBuffer buffer) {
+ private static String toStr(NativeSizeBuffer buffer) {
if(buffer == null) {
return null;
}
diff --git a/src/com/jogamp/opencl/CLContext.java b/src/com/jogamp/opencl/CLContext.java
index c8a847a2..850f6c0e 100644
--- a/src/com/jogamp/opencl/CLContext.java
+++ b/src/com/jogamp/opencl/CLContext.java
@@ -32,7 +32,7 @@ import com.jogamp.common.nio.Buffers;
import com.jogamp.opencl.CLDevice.Type;
import com.jogamp.opencl.CLSampler.AddressingMode;
import com.jogamp.opencl.CLSampler.FilteringMode;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.opencl.impl.CLImageFormatImpl;
import java.io.BufferedReader;
import java.io.IOException;
@@ -119,7 +119,7 @@ public class CLContext extends CLObject implements CLResource {
if (devices == null) {
- PointerBuffer deviceCount = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer deviceCount = NativeSizeBuffer.allocateDirect(1);
int ret = cl.clGetContextInfo(ID, CL.CL_CONTEXT_DEVICES, 0, null, deviceCount);
checkForError(ret, "can not enumerate devices");
@@ -170,7 +170,7 @@ public class CLContext extends CLObject implements CLResource {
long type = toDeviceBitmap(deviceTypes);
- PointerBuffer properties = setupContextProperties(platform);
+ NativeSizeBuffer properties = setupContextProperties(platform);
ErrorDispatcher dispatcher = new ErrorDispatcher();
return new CLContext(platform, createContextFromType(dispatcher, properties, type), dispatcher);
}
@@ -188,7 +188,7 @@ public class CLContext extends CLObject implements CLResource {
CLPlatform platform = devices[0].getPlatform();
- PointerBuffer properties = setupContextProperties(platform);
+ NativeSizeBuffer properties = setupContextProperties(platform);
ErrorDispatcher dispatcher = new ErrorDispatcher();
CLContext context = new CLContext(platform, createContext(dispatcher, properties, devices), dispatcher);
if(devices != null) {
@@ -199,7 +199,7 @@ public class CLContext extends CLObject implements CLResource {
return context;
}
- protected static long createContextFromType(CLErrorHandler handler, PointerBuffer properties, long deviceType) {
+ protected static long createContextFromType(CLErrorHandler handler, NativeSizeBuffer properties, long deviceType) {
IntBuffer status = newDirectIntBuffer(1);
long context = CLPlatform.getLowLevelCLInterface().clCreateContextFromType(properties, deviceType, handler, status);
@@ -209,12 +209,12 @@ public class CLContext extends CLObject implements CLResource {
return context;
}
- protected static long createContext(CLErrorHandler handler, PointerBuffer properties, CLDevice... devices) {
+ protected static long createContext(CLErrorHandler handler, NativeSizeBuffer properties, CLDevice... devices) {
IntBuffer status = newDirectIntBuffer(1);
- PointerBuffer pb = null;
+ NativeSizeBuffer pb = null;
if(devices != null && devices.length != 0) {
- pb = PointerBuffer.allocateDirect(devices.length);
+ pb = NativeSizeBuffer.allocateDirect(devices.length);
for (int i = 0; i < devices.length; i++) {
CLDevice device = devices[i];
if(device == null) {
@@ -230,13 +230,13 @@ public class CLContext extends CLObject implements CLResource {
return context;
}
- private static PointerBuffer setupContextProperties(CLPlatform platform) {
+ private static NativeSizeBuffer setupContextProperties(CLPlatform platform) {
if(platform == null) {
throw new RuntimeException("no OpenCL installation found");
}
- return PointerBuffer.allocateDirect(3).put(CL.CL_CONTEXT_PLATFORM)
+ return NativeSizeBuffer.allocateDirect(3).put(CL.CL_CONTEXT_PLATFORM)
.put(platform.ID).put(0) // 0 terminated array
.rewind();
}
diff --git a/src/com/jogamp/opencl/CLDevice.java b/src/com/jogamp/opencl/CLDevice.java
index 1e9a94dd..dc2b8247 100644
--- a/src/com/jogamp/opencl/CLDevice.java
+++ b/src/com/jogamp/opencl/CLDevice.java
@@ -29,7 +29,7 @@
package com.jogamp.opencl;
import com.jogamp.opencl.util.CLUtil;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.common.os.Platform;
import java.nio.Buffer;
import java.nio.ByteBuffer;
@@ -696,7 +696,7 @@ public final class CLDevice extends CLObject {
private final class CLDeviceInfoAccessor extends CLInfoAccessor {
@Override
- protected int getInfo(int name, long valueSize, Buffer value, PointerBuffer valueSizeRet) {
+ protected int getInfo(int name, long valueSize, Buffer value, NativeSizeBuffer valueSizeRet) {
return cl.clGetDeviceInfo(ID, name, valueSize, value, valueSizeRet);
}
diff --git a/src/com/jogamp/opencl/CLEvent.java b/src/com/jogamp/opencl/CLEvent.java
index 936ffe20..876be3da 100644
--- a/src/com/jogamp/opencl/CLEvent.java
+++ b/src/com/jogamp/opencl/CLEvent.java
@@ -29,10 +29,8 @@
package com.jogamp.opencl;
import com.jogamp.opencl.impl.CLEventCallback;
-import java.util.List;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.nio.Buffer;
-import java.util.ArrayList;
import static com.jogamp.opencl.CL.*;
import static com.jogamp.opencl.CLException.*;
@@ -143,7 +141,7 @@ public class CLEvent extends CLObject implements CLResource {
private class CLEventInfoAccessor extends CLInfoAccessor {
@Override
- protected int getInfo(int name, long valueSize, Buffer value, PointerBuffer valueSizeRet) {
+ protected int getInfo(int name, long valueSize, Buffer value, NativeSizeBuffer valueSizeRet) {
return cl.clGetEventInfo(ID, name, valueSize, value, valueSizeRet);
}
@@ -152,7 +150,7 @@ public class CLEvent extends CLObject implements CLResource {
private class CLEventProfilingInfoAccessor extends CLInfoAccessor {
@Override
- protected int getInfo(int name, long valueSize, Buffer value, PointerBuffer valueSizeRet) {
+ protected int getInfo(int name, long valueSize, Buffer value, NativeSizeBuffer valueSizeRet) {
return cl.clGetEventProfilingInfo(ID, name, valueSize, value, valueSizeRet);
}
diff --git a/src/com/jogamp/opencl/CLEventList.java b/src/com/jogamp/opencl/CLEventList.java
index e2294b45..3642d915 100644
--- a/src/com/jogamp/opencl/CLEventList.java
+++ b/src/com/jogamp/opencl/CLEventList.java
@@ -30,7 +30,7 @@ package com.jogamp.opencl;
import com.jogamp.common.AutoCloseable;
import com.jogamp.common.nio.CachedBufferFactory;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.util.Iterator;
/**
@@ -44,12 +44,12 @@ public final class CLEventList implements CLResource, AutoCloseable, Iterable<CL
/**
* stores event ids for fast access.
*/
- final PointerBuffer IDs;
+ final NativeSizeBuffer IDs;
/**
* Points always to the first element of the id buffer.
*/
- final PointerBuffer IDsView;
+ final NativeSizeBuffer IDsView;
int size;
@@ -64,13 +64,13 @@ public final class CLEventList implements CLResource, AutoCloseable, Iterable<CL
public CLEventList(CachedBufferFactory factory, int capacity) {
this.events = new CLEvent[capacity];
this.IDs = initIDBuffer(factory, capacity);
- this.IDsView = PointerBuffer.wrap(IDs.getBuffer().duplicate());
+ this.IDsView = NativeSizeBuffer.wrap(IDs.getBuffer().duplicate());
}
public CLEventList(CachedBufferFactory factory, CLEvent... events) {
this.events = events;
this.IDs = initIDBuffer(factory, events.length);
- this.IDsView = PointerBuffer.wrap(IDs.getBuffer().duplicate());
+ this.IDsView = NativeSizeBuffer.wrap(IDs.getBuffer().duplicate());
for (CLEvent event : events) {
if(event == null) {
@@ -82,11 +82,11 @@ public final class CLEventList implements CLResource, AutoCloseable, Iterable<CL
size = events.length;
}
- private PointerBuffer initIDBuffer(CachedBufferFactory factory, int size) {
+ private NativeSizeBuffer initIDBuffer(CachedBufferFactory factory, int size) {
if(factory == null) {
- return PointerBuffer.allocateDirect(size);
+ return NativeSizeBuffer.allocateDirect(size);
}else{
- return PointerBuffer.wrap(factory.newDirectByteBuffer(size*PointerBuffer.elementSize()));
+ return NativeSizeBuffer.wrap(factory.newDirectByteBuffer(size*NativeSizeBuffer.elementSize()));
}
}
diff --git a/src/com/jogamp/opencl/CLImage.java b/src/com/jogamp/opencl/CLImage.java
index 335dc0a3..01dd6ea2 100644
--- a/src/com/jogamp/opencl/CLImage.java
+++ b/src/com/jogamp/opencl/CLImage.java
@@ -28,7 +28,7 @@
package com.jogamp.opencl;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.nio.Buffer;
import static com.jogamp.opencl.CL.*;
@@ -73,6 +73,7 @@ public abstract class CLImage<B extends Buffer> extends CLMemory<B> {
* Returns the size of each element of the image memory object given by image.
* An element is made up of n channels. The value of n is given in {@link CLImageFormat} descriptor.
*/
+ @Override
public int getElementSize() {
return (int)imageInfo.getLong(CL_IMAGE_ELEMENT_SIZE);
}
@@ -109,7 +110,7 @@ public abstract class CLImage<B extends Buffer> extends CLMemory<B> {
this.id = id;
}
@Override
- public int getInfo(int name, long valueSize, Buffer value, PointerBuffer valueSizeRet) {
+ public int getInfo(int name, long valueSize, Buffer value, NativeSizeBuffer valueSizeRet) {
return cl.clGetImageInfo(id, name, valueSize, value, valueSizeRet);
}
}
diff --git a/src/com/jogamp/opencl/CLInfoAccessor.java b/src/com/jogamp/opencl/CLInfoAccessor.java
index 08f8d8a2..5f6694b2 100644
--- a/src/com/jogamp/opencl/CLInfoAccessor.java
+++ b/src/com/jogamp/opencl/CLInfoAccessor.java
@@ -29,7 +29,7 @@
package com.jogamp.opencl;
import com.jogamp.common.nio.Buffers;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.opencl.util.CLUtil;
import java.nio.Buffer;
import java.nio.ByteBuffer;
@@ -51,11 +51,11 @@ abstract class CLInfoAccessor {
}
};
- protected final static ThreadLocal<PointerBuffer> localPB = new ThreadLocal<PointerBuffer>() {
+ protected final static ThreadLocal<NativeSizeBuffer> localPB = new ThreadLocal<NativeSizeBuffer>() {
@Override
- protected PointerBuffer initialValue() {
- return PointerBuffer.allocateDirect(1);
+ protected NativeSizeBuffer initialValue() {
+ return NativeSizeBuffer.allocateDirect(1);
}
};
@@ -72,7 +72,7 @@ abstract class CLInfoAccessor {
public final String getString(int key) {
ByteBuffer buffer = localBB.get();
- PointerBuffer sizeBuffer = localPB.get();
+ NativeSizeBuffer sizeBuffer = localPB.get();
int ret = getInfo(key, buffer.capacity(), buffer, sizeBuffer);
checkForError(ret, "error while asking for info string");
@@ -84,7 +84,7 @@ abstract class CLInfoAccessor {
}
- protected abstract int getInfo(int name, long valueSize, Buffer value, PointerBuffer valueSizeRet);
+ protected abstract int getInfo(int name, long valueSize, Buffer value, NativeSizeBuffer valueSizeRet);
}
diff --git a/src/com/jogamp/opencl/CLKernel.java b/src/com/jogamp/opencl/CLKernel.java
index 8e246e5e..78c5fc93 100644
--- a/src/com/jogamp/opencl/CLKernel.java
+++ b/src/com/jogamp/opencl/CLKernel.java
@@ -30,7 +30,7 @@ package com.jogamp.opencl;
import com.jogamp.opencl.util.CLUtil;
import com.jogamp.common.nio.Buffers;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.nio.Buffer;
import java.nio.ByteBuffer;
@@ -66,7 +66,7 @@ public class CLKernel extends CLObject implements CLResource, Cloneable {
this.program = program;
this.buffer = Buffers.newDirectByteBuffer((is32Bit()?4:8)*3);
- PointerBuffer size = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer size = NativeSizeBuffer.allocateDirect(1);
// get function name
int ret = cl.clGetKernelInfo(ID, CL_KERNEL_FUNCTION_NAME, 0, null, size);
diff --git a/src/com/jogamp/opencl/CLMemory.java b/src/com/jogamp/opencl/CLMemory.java
index ebeec28e..7a3e82f7 100644
--- a/src/com/jogamp/opencl/CLMemory.java
+++ b/src/com/jogamp/opencl/CLMemory.java
@@ -30,7 +30,7 @@ package com.jogamp.opencl;
import com.jogamp.opencl.gl.CLGLI;
import com.jogamp.common.nio.Buffers;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.opencl.impl.CLMemObjectDestructorCallback;
import java.nio.Buffer;
import java.nio.IntBuffer;
@@ -82,8 +82,8 @@ public abstract class CLMemory <B extends Buffer> extends CLObject implements CL
}
protected static long getSizeImpl(CL cl, long id) {
- PointerBuffer pb = PointerBuffer.allocateDirect(1);
- int ret = cl.clGetMemObjectInfo(id, CL_MEM_SIZE, PointerBuffer.elementSize(), pb.getBuffer(), null);
+ NativeSizeBuffer pb = NativeSizeBuffer.allocateDirect(1);
+ int ret = cl.clGetMemObjectInfo(id, CL_MEM_SIZE, NativeSizeBuffer.elementSize(), pb.getBuffer(), null);
checkForError(ret, "can not obtain buffer info");
return pb.get();
}
diff --git a/src/com/jogamp/opencl/CLPlatform.java b/src/com/jogamp/opencl/CLPlatform.java
index f5c94aed..611513a8 100644
--- a/src/com/jogamp/opencl/CLPlatform.java
+++ b/src/com/jogamp/opencl/CLPlatform.java
@@ -33,7 +33,7 @@ import com.jogamp.common.os.DynamicLookupHelper;
import java.security.PrivilegedAction;
import com.jogamp.common.JogampRuntimeException;
import com.jogamp.common.os.NativeLibrary;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.gluegen.runtime.FunctionAddressResolver;
import com.jogamp.opencl.util.CLUtil;
import com.jogamp.opencl.impl.CLImpl;
@@ -226,7 +226,7 @@ public final class CLPlatform {
checkForError(ret, "can not enumerate platforms");
// receive platform ids
- PointerBuffer platformId = PointerBuffer.allocateDirect(ib.get(0));
+ NativeSizeBuffer platformId = NativeSizeBuffer.allocateDirect(ib.get(0));
ret = cl.clGetPlatformIDs(platformId.capacity(), platformId, null);
checkForError(ret, "can not enumerate platforms");
@@ -276,7 +276,7 @@ public final class CLPlatform {
for(int t = 0; t < types.length; t++) {
CLDevice.Type type = types[t];
- PointerBuffer deviceIDs = getDeviceIDs(type.TYPE);
+ NativeSizeBuffer deviceIDs = getDeviceIDs(type.TYPE);
//add device to list
for (int n = 0; n < deviceIDs.capacity(); n++) {
@@ -296,7 +296,7 @@ public final class CLPlatform {
List<CLDevice> list = new ArrayList<CLDevice>();
- PointerBuffer deviceIDs = getDeviceIDs(CL_DEVICE_TYPE_ALL);
+ NativeSizeBuffer deviceIDs = getDeviceIDs(CL_DEVICE_TYPE_ALL);
//add device to list
for (int n = 0; n < deviceIDs.capacity(); n++) {
@@ -308,20 +308,20 @@ public final class CLPlatform {
}
- private PointerBuffer getDeviceIDs(long type) {
+ private NativeSizeBuffer getDeviceIDs(long type) {
IntBuffer ib = Buffers.newDirectIntBuffer(1);
//find all devices
int ret = cl.clGetDeviceIDs(ID, type, 0, null, ib);
- PointerBuffer deviceIDs = null;
+ NativeSizeBuffer deviceIDs = null;
// return null rather than throwing an exception
if(ret == CL.CL_DEVICE_NOT_FOUND || ib.get(0) == 0) {
- deviceIDs = PointerBuffer.allocate(0);
+ deviceIDs = NativeSizeBuffer.allocate(0);
}else{
- deviceIDs = PointerBuffer.allocateDirect(ib.get(0));
+ deviceIDs = NativeSizeBuffer.allocateDirect(ib.get(0));
checkForError(ret, "error while enumerating devices");
@@ -510,7 +510,7 @@ public final class CLPlatform {
* Returns a info string in exchange for a key (CL_PLATFORM_*).
*/
public String getInfoString(int key) {
- PointerBuffer size = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer size = NativeSizeBuffer.allocateDirect(1);
// TODO use cache/query size
ByteBuffer bb = ByteBuffer.allocateDirect(512);
diff --git a/src/com/jogamp/opencl/CLProgram.java b/src/com/jogamp/opencl/CLProgram.java
index bc3727f8..3293fe57 100644
--- a/src/com/jogamp/opencl/CLProgram.java
+++ b/src/com/jogamp/opencl/CLProgram.java
@@ -32,6 +32,7 @@ import com.jogamp.common.nio.CachedBufferFactory;
import com.jogamp.opencl.util.CLProgramConfiguration;
import com.jogamp.opencl.util.CLUtil;
import com.jogamp.common.os.Platform;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.common.nio.PointerBuffer;
import com.jogamp.opencl.impl.BuildProgramCallback;
import com.jogamp.opencl.util.CLBuildListener;
@@ -77,7 +78,7 @@ public class CLProgram extends CLObject implements CLResource {
IntBuffer status = newDirectIntBuffer(1);
- PointerBuffer length = PointerBuffer.allocateDirect(1).put(0, src.length());
+ NativeSizeBuffer length = NativeSizeBuffer.allocateDirect(1).put(0, src.length());
String[] srcArray = new String[] {src};
// Create the program
@@ -101,13 +102,13 @@ public class CLProgram extends CLObject implements CLResource {
binarySize += entry.getValue().length;
}
- int pbSize = PointerBuffer.elementSize();
+ int pbSize = NativeSizeBuffer.elementSize();
int deviceCount = binaries.size();
CachedBufferFactory bf = CachedBufferFactory.create(binarySize + pbSize*deviceCount*3 + 4, true);
- PointerBuffer devices = PointerBuffer.wrap(bf.newDirectByteBuffer(deviceCount*pbSize));
+ NativeSizeBuffer devices = NativeSizeBuffer.wrap(bf.newDirectByteBuffer(deviceCount*pbSize));
PointerBuffer codeBuffers = PointerBuffer.wrap(bf.newDirectByteBuffer(deviceCount*pbSize));
- PointerBuffer lengths = PointerBuffer.wrap(bf.newDirectByteBuffer(deviceCount*pbSize));
+ NativeSizeBuffer lengths = NativeSizeBuffer.wrap(bf.newDirectByteBuffer(deviceCount*pbSize));
int i = 0;
for (Map.Entry<CLDevice, byte[]> entry : entries) {
@@ -164,7 +165,7 @@ public class CLProgram extends CLObject implements CLResource {
return "";
}
- PointerBuffer size = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer size = NativeSizeBuffer.allocateDirect(1);
int ret = cl.clGetProgramBuildInfo(ID, device.ID, flag, 0, null, size);
if(ret != CL_SUCCESS) {
@@ -187,7 +188,7 @@ public class CLProgram extends CLObject implements CLResource {
return "";
}
- PointerBuffer size = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer size = NativeSizeBuffer.allocateDirect(1);
int ret = cl.clGetProgramInfo(ID, flag, 0, null, size);
checkForError(ret, "on clGetProgramInfo");
@@ -328,10 +329,10 @@ public class CLProgram extends CLObject implements CLResource {
releaseKernels();
}
- PointerBuffer deviceIDs = null;
+ NativeSizeBuffer deviceIDs = null;
int count = 0;
if(devices != null && devices.length != 0) {
- deviceIDs = PointerBuffer.allocateDirect(devices.length);
+ deviceIDs = NativeSizeBuffer.allocateDirect(devices.length);
for (int i = 0; i < devices.length; i++) {
deviceIDs.put(i, devices[i].ID);
}
@@ -430,7 +431,7 @@ public class CLProgram extends CLObject implements CLResource {
if(numKernels.get(0) > 0) {
- PointerBuffer kernelIDs = PointerBuffer.allocateDirect(numKernels.get(0));
+ NativeSizeBuffer kernelIDs = NativeSizeBuffer.allocateDirect(numKernels.get(0));
ret = cl.clCreateKernelsInProgram(ID, kernelIDs.capacity(), kernelIDs, null);
if(ret != CL_SUCCESS) {
throw newException(ret, "can not create "+kernelIDs.capacity()+" kernels for "+this);
@@ -494,7 +495,7 @@ public class CLProgram extends CLObject implements CLResource {
if(released) {
return new CLDevice[0];
}
- PointerBuffer size = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer size = NativeSizeBuffer.allocateDirect(1);
int ret = cl.clGetProgramInfo(ID, CL_PROGRAM_DEVICES, 0, null, size);
if(ret != CL_SUCCESS) {
throw newException(ret, "on clGetProgramInfo of "+this);
@@ -604,8 +605,8 @@ public class CLProgram extends CLObject implements CLResource {
CLDevice[] devices = getCLDevices();
- PointerBuffer sizes = PointerBuffer.allocateDirect(devices.length);
- int ret = cl.clGetProgramInfo(ID, CL_PROGRAM_BINARY_SIZES, sizes.capacity()*PointerBuffer.elementSize(), sizes.getBuffer(), null);
+ NativeSizeBuffer sizes = NativeSizeBuffer.allocateDirect(devices.length);
+ int ret = cl.clGetProgramInfo(ID, CL_PROGRAM_BINARY_SIZES, sizes.capacity()*NativeSizeBuffer.elementSize(), sizes.getBuffer(), null);
if(ret != CL_SUCCESS) {
throw newException(ret, "on clGetProgramInfo(CL_PROGRAM_BINARY_SIZES) of "+this);
}
@@ -619,14 +620,14 @@ public class CLProgram extends CLObject implements CLResource {
long address = InternalBufferUtil.getDirectBufferAddress(binaries);
- PointerBuffer addresses = PointerBuffer.allocateDirect(sizes.capacity());
+ NativeSizeBuffer addresses = NativeSizeBuffer.allocateDirect(sizes.capacity());
sizes.rewind();
while(sizes.remaining() != 0) {
addresses.put(address);
address += sizes.get();
}
- ret = cl.clGetProgramInfo(ID, CL_PROGRAM_BINARIES, addresses.capacity()*PointerBuffer.elementSize(), addresses.getBuffer(), null);
+ ret = cl.clGetProgramInfo(ID, CL_PROGRAM_BINARIES, addresses.capacity()*NativeSizeBuffer.elementSize(), addresses.getBuffer(), null);
if(ret != CL_SUCCESS) {
throw newException(ret, "on clGetProgramInfo(CL_PROGRAM_BINARIES) of "+this);
}
diff --git a/src/com/jogamp/opencl/CLSampler.java b/src/com/jogamp/opencl/CLSampler.java
index 73e153d9..f215cab1 100644
--- a/src/com/jogamp/opencl/CLSampler.java
+++ b/src/com/jogamp/opencl/CLSampler.java
@@ -28,7 +28,7 @@
package com.jogamp.opencl;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.nio.Buffer;
@@ -84,7 +84,7 @@ public class CLSampler extends CLObject implements CLResource {
private class CLSamplerInfoAccessor extends CLInfoAccessor {
@Override
- protected int getInfo(int name, long valueSize, Buffer value, PointerBuffer valueSizeRet) {
+ protected int getInfo(int name, long valueSize, Buffer value, NativeSizeBuffer valueSizeRet) {
return cl.clGetSamplerInfo(ID, name, valueSize, value, valueSizeRet);
}
diff --git a/src/com/jogamp/opencl/gl/CLGLContext.java b/src/com/jogamp/opencl/gl/CLGLContext.java
index c220fcfc..f8ca70af 100644
--- a/src/com/jogamp/opencl/gl/CLGLContext.java
+++ b/src/com/jogamp/opencl/gl/CLGLContext.java
@@ -33,7 +33,7 @@ import com.jogamp.opencl.CLDevice;
import java.nio.Buffer;
import com.jogamp.opencl.CLMemory.Mem;
import com.jogamp.opencl.CLPlatform;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import jogamp.opengl.GLContextImpl;
import jogamp.opengl.egl.EGLContext;
import jogamp.opengl.macosx.cgl.MacOSXCGLContext;
@@ -95,7 +95,7 @@ public final class CLGLContext extends CLContext {
}
long[] glID = new long[1];
- PointerBuffer properties = setupContextProperties(platform, glContext, glID);
+ NativeSizeBuffer properties = setupContextProperties(platform, glContext, glID);
ErrorDispatcher dispatcher = createErrorHandler();
long clID = createContextFromType(dispatcher, properties, toDeviceBitmap(deviceTypes));
@@ -119,7 +119,7 @@ public final class CLGLContext extends CLContext {
CLPlatform platform = devices[0].getPlatform();
long[] glID = new long[1];
- PointerBuffer properties = setupContextProperties(platform, glContext, glID);
+ NativeSizeBuffer properties = setupContextProperties(platform, glContext, glID);
ErrorDispatcher dispatcher = createErrorHandler();
long clID = createContext(dispatcher, properties, devices);
@@ -133,7 +133,7 @@ public final class CLGLContext extends CLContext {
}
- private static PointerBuffer setupContextProperties(CLPlatform platform, GLContext glContext, long[] glID) {
+ private static NativeSizeBuffer setupContextProperties(CLPlatform platform, GLContext glContext, long[] glID) {
if(platform == null) {
throw new RuntimeException("no OpenCL installation found");
@@ -151,14 +151,14 @@ public final class CLGLContext extends CLContext {
GLContextImpl ctxImpl = (GLContextImpl)glContext;
glID[0] = glContext.getHandle();
- PointerBuffer properties;
+ NativeSizeBuffer properties;
if(glContext instanceof X11GLXContext) {
// spec: "When the GLX binding API is supported, the attribute
// CL_GL_CONTEXT_KHR should be set to a GLXContext handle to an
// OpenGL context, and the attribute CL_GLX_DISPLAY_KHR should be
// set to the Display handle of the X Window System display used to
// create the OpenGL context."
- properties = PointerBuffer.allocateDirect(7);
+ properties = NativeSizeBuffer.allocateDirect(7);
long displayHandle = ctxImpl.getDrawableImpl().getNativeSurface().getDisplayHandle();
properties.put(CL_GL_CONTEXT_KHR).put(glID[0])
.put(CL_GLX_DISPLAY_KHR).put(displayHandle)
@@ -168,7 +168,7 @@ public final class CLGLContext extends CLContext {
// CL_GL_CONTEXT_KHR should be set to an HGLRC handle to an OpenGL
// context, and the attribute CL_WGL_HDC_KHR should be set to the
// HDC handle of the display used to create the OpenGL context."
- properties = PointerBuffer.allocateDirect(7);
+ properties = NativeSizeBuffer.allocateDirect(7);
long surfaceHandle = ctxImpl.getDrawableImpl().getNativeSurface().getSurfaceHandle();
properties.put(CL_GL_CONTEXT_KHR).put(glID[0])
.put(CL_WGL_HDC_KHR).put(surfaceHandle)
@@ -178,7 +178,7 @@ public final class CLGLContext extends CLContext {
// spec: "When the CGL binding API is supported, the attribute
// CL_CGL_SHAREGROUP_KHR should be set to a CGLShareGroup handle to
// a CGL share group object."
- properties = PointerBuffer.allocateDirect(5);
+ properties = NativeSizeBuffer.allocateDirect(5);
properties.put(CL_CGL_SHAREGROUP_KHR).put(glID[0])
.put(CL_CONTEXT_PLATFORM).put(platform.ID);
}else if(glContext instanceof EGLContext) {
@@ -188,7 +188,7 @@ public final class CLGLContext extends CLContext {
// OpenGL ES or OpenGL context, and the attribute
// CL_EGL_DISPLAY_KHR should be set to the EGLDisplay handle of the
// display used to create the OpenGL ES or OpenGL context."
- properties = PointerBuffer.allocateDirect(7);
+ properties = NativeSizeBuffer.allocateDirect(7);
long displayHandle = ctxImpl.getDrawableImpl().getNativeSurface().getDisplayHandle();
properties.put(CL_GL_CONTEXT_KHR).put(glID[0])
.put(CL_EGL_DISPLAY_KHR).put(displayHandle)
diff --git a/src/com/jogamp/opencl/impl/CLImpl.java b/src/com/jogamp/opencl/impl/CLImpl.java
index 8945d32c..8ea44201 100644
--- a/src/com/jogamp/opencl/impl/CLImpl.java
+++ b/src/com/jogamp/opencl/impl/CLImpl.java
@@ -31,7 +31,7 @@
*/
package com.jogamp.opencl.impl;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import com.jogamp.common.os.Platform;
import com.jogamp.common.util.LongLongHashMap;
import com.jogamp.opencl.CLErrorHandler;
@@ -56,7 +56,7 @@ public class CLImpl extends CLAbstractImpl {
this.contextCallbackMap.setKeyNotFoundValue(0);
}
- public long clCreateContext(PointerBuffer properties, PointerBuffer devices, CLErrorHandler pfn_notify, IntBuffer errcode_ret) {
+ public long clCreateContext(NativeSizeBuffer properties, NativeSizeBuffer devices, CLErrorHandler pfn_notify, IntBuffer errcode_ret) {
if (properties != null && !properties.isDirect()) {
throw new RuntimeException("Argument \"properties\" was not a direct buffer");
@@ -87,7 +87,7 @@ public class CLImpl extends CLAbstractImpl {
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);
- public long clCreateContextFromType(PointerBuffer properties, long device_type, CLErrorHandler pfn_notify, IntBuffer errcode_ret) {
+ public long clCreateContextFromType(NativeSizeBuffer properties, long device_type, CLErrorHandler pfn_notify, IntBuffer errcode_ret) {
if (properties != null && !properties.isDirect()) {
throw new RuntimeException("Argument \"properties\" was not a direct buffer");
@@ -134,7 +134,7 @@ public class CLImpl extends CLAbstractImpl {
public native int clReleaseContextImpl(long context, long global, long address);
/** Interface to C language function: <br> <code> int32_t clBuildProgram(cl_program, uint32_t, cl_device_id * , const char * , void * ); </code> */
- public int clBuildProgram(long program, int deviceCount, PointerBuffer deviceList, String options, BuildProgramCallback cb) {
+ public int clBuildProgram(long program, int deviceCount, NativeSizeBuffer deviceList, String options, BuildProgramCallback cb) {
if (deviceList != null && !deviceList.isDirect()) {
throw new RuntimeException("Argument \"properties\" was not a direct buffer");
@@ -175,38 +175,38 @@ public class CLImpl extends CLAbstractImpl {
/** 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>
- @param origin a direct {@link com.jogamp.common.nio.PointerBuffer}
- @param range a direct {@link com.jogamp.common.nio.PointerBuffer}
- @param image_row_pitch a direct {@link com.jogamp.common.nio.PointerBuffer}
- @param image_slice_pitch a direct {@link com.jogamp.common.nio.PointerBuffer}
- @param event_wait_list a direct {@link com.jogamp.common.nio.PointerBuffer}
- @param event a direct {@link com.jogamp.common.nio.PointerBuffer}
+ @param origin a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param range a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param image_row_pitch a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param image_slice_pitch a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param event_wait_list a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param event a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
@param errcode_ret a direct {@link java.nio.IntBuffer} */
- public java.nio.ByteBuffer clEnqueueMapImage(long command_queue, long image, int blocking_map, long map_flags,
- PointerBuffer origin, PointerBuffer range,
- PointerBuffer image_row_pitch, PointerBuffer image_slice_pitch,
+ public ByteBuffer clEnqueueMapImage(long command_queue, long image, int blocking_map, long map_flags,
+ NativeSizeBuffer origin, NativeSizeBuffer range,
+ NativeSizeBuffer image_row_pitch, NativeSizeBuffer image_slice_pitch,
int num_events_in_wait_list,
- PointerBuffer event_wait_list, PointerBuffer event, java.nio.IntBuffer errcode_ret) {
+ NativeSizeBuffer event_wait_list, NativeSizeBuffer event, IntBuffer errcode_ret) {
- if (!isDirect(origin)) {
+ if (origin != null && !origin.isDirect()) {
throw new CLException("Argument \"origin\" was not a direct buffer");
}
- if (!isDirect(range)) {
+ if (range != null && !range.isDirect()) {
throw new CLException("Argument \"range\" was not a direct buffer");
}
- if (!isDirect(image_row_pitch)) {
+ if (image_row_pitch != null && !image_row_pitch.isDirect()) {
throw new CLException("Argument \"image_row_pitch\" was not a direct buffer");
}
- if (!isDirect(image_slice_pitch)) {
+ if (image_slice_pitch != null && !image_slice_pitch.isDirect()) {
throw new CLException("Argument \"image_slice_pitch\" was not a direct buffer");
}
- if (!isDirect(event_wait_list)) {
+ if (event_wait_list != null && !event_wait_list.isDirect()) {
throw new CLException("Argument \"event_wait_list\" was not a direct buffer");
}
- if (!isDirect(event)) {
+ if (event != null && !event.isDirect()) {
throw new CLException("Argument \"event\" was not a direct buffer");
}
- if (!isDirect(errcode_ret)) {
+ if (errcode_ret != null && !errcode_ret.isDirect()) {
throw new CLException("Argument \"errcode_ret\" was not a direct buffer");
}
@@ -218,7 +218,7 @@ public class CLImpl extends CLAbstractImpl {
if (getImageInfoAddress == 0) {
throw new UnsupportedOperationException("Method not available");
}
- java.nio.ByteBuffer _res;
+ ByteBuffer _res;
_res = clEnqueueMapImage0(command_queue, image, blocking_map, map_flags, origin != null ? origin.getBuffer() : null,
getDirectBufferByteOffset(origin), range != null ? range.getBuffer() : null,
getDirectBufferByteOffset(range), image_row_pitch != null ? image_row_pitch.getBuffer() : null,
@@ -235,12 +235,12 @@ public class CLImpl extends CLAbstractImpl {
}
/** 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>
- @param origin a direct {@link com.jogamp.gluegen.runtime.PointerBuffer}
- @param range a direct {@link com.jogamp.gluegen.runtime.PointerBuffer}
- @param image_row_pitch a direct {@link com.jogamp.gluegen.runtime.PointerBuffer}
- @param image_slice_pitch a direct {@link com.jogamp.gluegen.runtime.PointerBuffer}
- @param event_wait_list a direct {@link com.jogamp.gluegen.runtime.PointerBuffer}
- @param event a direct {@link com.jogamp.gluegen.runtime.PointerBuffer}
+ @param origin a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param range a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param image_row_pitch a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param image_slice_pitch a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param event_wait_list a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
+ @param event a direct {@link com.jogamp.gluegen.common.nio.NativeSizeBuffer}
@param errcode_ret a direct {@link java.nio.IntBuffer} */
private native ByteBuffer clEnqueueMapImage0(long command_queue, long image, int blocking_map, long map_flags,
Object origin, int origin_byte_offset, Object range, int range_byte_offset, Object image_row_pitch,
diff --git a/src/com/jogamp/opencl/util/CLBuildListener.java b/src/com/jogamp/opencl/util/CLBuildListener.java
index 7e6dfc0b..9a520582 100644
--- a/src/com/jogamp/opencl/util/CLBuildListener.java
+++ b/src/com/jogamp/opencl/util/CLBuildListener.java
@@ -40,7 +40,7 @@ import com.jogamp.opencl.CLProgram;
* Note1: registering a build callback can make {@link com.jogamp.opencl.CL#clBuildProgram} non blocking (OpenCL implementation dependent).<br/>
* Note2: the thread which calls this method is unspecified. The Application should ensure propper synchronization.
* @author Michael Bien
- * @see com.jogamp.opencl.CL#clBuildProgram(long, int, com.jogamp.common.nio.PointerBuffer, java.lang.String, com.jogamp.opencl.impl.BuildProgramCallback)
+ * @see com.jogamp.opencl.CL#clBuildProgram(long, int, com.jogamp.common.nio.NativeSizeBuffer, java.lang.String, com.jogamp.opencl.impl.BuildProgramCallback)
*/
public interface CLBuildListener {
diff --git a/test/com/jogamp/opencl/LowLevelBindingTest.java b/test/com/jogamp/opencl/LowLevelBindingTest.java
index d5ef3f50..9e603879 100644
--- a/test/com/jogamp/opencl/LowLevelBindingTest.java
+++ b/test/com/jogamp/opencl/LowLevelBindingTest.java
@@ -30,7 +30,7 @@ package com.jogamp.opencl;
import java.util.Random;
import com.jogamp.opencl.impl.BuildProgramCallback;
-import com.jogamp.common.nio.PointerBuffer;
+import com.jogamp.common.nio.NativeSizeBuffer;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
@@ -109,12 +109,12 @@ public class LowLevelBindingTest {
checkForError(ret);
out.println("#platforms: "+intBuffer.get(0));
- PointerBuffer platformId = PointerBuffer.allocateDirect(intBuffer.get(0));
+ NativeSizeBuffer platformId = NativeSizeBuffer.allocateDirect(intBuffer.get(0));
ret = cl.clGetPlatformIDs(platformId.capacity(), platformId, null);
checkForError(ret);
// print platform info
- PointerBuffer longBuffer = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer longBuffer = NativeSizeBuffer.allocateDirect(1);
ByteBuffer bb = newDirectByteBuffer(128);
for (int i = 0; i < platformId.capacity(); i++) {
@@ -143,7 +143,7 @@ public class LowLevelBindingTest {
checkForError(ret);
out.println("#devices: "+intBuffer.get(0));
- PointerBuffer devices = PointerBuffer.allocateDirect(intBuffer.get(0));
+ NativeSizeBuffer devices = NativeSizeBuffer.allocateDirect(intBuffer.get(0));
ret = cl.clGetDeviceIDs(platform, CL.CL_DEVICE_TYPE_ALL, devices.capacity(), devices, null);
//print device info
@@ -176,7 +176,7 @@ public class LowLevelBindingTest {
checkForError(ret);
out.println("#platforms: "+intBuffer.get(0));
- PointerBuffer pb = PointerBuffer.allocateDirect(intBuffer.get(0));
+ NativeSizeBuffer pb = NativeSizeBuffer.allocateDirect(intBuffer.get(0));
ret = cl.clGetPlatformIDs(pb.capacity(), pb, null);
checkForError(ret);
@@ -187,14 +187,14 @@ public class LowLevelBindingTest {
checkForError(ret);
out.println("#devices: "+intBuffer.get(0));
- PointerBuffer devices = PointerBuffer.allocateDirect(intBuffer.get(0));
+ NativeSizeBuffer devices = NativeSizeBuffer.allocateDirect(intBuffer.get(0));
ret = cl.clGetDeviceIDs(platform, CL.CL_DEVICE_TYPE_ALL, devices.capacity(), devices, null);
long context = cl.clCreateContext(null, devices, null, intBuffer);
checkError("on clCreateContext", intBuffer.get());
//get number of devices
- PointerBuffer longBuffer = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer longBuffer = NativeSizeBuffer.allocateDirect(1);
ret = cl.clGetContextInfo(context, CL.CL_CONTEXT_DEVICES, 0, null, longBuffer);
checkError("on clGetContextInfo", ret);
@@ -223,19 +223,19 @@ public class LowLevelBindingTest {
checkForError(ret);
assertTrue(intBuffer.get(0) > 0);
- PointerBuffer pb = PointerBuffer.allocateDirect(intBuffer.get(0));
+ NativeSizeBuffer pb = NativeSizeBuffer.allocateDirect(intBuffer.get(0));
ret = cl.clGetPlatformIDs(pb.capacity(), pb, null);
checkForError(ret);
long platform = pb.get(0);
- PointerBuffer properties = PointerBuffer.allocateDirect(3).put(CL.CL_CONTEXT_PLATFORM)
+ NativeSizeBuffer properties = NativeSizeBuffer.allocateDirect(3).put(CL.CL_CONTEXT_PLATFORM)
.put(platform).put(0) // 0 terminated array
.rewind();
long context = cl.clCreateContextFromType(properties, CL.CL_DEVICE_TYPE_ALL, null, null);
out.println("context handle: "+context);
checkError("on clCreateContextFromType", ret);
- PointerBuffer longBuffer = PointerBuffer.allocateDirect(1);
+ NativeSizeBuffer longBuffer = NativeSizeBuffer.allocateDirect(1);
ret = cl.clGetContextInfo(context, CL.CL_CONTEXT_DEVICES, 0, null, longBuffer);
checkError("on clGetContextInfo", ret);
@@ -284,7 +284,7 @@ public class LowLevelBindingTest {
// Create the program
- PointerBuffer lengths = PointerBuffer.allocateDirect(1).put(programSource.length()).rewind();
+ NativeSizeBuffer lengths = NativeSizeBuffer.allocateDirect(1).put(programSource.length()).rewind();
final long program = cl.clCreateProgramWithSource(context, 1, new String[] {programSource}, lengths, intBuffer);
out.println("program id: "+program);
checkError("on clCreateProgramWithSource", intBuffer.get(0));
@@ -370,8 +370,8 @@ public class LowLevelBindingTest {
checkError("on clEnqueueWriteBuffer", ret);
// Launch kernel
- PointerBuffer gWS = PointerBuffer.allocateDirect(1).put(globalWorkSize).rewind();
- PointerBuffer lWS = PointerBuffer.allocateDirect(1).put(localWorkSize).rewind();
+ NativeSizeBuffer gWS = NativeSizeBuffer.allocateDirect(1).put(globalWorkSize).rewind();
+ NativeSizeBuffer lWS = NativeSizeBuffer.allocateDirect(1).put(localWorkSize).rewind();
ret = cl.clEnqueueNDRangeKernel(commandQueue, kernel, 1, null, gWS, lWS, 0, null, null);
checkError("on clEnqueueNDRangeKernel", ret);