@Override public void setArg(int index, Image i) { int ret = CL10.clSetKernelArg(kernel, index, ((LwjglImage) i).getImage()); Utils.checkError(ret, "clSetKernelArg"); }
@Override public void setArg(int index, Image i) { int ret = CL10.clSetKernelArg1p(kernel, index, ((LwjglImage) i).getImage()); Utils.checkError(ret, "clSetKernelArg"); }
@Override public Event copyToImageAsync(CommandQueue queue, Image dest, long srcOffset, long[] destOrigin, long[] destRegion) { if (destOrigin.length!=3 || destRegion.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[1].put(destOrigin).position(0); Utils.pointerBuffers[2].put(destRegion).position(0); long q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyBufferToImage(q, buffer, ((LwjglImage) dest).getImage(), srcOffset, Utils.pointerBuffers[1], Utils.pointerBuffers[2], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyBufferToImage"); long event = Utils.pointerBuffers[0].get(0); return new LwjglEvent(event); }
@Override public Event copyToImageAsync(CommandQueue queue, Image dest, long srcOffset, long[] destOrigin, long[] destRegion) { if (destOrigin.length!=3 || destRegion.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[1].put(destOrigin).position(0); Utils.pointerBuffers[2].put(destRegion).position(0); CLCommandQueue q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyBufferToImage(q, buffer, ((LwjglImage) dest).getImage(), srcOffset, Utils.pointerBuffers[1], Utils.pointerBuffers[2], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyBufferToImage"); long event = Utils.pointerBuffers[0].get(0); return new LwjglEvent(q.getCLEvent(event)); }
@Override public void copyTo(CommandQueue queue, Image dest, long[] srcOrigin, long[] destOrigin, long[] region) { if (srcOrigin.length!=3 || destOrigin.length!=3 || region.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[3].rewind(); Utils.pointerBuffers[1].put(srcOrigin).position(0); Utils.pointerBuffers[2].put(destOrigin).position(0); Utils.pointerBuffers[3].put(region).position(0); long q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyImage(q, image, ((LwjglImage) dest).getImage(), Utils.pointerBuffers[1], Utils.pointerBuffers[2], Utils.pointerBuffers[3], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyImage"); long event = Utils.pointerBuffers[0].get(0); ret = CL10.clWaitForEvents(event); Utils.checkError(ret, "clWaitForEvents"); }
@Override public Event copyToAsync(CommandQueue queue, Image dest, long[] srcOrigin, long[] destOrigin, long[] region) { if (srcOrigin.length!=3 || destOrigin.length!=3 || region.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[3].rewind(); Utils.pointerBuffers[1].put(srcOrigin).position(0); Utils.pointerBuffers[2].put(destOrigin).position(0); Utils.pointerBuffers[3].put(region).position(0); long q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyImage(q, image, ((LwjglImage) dest).getImage(), Utils.pointerBuffers[1], Utils.pointerBuffers[2], Utils.pointerBuffers[3], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyImage"); long event = Utils.pointerBuffers[0].get(0); return new LwjglEvent(event); }
@Override public Event copyToAsync(CommandQueue queue, Image dest, long[] srcOrigin, long[] destOrigin, long[] region) { if (srcOrigin.length!=3 || destOrigin.length!=3 || region.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[3].rewind(); Utils.pointerBuffers[1].put(srcOrigin).position(0); Utils.pointerBuffers[2].put(destOrigin).position(0); Utils.pointerBuffers[3].put(region).position(0); CLCommandQueue q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyImage(q, image, ((LwjglImage) dest).getImage(), Utils.pointerBuffers[1], Utils.pointerBuffers[2], Utils.pointerBuffers[3], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyImage"); long event = Utils.pointerBuffers[0].get(0); return new LwjglEvent(q.getCLEvent(event)); }
@Override public void copyTo(CommandQueue queue, Image dest, long[] srcOrigin, long[] destOrigin, long[] region) { if (srcOrigin.length!=3 || destOrigin.length!=3 || region.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[3].rewind(); Utils.pointerBuffers[1].put(srcOrigin).position(0); Utils.pointerBuffers[2].put(destOrigin).position(0); Utils.pointerBuffers[3].put(region).position(0); CLCommandQueue q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyImage(q, image, ((LwjglImage) dest).getImage(), Utils.pointerBuffers[1], Utils.pointerBuffers[2], Utils.pointerBuffers[3], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyImage"); long event = Utils.pointerBuffers[0].get(0); ret = CL10.clWaitForEvents(q.getCLEvent(event)); Utils.checkError(ret, "clWaitForEvents"); }
@Override public void setArg(int index, Image i) { int ret = CL10.clSetKernelArg1p(kernel, index, ((LwjglImage) i).getImage()); Utils.checkError(ret, "clSetKernelArg"); }
@Override public Event copyToImageAsync(CommandQueue queue, Image dest, long srcOffset, long[] destOrigin, long[] destRegion) { if (destOrigin.length!=3 || destRegion.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[1].put(destOrigin).position(0); Utils.pointerBuffers[2].put(destRegion).position(0); long q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyBufferToImage(q, buffer, ((LwjglImage) dest).getImage(), srcOffset, Utils.pointerBuffers[1], Utils.pointerBuffers[2], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyBufferToImage"); long event = Utils.pointerBuffers[0].get(0); return new LwjglEvent(event); }
@Override public Event copyToAsync(CommandQueue queue, Image dest, long[] srcOrigin, long[] destOrigin, long[] region) { if (srcOrigin.length!=3 || destOrigin.length!=3 || region.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[3].rewind(); Utils.pointerBuffers[1].put(srcOrigin).position(0); Utils.pointerBuffers[2].put(destOrigin).position(0); Utils.pointerBuffers[3].put(region).position(0); long q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyImage(q, image, ((LwjglImage) dest).getImage(), Utils.pointerBuffers[1], Utils.pointerBuffers[2], Utils.pointerBuffers[3], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyImage"); long event = Utils.pointerBuffers[0].get(0); return new LwjglEvent(event); }
@Override public void copyTo(CommandQueue queue, Image dest, long[] srcOrigin, long[] destOrigin, long[] region) { if (srcOrigin.length!=3 || destOrigin.length!=3 || region.length!=3) { throw new IllegalArgumentException("origin and region must both be arrays of length 3"); } Utils.pointerBuffers[0].rewind(); Utils.pointerBuffers[1].rewind(); Utils.pointerBuffers[2].rewind(); Utils.pointerBuffers[3].rewind(); Utils.pointerBuffers[1].put(srcOrigin).position(0); Utils.pointerBuffers[2].put(destOrigin).position(0); Utils.pointerBuffers[3].put(region).position(0); long q = ((LwjglCommandQueue) queue).getQueue(); int ret = CL10.clEnqueueCopyImage(q, image, ((LwjglImage) dest).getImage(), Utils.pointerBuffers[1], Utils.pointerBuffers[2], Utils.pointerBuffers[3], null, Utils.pointerBuffers[0]); Utils.checkError(ret, "clEnqueueCopyImage"); long event = Utils.pointerBuffers[0].get(0); ret = CL10.clWaitForEvents(event); Utils.checkError(ret, "clWaitForEvents"); }