mirror of
https://github.com/shadowfacts/lwjgl2-arm64.git
synced 2026-04-07 23:44:06 +00:00
Added clSetKernelArg support for CLObject and __local arguments.
This commit is contained in:
parent
1b6a2e866c
commit
c7152449c2
3 changed files with 45 additions and 12 deletions
|
|
@ -31,8 +31,6 @@
|
|||
*/
|
||||
package org.lwjgl.opencl;
|
||||
|
||||
import org.lwjgl.PointerWrapper;
|
||||
|
||||
/**
|
||||
* This class is a wrapper around a cl_kernel pointer.
|
||||
*
|
||||
|
|
@ -145,11 +143,24 @@ public final class CLKernel extends CLObjectChild<CLProgram> {
|
|||
*
|
||||
* @return this CLKernel object
|
||||
*/
|
||||
public CLKernel setArg(final int index, final PointerWrapper value) {
|
||||
public CLKernel setArg(final int index, final CLObject value) {
|
||||
util.setArg(this, index, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the size of a __local kernel argument at the specified index.
|
||||
*
|
||||
* @param index the argument index
|
||||
* @param size the argument size
|
||||
*
|
||||
* @return this CLKernel object
|
||||
*/
|
||||
public CLKernel setArgSize(final int index, final long size) {
|
||||
util.setArgSize(this, index, size);
|
||||
return this;
|
||||
}
|
||||
|
||||
// clGetKernelInfo methods
|
||||
|
||||
/**
|
||||
|
|
@ -225,7 +236,9 @@ public final class CLKernel extends CLObjectChild<CLProgram> {
|
|||
|
||||
void setArg(CLKernel kernel, int index, double value);
|
||||
|
||||
void setArg(CLKernel kernel, int index, PointerWrapper pointer);
|
||||
void setArg(CLKernel kernel, int index, CLObject pointer);
|
||||
|
||||
void setArgSize(CLKernel kernel, int index, long size);
|
||||
|
||||
long getWorkGroupInfoSize(CLKernel kernel, CLDevice device, int param_name);
|
||||
|
||||
|
|
|
|||
|
|
@ -230,8 +230,12 @@ final class InfoUtilFactory {
|
|||
clSetKernelArg(kernel, index, 8, APIUtil.getBufferDouble().put(0, value));
|
||||
}
|
||||
|
||||
public void setArg(final CLKernel kernel, final int index, final PointerWrapper pointer) {
|
||||
clSetKernelArg(kernel, index, PointerBuffer.getPointerSize(), APIUtil.getBufferPointer().put(0, pointer).getBuffer());
|
||||
public void setArg(final CLKernel kernel, final int index, final CLObject value) {
|
||||
clSetKernelArg(kernel, index, value);
|
||||
}
|
||||
|
||||
public void setArgSize(final CLKernel kernel, final int index, final long size) {
|
||||
clSetKernelArg(kernel, index, size);
|
||||
}
|
||||
|
||||
protected int getInfo(final CLKernel kernel, final int param_name, final ByteBuffer param_value, final PointerBuffer param_value_size_ret) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue