fixed formatting 2
This commit is contained in:
parent
dccec876c5
commit
ed68a7b749
@ -25,7 +25,9 @@ import static org.lwjgl.system.APIUtil.*;
|
|||||||
|
|
||||||
public final class CLUtil {
|
public final class CLUtil {
|
||||||
|
|
||||||
/** Maps OpenCL error token values to their String representations. */
|
/**
|
||||||
|
* Maps OpenCL error token values to their String representations.
|
||||||
|
*/
|
||||||
private static final Map<Integer, String> CL_ERROR_TOKENS = apiClassTokens(
|
private static final Map<Integer, String> CL_ERROR_TOKENS = apiClassTokens(
|
||||||
new BiPredicate<Field, Integer>() {
|
new BiPredicate<Field, Integer>() {
|
||||||
private final List<String> EXCLUDE = Arrays.asList("CL_DEVICE_TYPE_ALL", "CL_BUILD_NONE", "CL_BUILD_ERROR", "CL_BUILD_IN_PROGRESS");
|
private final List<String> EXCLUDE = Arrays.asList("CL_DEVICE_TYPE_ALL", "CL_BUILD_NONE", "CL_BUILD_ERROR", "CL_BUILD_IN_PROGRESS");
|
||||||
@ -50,11 +52,13 @@ public final class CLUtil {
|
|||||||
/*, EXTDeviceFission.class*/
|
/*, EXTDeviceFission.class*/
|
||||||
);
|
);
|
||||||
|
|
||||||
private CLUtil() {}
|
private CLUtil() {
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks the {@code errcode} present in the current position of the specified {@code errcode_ret} buffer and throws an {@link OpenCLException} if it's not
|
* Checks the {@code errcode} present in the current position of the
|
||||||
* equal to {@link CL10#CL_SUCCESS}.
|
* specified {@code errcode_ret} buffer and throws an
|
||||||
|
* {@link OpenCLException} if it's not equal to {@link CL10#CL_SUCCESS}.
|
||||||
*
|
*
|
||||||
* @param errcode_ret the {@code errcode} buffer
|
* @param errcode_ret the {@code errcode} buffer
|
||||||
*
|
*
|
||||||
@ -65,8 +69,9 @@ public final class CLUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks the {@code errcode} present in the current position of the specified {@code errcode_ret} buffer and throws an {@link OpenCLException} if it's not
|
* Checks the {@code errcode} present in the current position of the
|
||||||
* equal to {@link CL10#CL_SUCCESS}.
|
* specified {@code errcode_ret} buffer and throws an
|
||||||
|
* {@link OpenCLException} if it's not equal to {@link CL10#CL_SUCCESS}.
|
||||||
*
|
*
|
||||||
* @param errcode_ret the {@code errcode} buffer
|
* @param errcode_ret the {@code errcode} buffer
|
||||||
*
|
*
|
||||||
@ -77,16 +82,18 @@ public final class CLUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks the specified {@code errcode} and throws an {@link OpenCLException} if it's not equal to {@link CL10#CL_SUCCESS}.
|
* Checks the specified {@code errcode} and throws an
|
||||||
|
* {@link OpenCLException} if it's not equal to {@link CL10#CL_SUCCESS}.
|
||||||
*
|
*
|
||||||
* @param errcode the {@code errcode} to check
|
* @param errcode the {@code errcode} to check
|
||||||
*
|
*
|
||||||
* @throws OpenCLException
|
* @throws OpenCLException
|
||||||
*/
|
*/
|
||||||
public static void checkCLError(int errcode) {
|
public static void checkCLError(int errcode) {
|
||||||
if ( errcode != CL_SUCCESS )
|
if (errcode != CL_SUCCESS) {
|
||||||
throw new OpenCLException(getErrcodeName(errcode));
|
throw new OpenCLException(getErrcodeName(errcode));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the token name of the specified {@code errcode}.
|
* Returns the token name of the specified {@code errcode}.
|
||||||
@ -97,8 +104,9 @@ public final class CLUtil {
|
|||||||
*/
|
*/
|
||||||
public static String getErrcodeName(int errcode) {
|
public static String getErrcodeName(int errcode) {
|
||||||
String errname = CL_ERROR_TOKENS.get(errcode);
|
String errname = CL_ERROR_TOKENS.get(errcode);
|
||||||
if ( errname == null )
|
if (errname == null) {
|
||||||
errname = apiUnknownToken(errcode);
|
errname = apiUnknownToken(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
return errname;
|
return errname;
|
||||||
}
|
}
|
||||||
|
@ -13,9 +13,11 @@ import static org.lwjgl.opencl.CL20.*;
|
|||||||
import static org.lwjgl.opencl.CL10GL.*;
|
import static org.lwjgl.opencl.CL10GL.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class provides methods that can be used to query information about OpenCL objects. These methods are similar to the corresponding
|
* This class provides methods that can be used to query information about
|
||||||
* {@code clGet<Type>Info} function for each object type, except that only a single value is returned. Which one of these methods should be used
|
* OpenCL objects. These methods are similar to the corresponding
|
||||||
* depends on the type of the information being queried.
|
* {@code clGet<Type>Info} function for each object type, except that only
|
||||||
|
* a single value is returned. Which one of these methods should be used depends
|
||||||
|
* on the type of the information being queried.
|
||||||
*/
|
*/
|
||||||
public final class Info {
|
public final class Info {
|
||||||
|
|
||||||
@ -25,7 +27,6 @@ public final class Info {
|
|||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Platform (CL10.clGetPlatformInfo)
|
// Platform (CL10.clGetPlatformInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery PLATFORM = new InfoQuery() {
|
private static final InfoQuery PLATFORM = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -33,22 +34,38 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** String version of: {@link CL10#clGetPlatformInfo GetPlatformInfo} */
|
/**
|
||||||
public static String clGetPlatformInfoStringASCII(long platform, int param_name) { return PLATFORM.getStringASCII(platform, param_name); }
|
* String version of: {@link CL10#clGetPlatformInfo GetPlatformInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetPlatformInfoStringASCII(long platform, int param_name) {
|
||||||
|
return PLATFORM.getStringASCII(platform, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String with explicit length version of: {@link CL10#clGetPlatformInfo GetPlatformInfo}*/
|
/**
|
||||||
public static String clGetPlatformInfoStringASCII(long platform, int param_name, int param_value_size) { return PLATFORM.getStringASCII(platform, param_name, param_value_size); }
|
* String with explicit length version of: {@link CL10#clGetPlatformInfo GetPlatformInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetPlatformInfoStringASCII(long platform, int param_name, int param_value_size) {
|
||||||
|
return PLATFORM.getStringASCII(platform, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string version of: {@link CL10#clGetPlatformInfo GetPlatformInfo} */
|
/**
|
||||||
public static String clGetPlatformInfoStringUTF8(long platform, int param_name) { return PLATFORM.getStringUTF8(platform, param_name); }
|
* UTF-8 string version of: {@link CL10#clGetPlatformInfo GetPlatformInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetPlatformInfoStringUTF8(long platform, int param_name) {
|
||||||
|
return PLATFORM.getStringUTF8(platform, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string with explicit length version of: {@link CL10#clGetPlatformInfo GetPlatformInfo} */
|
/**
|
||||||
public static String clGetPlatformInfoStringUTF8(long platform, int param_name, int param_value_size) { return PLATFORM.getStringUTF8(platform, param_name, param_value_size); }
|
* UTF-8 string with explicit length version of:
|
||||||
|
* {@link CL10#clGetPlatformInfo GetPlatformInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetPlatformInfoStringUTF8(long platform, int param_name, int param_value_size) {
|
||||||
|
return PLATFORM.getStringUTF8(platform, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Device (CL10.clGetDeviceInfo)
|
// Device (CL10.clGetDeviceInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery DEVICE = new InfoQuery() {
|
private static final InfoQuery DEVICE = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -56,37 +73,75 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single boolean value version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static boolean clGetDeviceInfoBoolean(long device, int param_name) { return DEVICE.getBoolean(device, param_name); }
|
* Single boolean value version of:
|
||||||
|
* {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static boolean clGetDeviceInfoBoolean(long device, int param_name) {
|
||||||
|
return DEVICE.getBoolean(device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static int clGetDeviceInfoInt(long device, int param_name) { return DEVICE.getInt(device, param_name); }
|
* Single int value version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetDeviceInfoInt(long device, int param_name) {
|
||||||
|
return DEVICE.getInt(device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single long value version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static long clGetDeviceInfoLong(long device, int param_name) { return DEVICE.getLong(device, param_name); }
|
* Single long value version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetDeviceInfoLong(long device, int param_name) {
|
||||||
|
return DEVICE.getLong(device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static long clGetDeviceInfoPointer(long device, int param_name) { return DEVICE.getPointer(device, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetDeviceInfoPointer(long device, int param_name) {
|
||||||
|
return DEVICE.getPointer(device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static int clGetDeviceInfoPointers(long device, int param_name, PointerBuffer target) { return DEVICE.getPointers(device, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetDeviceInfoPointers(long device, int param_name, PointerBuffer target) {
|
||||||
|
return DEVICE.getPointers(device, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
/** String version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static String clGetDeviceInfoStringASCII(long device, int param_name) { return DEVICE.getStringASCII(device, param_name); }
|
* String version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetDeviceInfoStringASCII(long device, int param_name) {
|
||||||
|
return DEVICE.getStringASCII(device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String with explicit length version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}*/
|
/**
|
||||||
public static String clGetDeviceInfoStringASCII(long device, int param_name, int param_value_size) { return DEVICE.getStringASCII(device, param_name, param_value_size); }
|
* String with explicit length version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetDeviceInfoStringASCII(long device, int param_name, int param_value_size) {
|
||||||
|
return DEVICE.getStringASCII(device, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static String clGetDeviceInfoStringUTF8(long device, int param_name) { return DEVICE.getStringUTF8(device, param_name); }
|
* UTF-8 string version of: {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetDeviceInfoStringUTF8(long device, int param_name) {
|
||||||
|
return DEVICE.getStringUTF8(device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string with explicit length version of: {@link CL10#clGetDeviceInfo GetDeviceInfo} */
|
/**
|
||||||
public static String clGetDeviceInfoStringUTF8(long device, int param_name, int param_value_size) { return DEVICE.getStringUTF8(device, param_name, param_value_size); }
|
* UTF-8 string with explicit length version of:
|
||||||
|
* {@link CL10#clGetDeviceInfo GetDeviceInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetDeviceInfoStringUTF8(long device, int param_name, int param_value_size) {
|
||||||
|
return DEVICE.getStringUTF8(device, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Context (CL10.clGetContextInfo)
|
// Context (CL10.clGetContextInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery CONTEXT = new InfoQuery() {
|
private static final InfoQuery CONTEXT = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -94,19 +149,31 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetContextInfo GetContextInfo} */
|
/**
|
||||||
public static int clGetContextInfoInt(long context, int param_name) { return CONTEXT.getInt(context, param_name); }
|
* Single int value version of: {@link CL10#clGetContextInfo GetContextInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetContextInfoInt(long context, int param_name) {
|
||||||
|
return CONTEXT.getInt(context, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetContextInfo GetContextInfo} */
|
/**
|
||||||
public static long clGetContextInfoPointer(long context, int param_name) { return CONTEXT.getPointer(context, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetContextInfo GetContextInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetContextInfoPointer(long context, int param_name) {
|
||||||
|
return CONTEXT.getPointer(context, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetContextInfo GetContextInfo} */
|
/**
|
||||||
public static int clGetContextInfoPointers(long context, int param_name, PointerBuffer target) { return CONTEXT.getPointers(context, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetContextInfo GetContextInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetContextInfoPointers(long context, int param_name, PointerBuffer target) {
|
||||||
|
return CONTEXT.getPointers(context, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Command Queue (CL10.clGetCommandQueueInfo)
|
// Command Queue (CL10.clGetCommandQueueInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery COMMAND_QUEUE = new InfoQuery() {
|
private static final InfoQuery COMMAND_QUEUE = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -114,19 +181,33 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetCommandQueueInfo GetCommandQueueInfo} */
|
/**
|
||||||
public static int clGetCommandQueueInfoInt(long command_queue, int param_name) { return COMMAND_QUEUE.getInt(command_queue, param_name); }
|
* Single int value version of:
|
||||||
|
* {@link CL10#clGetCommandQueueInfo GetCommandQueueInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetCommandQueueInfoInt(long command_queue, int param_name) {
|
||||||
|
return COMMAND_QUEUE.getInt(command_queue, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetCommandQueueInfo GetCommandQueueInfo} */
|
/**
|
||||||
public static long clGetCommandQueueInfoPointer(long command_queue, int param_name) { return COMMAND_QUEUE.getPointer(command_queue, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetCommandQueueInfo GetCommandQueueInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetCommandQueueInfoPointer(long command_queue, int param_name) {
|
||||||
|
return COMMAND_QUEUE.getPointer(command_queue, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetCommandQueueInfo GetCommandQueueInfo} */
|
/**
|
||||||
public static int clGetCommandQueueInfoPointers(long command_queue, int param_name, PointerBuffer target) { return COMMAND_QUEUE.getPointers(command_queue, param_name, target); }
|
* PointBuffer version of:
|
||||||
|
* {@link CL10#clGetCommandQueueInfo GetCommandQueueInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetCommandQueueInfoPointers(long command_queue, int param_name, PointerBuffer target) {
|
||||||
|
return COMMAND_QUEUE.getPointers(command_queue, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Mem Object (CL10.clGetMemObjectInfo)
|
// Mem Object (CL10.clGetMemObjectInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery MEM_OBJECT = new InfoQuery() {
|
private static final InfoQuery MEM_OBJECT = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -134,25 +215,48 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single boolean value version of: {@link CL10#clGetMemObjectInfo GetMemObjectInfo} */
|
/**
|
||||||
public static boolean clGetMemObjectInfoBoolean(long memobj, int param_name) { return MEM_OBJECT.getBoolean(memobj, param_name); }
|
* Single boolean value version of:
|
||||||
|
* {@link CL10#clGetMemObjectInfo GetMemObjectInfo}
|
||||||
|
*/
|
||||||
|
public static boolean clGetMemObjectInfoBoolean(long memobj, int param_name) {
|
||||||
|
return MEM_OBJECT.getBoolean(memobj, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetMemObjectInfo GetMemObjectInfo} */
|
/**
|
||||||
public static int clGetMemObjectInfoInt(long memobj, int param_name) { return MEM_OBJECT.getInt(memobj, param_name); }
|
* Single int value version of:
|
||||||
|
* {@link CL10#clGetMemObjectInfo GetMemObjectInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetMemObjectInfoInt(long memobj, int param_name) {
|
||||||
|
return MEM_OBJECT.getInt(memobj, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single long value version of: {@link CL10#clGetMemObjectInfo GetMemObjectInfo} */
|
/**
|
||||||
public static long clGetMemObjectInfoLong(long memobj, int param_name) { return MEM_OBJECT.getLong(memobj, param_name); }
|
* Single long value version of:
|
||||||
|
* {@link CL10#clGetMemObjectInfo GetMemObjectInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetMemObjectInfoLong(long memobj, int param_name) {
|
||||||
|
return MEM_OBJECT.getLong(memobj, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetMemObjectInfo GetMemObjectInfo} */
|
/**
|
||||||
public static long clGetMemObjectInfoPointer(long memobj, int param_name) { return MEM_OBJECT.getPointer(memobj, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetMemObjectInfo GetMemObjectInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetMemObjectInfoPointer(long memobj, int param_name) {
|
||||||
|
return MEM_OBJECT.getPointer(memobj, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetMemObjectInfo GetMemObjectInfo} */
|
/**
|
||||||
public static int clGetMemObjectInfoPointers(long memobj, int param_name, PointerBuffer target) { return MEM_OBJECT.getPointers(memobj, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetMemObjectInfo GetMemObjectInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetMemObjectInfoPointers(long memobj, int param_name, PointerBuffer target) {
|
||||||
|
return MEM_OBJECT.getPointers(memobj, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Image (CL10.clGetImageInfo)
|
// Image (CL10.clGetImageInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery IMAGE = new InfoQuery() {
|
private static final InfoQuery IMAGE = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -160,19 +264,30 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetImageInfo GetImageInfo} */
|
/**
|
||||||
public static int clGetImageInfoInt(long image, int param_name) { return IMAGE.getInt(image, param_name); }
|
* Single int value version of: {@link CL10#clGetImageInfo GetImageInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetImageInfoInt(long image, int param_name) {
|
||||||
|
return IMAGE.getInt(image, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetImageInfo GetImageInfo} */
|
/**
|
||||||
public static long clGetImageInfoPointer(long image, int param_name) { return IMAGE.getPointer(image, param_name); }
|
* Single pointer value version of: {@link CL10#clGetImageInfo GetImageInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetImageInfoPointer(long image, int param_name) {
|
||||||
|
return IMAGE.getPointer(image, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetImageInfo GetImageInfo} */
|
/**
|
||||||
public static int clGetImageInfoPointers(long image, int param_name, PointerBuffer target) { return IMAGE.getPointers(image, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetImageInfo GetImageInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetImageInfoPointers(long image, int param_name, PointerBuffer target) {
|
||||||
|
return IMAGE.getPointers(image, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Pipe (CL20.clGetPipeInfo)
|
// Pipe (CL20.clGetPipeInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery PIPE = new InfoQuery() {
|
private static final InfoQuery PIPE = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -180,13 +295,16 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL20#clGetPipeInfo GetPipeInfo} */
|
/**
|
||||||
public static int clGetPipeInfoInt(long pipe, int param_name) { return PIPE.getInt(pipe, param_name); }
|
* Single int value version of: {@link CL20#clGetPipeInfo GetPipeInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetPipeInfoInt(long pipe, int param_name) {
|
||||||
|
return PIPE.getInt(pipe, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Program (CL10.clGetProgramInfo)
|
// Program (CL10.clGetProgramInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery PROGRAM = new InfoQuery() {
|
private static final InfoQuery PROGRAM = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -194,31 +312,60 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetProgramInfo GetProgramInfo} */
|
/**
|
||||||
public static int clGetProgramInfoInt(long program, int param_name) { return PROGRAM.getInt(program, param_name); }
|
* Single int value version of: {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetProgramInfoInt(long program, int param_name) {
|
||||||
|
return PROGRAM.getInt(program, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetProgramInfo GetProgramInfo} */
|
/**
|
||||||
public static long clGetProgramInfoPointer(long program, int param_name) { return PROGRAM.getPointer(program, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetProgramInfoPointer(long program, int param_name) {
|
||||||
|
return PROGRAM.getPointer(program, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetProgramInfo GetProgramInfo} */
|
/**
|
||||||
public static int clGetProgramInfoPointers(long program, int param_name, PointerBuffer target) { return PROGRAM.getPointers(program, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetProgramInfoPointers(long program, int param_name, PointerBuffer target) {
|
||||||
|
return PROGRAM.getPointers(program, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
/** String version of: {@link CL10#clGetProgramInfo GetProgramInfo} */
|
/**
|
||||||
public static String clGetProgramInfoStringASCII(long program, int param_name) { return PROGRAM.getStringASCII(program, param_name); }
|
* String version of: {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramInfoStringASCII(long program, int param_name) {
|
||||||
|
return PROGRAM.getStringASCII(program, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String with explicit length version of: {@link CL10#clGetProgramInfo GetProgramInfo}*/
|
/**
|
||||||
public static String clGetProgramInfoStringASCII(long program, int param_name, int param_value_size) { return PROGRAM.getStringASCII(program, param_name, param_value_size); }
|
* String with explicit length version of: {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramInfoStringASCII(long program, int param_name, int param_value_size) {
|
||||||
|
return PROGRAM.getStringASCII(program, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string version of: {@link CL10#clGetProgramInfo GetProgramInfo} */
|
/**
|
||||||
public static String clGetProgramInfoStringUTF8(long program, int param_name) { return PROGRAM.getStringUTF8(program, param_name); }
|
* UTF-8 string version of: {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramInfoStringUTF8(long program, int param_name) {
|
||||||
|
return PROGRAM.getStringUTF8(program, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string with explicit length version of: {@link CL10#clGetProgramInfo GetProgramInfo} */
|
/**
|
||||||
public static String clGetProgramInfoStringUTF8(long program, int param_name, int param_value_size) { return PROGRAM.getStringUTF8(program, param_name, param_value_size); }
|
* UTF-8 string with explicit length version of:
|
||||||
|
* {@link CL10#clGetProgramInfo GetProgramInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramInfoStringUTF8(long program, int param_name, int param_value_size) {
|
||||||
|
return PROGRAM.getStringUTF8(program, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Program Build (CL10.clGetProgramBuildInfo)
|
// Program Build (CL10.clGetProgramBuildInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQueryObject PROGRAM_BUILD = new InfoQueryObject() {
|
private static final InfoQueryObject PROGRAM_BUILD = new InfoQueryObject() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, long arg, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, long arg, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -226,31 +373,63 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo} */
|
/**
|
||||||
public static int clGetProgramBuildInfoInt(long program, long device, int param_name) { return PROGRAM_BUILD.getInt(program, device, param_name); }
|
* Single int value version of:
|
||||||
|
* {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetProgramBuildInfoInt(long program, long device, int param_name) {
|
||||||
|
return PROGRAM_BUILD.getInt(program, device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo} */
|
/**
|
||||||
public static long clGetProgramBuildInfoPointer(long program, long device, int param_name) { return PROGRAM_BUILD.getPointer(program, device, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetProgramBuildInfoPointer(long program, long device, int param_name) {
|
||||||
|
return PROGRAM_BUILD.getPointer(program, device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo} */
|
/**
|
||||||
public static int clGetProgramBuildInfoPointers(long program, long device, int param_name, PointerBuffer target) { return PROGRAM_BUILD.getPointers(program, device, param_name, target); }
|
* PointBuffer version of:
|
||||||
|
* {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetProgramBuildInfoPointers(long program, long device, int param_name, PointerBuffer target) {
|
||||||
|
return PROGRAM_BUILD.getPointers(program, device, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
/** String version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo} */
|
/**
|
||||||
public static String clGetProgramBuildInfoStringASCII(long program, long device, int param_name) { return PROGRAM_BUILD.getStringASCII(program, device, param_name); }
|
* String version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramBuildInfoStringASCII(long program, long device, int param_name) {
|
||||||
|
return PROGRAM_BUILD.getStringASCII(program, device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String with explicit length version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}*/
|
/**
|
||||||
public static String clGetProgramBuildInfoStringASCII(long program, long device, int param_name, int param_value_size) { return PROGRAM_BUILD.getStringASCII(program, device, param_name, param_value_size); }
|
* String with explicit length version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramBuildInfoStringASCII(long program, long device, int param_name, int param_value_size) {
|
||||||
|
return PROGRAM_BUILD.getStringASCII(program, device, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo} */
|
/**
|
||||||
public static String clGetProgramBuildInfoStringUTF8(long program, long device, int param_name) { return PROGRAM_BUILD.getStringUTF8(program, device, param_name); }
|
* UTF-8 string version of:
|
||||||
|
* {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramBuildInfoStringUTF8(long program, long device, int param_name) {
|
||||||
|
return PROGRAM_BUILD.getStringUTF8(program, device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string with explicit length version of: {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo} */
|
/**
|
||||||
public static String clGetProgramBuildInfoStringUTF8(long program, long device, int param_name, int param_value_size) { return PROGRAM_BUILD.getStringUTF8(program, device, param_name, param_value_size); }
|
* UTF-8 string with explicit length version of:
|
||||||
|
* {@link CL10#clGetProgramBuildInfo GetProgramBuildInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetProgramBuildInfoStringUTF8(long program, long device, int param_name, int param_value_size) {
|
||||||
|
return PROGRAM_BUILD.getStringUTF8(program, device, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Kernel (CL10.clGetKernelInfo)
|
// Kernel (CL10.clGetKernelInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery KERNEL = new InfoQuery() {
|
private static final InfoQuery KERNEL = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -258,31 +437,60 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetKernelInfo GetKernelInfo} */
|
/**
|
||||||
public static int clGetKernelInfoInt(long kernel, int param_name) { return KERNEL.getInt(kernel, param_name); }
|
* Single int value version of: {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetKernelInfoInt(long kernel, int param_name) {
|
||||||
|
return KERNEL.getInt(kernel, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetKernelInfo GetKernelInfo} */
|
/**
|
||||||
public static long clGetKernelInfoPointer(long kernel, int param_name) { return KERNEL.getPointer(kernel, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetKernelInfoPointer(long kernel, int param_name) {
|
||||||
|
return KERNEL.getPointer(kernel, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetKernelInfo GetKernelInfo} */
|
/**
|
||||||
public static int clGetKernelInfoPointers(long kernel, int param_name, PointerBuffer target) { return KERNEL.getPointers(kernel, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetKernelInfoPointers(long kernel, int param_name, PointerBuffer target) {
|
||||||
|
return KERNEL.getPointers(kernel, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
/** String version of: {@link CL10#clGetKernelInfo GetKernelInfo} */
|
/**
|
||||||
public static String clGetKernelInfoStringASCII(long kernel, int param_name) { return KERNEL.getStringASCII(kernel, param_name); }
|
* String version of: {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelInfoStringASCII(long kernel, int param_name) {
|
||||||
|
return KERNEL.getStringASCII(kernel, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String with explicit length version of: {@link CL10#clGetKernelInfo GetKernelInfo}*/
|
/**
|
||||||
public static String clGetKernelInfoStringASCII(long kernel, int param_name, int param_value_size) { return KERNEL.getStringASCII(kernel, param_name, param_value_size); }
|
* String with explicit length version of: {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelInfoStringASCII(long kernel, int param_name, int param_value_size) {
|
||||||
|
return KERNEL.getStringASCII(kernel, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string version of: {@link CL10#clGetKernelInfo GetKernelInfo} */
|
/**
|
||||||
public static String clGetKernelInfoStringUTF8(long kernel, int param_name) { return KERNEL.getStringUTF8(kernel, param_name); }
|
* UTF-8 string version of: {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelInfoStringUTF8(long kernel, int param_name) {
|
||||||
|
return KERNEL.getStringUTF8(kernel, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string with explicit length version of: {@link CL10#clGetKernelInfo GetKernelInfo} */
|
/**
|
||||||
public static String clGetKernelInfoStringUTF8(long kernel, int param_name, int param_value_size) { return KERNEL.getStringUTF8(kernel, param_name, param_value_size); }
|
* UTF-8 string with explicit length version of:
|
||||||
|
* {@link CL10#clGetKernelInfo GetKernelInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelInfoStringUTF8(long kernel, int param_name, int param_value_size) {
|
||||||
|
return KERNEL.getStringUTF8(kernel, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Kernel WorkGroup (CL10.clGetKernelWorkGroupInfo)
|
// Kernel WorkGroup (CL10.clGetKernelWorkGroupInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQueryObject KERNEL_WORKGROUP = new InfoQueryObject() {
|
private static final InfoQueryObject KERNEL_WORKGROUP = new InfoQueryObject() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, long arg, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, long arg, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -290,19 +498,33 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single long value version of: {@link CL10#clGetKernelWorkGroupInfo GetKernelWorkGroupInfo} */
|
/**
|
||||||
public static long clGetKernelWorkGroupInfoLong(long kernel, long device, int param_name) { return KERNEL_WORKGROUP.getLong(kernel, device, param_name); }
|
* Single long value version of:
|
||||||
|
* {@link CL10#clGetKernelWorkGroupInfo GetKernelWorkGroupInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetKernelWorkGroupInfoLong(long kernel, long device, int param_name) {
|
||||||
|
return KERNEL_WORKGROUP.getLong(kernel, device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetKernelWorkGroupInfo GetKernelWorkGroupInfo} */
|
/**
|
||||||
public static long clGetKernelWorkGroupInfoPointer(long kernel, long device, int param_name) { return KERNEL_WORKGROUP.getPointer(kernel, device, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetKernelWorkGroupInfo GetKernelWorkGroupInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetKernelWorkGroupInfoPointer(long kernel, long device, int param_name) {
|
||||||
|
return KERNEL_WORKGROUP.getPointer(kernel, device, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetKernelWorkGroupInfo GetKernelWorkGroupInfo} */
|
/**
|
||||||
public static int clGetKernelWorkGroupInfoPointers(long kernel, long device, int param_name, PointerBuffer target) { return KERNEL_WORKGROUP.getPointers(kernel, device, param_name, target); }
|
* PointBuffer version of:
|
||||||
|
* {@link CL10#clGetKernelWorkGroupInfo GetKernelWorkGroupInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetKernelWorkGroupInfoPointers(long kernel, long device, int param_name, PointerBuffer target) {
|
||||||
|
return KERNEL_WORKGROUP.getPointers(kernel, device, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Kernel Arg (CL12.clGetKernelArgInfo)
|
// Kernel Arg (CL12.clGetKernelArgInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQueryInt KERNEL_ARG = new InfoQueryInt() {
|
private static final InfoQueryInt KERNEL_ARG = new InfoQueryInt() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int arg, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int arg, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -310,28 +532,54 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo} */
|
/**
|
||||||
public static int clGetKernelArgInfoInt(long kernel, int arg_indx, int param_name) { return KERNEL_ARG.getInt(kernel, arg_indx, param_name); }
|
* Single int value version of:
|
||||||
|
* {@link CL12#clGetKernelArgInfo GetKernelArgInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetKernelArgInfoInt(long kernel, int arg_indx, int param_name) {
|
||||||
|
return KERNEL_ARG.getInt(kernel, arg_indx, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single long value version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo} */
|
/**
|
||||||
public static long clGetKernelArgInfoLong(long kernel, int arg_indx, int param_name) { return KERNEL_ARG.getLong(kernel, arg_indx, param_name); }
|
* Single long value version of:
|
||||||
|
* {@link CL12#clGetKernelArgInfo GetKernelArgInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetKernelArgInfoLong(long kernel, int arg_indx, int param_name) {
|
||||||
|
return KERNEL_ARG.getLong(kernel, arg_indx, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo} */
|
/**
|
||||||
public static String clGetKernelArgInfoStringASCII(long kernel, int arg_indx, int param_name) { return KERNEL_ARG.getStringASCII(kernel, arg_indx, param_name); }
|
* String version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelArgInfoStringASCII(long kernel, int arg_indx, int param_name) {
|
||||||
|
return KERNEL_ARG.getStringASCII(kernel, arg_indx, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** String with explicit length version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo}*/
|
/**
|
||||||
public static String clGetKernelArgInfoStringASCII(long kernel, int arg_indx, int param_name, int param_value_size) { return KERNEL_ARG.getStringASCII(kernel, arg_indx, param_name, param_value_size); }
|
* String with explicit length version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelArgInfoStringASCII(long kernel, int arg_indx, int param_name, int param_value_size) {
|
||||||
|
return KERNEL_ARG.getStringASCII(kernel, arg_indx, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo} */
|
/**
|
||||||
public static String clGetKernelArgInfoStringUTF8(long kernel, int arg_indx, int param_name) { return KERNEL_ARG.getStringUTF8(kernel, arg_indx, param_name); }
|
* UTF-8 string version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelArgInfoStringUTF8(long kernel, int arg_indx, int param_name) {
|
||||||
|
return KERNEL_ARG.getStringUTF8(kernel, arg_indx, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** UTF-8 string with explicit length version of: {@link CL12#clGetKernelArgInfo GetKernelArgInfo} */
|
/**
|
||||||
public static String clGetKernelArgInfoStringUTF8(long kernel, int arg_indx, int param_name, int param_value_size) { return KERNEL_ARG.getStringUTF8(kernel, arg_indx, param_name, param_value_size); }
|
* UTF-8 string with explicit length version of:
|
||||||
|
* {@link CL12#clGetKernelArgInfo GetKernelArgInfo}
|
||||||
|
*/
|
||||||
|
public static String clGetKernelArgInfoStringUTF8(long kernel, int arg_indx, int param_name, int param_value_size) {
|
||||||
|
return KERNEL_ARG.getStringUTF8(kernel, arg_indx, param_name, param_value_size);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Sampler (CL10.clGetSamplerInfo)
|
// Sampler (CL10.clGetSamplerInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery SAMPLER = new InfoQuery() {
|
private static final InfoQuery SAMPLER = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -339,22 +587,39 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single boolean value version of: {@link CL10#clGetSamplerInfo GetSamplerInfo} */
|
/**
|
||||||
public static boolean clGetSamplerInfoBoolean(long sampler, int param_name) { return SAMPLER.getBoolean(sampler, param_name); }
|
* Single boolean value version of:
|
||||||
|
* {@link CL10#clGetSamplerInfo GetSamplerInfo}
|
||||||
|
*/
|
||||||
|
public static boolean clGetSamplerInfoBoolean(long sampler, int param_name) {
|
||||||
|
return SAMPLER.getBoolean(sampler, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetSamplerInfo GetSamplerInfo} */
|
/**
|
||||||
public static int clGetSamplerInfoInt(long sampler, int param_name) { return SAMPLER.getInt(sampler, param_name); }
|
* Single int value version of: {@link CL10#clGetSamplerInfo GetSamplerInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetSamplerInfoInt(long sampler, int param_name) {
|
||||||
|
return SAMPLER.getInt(sampler, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetSamplerInfo GetSamplerInfo} */
|
/**
|
||||||
public static long clGetSamplerInfoPointer(long sampler, int param_name) { return SAMPLER.getPointer(sampler, param_name); }
|
* Single pointer value version of:
|
||||||
|
* {@link CL10#clGetSamplerInfo GetSamplerInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetSamplerInfoPointer(long sampler, int param_name) {
|
||||||
|
return SAMPLER.getPointer(sampler, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetSamplerInfo GetSamplerInfo} */
|
/**
|
||||||
public static int clGetSamplerInfoPointers(long sampler, int param_name, PointerBuffer target) { return SAMPLER.getPointers(sampler, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetSamplerInfo GetSamplerInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetSamplerInfoPointers(long sampler, int param_name, PointerBuffer target) {
|
||||||
|
return SAMPLER.getPointers(sampler, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Event (CL10.clGetEventInfo)
|
// Event (CL10.clGetEventInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery EVENT = new InfoQuery() {
|
private static final InfoQuery EVENT = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -362,19 +627,30 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10#clGetEventInfo GetEventInfo} */
|
/**
|
||||||
public static int clGetEventInfoInt(long event, int param_name) { return EVENT.getInt(event, param_name); }
|
* Single int value version of: {@link CL10#clGetEventInfo GetEventInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetEventInfoInt(long event, int param_name) {
|
||||||
|
return EVENT.getInt(event, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** Single pointer value version of: {@link CL10#clGetEventInfo GetEventInfo} */
|
/**
|
||||||
public static long clGetEventInfoPointer(long event, int param_name) { return EVENT.getPointer(event, param_name); }
|
* Single pointer value version of: {@link CL10#clGetEventInfo GetEventInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetEventInfoPointer(long event, int param_name) {
|
||||||
|
return EVENT.getPointer(event, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
/** PointBuffer version of: {@link CL10#clGetEventInfo GetEventInfo} */
|
/**
|
||||||
public static int clGetEventInfoPointers(long event, int param_name, PointerBuffer target) { return EVENT.getPointers(event, param_name, target); }
|
* PointBuffer version of: {@link CL10#clGetEventInfo GetEventInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetEventInfoPointers(long event, int param_name, PointerBuffer target) {
|
||||||
|
return EVENT.getPointers(event, param_name, target);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// Event Profiling (CL10.clGetEventProfilingInfo)
|
// Event Profiling (CL10.clGetEventProfilingInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery EVENT_PROFILING = new InfoQuery() {
|
private static final InfoQuery EVENT_PROFILING = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -382,13 +658,17 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single long value version of: {@link CL10#clGetEventProfilingInfo GetEventProfilingInfo} */
|
/**
|
||||||
public static long clGetEventProfilingInfoLong(long event, int param_name) { return EVENT_PROFILING.getLong(event, param_name); }
|
* Single long value version of:
|
||||||
|
* {@link CL10#clGetEventProfilingInfo GetEventProfilingInfo}
|
||||||
|
*/
|
||||||
|
public static long clGetEventProfilingInfoLong(long event, int param_name) {
|
||||||
|
return EVENT_PROFILING.getLong(event, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
// GL Texture (CL10GL.clGetGLTextureInfo)
|
// GL Texture (CL10GL.clGetGLTextureInfo)
|
||||||
// ------------------------------------
|
// ------------------------------------
|
||||||
|
|
||||||
private static final InfoQuery GL_TEXTURE = new InfoQuery() {
|
private static final InfoQuery GL_TEXTURE = new InfoQuery() {
|
||||||
@Override
|
@Override
|
||||||
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
protected int get(long pointer, int param_name, long param_value_size, long param_value, long param_value_size_ret) {
|
||||||
@ -396,7 +676,12 @@ public final class Info {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Single int value version of: {@link CL10GL#clGetGLTextureInfo GetGLTextureInfo} */
|
/**
|
||||||
public static int clGetGLTextureInfoInt(long memobj, int param_name) { return GL_TEXTURE.getInt(memobj, param_name); }
|
* Single int value version of:
|
||||||
|
* {@link CL10GL#clGetGLTextureInfo GetGLTextureInfo}
|
||||||
|
*/
|
||||||
|
public static int clGetGLTextureInfoInt(long memobj, int param_name) {
|
||||||
|
return GL_TEXTURE.getInt(memobj, param_name);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -16,7 +16,8 @@ import static org.lwjgl.system.Pointer.*;
|
|||||||
/**
|
/**
|
||||||
* Base class for OpenCL object information queries.
|
* Base class for OpenCL object information queries.
|
||||||
* <p/>
|
* <p/>
|
||||||
* All methods require the object being queried (a pointer value) and the integer parameter name.
|
* All methods require the object being queried (a pointer value) and the
|
||||||
|
* integer parameter name.
|
||||||
*
|
*
|
||||||
* @see Info
|
* @see Info
|
||||||
*/
|
*/
|
||||||
@ -28,7 +29,8 @@ abstract class InfoQuery {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the integer value for the specified {@code param_name}, converted to a boolean.
|
* Returns the integer value for the specified {@code param_name}, converted
|
||||||
|
* to a boolean.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -42,7 +44,8 @@ abstract class InfoQuery {
|
|||||||
/**
|
/**
|
||||||
* Returns the integer value for the specified {@code param_name}.
|
* Returns the integer value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}), {@link #getPointer} should be used instead.
|
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}),
|
||||||
|
* {@link #getPointer} should be used instead.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -52,15 +55,17 @@ abstract class InfoQuery {
|
|||||||
int getInt(long object, int param_name) {
|
int getInt(long object, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, param_name, 4L, __buffer.address(), NULL);
|
int errcode = get(object, param_name, 4L, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.intValue(0);
|
return __buffer.intValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the long value for the specified {@code param_name}.
|
* Returns the long value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}), {@link #getPointer} should be used instead.
|
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}),
|
||||||
|
* {@link #getPointer} should be used instead.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -70,15 +75,17 @@ abstract class InfoQuery {
|
|||||||
long getLong(long object, int param_name) {
|
long getLong(long object, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, param_name, 8L, __buffer.address(), NULL);
|
int errcode = get(object, param_name, 8L, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.longValue(0);
|
return __buffer.longValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the pointer value for the specified {@code param_name}.
|
* Returns the pointer value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* This method should also be used for integer parameters that may be 32 or 64 bits (e.g. {@code size_t}).
|
* This method should also be used for integer parameters that may be 32 or
|
||||||
|
* 64 bits (e.g. {@code size_t}).
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -88,15 +95,18 @@ abstract class InfoQuery {
|
|||||||
long getPointer(long object, int param_name) {
|
long getPointer(long object, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, param_name, POINTER_SIZE, __buffer.address(), NULL);
|
int errcode = get(object, param_name, POINTER_SIZE, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.pointerValue(0);
|
return __buffer.pointerValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Writes the pointer list for the specified {@code param_name} into {@code target}.
|
* Writes the pointer list for the specified {@code param_name} into
|
||||||
|
* {@code target}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* This method should also be used for integer parameters that may be 32 or 64 bits (e.g. {@code size_t}).
|
* This method should also be used for integer parameters that may be 32 or
|
||||||
|
* 64 bits (e.g. {@code size_t}).
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -107,13 +117,15 @@ abstract class InfoQuery {
|
|||||||
int getPointers(long object, int param_name, PointerBuffer target) {
|
int getPointers(long object, int param_name, PointerBuffer target) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, param_name, target.remaining() * POINTER_SIZE, memAddress(target), __buffer.address());
|
int errcode = get(object, param_name, target.remaining() * POINTER_SIZE, memAddress(target), __buffer.address());
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return (int) (__buffer.pointerValue(0) >> POINTER_SHIFT);
|
return (int) (__buffer.pointerValue(0) >> POINTER_SHIFT);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be ASCII encoded.
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be ASCII encoded.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -127,7 +139,8 @@ abstract class InfoQuery {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be ASCII encoded and have length equal to {@code
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be ASCII encoded and have length equal to {@code
|
||||||
* param_value_size}.
|
* param_value_size}.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
@ -139,13 +152,15 @@ abstract class InfoQuery {
|
|||||||
String getStringASCII(long object, int param_name, int param_value_size) {
|
String getStringASCII(long object, int param_name, int param_value_size) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, param_name, param_value_size, __buffer.address(), NULL);
|
int errcode = get(object, param_name, param_value_size, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.stringValueASCII(0, param_value_size);
|
return __buffer.stringValueASCII(0, param_value_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be UTF-8 encoded.
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be UTF-8 encoded.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param param_name the parameter to query
|
* @param param_name the parameter to query
|
||||||
@ -159,7 +174,8 @@ abstract class InfoQuery {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be UTF-8 encoded and have length equal to {@code
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be UTF-8 encoded and have length equal to {@code
|
||||||
* param_value_size}.
|
* param_value_size}.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
@ -171,24 +187,27 @@ abstract class InfoQuery {
|
|||||||
String getStringUTF8(long object, int param_name, int param_value_size) {
|
String getStringUTF8(long object, int param_name, int param_value_size) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, param_name, param_value_size, __buffer.address(), NULL);
|
int errcode = get(object, param_name, param_value_size, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.stringValueUTF8(0, param_value_size);
|
return __buffer.stringValueUTF8(0, param_value_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getString(long object, int param_name, APIBuffer __buffer) {
|
private int getString(long object, int param_name, APIBuffer __buffer) {
|
||||||
// Get string length
|
// Get string length
|
||||||
int errcode = get(object, param_name, 0, NULL, __buffer.address());
|
int errcode = get(object, param_name, 0, NULL, __buffer.address());
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
int bytes = (int) __buffer.pointerValue(0);
|
int bytes = (int) __buffer.pointerValue(0);
|
||||||
__buffer.bufferParam(bytes);
|
__buffer.bufferParam(bytes);
|
||||||
|
|
||||||
// Get string
|
// Get string
|
||||||
errcode = get(object, param_name, bytes, __buffer.address(), NULL);
|
errcode = get(object, param_name, bytes, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
return bytes - 1; // all OpenCL char[] parameters are null-terminated
|
return bytes - 1; // all OpenCL char[] parameters are null-terminated
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,8 @@ import static org.lwjgl.system.Pointer.*;
|
|||||||
/**
|
/**
|
||||||
* Base class for OpenCL object information queries.
|
* Base class for OpenCL object information queries.
|
||||||
* <p/>
|
* <p/>
|
||||||
* All methods require the object being queried (a pointer value), a second integer argument and the integer parameter name.
|
* All methods require the object being queried (a pointer value), a second
|
||||||
|
* integer argument and the integer parameter name.
|
||||||
*
|
*
|
||||||
* @see Info
|
* @see Info
|
||||||
*/
|
*/
|
||||||
@ -28,7 +29,8 @@ abstract class InfoQueryInt {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the integer value for the specified {@code param_name}, converted to a boolean.
|
* Returns the integer value for the specified {@code param_name}, converted
|
||||||
|
* to a boolean.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -43,7 +45,8 @@ abstract class InfoQueryInt {
|
|||||||
/**
|
/**
|
||||||
* Returns the integer value for the specified {@code param_name}.
|
* Returns the integer value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}), {@link #getPointer} should be used instead.
|
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}),
|
||||||
|
* {@link #getPointer} should be used instead.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -54,15 +57,17 @@ abstract class InfoQueryInt {
|
|||||||
int getInt(long object, int arg, int param_name) {
|
int getInt(long object, int arg, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, 4L, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, 4L, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.intValue(0);
|
return __buffer.intValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the long value for the specified {@code param_name}.
|
* Returns the long value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}), {@link #getPointer} should be used instead.
|
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}),
|
||||||
|
* {@link #getPointer} should be used instead.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -73,15 +78,17 @@ abstract class InfoQueryInt {
|
|||||||
long getLong(long object, int arg, int param_name) {
|
long getLong(long object, int arg, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, 8L, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, 8L, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.longValue(0);
|
return __buffer.longValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the pointer value for the specified {@code param_name}.
|
* Returns the pointer value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* This method should also be used for integer parameters that may be 32 or 64 bits (e.g. {@code size_t}).
|
* This method should also be used for integer parameters that may be 32 or
|
||||||
|
* 64 bits (e.g. {@code size_t}).
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -92,15 +99,18 @@ abstract class InfoQueryInt {
|
|||||||
long getPointer(long object, int arg, int param_name) {
|
long getPointer(long object, int arg, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, POINTER_SIZE, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, POINTER_SIZE, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.pointerValue(0);
|
return __buffer.pointerValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Writes the pointer list for the specified {@code param_name} into {@code target}.
|
* Writes the pointer list for the specified {@code param_name} into
|
||||||
|
* {@code target}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* This method should also be used for integer parameters that may be 32 or 64 bits (e.g. {@code size_t}).
|
* This method should also be used for integer parameters that may be 32 or
|
||||||
|
* 64 bits (e.g. {@code size_t}).
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -112,13 +122,15 @@ abstract class InfoQueryInt {
|
|||||||
int getPointers(long object, int arg, int param_name, PointerBuffer target) {
|
int getPointers(long object, int arg, int param_name, PointerBuffer target) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, target.remaining() * POINTER_SIZE, memAddress(target), __buffer.address());
|
int errcode = get(object, arg, param_name, target.remaining() * POINTER_SIZE, memAddress(target), __buffer.address());
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return (int) (__buffer.pointerValue(0) >> POINTER_SHIFT);
|
return (int) (__buffer.pointerValue(0) >> POINTER_SHIFT);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be ASCII encoded.
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be ASCII encoded.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -133,7 +145,8 @@ abstract class InfoQueryInt {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be ASCII encoded and have length equal to {@code
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be ASCII encoded and have length equal to {@code
|
||||||
* param_value_size}.
|
* param_value_size}.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
@ -146,13 +159,15 @@ abstract class InfoQueryInt {
|
|||||||
String getStringASCII(long object, int arg, int param_name, int param_value_size) {
|
String getStringASCII(long object, int arg, int param_name, int param_value_size) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.stringValueASCII(0, param_value_size);
|
return __buffer.stringValueASCII(0, param_value_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be UTF-8 encoded.
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be UTF-8 encoded.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an integer argument
|
* @param arg an integer argument
|
||||||
@ -167,7 +182,8 @@ abstract class InfoQueryInt {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be UTF-8 encoded and have length equal to {@code
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be UTF-8 encoded and have length equal to {@code
|
||||||
* param_value_size}.
|
* param_value_size}.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
@ -180,24 +196,27 @@ abstract class InfoQueryInt {
|
|||||||
String getStringUTF8(long object, int arg, int param_name, int param_value_size) {
|
String getStringUTF8(long object, int arg, int param_name, int param_value_size) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.stringValueUTF8(0, param_value_size);
|
return __buffer.stringValueUTF8(0, param_value_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getString(long object, int arg, int param_name, APIBuffer __buffer) {
|
private int getString(long object, int arg, int param_name, APIBuffer __buffer) {
|
||||||
// Get string length
|
// Get string length
|
||||||
int errcode = get(object, arg, param_name, 0, NULL, __buffer.address());
|
int errcode = get(object, arg, param_name, 0, NULL, __buffer.address());
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
int bytes = (int) __buffer.pointerValue(0);
|
int bytes = (int) __buffer.pointerValue(0);
|
||||||
__buffer.bufferParam(bytes + POINTER_SIZE);
|
__buffer.bufferParam(bytes + POINTER_SIZE);
|
||||||
|
|
||||||
// Get string
|
// Get string
|
||||||
errcode = get(object, arg, param_name, bytes, __buffer.address(), NULL);
|
errcode = get(object, arg, param_name, bytes, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
return bytes - 1; // all OpenCL char[] parameters are null-terminated
|
return bytes - 1; // all OpenCL char[] parameters are null-terminated
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,8 @@ import static org.lwjgl.system.Pointer.*;
|
|||||||
/**
|
/**
|
||||||
* Base class for OpenCL object information queries.
|
* Base class for OpenCL object information queries.
|
||||||
* <p/>
|
* <p/>
|
||||||
* All methods require the object being queried (a pointer value), a second object argument (another pointer value) and the integer parameter name.
|
* All methods require the object being queried (a pointer value), a second
|
||||||
|
* object argument (another pointer value) and the integer parameter name.
|
||||||
*
|
*
|
||||||
* @see org.lwjgl.opencl.Info
|
* @see org.lwjgl.opencl.Info
|
||||||
*/
|
*/
|
||||||
@ -28,7 +29,8 @@ abstract class InfoQueryObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the integer value for the specified {@code param_name}, converted to a boolean.
|
* Returns the integer value for the specified {@code param_name}, converted
|
||||||
|
* to a boolean.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -43,7 +45,8 @@ abstract class InfoQueryObject {
|
|||||||
/**
|
/**
|
||||||
* Returns the integer value for the specified {@code param_name}.
|
* Returns the integer value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}), {@link #getPointer} should be used instead.
|
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}),
|
||||||
|
* {@link #getPointer} should be used instead.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -54,15 +57,17 @@ abstract class InfoQueryObject {
|
|||||||
int getInt(long object, long arg, int param_name) {
|
int getInt(long object, long arg, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, 4L, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, 4L, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.intValue(0);
|
return __buffer.intValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the long value for the specified {@code param_name}.
|
* Returns the long value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}), {@link #getPointer} should be used instead.
|
* For integer parameters that may be 32 or 64 bits (e.g. {@code size_t}),
|
||||||
|
* {@link #getPointer} should be used instead.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -73,15 +78,17 @@ abstract class InfoQueryObject {
|
|||||||
long getLong(long object, long arg, int param_name) {
|
long getLong(long object, long arg, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, 8L, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, 8L, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.longValue(0);
|
return __buffer.longValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the pointer value for the specified {@code param_name}.
|
* Returns the pointer value for the specified {@code param_name}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* This method should also be used for integer parameters that may be 32 or 64 bits (e.g. {@code size_t}).
|
* This method should also be used for integer parameters that may be 32 or
|
||||||
|
* 64 bits (e.g. {@code size_t}).
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -92,15 +99,18 @@ abstract class InfoQueryObject {
|
|||||||
long getPointer(long object, long arg, int param_name) {
|
long getPointer(long object, long arg, int param_name) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, POINTER_SIZE, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, POINTER_SIZE, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.pointerValue(0);
|
return __buffer.pointerValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Writes the pointer list for the specified {@code param_name} into {@code target}.
|
* Writes the pointer list for the specified {@code param_name} into
|
||||||
|
* {@code target}.
|
||||||
* <p/>
|
* <p/>
|
||||||
* This method should also be used for integer parameters that may be 32 or 64 bits (e.g. {@code size_t}).
|
* This method should also be used for integer parameters that may be 32 or
|
||||||
|
* 64 bits (e.g. {@code size_t}).
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -112,13 +122,15 @@ abstract class InfoQueryObject {
|
|||||||
int getPointers(long object, long arg, int param_name, PointerBuffer target) {
|
int getPointers(long object, long arg, int param_name, PointerBuffer target) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, target.remaining() * POINTER_SIZE, memAddress(target), __buffer.address());
|
int errcode = get(object, arg, param_name, target.remaining() * POINTER_SIZE, memAddress(target), __buffer.address());
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return (int) (__buffer.pointerValue(0) >> POINTER_SHIFT);
|
return (int) (__buffer.pointerValue(0) >> POINTER_SHIFT);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be ASCII encoded.
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be ASCII encoded.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -133,7 +145,8 @@ abstract class InfoQueryObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be ASCII encoded and have length equal to {@code
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be ASCII encoded and have length equal to {@code
|
||||||
* param_value_size}.
|
* param_value_size}.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
@ -146,13 +159,15 @@ abstract class InfoQueryObject {
|
|||||||
String getStringASCII(long object, long arg, int param_name, int param_value_size) {
|
String getStringASCII(long object, long arg, int param_name, int param_value_size) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.stringValueASCII(0, param_value_size);
|
return __buffer.stringValueASCII(0, param_value_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be UTF-8 encoded.
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be UTF-8 encoded.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
* @param arg an object argument
|
* @param arg an object argument
|
||||||
@ -167,7 +182,8 @@ abstract class InfoQueryObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the string value for the specified {@code param_name}. The raw bytes returned are assumed to be UTF-8 encoded and have length equal to {@code
|
* Returns the string value for the specified {@code param_name}. The raw
|
||||||
|
* bytes returned are assumed to be UTF-8 encoded and have length equal to {@code
|
||||||
* param_value_size}.
|
* param_value_size}.
|
||||||
*
|
*
|
||||||
* @param object the object to query
|
* @param object the object to query
|
||||||
@ -180,24 +196,27 @@ abstract class InfoQueryObject {
|
|||||||
String getStringUTF8(long object, long arg, int param_name, int param_value_size) {
|
String getStringUTF8(long object, long arg, int param_name, int param_value_size) {
|
||||||
APIBuffer __buffer = apiBuffer();
|
APIBuffer __buffer = apiBuffer();
|
||||||
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
int errcode = get(object, arg, param_name, param_value_size, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
return __buffer.stringValueUTF8(0, param_value_size);
|
return __buffer.stringValueUTF8(0, param_value_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getString(long object, long arg, int param_name, APIBuffer __buffer) {
|
private int getString(long object, long arg, int param_name, APIBuffer __buffer) {
|
||||||
// Get string length
|
// Get string length
|
||||||
int errcode = get(object, arg, param_name, 0, NULL, __buffer.address());
|
int errcode = get(object, arg, param_name, 0, NULL, __buffer.address());
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
int bytes = (int) __buffer.pointerValue(0);
|
int bytes = (int) __buffer.pointerValue(0);
|
||||||
__buffer.bufferParam(bytes + POINTER_SIZE);
|
__buffer.bufferParam(bytes + POINTER_SIZE);
|
||||||
|
|
||||||
// Get string
|
// Get string
|
||||||
errcode = get(object, arg, param_name, bytes, __buffer.address(), NULL);
|
errcode = get(object, arg, param_name, bytes, __buffer.address(), NULL);
|
||||||
if ( DEBUG )
|
if (DEBUG) {
|
||||||
checkCLError(errcode);
|
checkCLError(errcode);
|
||||||
|
}
|
||||||
|
|
||||||
return bytes - 1; // all OpenCL char[] parameters are null-terminated
|
return bytes - 1; // all OpenCL char[] parameters are null-terminated
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user