/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class org_lwjgl_opencl_CL12 */

#ifndef _Included_org_lwjgl_opencl_CL12
#define _Included_org_lwjgl_opencl_CL12
#ifdef __cplusplus
extern "C" {
#endif
#undef org_lwjgl_opencl_CL12_CL_COMPILE_PROGRAM_FAILURE
#define org_lwjgl_opencl_CL12_CL_COMPILE_PROGRAM_FAILURE -15L
#undef org_lwjgl_opencl_CL12_CL_LINKER_NOT_AVAILABLE
#define org_lwjgl_opencl_CL12_CL_LINKER_NOT_AVAILABLE -16L
#undef org_lwjgl_opencl_CL12_CL_LINK_PROGRAM_FAILURE
#define org_lwjgl_opencl_CL12_CL_LINK_PROGRAM_FAILURE -17L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_FAILED
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_FAILED -18L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_INFO_NOT_AVAILABLE
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_INFO_NOT_AVAILABLE -19L
#undef org_lwjgl_opencl_CL12_CL_INVALID_IMAGE_DESCRIPTOR
#define org_lwjgl_opencl_CL12_CL_INVALID_IMAGE_DESCRIPTOR -65L
#undef org_lwjgl_opencl_CL12_CL_INVALID_COMPILER_OPTIONS
#define org_lwjgl_opencl_CL12_CL_INVALID_COMPILER_OPTIONS -66L
#undef org_lwjgl_opencl_CL12_CL_INVALID_LINKER_OPTIONS
#define org_lwjgl_opencl_CL12_CL_INVALID_LINKER_OPTIONS -67L
#undef org_lwjgl_opencl_CL12_CL_INVALID_DEVICE_PARTITION_COUNT
#define org_lwjgl_opencl_CL12_CL_INVALID_DEVICE_PARTITION_COUNT -68L
#undef org_lwjgl_opencl_CL12_CL_VERSION_1_2
#define org_lwjgl_opencl_CL12_CL_VERSION_1_2 1L
#undef org_lwjgl_opencl_CL12_CL_BLOCKING
#define org_lwjgl_opencl_CL12_CL_BLOCKING 1L
#undef org_lwjgl_opencl_CL12_CL_NON_BLOCKING
#define org_lwjgl_opencl_CL12_CL_NON_BLOCKING 0L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_TYPE_CUSTOM
#define org_lwjgl_opencl_CL12_CL_DEVICE_TYPE_CUSTOM 16L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_DOUBLE_FP_CONFIG
#define org_lwjgl_opencl_CL12_CL_DEVICE_DOUBLE_FP_CONFIG 4146L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_LINKER_AVAILABLE
#define org_lwjgl_opencl_CL12_CL_DEVICE_LINKER_AVAILABLE 4158L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_BUILT_IN_KERNELS
#define org_lwjgl_opencl_CL12_CL_DEVICE_BUILT_IN_KERNELS 4159L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_IMAGE_MAX_BUFFER_SIZE
#define org_lwjgl_opencl_CL12_CL_DEVICE_IMAGE_MAX_BUFFER_SIZE 4160L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_IMAGE_MAX_ARRAY_SIZE
#define org_lwjgl_opencl_CL12_CL_DEVICE_IMAGE_MAX_ARRAY_SIZE 4161L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARENT_DEVICE
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARENT_DEVICE 4162L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_MAX_SUB_DEVICES
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_MAX_SUB_DEVICES 4163L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_PROPERTIES
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_PROPERTIES 4164L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_AFFINITY_DOMAIN
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_AFFINITY_DOMAIN 4165L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_TYPE
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_TYPE 4166L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_REFERENCE_COUNT
#define org_lwjgl_opencl_CL12_CL_DEVICE_REFERENCE_COUNT 4167L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PREFERRED_INTEROP_USER_SYNC
#define org_lwjgl_opencl_CL12_CL_DEVICE_PREFERRED_INTEROP_USER_SYNC 4168L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PRINTF_BUFFER_SIZE
#define org_lwjgl_opencl_CL12_CL_DEVICE_PRINTF_BUFFER_SIZE 4169L
#undef org_lwjgl_opencl_CL12_CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT
#define org_lwjgl_opencl_CL12_CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT 128L
#undef org_lwjgl_opencl_CL12_CL_CONTEXT_INTEROP_USER_SYNC
#define org_lwjgl_opencl_CL12_CL_CONTEXT_INTEROP_USER_SYNC 4229L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_EQUALLY
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_EQUALLY 4230L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_BY_COUNTS
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_BY_COUNTS 4231L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_BY_COUNTS_LIST_END
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_BY_COUNTS_LIST_END 0L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN
#define org_lwjgl_opencl_CL12_CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN 4232L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_NUMA
#define org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_NUMA 1L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE
#define org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE 2L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE
#define org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE 4L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE
#define org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE 8L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE
#define org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE 16L
#undef org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE
#define org_lwjgl_opencl_CL12_CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE 32L
#undef org_lwjgl_opencl_CL12_CL_MEM_HOST_WRITE_ONLY
#define org_lwjgl_opencl_CL12_CL_MEM_HOST_WRITE_ONLY 128L
#undef org_lwjgl_opencl_CL12_CL_MEM_HOST_READ_ONLY
#define org_lwjgl_opencl_CL12_CL_MEM_HOST_READ_ONLY 256L
#undef org_lwjgl_opencl_CL12_CL_MEM_HOST_NO_ACCESS
#define org_lwjgl_opencl_CL12_CL_MEM_HOST_NO_ACCESS 512L
#undef org_lwjgl_opencl_CL12_CL_MIGRATE_MEM_OBJECT_HOST
#define org_lwjgl_opencl_CL12_CL_MIGRATE_MEM_OBJECT_HOST 1L
#undef org_lwjgl_opencl_CL12_CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED
#define org_lwjgl_opencl_CL12_CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED 2L
#undef org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE2D_ARRAY
#define org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE2D_ARRAY 4339L
#undef org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE1D
#define org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE1D 4340L
#undef org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE1D_ARRAY
#define org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE1D_ARRAY 4341L
#undef org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE1D_BUFFER
#define org_lwjgl_opencl_CL12_CL_MEM_OBJECT_IMAGE1D_BUFFER 4342L
#undef org_lwjgl_opencl_CL12_CL_IMAGE_ARRAY_SIZE
#define org_lwjgl_opencl_CL12_CL_IMAGE_ARRAY_SIZE 4375L
#undef org_lwjgl_opencl_CL12_CL_IMAGE_BUFFER
#define org_lwjgl_opencl_CL12_CL_IMAGE_BUFFER 4376L
#undef org_lwjgl_opencl_CL12_CL_IMAGE_NUM_MIP_LEVELS
#define org_lwjgl_opencl_CL12_CL_IMAGE_NUM_MIP_LEVELS 4377L
#undef org_lwjgl_opencl_CL12_CL_IMAGE_NUM_SAMPLES
#define org_lwjgl_opencl_CL12_CL_IMAGE_NUM_SAMPLES 4378L
#undef org_lwjgl_opencl_CL12_CL_MAP_WRITE_INVALIDATE_REGION
#define org_lwjgl_opencl_CL12_CL_MAP_WRITE_INVALIDATE_REGION 4L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_NUM_KERNELS
#define org_lwjgl_opencl_CL12_CL_PROGRAM_NUM_KERNELS 4455L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_KERNEL_NAMES
#define org_lwjgl_opencl_CL12_CL_PROGRAM_KERNEL_NAMES 4456L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE
#define org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE 4484L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_NONE
#define org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_NONE 0L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT
#define org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT 1L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_LIBRARY
#define org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_LIBRARY 2L
#undef org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_EXECUTABLE
#define org_lwjgl_opencl_CL12_CL_PROGRAM_BINARY_TYPE_EXECUTABLE 4L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ATTRIBUTES
#define org_lwjgl_opencl_CL12_CL_KERNEL_ATTRIBUTES 4501L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_QUALIFIER
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_QUALIFIER 4502L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_QUALIFIER
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_QUALIFIER 4503L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_NAME
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_NAME 4504L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_QUALIFIER
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_QUALIFIER 4505L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_NAME
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_NAME 4506L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_GLOBAL
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_GLOBAL 4506L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_LOCAL
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_LOCAL 4507L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_CONSTANT
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_CONSTANT 4508L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_PRIVATE
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ADDRESS_PRIVATE 4509L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_READ_ONLY
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_READ_ONLY 4512L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_WRITE_ONLY
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_WRITE_ONLY 4513L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_READ_WRITE
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_READ_WRITE 4514L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_NONE
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_ACCESS_NONE 4515L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_NONE
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_NONE 0L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_CONST
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_CONST 1L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_RESTRICT
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_RESTRICT 2L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_VOLATILE
#define org_lwjgl_opencl_CL12_CL_KERNEL_ARG_TYPE_VOLATILE 4L
#undef org_lwjgl_opencl_CL12_CL_KERNEL_GLOBAL_WORK_SIZE
#define org_lwjgl_opencl_CL12_CL_KERNEL_GLOBAL_WORK_SIZE 4533L
#undef org_lwjgl_opencl_CL12_CL_COMMAND_BARRIER
#define org_lwjgl_opencl_CL12_CL_COMMAND_BARRIER 4613L
#undef org_lwjgl_opencl_CL12_CL_COMMAND_MIGRATE_MEM_OBJECTS
#define org_lwjgl_opencl_CL12_CL_COMMAND_MIGRATE_MEM_OBJECTS 4614L
#undef org_lwjgl_opencl_CL12_CL_COMMAND_FILL_BUFFER
#define org_lwjgl_opencl_CL12_CL_COMMAND_FILL_BUFFER 4615L
#undef org_lwjgl_opencl_CL12_CL_COMMAND_FILL_IMAGE
#define org_lwjgl_opencl_CL12_CL_COMMAND_FILL_IMAGE 4616L
/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclRetainDevice
 * Signature: (JJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclRetainDevice
  (JNIEnv *, jclass, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclReleaseDevice
 * Signature: (JJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclReleaseDevice
  (JNIEnv *, jclass, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclCreateSubDevices
 * Signature: (JJIJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclCreateSubDevices
  (JNIEnv *, jclass, jlong, jlong, jint, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclCreateImage
 * Signature: (JJJJJJJ)J
 */
JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CL12_nclCreateImage
  (JNIEnv *, jclass, jlong, jlong, jlong, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclCreateProgramWithBuiltInKernels
 * Signature: (JIJJJJ)J
 */
JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CL12_nclCreateProgramWithBuiltInKernels
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclCompileProgram
 * Signature: (JIJJIJJJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclCompileProgram
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jint, jlong, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclCompileProgramMulti
 * Signature: (JIJJIJJJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclCompileProgramMulti
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jint, jlong, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclCompileProgram3
 * Signature: (JIJJIJ[Ljava/nio/ByteBuffer;JJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclCompileProgram3
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jint, jlong, jobjectArray, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclLinkProgram
 * Signature: (JIJJIJJJJJ)J
 */
JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CL12_nclLinkProgram
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jint, jlong, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclUnloadPlatformCompiler
 * Signature: (JJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclUnloadPlatformCompiler
  (JNIEnv *, jclass, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclGetKernelArgInfo
 * Signature: (JIIJJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclGetKernelArgInfo
  (JNIEnv *, jclass, jlong, jint, jint, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclEnqueueFillBuffer
 * Signature: (JJJJJJIJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclEnqueueFillBuffer
  (JNIEnv *, jclass, jlong, jlong, jlong, jlong, jlong, jlong, jint, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclEnqueueFillImage
 * Signature: (JJJJJIJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclEnqueueFillImage
  (JNIEnv *, jclass, jlong, jlong, jlong, jlong, jlong, jint, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclEnqueueMigrateMemObjects
 * Signature: (JIJJIJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclEnqueueMigrateMemObjects
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jint, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclEnqueueMarkerWithWaitList
 * Signature: (JIJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclEnqueueMarkerWithWaitList
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclEnqueueBarrierWithWaitList
 * Signature: (JIJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclEnqueueBarrierWithWaitList
  (JNIEnv *, jclass, jlong, jint, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclSetPrintfCallback
 * Signature: (JJJJ)I
 */
JNIEXPORT jint JNICALL Java_org_lwjgl_opencl_CL12_nclSetPrintfCallback
  (JNIEnv *, jclass, jlong, jlong, jlong, jlong);

/*
 * Class:     org_lwjgl_opencl_CL12
 * Method:    nclGetExtensionFunctionAddressForPlatform
 * Signature: (JJJ)J
 */
JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CL12_nclGetExtensionFunctionAddressForPlatform
  (JNIEnv *, jclass, jlong, jlong, jlong);

#ifdef __cplusplus
}
#endif
#endif
