blob: 1b6c32b9f112210df0a242dbcff3e5271dcb4401 [file] [log] [blame]
#ifdef __APPLE__
#include <TargetConditionals.h>
#if TARGET_OS_IPHONE
#include "iosgl30.h"
#include <OpenGLES/ES3/gl.h>
#include <OpenGLES/ES3/glext.h>
#include <stdio.h>
static jclass bufferClass;
static jclass byteBufferClass;
static jclass charBufferClass;
static jclass shortBufferClass;
static jclass intBufferClass;
static jclass longBufferClass;
static jclass floatBufferClass;
static jclass doubleBufferClass;
static jclass OOMEClass;
static jclass UOEClass;
static jclass IAEClass;
static jmethodID positionID;
static void
nativeClassInitBuffer(JNIEnv *_env)
{
jclass bufferClassLocal = _env->FindClass("java/nio/Buffer");
bufferClass = (jclass) _env->NewGlobalRef(bufferClassLocal);
byteBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/ByteBuffer"));
charBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/CharBuffer"));
shortBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/ShortBuffer"));
intBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/IntBuffer"));
longBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/LongBuffer"));
floatBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/FloatBuffer"));
doubleBufferClass = (jclass) _env->NewGlobalRef(_env->FindClass("java/nio/DoubleBuffer"));
positionID = _env->GetMethodID(bufferClass, "position","()I");
if(positionID == 0) _env->ThrowNew(IAEClass, "Couldn't fetch position() method");
}
static void
nativeClassInit(JNIEnv *_env)
{
nativeClassInitBuffer(_env);
jclass IAEClassLocal =
_env->FindClass("java/lang/IllegalArgumentException");
jclass OOMEClassLocal =
_env->FindClass("java/lang/OutOfMemoryError");
jclass UOEClassLocal =
_env->FindClass("java/lang/UnsupportedOperationException");
IAEClass = (jclass) _env->NewGlobalRef(IAEClassLocal);
OOMEClass = (jclass) _env->NewGlobalRef(OOMEClassLocal);
UOEClass = (jclass) _env->NewGlobalRef(UOEClassLocal);
}
static jint getElementSizeShift(JNIEnv *_env, jobject buffer) {
if(_env->IsInstanceOf(buffer, byteBufferClass)) return 0;
if(_env->IsInstanceOf(buffer, floatBufferClass)) return 2;
if(_env->IsInstanceOf(buffer, shortBufferClass)) return 1;
if(_env->IsInstanceOf(buffer, charBufferClass)) return 1;
if(_env->IsInstanceOf(buffer, intBufferClass)) return 2;
if(_env->IsInstanceOf(buffer, longBufferClass)) return 3;
if(_env->IsInstanceOf(buffer, doubleBufferClass)) return 3;
_env->ThrowNew(IAEClass, "buffer type unkown! (Not a ByteBuffer, ShortBuffer, etc.)");
return 0;
}
inline jint getBufferPosition(JNIEnv *env, jobject buffer)
{
jint ret = env->CallIntMethodA(buffer, positionID, 0);
return ret;
}
static void *
getDirectBufferPointer(JNIEnv *_env, jobject buffer) {
if (!buffer) {
return NULL;
}
void* buf = _env->GetDirectBufferAddress(buffer);
if (buf) {
jint position = getBufferPosition(_env, buffer);
jint elementSizeShift = getElementSizeShift(_env, buffer);
buf = ((char*) buf) + (position << elementSizeShift);
} else {
_env->ThrowNew(IAEClass, "Must use a native order direct Buffer");
}
return buf;
}
static const char* getString( JNIEnv *env, jstring string )
{
return (const char*)env->GetStringUTFChars(string, NULL);
}
static void releaseString( JNIEnv *env, jstring string, const char* cString )
{
env->ReleaseStringUTFChars(string, cString);
}
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_init
(JNIEnv *env, jclass)
{
nativeClassInit( env );
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glReadBuffer
* Signature: (I)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glReadBuffer
(JNIEnv *env, jobject, jint mode) {
glReadBuffer(mode);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDrawRangeElements
* Signature: (IIIIILjava/nio/Buffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDrawRangeElements__IIIIILjava_nio_Buffer_2
(JNIEnv *env, jobject, jint mode, jint start, jint end, jint count, jint type, jobject indices) {
void* dataPtr = getDirectBufferPointer( env, indices );
glDrawRangeElements(mode, start, end, count, type, dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDrawRangeElements
* Signature: (IIIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDrawRangeElements__IIIIII
(JNIEnv *env, jobject, jint mode, jint start, jint end, jint count, jint type, jint offset) {
glDrawRangeElements(mode, start, end, count, type, (void*)offset);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glTexImage3D
* Signature: (IIIIIIIIILjava/nio/Buffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glTexImage3D__IIIIIIIIILjava_nio_Buffer_2
(JNIEnv *env, jobject, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint format, jint type, jobject pixels) {
void* dataPtr = getDirectBufferPointer( env, pixels );
glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glTexImage3D
* Signature: (IIIIIIIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glTexImage3D__IIIIIIIIII
(JNIEnv *env, jobject, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint format, jint type, jint offset) {
glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, (void*)offset);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glTexSubImage3D
* Signature: (IIIIIIIIIILjava/nio/Buffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glTexSubImage3D__IIIIIIIIIILjava_nio_Buffer_2
(JNIEnv *env, jobject, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint type, jobject pixels) {
void* dataPtr = getDirectBufferPointer( env, pixels );
glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glTexSubImage3D
* Signature: (IIIIIIIIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glTexSubImage3D__IIIIIIIIIII
(JNIEnv *env, jobject, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint type, jint offset) {
glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, (void*)offset);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glCopyTexSubImage3D
* Signature: (IIIIIIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glCopyTexSubImage3D
(JNIEnv *env, jobject, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint x, jint y, jint width, jint height) {
glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenQueries
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenQueries__I_3II
(JNIEnv *env, jobject, jint n, jintArray ids, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(ids, 0);
glGenQueries(n, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(ids, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenQueries
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenQueries__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint n, jobject ids) {
void* dataPtr = getDirectBufferPointer( env, ids );
glGenQueries(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteQueries
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteQueries__I_3II
(JNIEnv *env, jobject, jint n, jintArray ids, jint offset) {
void* dataPtr = getDirectBufferPointer( env, ids );
glDeleteQueries(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteQueries
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteQueries__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint n, jobject ids) {
void* dataPtr = getDirectBufferPointer( env, ids );
glDeleteQueries(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glIsQuery
* Signature: (I)Z
*/
JNIEXPORT jboolean JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glIsQuery
(JNIEnv *env, jobject, jint id) {
return glIsQuery(id);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBeginQuery
* Signature: (II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBeginQuery
(JNIEnv *env, jobject, jint target, jint id) {
glBeginQuery(target, id);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glEndQuery
* Signature: (I)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glEndQuery
(JNIEnv *env, jobject, jint target) {
glEndQuery(target);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetQueryiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetQueryiv
(JNIEnv *env, jobject, jint target, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetQueryiv(target, pname, (GLint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetQueryObjectuiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetQueryObjectuiv
(JNIEnv *env, jobject, jint target, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetQueryObjectuiv(target, pname, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUnmapBuffer
* Signature: (I)Z
*/
JNIEXPORT jboolean JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUnmapBuffer
(JNIEnv *env, jobject, jint target) {
return glUnmapBuffer(target);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetBufferPointerv
* Signature: (II)Ljava/nio/Buffer;
*/
JNIEXPORT jobject JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetBufferPointerv
(JNIEnv *env, jobject, jint target, jint pname) {
//FIXME glGetBufferPointerv (GLenum target, GLenum pname, void **params);
env->ThrowNew(IAEClass, "Unsupported method");
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDrawBuffers
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDrawBuffers
(JNIEnv *env, jobject, jint n, jobject bufs) {
void* dataPtr = getDirectBufferPointer( env, bufs );
glDrawBuffers(n, (GLenum*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformMatrix2x3fv
* Signature: (IIZLjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformMatrix2x3fv
(JNIEnv *env, jobject, jint location, jint count, jboolean transpose, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniformMatrix2x3fv(location, count, transpose, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformMatrix3x2fv
* Signature: (IIZLjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformMatrix3x2fv
(JNIEnv *env, jobject, jint location, jint count, jboolean transpose, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniformMatrix3x2fv(location, count, transpose, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformMatrix2x4fv
* Signature: (IIZLjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformMatrix2x4fv
(JNIEnv *env, jobject, jint location, jint count, jboolean transpose, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniformMatrix2x4fv(location, count, transpose, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformMatrix4x2fv
* Signature: (IIZLjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformMatrix4x2fv
(JNIEnv *env, jobject, jint location, jint count, jboolean transpose, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniformMatrix4x2fv(location, count, transpose, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformMatrix3x4fv
* Signature: (IIZLjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformMatrix3x4fv
(JNIEnv *env, jobject, jint location, jint count, jboolean transpose, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniformMatrix3x4fv(location, count, transpose, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformMatrix4x3fv
* Signature: (IIZLjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformMatrix4x3fv
(JNIEnv *env, jobject, jint location, jint count, jboolean transpose, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniformMatrix4x3fv(location, count, transpose, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBlitFramebuffer
* Signature: (IIIIIIIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBlitFramebuffer
(JNIEnv *env, jobject, jint srcX0, jint srcY0, jint srcX1, jint srcY1, jint dstX0, jint dstY0, jint dstX1, jint dstY1, jint mask, jint filter) {
glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glRenderbufferStorageMultisample
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glRenderbufferStorageMultisample
(JNIEnv *env, jobject, jint target, jint samples, jint internalformat, jint width, jint height) {
glRenderbufferStorageMultisample(target, samples, internalformat, width, height);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glFramebufferTextureLayer
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glFramebufferTextureLayer
(JNIEnv *env, jobject, jint target, jint attachment, jint texture, jint level, jint layer) {
glFramebufferTextureLayer(target, attachment, texture, level, layer);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glFlushMappedBufferRange
* Signature: (III)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glFlushMappedBufferRange
(JNIEnv *env, jobject, jint target, jint offset, jint length) {
glFlushMappedBufferRange(target, offset, length);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBindVertexArray
* Signature: (I)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBindVertexArray
(JNIEnv *env, jobject, jint array) {
glBindVertexArray(array);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteVertexArrays
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteVertexArrays__I_3II
(JNIEnv *env, jobject, jint n, jintArray arrays, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(arrays, 0);
glDeleteVertexArrays(n, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(arrays, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteVertexArrays
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteVertexArrays__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint n, jobject arrays) {
void* dataPtr = getDirectBufferPointer( env, arrays );
glDeleteVertexArrays(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenVertexArrays
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenVertexArrays__I_3II
(JNIEnv *env, jobject, jint n, jintArray arrays, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(arrays, 0);
glGenVertexArrays(n, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(arrays, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenVertexArrays
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenVertexArrays__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint n, jobject arrays) {
void* dataPtr = getDirectBufferPointer( env, arrays );
glGenVertexArrays(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glIsVertexArray
* Signature: (I)Z
*/
JNIEXPORT jboolean JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glIsVertexArray
(JNIEnv *env, jobject, jint array) {
return glIsVertexArray(array);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBeginTransformFeedback
* Signature: (I)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBeginTransformFeedback
(JNIEnv *env, jobject, jint primitiveMode) {
glBeginTransformFeedback(primitiveMode);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glEndTransformFeedback
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glEndTransformFeedback
(JNIEnv *env, jobject) {
glEndTransformFeedback();
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBindBufferRange
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBindBufferRange
(JNIEnv *env, jobject, jint target, jint index, jint buffer, jint offset, jint size) {
glBindBufferRange(target, index, buffer, offset, size);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBindBufferBase
* Signature: (III)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBindBufferBase
(JNIEnv *env, jobject, jint target, jint index, jint buffer) {
glBindBufferBase(target, index, buffer);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glTransformFeedbackVaryings
* Signature: (I[Ljava/lang/String;I)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glTransformFeedbackVaryings
(JNIEnv *env, jobject, jint program, jobjectArray varyings, jint buffermode) {
//FIXME: convert String[] to char**
env->ThrowNew(IAEClass, "Unsupported method");
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glVertexAttribIPointer
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glVertexAttribIPointer
(JNIEnv *env, jobject, jint index, jint size, jint type, jint stride, jint offset) {
glVertexAttribIPointer(index, size, type, stride, (void*)offset);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetVertexAttribIiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetVertexAttribIiv
(JNIEnv *env, jobject, jint index, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetVertexAttribIiv(index, pname, (GLint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetVertexAttribIuiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetVertexAttribIuiv
(JNIEnv *env, jobject, jint index, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetVertexAttribIuiv(index, pname, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glVertexAttribI4i
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glVertexAttribI4i
(JNIEnv *env, jobject, jint index, jint x, jint y, jint z, jint w) {
glVertexAttribI4i(index, x, y, z, w);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glVertexAttribI4ui
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glVertexAttribI4ui
(JNIEnv *env, jobject, jint index, jint x, jint y, jint z, jint w) {
glVertexAttribI4ui(index, x, y, z, w);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetUniformuiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetUniformuiv
(JNIEnv *env, jobject, jint program, jint location, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetUniformuiv(program, location, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetFragDataLocation
* Signature: (ILjava/lang/String;)I
*/
JNIEXPORT jint JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetFragDataLocation
(JNIEnv *env, jobject, jint program, jstring name) {
const char* cname = getString( env, name );
int loc = glGetFragDataLocation(program, cname);
releaseString( env, name, cname );
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniform1uiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniform1uiv
(JNIEnv *env, jobject, jint location, jint count, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniform1uiv(location, count, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniform3uiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniform3uiv
(JNIEnv *env, jobject, jint location, jint count, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniform3uiv(location, count, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniform4uiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniform4uiv
(JNIEnv *env, jobject, jint location, jint count, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glUniform4uiv(location, count, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glClearBufferiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glClearBufferiv
(JNIEnv *env, jobject, jint buffer, jint drawbuffer, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glClearBufferiv(buffer, drawbuffer, (GLint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glClearBufferuiv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glClearBufferuiv
(JNIEnv *env, jobject, jint buffer, jint drawbuffer, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glClearBufferuiv(buffer, drawbuffer, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glClearBufferfv
* Signature: (IILjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glClearBufferfv
(JNIEnv *env, jobject, jint buffer, jint drawbuffer, jobject value) {
void* dataPtr = getDirectBufferPointer( env, value );
glClearBufferfv(buffer, drawbuffer, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glClearBufferfi
* Signature: (IIFI)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glClearBufferfi
(JNIEnv *env, jobject, jint buffer, jint drawbuffer, jfloat depth, jint stencil) {
glClearBufferfi(buffer, drawbuffer, depth, stencil);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetStringi
* Signature: (II)Ljava/lang/String;
*/
JNIEXPORT jstring JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetStringi
(JNIEnv *env, jobject, jint name, jint index) {
return env->NewStringUTF((const char *)glGetStringi(name, index));
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glCopyBufferSubData
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glCopyBufferSubData
(JNIEnv *env, jobject, jint readTarget, jint writeTarget, jint readOffset, jint writeOffset, jint size) {
glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetUniformIndices
* Signature: (I[Ljava/lang/String;Ljava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetUniformIndices
(JNIEnv *env, jobject, jint, jobjectArray, jobject) {
//FIXME: glGetUniformIndices (GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
env->ThrowNew(IAEClass, "Unsupported method");
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetActiveUniformsiv
* Signature: (IILjava/nio/IntBuffer;ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetActiveUniformsiv
(JNIEnv *env, jobject, jint program, jint uniformCount, jobject indices, jint pname, jobject params) {
void* indicesPtr = getDirectBufferPointer( env, indices );
void* paramsPtr = getDirectBufferPointer( env, params );
glGetActiveUniformsiv(program, uniformCount, (GLuint*)indicesPtr, pname, (GLint*)paramsPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetUniformBlockIndex
* Signature: (ILjava/lang/String;)I
*/
JNIEXPORT jint JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetUniformBlockIndex
(JNIEnv *env, jobject, jint program, jstring uniformBlockName) {
const char* cname = getString( env, uniformBlockName );
int loc = glGetUniformBlockIndex(program, cname);
releaseString( env, uniformBlockName, cname );
return loc;
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetActiveUniformBlockiv
* Signature: (IIILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetActiveUniformBlockiv
(JNIEnv *env, jobject, jint program, jint uniformBlockIndex, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetActiveUniformBlockiv(program, uniformBlockIndex, pname, (GLint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetActiveUniformBlockName
* Signature: (IILjava/nio/Buffer;Ljava/nio/Buffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetActiveUniformBlockName__IILjava_nio_Buffer_2Ljava_nio_Buffer_2
(JNIEnv *env, jobject, jint, jint, jobject, jobject) {
//FIXME: glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
env->ThrowNew(IAEClass, "Unsupported method");
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetActiveUniformBlockName
* Signature: (II)Ljava/lang/String;
*/
JNIEXPORT jstring JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetActiveUniformBlockName__II
(JNIEnv *env, jobject, jint, jint) {
//FIXME: glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
env->ThrowNew(IAEClass, "Unsupported method");
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glUniformBlockBinding
* Signature: (III)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glUniformBlockBinding
(JNIEnv *env, jobject, jint program, jint uniformBlockIndex, jint uniformBlockBinding) {
glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDrawArraysInstanced
* Signature: (IIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDrawArraysInstanced
(JNIEnv *env, jobject, jint mode, jint first, jint count, jint instancecount) {
glDrawArraysInstanced(mode, first, count, instancecount);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDrawElementsInstanced
* Signature: (IIIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDrawElementsInstanced
(JNIEnv *env, jobject, jint mode, jint count, jint type, jint indicesOffset, jint instancecount) {
glDrawElementsInstanced(mode, count, type, (GLvoid*)indicesOffset, instancecount);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetInteger64v
* Signature: (ILjava/nio/LongBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetInteger64v
(JNIEnv *env, jobject, jint pname, jobject data) {
void* dataPtr = getDirectBufferPointer( env, data );
glGetInteger64v(pname, (GLint64*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetBufferParameteri64v
* Signature: (IILjava/nio/LongBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetBufferParameteri64v
(JNIEnv *env, jobject, jint target, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetBufferParameteri64v(target, pname, (GLint64*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenSamplers
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenSamplers__I_3II
(JNIEnv *env, jobject, jint count, jintArray samplers, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(samplers, 0);
glGenSamplers(count, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(samplers, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenSamplers
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenSamplers__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint count, jobject samplers) {
void* dataPtr = getDirectBufferPointer( env, samplers );
glGenSamplers(count, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteSamplers
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteSamplers__I_3II
(JNIEnv *env, jobject, jint count, jintArray samplers, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(samplers, 0);
glDeleteSamplers(count, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(samplers, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteSamplers
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteSamplers__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint count, jobject samplers) {
void* dataPtr = getDirectBufferPointer( env, samplers );
glDeleteSamplers(count, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glIsSampler
* Signature: (I)Z
*/
JNIEXPORT jboolean JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glIsSampler
(JNIEnv *env, jobject, jint sampler) {
return glIsSampler(sampler);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBindSampler
* Signature: (II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBindSampler
(JNIEnv *env, jobject, jint unit, jint sampler) {
glBindSampler(unit, sampler);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glSamplerParameteri
* Signature: (III)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glSamplerParameteri
(JNIEnv *env, jobject, jint sampler, jint pname, jint param) {
glSamplerParameteri(sampler, pname, param);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glSamplerParameteriv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glSamplerParameteriv
(JNIEnv *env, jobject, jint sampler, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glSamplerParameteriv(sampler, pname, (GLint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glSamplerParameterf
* Signature: (IIF)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glSamplerParameterf
(JNIEnv *env, jobject, jint sampler, jint pname, jfloat param) {
glSamplerParameterf(sampler, pname, param);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glSamplerParameterfv
* Signature: (IILjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glSamplerParameterfv
(JNIEnv *env, jobject, jint sampler, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glSamplerParameterfv(sampler, pname, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetSamplerParameteriv
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetSamplerParameteriv
(JNIEnv *env, jobject, jint sampler, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetSamplerParameteriv(sampler, pname, (GLint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGetSamplerParameterfv
* Signature: (IILjava/nio/FloatBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGetSamplerParameterfv
(JNIEnv *env, jobject, jint sampler, jint pname, jobject params) {
void* dataPtr = getDirectBufferPointer( env, params );
glGetSamplerParameterfv(sampler, pname, (GLfloat*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glVertexAttribDivisor
* Signature: (II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glVertexAttribDivisor
(JNIEnv *env, jobject, jint index, jint divisor) {
glVertexAttribDivisor(index, divisor);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glBindTransformFeedback
* Signature: (II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glBindTransformFeedback
(JNIEnv *env, jobject, jint target, jint id) {
glBindTransformFeedback(target, id);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteTransformFeedbacks
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteTransformFeedbacks__I_3II
(JNIEnv *env, jobject, jint n, jintArray ids, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(ids, 0);
glDeleteTransformFeedbacks(n, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(ids, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glDeleteTransformFeedbacks
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glDeleteTransformFeedbacks__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint n, jobject ids) {
void* dataPtr = getDirectBufferPointer( env, ids );
glDeleteTransformFeedbacks(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenTransformFeedbacks
* Signature: (I[II)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenTransformFeedbacks__I_3II
(JNIEnv *env, jobject, jint n, jintArray ids, jint offset) {
int* v = (int*)env->GetPrimitiveArrayCritical(ids, 0);
glGenTransformFeedbacks(n, (GLuint*)&v[offset]);
env->ReleasePrimitiveArrayCritical(ids, v, 0);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glGenTransformFeedbacks
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glGenTransformFeedbacks__ILjava_nio_IntBuffer_2
(JNIEnv *env, jobject, jint n, jobject ids) {
void* dataPtr = getDirectBufferPointer( env, ids );
glGenTransformFeedbacks(n, (GLuint*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glIsTransformFeedback
* Signature: (I)Z
*/
JNIEXPORT jboolean JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glIsTransformFeedback
(JNIEnv *env, jobject, jint id) {
return glIsTransformFeedback(id);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glPauseTransformFeedback
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glPauseTransformFeedback
(JNIEnv *env, jobject) {
glPauseTransformFeedback();
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glResumeTransformFeedback
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glResumeTransformFeedback
(JNIEnv *env, jobject) {
glResumeTransformFeedback();
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glProgramParameteri
* Signature: (III)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glProgramParameteri
(JNIEnv *env, jobject, jint program, jint pname, jint value) {
glProgramParameteri(program, pname, value);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glInvalidateFramebuffer
* Signature: (IILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glInvalidateFramebuffer
(JNIEnv *env, jobject, jint target, jint numAttachments, jobject attachments) {
void* dataPtr = getDirectBufferPointer( env, attachments );
glInvalidateFramebuffer(target, numAttachments, (GLenum*)dataPtr);
}
/*
* Class: com_badlogic_gdx_backends_iosrobovm_IOSGLES30
* Method: glInvalidateSubFramebuffer
* Signature: (IILjava/nio/IntBuffer;IIII)V
*/
JNIEXPORT void JNICALL Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES30_glInvalidateSubFramebuffer
(JNIEnv *env, jobject, jint target, jint numAttachments, jobject attachments, jint x, jint y, jint width, jint height) {
void* dataPtr = getDirectBufferPointer( env, attachments );
glInvalidateSubFramebuffer(target, numAttachments, (GLenum*)dataPtr, x, y, width, height);
}
#endif
#endif