Extensions split out into separate classes

This commit is contained in:
Ioannis Tsakpinis 2004-01-30 20:39:36 +00:00
parent 8c4940b0d3
commit 8419f4a8c1
18 changed files with 2986 additions and 0 deletions

View File

@ -0,0 +1,176 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.arb.ARBOcclusionQuery
// ----------------------------------
#include "org_lwjgl_opengl_arb_ARBOcclusionQuery.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef void (APIENTRY * glGenQueriesARBPROC) (GLsizei n, GLuint *ids);
typedef void (APIENTRY * glDeleteQueriesARBPROC) (GLsizei n, const GLuint *ids);
typedef GLboolean (APIENTRY * glIsQueryARBPROC) (GLuint id);
typedef void (APIENTRY * glBeginQueryARBPROC) (GLenum target, GLuint id);
typedef void (APIENTRY * glEndQueryARBPROC) (GLenum target);
typedef void (APIENTRY * glGetQueryivARBPROC) (GLenum target, GLenum pname, GLint *params);
typedef void (APIENTRY * glGetQueryObjectivARBPROC) (GLuint id, GLenum pname, GLint *params);
typedef void (APIENTRY * glGetQueryObjectuivARBPROC) (GLuint id, GLenum pname, GLuint *params);
static glGenQueriesARBPROC glGenQueriesARB;
static glDeleteQueriesARBPROC glDeleteQueriesARB;
static glIsQueryARBPROC glIsQueryARB;
static glBeginQueryARBPROC glBeginQueryARB;
static glEndQueryARBPROC glEndQueryARB;
static glGetQueryivARBPROC glGetQueryivARB;
static glGetQueryObjectivARBPROC glGetQueryObjectivARB;
static glGetQueryObjectuivARBPROC glGetQueryObjectuivARB;
void extgl_InitARBOcclusionQuery(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_ARB_occlusion_query)
return;
glGenQueriesARB = (glGenQueriesARBPROC) extgl_GetProcAddress("glGenQueriesARB");
glDeleteQueriesARB = (glDeleteQueriesARBPROC) extgl_GetProcAddress("glDeleteQueriesARB");
glIsQueryARB = (glIsQueryARBPROC) extgl_GetProcAddress("glIsQueryARB");
glBeginQueryARB = (glBeginQueryARBPROC) extgl_GetProcAddress("glBeginQueryARB");
glEndQueryARB = (glEndQueryARBPROC) extgl_GetProcAddress("glEndQueryARB");
glGetQueryivARB = (glGetQueryivARBPROC) extgl_GetProcAddress("glGetQueryivARB");
glGetQueryObjectivARB = (glGetQueryObjectivARBPROC) extgl_GetProcAddress("glGetQueryObjectivARB");
glGetQueryObjectuivARB = (glGetQueryObjectuivARBPROC) extgl_GetProcAddress("glGetQueryObjectuivARB");
EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_occlusion_query)
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGenQueriesARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGenQueriesARB
(JNIEnv * env, jclass clazz, jint n, jobject ids, jint idsOffset)
{
CHECK_EXISTS(glGenQueriesARB)
GLuint *ids_ptr = (GLuint *)env->GetDirectBufferAddress(ids) + idsOffset;
glGenQueriesARB(n, ids_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglDeleteQueriesARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglDeleteQueriesARB
(JNIEnv * env, jclass clazz, jint n, jobject ids, jint idsOffset)
{
CHECK_EXISTS(glDeleteQueriesARB)
GLuint *ids_ptr = (GLuint *)env->GetDirectBufferAddress(ids) + idsOffset;
glDeleteQueriesARB(n, ids_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: glIsQueryARB
*/
JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_glIsQueryARB
(JNIEnv * env, jclass clazz, jint id)
{
CHECK_EXISTS(glIsQueryARB)
GLboolean result = glIsQueryARB(id);
CHECK_GL_ERROR
return result;
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: glBeginQueryARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_glBeginQueryARB
(JNIEnv * env, jclass clazz, jint target, jint id)
{
CHECK_EXISTS(glBeginQueryARB)
glBeginQueryARB(target, id);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: glEndQueryARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_glEndQueryARB
(JNIEnv * env, jclass clazz, jint target)
{
CHECK_EXISTS(glEndQueryARB)
glEndQueryARB(target);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGetQueryivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGetQueryivARB
(JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetQueryivARB)
GLint *params_ptr = (GLint *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetQueryivARB(target, pname, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGetQueryObjectivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGetQueryObjectiv
(JNIEnv * env, jclass clazz, jint id, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetQueryObjectivARB)
GLint *params_ptr = (GLint *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetQueryObjectivARB(id, pname, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGetQueryObjectuivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGetQueryObjectuivARB
(JNIEnv * env, jclass clazz, jint id, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetQueryObjectuivARB)
GLuint *params_ptr = (GLuint *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetQueryObjectuivARB(id, pname, params_ptr);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,106 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.arb.ARBOcclusionQuery
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_arb_ARBOcclusionQuery
#define _Included_org_lwjgl_opengl_arb_ARBOcclusionQuery
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGenQueriesARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGenQueriesARB
(JNIEnv *, jclass, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglDeleteQueriesARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglDeleteQueriesARB
(JNIEnv *, jclass, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: glIsQueryARB
*/
JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_glIsQueryARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: glBeginQueryARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_glBeginQueryARB
(JNIEnv *, jclass, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: glEndQueryARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_glEndQueryARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGetQueryivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGetQueryivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGetQueryObjectivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGetQueryObjectivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBOcclusionQuery
* Method: nglGetQueryObjectuivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBOcclusionQuery_nglGetQueryObjectuivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,734 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.arb.ARBShaderObjects
// ----------------------------------
#include "org_lwjgl_opengl_arb_ARBShaderObjects.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef unsigned char GLcharARB;
typedef unsigned int GLhandleARB;
typedef void (APIENTRY * glDeleteObjectARBPROC) (GLhandleARB obj);
typedef GLhandleARB (APIENTRY * glGetHandleARBPROC) (GLenum pname);
typedef void (APIENTRY * glDetachObjectARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj);
typedef GLhandleARB (APIENTRY * glCreateShaderObjectARBPROC) (GLenum shaderType);
typedef void (APIENTRY * glShaderSourceARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB **string, const GLint *length);
typedef void (APIENTRY * glCompileShaderARBPROC) (GLhandleARB shaderObj);
typedef GLhandleARB (APIENTRY * glCreateProgramObjectARBPROC) (GLvoid);
typedef void (APIENTRY * glAttachObjectARBPROC) (GLhandleARB containerObj, GLhandleARB obj);
typedef void (APIENTRY * glLinkProgramARBPROC) (GLhandleARB programObj);
typedef void (APIENTRY * glUseProgramObjectARBPROC) (GLhandleARB programObj);
typedef void (APIENTRY * glValidateProgramARBPROC) (GLhandleARB programObj);
typedef void (APIENTRY * glUniform1fARBPROC) (GLint location, GLfloat v0);
typedef void (APIENTRY * glUniform2fARBPROC) (GLint location, GLfloat v0, GLfloat v1);
typedef void (APIENTRY * glUniform3fARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
typedef void (APIENTRY * glUniform4fARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
typedef void (APIENTRY * glUniform1iARBPROC) (GLint location, GLint v0);
typedef void (APIENTRY * glUniform2iARBPROC) (GLint location, GLint v0, GLint v1);
typedef void (APIENTRY * glUniform3iARBPROC) (GLint location, GLint v0, GLint v1, GLint v2);
typedef void (APIENTRY * glUniform4iARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
typedef void (APIENTRY * glUniform1fvARBPROC) (GLint location, GLsizei count, GLfloat *value);
typedef void (APIENTRY * glUniform2fvARBPROC) (GLint location, GLsizei count, GLfloat *value);
typedef void (APIENTRY * glUniform3fvARBPROC) (GLint location, GLsizei count, GLfloat *value);
typedef void (APIENTRY * glUniform4fvARBPROC) (GLint location, GLsizei count, GLfloat *value);
typedef void (APIENTRY * glUniform1ivARBPROC) (GLint location, GLsizei count, GLint *value);
typedef void (APIENTRY * glUniform2ivARBPROC) (GLint location, GLsizei count, GLint *value);
typedef void (APIENTRY * glUniform3ivARBPROC) (GLint location, GLsizei count, GLint *value);
typedef void (APIENTRY * glUniform4ivARBPROC) (GLint location, GLsizei count, GLint *value);
typedef void (APIENTRY * glUniformMatrix2fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value);
typedef void (APIENTRY * glUniformMatrix3fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value);
typedef void (APIENTRY * glUniformMatrix4fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value);
typedef void (APIENTRY * glGetObjectParameterfvARBPROC) (GLhandleARB obj, GLenum pname, GLfloat *params);
typedef void (APIENTRY * glGetObjectParameterivARBPROC) (GLhandleARB obj, GLenum pname, GLint *params);
typedef void (APIENTRY * glGetInfoLogARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
typedef void (APIENTRY * glGetAttachedObjectsARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj);
typedef GLint (APIENTRY * glGetUniformLocationARBPROC) (GLhandleARB programObj, const GLcharARB *name);
typedef void (APIENTRY * glGetActiveUniformARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
typedef void (APIENTRY * glGetUniformfvARBPROC) (GLhandleARB programObj, GLint location, GLfloat *params);
typedef void (APIENTRY * glGetUniformivARBPROC) (GLhandleARB programObj, GLint location, GLint *params);
typedef void (APIENTRY * glGetShaderSourceARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source);
static glDeleteObjectARBPROC glDeleteObjectARB;
static glGetHandleARBPROC glGetHandleARB;
static glDetachObjectARBPROC glDetachObjectARB;
static glCreateShaderObjectARBPROC glCreateShaderObjectARB;
static glShaderSourceARBPROC glShaderSourceARB;
static glCompileShaderARBPROC glCompileShaderARB;
static glCreateProgramObjectARBPROC glCreateProgramObjectARB;
static glAttachObjectARBPROC glAttachObjectARB;
static glLinkProgramARBPROC glLinkProgramARB;
static glUseProgramObjectARBPROC glUseProgramObjectARB;
static glValidateProgramARBPROC glValidateProgramARB;
static glUniform1fARBPROC glUniform1fARB;
static glUniform2fARBPROC glUniform2fARB;
static glUniform3fARBPROC glUniform3fARB;
static glUniform4fARBPROC glUniform4fARB;
static glUniform1iARBPROC glUniform1iARB;
static glUniform2iARBPROC glUniform2iARB;
static glUniform3iARBPROC glUniform3iARB;
static glUniform4iARBPROC glUniform4iARB;
static glUniform1fvARBPROC glUniform1fvARB;
static glUniform2fvARBPROC glUniform2fvARB;
static glUniform3fvARBPROC glUniform3fvARB;
static glUniform4fvARBPROC glUniform4fvARB;
static glUniform1ivARBPROC glUniform1ivARB;
static glUniform2ivARBPROC glUniform2ivARB;
static glUniform3ivARBPROC glUniform3ivARB;
static glUniform4ivARBPROC glUniform4ivARB;
static glUniformMatrix2fvARBPROC glUniformMatrix2fvARB;
static glUniformMatrix3fvARBPROC glUniformMatrix3fvARB;
static glUniformMatrix4fvARBPROC glUniformMatrix4fvARB;
static glGetObjectParameterfvARBPROC glGetObjectParameterfvARB;
static glGetObjectParameterivARBPROC glGetObjectParameterivARB;
static glGetInfoLogARBPROC glGetInfoLogARB;
static glGetAttachedObjectsARBPROC glGetAttachedObjectsARB;
static glGetUniformLocationARBPROC glGetUniformLocationARB;
static glGetActiveUniformARBPROC glGetActiveUniformARB;
static glGetUniformfvARBPROC glGetUniformfvARB;
static glGetUniformivARBPROC glGetUniformivARB;
static glGetShaderSourceARBPROC glGetShaderSourceARB;
void extgl_InitARBShaderObjects(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_ARB_shader_objects)
return;
glDeleteObjectARB = (glDeleteObjectARBPROC) extgl_GetProcAddress("glDeleteObjectARB");;
glGetHandleARB = (glGetHandleARBPROC) extgl_GetProcAddress("glGetHandleARB");
glDetachObjectARB = (glDetachObjectARBPROC) extgl_GetProcAddress("glDetachObjectARB");
glCreateShaderObjectARB = (glCreateShaderObjectARBPROC) extgl_GetProcAddress("glCreateShaderObjectARB");
glShaderSourceARB = (glShaderSourceARBPROC) extgl_GetProcAddress("glShaderSourceARB");
glCompileShaderARB = (glCompileShaderARBPROC) extgl_GetProcAddress("glCompileShaderARB");
glCreateProgramObjectARB = (glCreateProgramObjectARBPROC) extgl_GetProcAddress("glCreateProgramObjectARB");
glAttachObjectARB = (glAttachObjectARBPROC) extgl_GetProcAddress("glAttachObjectARB");
glLinkProgramARB = (glLinkProgramARBPROC) extgl_GetProcAddress("glLinkProgramARB");
glUseProgramObjectARB = (glUseProgramObjectARBPROC) extgl_GetProcAddress("glUseProgramObjectARB");
glValidateProgramARB = (glValidateProgramARBPROC) extgl_GetProcAddress("glValidateProgramARB");
glUniform1fARB = (glUniform1fARBPROC) extgl_GetProcAddress("glUniform1fARB");
glUniform2fARB = (glUniform2fARBPROC) extgl_GetProcAddress("glUniform2fARB");
glUniform3fARB = (glUniform3fARBPROC) extgl_GetProcAddress("glUniform3fARB");
glUniform4fARB = (glUniform4fARBPROC) extgl_GetProcAddress("glUniform4fARB");
glUniform1iARB = (glUniform1iARBPROC) extgl_GetProcAddress("glUniform1iARB");
glUniform2iARB = (glUniform2iARBPROC) extgl_GetProcAddress("glUniform2iARB");
glUniform3iARB = (glUniform3iARBPROC) extgl_GetProcAddress("glUniform3iARB");
glUniform4iARB = (glUniform4iARBPROC) extgl_GetProcAddress("glUniform4iARB");
glUniform1fvARB = (glUniform1fvARBPROC) extgl_GetProcAddress("glUniform1fvARB");
glUniform2fvARB = (glUniform2fvARBPROC) extgl_GetProcAddress("glUniform2fvARB");
glUniform3fvARB = (glUniform3fvARBPROC) extgl_GetProcAddress("glUniform3fvARB");
glUniform4fvARB = (glUniform4fvARBPROC) extgl_GetProcAddress("glUniform4fvARB");
glUniform1ivARB = (glUniform1ivARBPROC ) extgl_GetProcAddress("glUniform1ivARB");
glUniform2ivARB = (glUniform2ivARBPROC) extgl_GetProcAddress("glUniform2ivARB");
glUniform3ivARB = (glUniform3ivARBPROC) extgl_GetProcAddress("glUniform3ivARB");
glUniform4ivARB = (glUniform4ivARBPROC) extgl_GetProcAddress("glUniform4ivARB");
glUniformMatrix2fvARB = (glUniformMatrix2fvARBPROC) extgl_GetProcAddress("glUniformMatrix2fvARB");
glUniformMatrix3fvARB = (glUniformMatrix3fvARBPROC) extgl_GetProcAddress("glUniformMatrix3fvARB");
glUniformMatrix4fvARB = (glUniformMatrix4fvARBPROC) extgl_GetProcAddress("glUniformMatrix4fvARB");
glGetObjectParameterfvARB = (glGetObjectParameterfvARBPROC) extgl_GetProcAddress("glGetObjectParameterfvARB");
glGetObjectParameterivARB = (glGetObjectParameterivARBPROC) extgl_GetProcAddress("glGetObjectParameterivARB");
glGetInfoLogARB = (glGetInfoLogARBPROC) extgl_GetProcAddress("glGetInfoLogARB");
glGetAttachedObjectsARB = (glGetAttachedObjectsARBPROC) extgl_GetProcAddress("glGetAttachedObjectsARB");
glGetUniformLocationARB = (glGetUniformLocationARBPROC) extgl_GetProcAddress("glGetUniformLocationARB");
glGetActiveUniformARB = (glGetActiveUniformARBPROC) extgl_GetProcAddress("glGetActiveUniformARB");
glGetUniformfvARB = (glGetUniformfvARBPROC) extgl_GetProcAddress("glGetUniformfvARB");
glGetUniformivARB = (glGetUniformivARBPROC) extgl_GetProcAddress("glGetUniformivARB");
glGetShaderSourceARB = (glGetShaderSourceARBPROC) extgl_GetProcAddress("glGetShaderSourceARB");
EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_shader_objects)
}
int sourceCount;
int sourcesSize = 8;
GLcharARB** sources = new GLcharARB*[sourcesSize];
GLint* sourcesLengths = new GLint[sourcesSize];
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glDeleteObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glDeleteObjectARB
(JNIEnv * env, jclass clazz, jint obj)
{
CHECK_EXISTS(glDeleteObjectARB)
glDeleteObjectARB(obj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glGetHandleARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glGetHandleARB
(JNIEnv * env, jclass clazz, jint pname)
{
CHECK_EXISTS(glGetHandleARB)
GLhandleARB result = glGetHandleARB(pname);
CHECK_GL_ERROR
return result;
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glDetachObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glDetachObjectARB
(JNIEnv * env, jclass clazz, jint containerObj, jint attachedObj)
{
CHECK_EXISTS(glDetachObjectARB)
glDetachObjectARB(containerObj, attachedObj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glCreateShaderObjectARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glCreateShaderObjectARB
(JNIEnv * env, jclass clazz, jint shaderType)
{
CHECK_EXISTS(glCreateShaderObjectARB)
GLhandleARB result = glCreateShaderObjectARB(shaderType);
CHECK_GL_ERROR
return result;
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: initShaderSource
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_initShaderSource
(JNIEnv * env, jclass clazz, jint count)
{
sourceCount = count;
if ( sourceCount > sourcesSize ) {
sourcesSize = sourceCount * 2;
delete sources;
delete sourcesLengths;
sources = new GLcharARB*[sourcesSize];
sourcesLengths = new GLint[sourcesSize];
}
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: setShaderString
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_setShaderString
(JNIEnv * env, jclass clazz, jint index, jobject string, jint stringOffset, jint stringLength)
{
GLcharARB *string_ptr = (GLcharARB *)((GLubyte *)env->GetDirectBufferAddress(string) + stringOffset);
sources[index] = string_ptr;
sourcesLengths[index] = stringLength;
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglShaderSourceARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglShaderSourceARB
(JNIEnv * env, jclass clazz, jint shaderObj)
{
CHECK_EXISTS(glShaderSourceARB)
glShaderSourceARB(shaderObj, sourceCount, (const GLcharARB **)sources, (const GLint *)sourcesLengths);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glCompileShaderARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glCompileShaderARB
(JNIEnv * env, jclass clazz, jint shaderObj)
{
CHECK_EXISTS(glCompileShaderARB)
glCompileShaderARB(shaderObj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glCreateProgramObjectARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glCreateProgramObjectARB
(JNIEnv * env, jclass clazz)
{
CHECK_EXISTS(glCreateProgramObjectARB)
GLuint result = glCreateProgramObjectARB();
CHECK_GL_ERROR
return result;
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glAttachObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glAttachObjectARB
(JNIEnv * env, jclass clazz, jint containerObj, jint obj)
{
CHECK_EXISTS(glAttachObjectARB)
glAttachObjectARB(containerObj, obj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glLinkProgramARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glLinkProgramARB
(JNIEnv * env, jclass clazz, jint programObj)
{
CHECK_EXISTS(glLinkProgramARB)
glLinkProgramARB(programObj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUseProgramObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUseProgramObjectARB
(JNIEnv * env, jclass clazz, jint programObj)
{
CHECK_EXISTS(glUseProgramObjectARB)
glUseProgramObjectARB(programObj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glValidateProgramARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glValidateProgramARB
(JNIEnv * env, jclass clazz, jint programObj)
{
CHECK_EXISTS(glValidateProgramARB)
glValidateProgramARB(programObj);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform1fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform1fARB
(JNIEnv * env, jclass clazz, jint location, jfloat v0)
{
CHECK_EXISTS(glUniform1fARB)
glUniform1fARB(location, v0);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform2fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform2fARB
(JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1)
{
CHECK_EXISTS(glUniform2fARB)
glUniform2fARB(location, v0, v1);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform3fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform3fARB
(JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2)
{
CHECK_EXISTS(glUniform3fARB)
glUniform3fARB(location, v0, v1, v2);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform4fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform4fARB
(JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2, jfloat v3)
{
CHECK_EXISTS(glUniform4fARB)
glUniform4fARB(location, v0, v1, v2, v3);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform1iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform1iARB
(JNIEnv * env, jclass clazz, jint location, jint v0)
{
CHECK_EXISTS(glUniform1iARB)
glUniform1iARB(location, v0);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform2iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform2iARB
(JNIEnv * env, jclass clazz, jint location, jint v0, jint v1)
{
CHECK_EXISTS(glUniform2iARB)
glUniform2iARB(location, v0, v1);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform3iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform3iARB
(JNIEnv * env, jclass clazz, jint location, jint v0, jint v1, jint v2)
{
CHECK_EXISTS(glUniform3iARB)
glUniform3iARB(location, v0, v1, v2);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform4iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform4iARB
(JNIEnv * env, jclass clazz, jint location, jint v0, jint v1, jint v2, jint v3)
{
CHECK_EXISTS(glUniform4iARB)
glUniform4iARB(location, v0, v1, v2, v3);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform1fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform1fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform1fvARB)
GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform1fvARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform2fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform2fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform2fvARB)
GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform2fvARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform3fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform3fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform3fvARB)
GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform3fvARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform4fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform4fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform4fvARB)
GLfloat *values_ptr = (GLfloat *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform4fvARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform1ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform1ivARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform1ivARB)
GLint *values_ptr = (GLint *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform1ivARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform2ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform2ivARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform2ivARB)
GLint *values_ptr = (GLint *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform2ivARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform3ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform3ivARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform3ivARB)
GLint *values_ptr = (GLint *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform3ivARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform4ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform4ivARB
(JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset)
{
CHECK_EXISTS(glUniform4ivARB)
GLint *values_ptr = (GLint *)env->GetDirectBufferAddress(values) + valuesOffset;
glUniform4ivARB(location, count, values_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniformMatrix2fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniformMatrix2fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset)
{
CHECK_EXISTS(glUniformMatrix2fvARB)
GLfloat *matrices_ptr = (GLfloat *)env->GetDirectBufferAddress(matrices) + matricesOffset;
glUniformMatrix2fvARB(location, count, transpose, matrices_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniformMatrix3fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniformMatrix3fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset)
{
CHECK_EXISTS(glUniformMatrix3fvARB)
GLfloat *matrices_ptr = (GLfloat *)env->GetDirectBufferAddress(matrices) + matricesOffset;
glUniformMatrix3fvARB(location, count, transpose, matrices_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniformMatrix4fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniformMatrix4fvARB
(JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset)
{
CHECK_EXISTS(glUniformMatrix4fvARB)
GLfloat *matrices_ptr = (GLfloat *)env->GetDirectBufferAddress(matrices) + matricesOffset;
glUniformMatrix4fvARB(location, count, transpose, matrices_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetObjectParameterfvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetObjectParameterfvARB
(JNIEnv * env, jclass clazz, jint obj, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetObjectParameterfvARB)
GLfloat *params_ptr = (GLfloat *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetObjectParameterfvARB(obj, pname, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetObjectParameterivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetObjectParameterivARB
(JNIEnv * env, jclass clazz, jint obj, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetObjectParameterivARB)
GLint *params_ptr = (GLint *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetObjectParameterivARB(obj, pname, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetInfoLogARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetInfoLogARB
(JNIEnv * env, jclass clazz, jint obj, jint maxLength, jobject length, jint lengthOffset, jobject infoLog, jint infoLogOffset)
{
CHECK_EXISTS(glGetInfoLogARB)
GLubyte *infoLog_ptr = (GLubyte *)env->GetDirectBufferAddress(infoLog) + infoLogOffset;
if ( length == NULL ) {
glGetInfoLogARB(obj, maxLength, NULL, infoLog_ptr);
} else {
GLsizei *length_ptr = (GLsizei *)env->GetDirectBufferAddress(length) + lengthOffset;
glGetInfoLogARB(obj, maxLength, length_ptr, infoLog_ptr);
}
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetAttachedObjectsARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetAttachedObjectsARB
(JNIEnv * env, jclass clazz, jint containerObj, jint maxCount, jobject count, jint countOffset, jobject obj, jint objOffset)
{
CHECK_EXISTS(glGetAttachedObjectsARB)
GLuint *obj_ptr = (GLuint *)env->GetDirectBufferAddress(obj) + objOffset;
if ( count == NULL ) {
glGetAttachedObjectsARB(containerObj, maxCount, NULL, obj_ptr);
} else {
GLsizei *count_ptr = (GLsizei *)env->GetDirectBufferAddress(count) + countOffset;
glGetAttachedObjectsARB(containerObj, maxCount, count_ptr, obj_ptr);
}
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetUniformLocationARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetUniformLocationARB
(JNIEnv * env, jclass clazz, jint programObj, jobject name, jint nameOffset)
{
CHECK_EXISTS(glGetUniformLocationARB)
GLubyte *name_ptr = (GLubyte *)env->GetDirectBufferAddress(name) + nameOffset;
GLuint result = glGetUniformLocationARB(programObj, name_ptr);
CHECK_GL_ERROR
return result;
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetActiveUniformARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetActiveUniformARB
(JNIEnv * env, jclass clazz, jint programObj, jint index, jint maxLength, jobject length, jint lengthOffset, jobject size, jint sizeOffset, jobject type, jint typeOffset, jobject name, jint nameOffset)
{
CHECK_EXISTS(glGetActiveUniformARB)
GLint *size_ptr = (GLint *)env->GetDirectBufferAddress(size) + sizeOffset;
GLenum *type_ptr = (GLenum *)env->GetDirectBufferAddress(type) + typeOffset;
GLcharARB *name_ptr = (GLcharARB *)env->GetDirectBufferAddress(name) + nameOffset;
if ( length == NULL ) {
glGetActiveUniformARB(programObj, index, maxLength, (GLsizei *)NULL, size_ptr, type_ptr, name_ptr);
} else {
GLsizei *length_ptr = (GLsizei *)env->GetDirectBufferAddress(length) + lengthOffset;
glGetActiveUniformARB(programObj, index, maxLength, length_ptr, size_ptr, type_ptr, name_ptr);
}
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetUniformfvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetUniformfvARB
(JNIEnv * env, jclass clazz, jint programObj, jint location, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetUniformfvARB)
GLfloat *params_ptr = (GLfloat *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetUniformfvARB(programObj, location, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetUniformivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetUniformivARB
(JNIEnv * env, jclass clazz, jint programObj, jint location, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetUniformivARB)
GLint *params_ptr = (GLint *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetUniformivARB(programObj, location, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetShaderSourceARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetShaderSourceARB
(JNIEnv * env, jclass clazz, jint obj, jint maxLength, jobject length, jint lengthOffset, jobject source, jint sourceOffset)
{
CHECK_EXISTS(glGetShaderSourceARB)
GLubyte *source_ptr = (GLubyte *)env->GetDirectBufferAddress(source) + sourceOffset;
if ( length == NULL ) {
glGetShaderSourceARB(obj, maxLength, NULL, source_ptr);
} else {
GLint *length_ptr = (GLint *)env->GetDirectBufferAddress(length) + lengthOffset;
glGetShaderSourceARB(obj, maxLength, length_ptr, source_ptr);
}
CHECK_GL_ERROR
}

View File

@ -0,0 +1,337 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.arb.ARBShaderObjects
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_arb_ARBShaderObjects
#define _Included_org_lwjgl_opengl_arb_ARBShaderObjects
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glDeleteObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glDeleteObjectARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glGetHandleARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glGetHandleARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glDetachObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glDetachObjectARB
(JNIEnv *, jclass, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glCreateShaderObjectARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glCreateShaderObjectARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: initShaderSource
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_initShaderSource
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: setShaderString
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_setShaderString
(JNIEnv *, jclass, jint, jobject, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglShaderSourceARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglShaderSourceARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glCompileShaderARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glCompileShaderARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glCreateProgramObjectARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glCreateProgramObjectARB
(JNIEnv *, jclass);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glAttachObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glAttachObjectARB
(JNIEnv *, jclass, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glLinkProgramARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glLinkProgramARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUseProgramObjectARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUseProgramObjectARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glValidateProgramARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glValidateProgramARB
(JNIEnv *, jclass, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform1fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform1fARB
(JNIEnv *, jclass, jint, jfloat);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform2fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform2fARB
(JNIEnv *, jclass, jint, jfloat, jfloat);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform3fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform3fARB
(JNIEnv *, jclass, jint, jfloat, jfloat, jfloat);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform4fARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform4fARB
(JNIEnv *, jclass, jint, jfloat, jfloat, jfloat, jfloat);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform1iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform1iARB
(JNIEnv *, jclass, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform2iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform2iARB
(JNIEnv *, jclass, jint, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform3iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform3iARB
(JNIEnv *, jclass, jint, jint, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: glUniform4iARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_glUniform4iARB
(JNIEnv *, jclass, jint, jint, jint, jint, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform1fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform1fvARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform2fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform2fvARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform3fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform3fvARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform4fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform4fvARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform1ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform1ivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform2ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform2ivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform3ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform3ivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniform4ivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniform4ivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniformMatrix2fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniformMatrix2fvARB
(JNIEnv *, jclass, jint, jint, jboolean, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniformMatrix3fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniformMatrix3fvARB
(JNIEnv *, jclass, jint, jint, jboolean, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglUniformMatrix4fvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglUniformMatrix4fvARB
(JNIEnv *, jclass, jint, jint, jboolean, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetObjectParameterfvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetObjectParameterfvARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetObjectParameterivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetObjectParameterivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetInfoLogARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetInfoLogARB
(JNIEnv *, jclass, jint, jint, jobject, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetAttachedObjectsARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetAttachedObjectsARB
(JNIEnv *, jclass, jint, jint, jobject, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetUniformLocationARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetUniformLocationARB
(JNIEnv *, jclass, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetActiveUniformARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetActiveUniformARB
(JNIEnv *, jclass, jint, jint, jint, jobject, jint, jobject, jint, jobject, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetUniformfvARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetUniformfvARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetUniformivARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetUniformivARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBShaderObjects
* Method: nglGetShaderSourceARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBShaderObjects_nglGetShaderSourceARB
(JNIEnv *, jclass, jint, jint, jobject, jint, jobject, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,112 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.arb.ARBVertexShader
// ----------------------------------
#include "org_lwjgl_opengl_arb_ARBVertexShader.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef unsigned char GLcharARB;
typedef unsigned int GLhandleARB;
typedef void (APIENTRY * glBindAttribLocationARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB *name);
typedef void (APIENTRY * glGetActiveAttribARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
typedef GLint (APIENTRY * glGetAttribLocationARBPROC) (GLhandleARB programObj, const GLcharARB *name);
static glBindAttribLocationARBPROC glBindAttribLocationARB;
static glGetActiveAttribARBPROC glGetActiveAttribARB;
static glGetAttribLocationARBPROC glGetAttribLocationARB;
void extgl_InitARBVertexShader(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_ARB_vertex_shader)
return;
glBindAttribLocationARB = (glBindAttribLocationARBPROC) extgl_GetProcAddress("glBindAttribLocationARB");
glGetActiveAttribARB = (glGetActiveAttribARBPROC) extgl_GetProcAddress("glGetActiveAttribARB");
glGetAttribLocationARB = (glGetAttribLocationARBPROC) extgl_GetProcAddress("glGetAttribLocationARB");
EXTGL_SANITY_CHECK(env, ext_set, GL_ARB_vertex_shader)
}
/*
* Class: org.lwjgl.opengl.arb.ARBVertexShader
* Method: nglBindAttribLocationARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexShader_nglBindAttribLocationARB
(JNIEnv * env, jclass clazz, jint programObj, jint index, jobject name, jint nameOffset)
{
CHECK_EXISTS(glBindAttribLocationARB)
GLubyte *name_ptr = (GLubyte *)env->GetDirectBufferAddress(name) + nameOffset;
glBindAttribLocationARB(programObj, index, name_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBVertexShader
* Method: nglGetActiveAttribARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexShader_nglGetActiveAttribARB
(JNIEnv * env, jclass clazz, jint programObj, jint index, jint maxLength, jobject length, jint lengthOffset, jobject size, jint sizeOffset, jobject type, jint typeOffset, jobject name, jint nameOffset)
{
CHECK_EXISTS(glGetActiveAttribARB)
GLint *size_ptr = (GLint *)env->GetDirectBufferAddress(size) + sizeOffset;
GLenum *type_ptr = (GLenum *)env->GetDirectBufferAddress(type) + typeOffset;
GLcharARB *name_ptr = (GLcharARB *)env->GetDirectBufferAddress(name) + nameOffset;
if ( length == NULL ) {
glGetActiveAttribARB(programObj, index, maxLength, NULL, size_ptr, type_ptr, name_ptr);
} else {
GLsizei *length_ptr = (GLsizei *)env->GetDirectBufferAddress(length) + lengthOffset;
glGetActiveAttribARB(programObj, index, maxLength, length_ptr, size_ptr, type_ptr, name_ptr);
}
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.arb.ARBVertexShader
* Method: nglGetAttribLocationARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBVertexShader_nglGetAttribLocationARB
(JNIEnv * env, jclass clazz, jint programObj, jobject name, jint nameOffset)
{
CHECK_EXISTS(glGetAttribLocationARB)
GLubyte *name_ptr = (GLubyte *)env->GetDirectBufferAddress(name) + nameOffset;
GLuint result = glGetAttribLocationARB(programObj, name_ptr);
CHECK_GL_ERROR
return result;
}

View File

@ -0,0 +1,71 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.arb.ARBVertexShader
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_arb_ARBVertexShader
#define _Included_org_lwjgl_opengl_arb_ARBVertexShader
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.arb.ARBVertexShader
* Method: nglBindAttribLocationARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexShader_nglBindAttribLocationARB
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBVertexShader
* Method: nglGetActiveAttribARB
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_arb_ARBVertexShader_nglGetActiveAttribARB
(JNIEnv *, jclass, jint, jint, jint, jobject, jint, jobject, jint, jobject, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.arb.ARBVertexShader
* Method: nglGetAttribLocationARB
*/
JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_arb_ARBVertexShader_nglGetAttribLocationARB
(JNIEnv *, jclass, jint, jobject, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,66 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ati.ATIDrawBuffers
// ----------------------------------
#include "org_lwjgl_opengl_ati_ATIDrawBuffers.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef void (APIENTRY * glDrawBuffersATIPROC) (GLsizei n, const GLenum *bufs);
static glDrawBuffersATIPROC glDrawBuffersATI;
void extgl_InitATIMapObjectBuffer(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_ATI_draw_buffers)
return;
glDrawBuffersATI = (glDrawBuffersATIPROC) extgl_GetProcAddress("glDrawBuffersATI");
EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_draw_buffers)
}
/*
* Class: org.lwjgl.opengl.ati.ATIDrawBuffers
* Method: nglDrawBuffersATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIDrawBuffers_nglDrawBuffersATI
(JNIEnv * env, jclass clazz, jint size, jobject buffers, jint buffersOffset)
{
CHECK_EXISTS(glDrawBuffersATI)
GLuint *buffers_ptr = (GLuint *)env->GetDirectBufferAddress(buffers) + buffersOffset;
glDrawBuffersATI(size, buffers_ptr);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,57 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.ati.ATIDrawBuffers
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_ati_ATIDrawBuffers
#define _Included_org_lwjgl_opengl_ati_ATIDrawBuffers
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.ati.ATIDrawBuffers
* Method: nglDrawBuffersATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIDrawBuffers_nglDrawBuffersATI
(JNIEnv *, jclass, jint, jobject, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,87 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ati.ATIMapObjectBuffer
// ----------------------------------
#include "org_lwjgl_opengl_ati_ATIMapObjectBuffer.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef void * (APIENTRY * glMapObjectBufferATIPROC) (GLuint buffer);
typedef void (APIENTRY * glUnmapObjectBufferATIPROC) (GLuint buffer);
static glMapObjectBufferATIPROC glMapObjectBufferATI;
static glUnmapObjectBufferATIPROC glUnmapObjectBufferATI;
void extgl_InitATIMapObjectBuffer(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_ATI_map_object_buffer)
return;
glMapObjectBufferATI = (glMapObjectBufferATIPROC) extgl_GetProcAddress("glMapObjectBufferATI");
glUnmapObjectBufferATI = (glUnmapObjectBufferATIPROC) extgl_GetProcAddress("glUnmapObjectBufferATI");
EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_map_object_buffer)
}
/*
* Class: org.lwjgl.opengl.ati.ATIMapObjectBuffer
* Method: glMapObjectBufferATI
*/
JNIEXPORT jobject JNICALL Java_org_lwjgl_opengl_ati_ATIMapObjectBuffer_glMapObjectBufferATI
(JNIEnv * env, jclass clazz, jint buffer, jint size, jobject oldBuffer)
{
CHECK_EXISTS(glMapObjectBufferATI)
void *buffer_address = glMapObjectBufferATI((GLenum)buffer);
CHECK_GL_ERROR
if (oldBuffer != NULL) {
void *old_buffer_address = env->GetDirectBufferAddress(oldBuffer);
if (old_buffer_address == buffer_address)
return oldBuffer;
}
return safeNewBuffer(env, buffer_address, size);
}
/*
* Class: org.lwjgl.opengl.ati.ATIMapObjectBuffer
* Method: glUnmapObjectBufferATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIMapObjectBuffer_glUnmapObjectBufferATI
(JNIEnv * env, jclass clazz, jint buffer)
{
CHECK_EXISTS(glUnmapObjectBufferATI)
glUnmapObjectBufferATI(buffer);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,64 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.ati.ATIMapObjectBuffer
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_ati_ATIMapObjectBuffer
#define _Included_org_lwjgl_opengl_ati_ATIMapObjectBuffer
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.ati.ATIMapObjectBuffer
* Method: glMapObjectBufferATI
*/
JNIEXPORT jobject JNICALL Java_org_lwjgl_opengl_ati_ATIMapObjectBuffer_glMapObjectBufferATI
(JNIEnv *, jclass, jint, jint, jobject);
/*
* Class: org.lwjgl.opengl.ati.ATIMapObjectBuffer
* Method: glUnmapObjectBufferATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIMapObjectBuffer_glUnmapObjectBufferATI
(JNIEnv *, jclass, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,97 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
// ----------------------------------
#include "org_lwjgl_opengl_ati_ATIVertexAttribArrayObject.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef void (APIENTRY * glVertexAttribArrayObjectATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
typedef void (APIENTRY * glGetVertexAttribArrayObjectfvATIPROC) (GLuint index, GLenum pname, GLfloat *params);
typedef void (APIENTRY * glGetVertexAttribArrayObjectivATIPROC) (GLuint index, GLenum pname, GLint *params);
static glVertexAttribArrayObjectATIPROC glVertexAttribArrayObjectATI;
static glGetVertexAttribArrayObjectfvATIPROC glGetVertexAttribArrayObjectfvATI;
static glGetVertexAttribArrayObjectivATIPROC glGetVertexAttribArrayObjectivATI;
void extgl_InitATIVertexAttribArrayObject(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_ATI_vertex_attrib_array_object)
return;
glVertexAttribArrayObjectATI = (glVertexAttribArrayObjectATIPROC) extgl_GetProcAddress("glVertexAttribArrayObjectATI");
glGetVertexAttribArrayObjectfvATI = (glGetVertexAttribArrayObjectfvATIPROC) extgl_GetProcAddress("glGetVertexAttribArrayObjectfvATI");
glGetVertexAttribArrayObjectivATI = (glGetVertexAttribArrayObjectivATIPROC) extgl_GetProcAddress("glGetVertexAttribArrayObjectivATI");
EXTGL_SANITY_CHECK(env, ext_set, GL_ATI_vertex_attrib_array_object)
}
/*
* Class: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
* Method: glVertexAttribArrayObjectATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject_glVertexAttribArrayObjectATI
(JNIEnv * env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint buffer, jint offset)
{
CHECK_EXISTS(glVertexAttribArrayObjectATI)
glVertexAttribArrayObjectATI(index, size, type, normalized, stride, buffer, offset);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
* Method: nglGetVertexAttribArrayObjectfvATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectfvATI
(JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetVertexAttribArrayObjectfvATI)
GLfloat *params_ptr = (GLfloat *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetVertexAttribArrayObjectfvATI(index, pname, params_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
* Method: nglGetVertexAttribArrayObjectivATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectivATI
(JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset)
{
CHECK_EXISTS(glGetVertexAttribArrayObjectivATI)
GLint *params_ptr = (GLint *)env->GetDirectBufferAddress(params) + paramsOffset;
glGetVertexAttribArrayObjectivATI(index, pname, params_ptr);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,71 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject
#define _Included_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
* Method: glVertexAttribArrayObjectATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject_glVertexAttribArrayObjectATI
(JNIEnv *, jclass, jint, jint, jint, jboolean, jint, jint, jint);
/*
* Class: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
* Method: nglGetVertexAttribArrayObjectfvATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectfvATI
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.ati.ATIVertexAttribArrayObject
* Method: nglGetVertexAttribArrayObjectivATI
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ati_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectivATI
(JNIEnv *, jclass, jint, jint, jobject, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,494 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.nv.NVHalfFloat
// ----------------------------------
#include "org_lwjgl_opengl_nv_NVHalfFloat.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef unsigned short GLhalf;
typedef void (APIENTRY * glVertex2hNVPROC) (GLhalf x, GLhalf y);
typedef void (APIENTRY * glVertex2hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glVertex3hNVPROC) (GLhalf x, GLhalf y, GLhalf z);
typedef void (APIENTRY * glVertex3hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glVertex4hNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w);
typedef void (APIENTRY * glVertex4hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glNormal3hNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz);
typedef void (APIENTRY * glNormal3hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glColor3hNVPROC) (GLhalf red, GLhalf green, GLhalf blue);
typedef void (APIENTRY * glColor3hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glColor4hNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha);
typedef void (APIENTRY * glColor4hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glTexCoord1hNVPROC) (GLhalf s);
typedef void (APIENTRY * glTexCoord1hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glTexCoord2hNVPROC) (GLhalf s, GLhalf t);
typedef void (APIENTRY * glTexCoord2hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glTexCoord3hNVPROC) (GLhalf s, GLhalf t, GLhalf r);
typedef void (APIENTRY * glTexCoord3hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glTexCoord4hNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q);
typedef void (APIENTRY * glTexCoord4hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glMultiTexCoord1hNVPROC) (GLenum target, GLhalf s);
typedef void (APIENTRY * glMultiTexCoord1hvNVPROC) (GLenum target, const GLhalf *v);
typedef void (APIENTRY * glMultiTexCoord2hNVPROC) (GLenum target, GLhalf s, GLhalf t);
typedef void (APIENTRY * glMultiTexCoord2hvNVPROC) (GLenum target, const GLhalf *v);
typedef void (APIENTRY * glMultiTexCoord3hNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r);
typedef void (APIENTRY * glMultiTexCoord3hvNVPROC) (GLenum target, const GLhalf *v);
typedef void (APIENTRY * glMultiTexCoord4hNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q);
typedef void (APIENTRY * glMultiTexCoord4hvNVPROC) (GLenum target, const GLhalf *v);
typedef void (APIENTRY * glFogCoordhNVPROC) (GLhalf fog);
typedef void (APIENTRY * glFogCoordhvNVPROC) (const GLhalf *fog);
typedef void (APIENTRY * glSecondaryColor3hNVPROC) (GLhalf red, GLhalf green, GLhalf blue);
typedef void (APIENTRY * glSecondaryColor3hvNVPROC) (const GLhalf *v);
typedef void (APIENTRY * glVertexWeighthNVPROC) (GLhalf weight);
typedef void (APIENTRY * glVertexWeighthvNVPROC) (const GLhalf *weight);
typedef void (APIENTRY * glVertexAttrib1hNVPROC) (GLuint index, GLhalf x);
typedef void (APIENTRY * glVertexAttrib1hvNVPROC) (GLuint index, const GLhalf *v);
typedef void (APIENTRY * glVertexAttrib2hNVPROC) (GLuint index, GLhalf x, GLhalf y);
typedef void (APIENTRY * glVertexAttrib2hvNVPROC) (GLuint index, const GLhalf *v);
typedef void (APIENTRY * glVertexAttrib3hNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z);
typedef void (APIENTRY * glVertexAttrib3hvNVPROC) (GLuint index, const GLhalf *v);
typedef void (APIENTRY * glVertexAttrib4hNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w);
typedef void (APIENTRY * glVertexAttrib4hvNVPROC) (GLuint index, const GLhalf *v);
typedef void (APIENTRY * glVertexAttribs1hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v);
typedef void (APIENTRY * glVertexAttribs2hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v);
typedef void (APIENTRY * glVertexAttribs3hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v);
typedef void (APIENTRY * glVertexAttribs4hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v);
static glVertex2hNVPROC glVertex2hNV;
static glVertex2hvNVPROC glVertex2hvNV;
static glVertex3hNVPROC glVertex3hNV;
static glVertex3hvNVPROC glVertex3hvNV;
static glVertex4hNVPROC glVertex4hNV;
static glVertex4hvNVPROC glVertex4hvNV;
static glNormal3hNVPROC glNormal3hNV;
static glNormal3hvNVPROC glNormal3hvNV;
static glColor3hNVPROC glColor3hNV;
static glColor3hvNVPROC glColor3hvNV;
static glColor4hNVPROC glColor4hNV;
static glColor4hvNVPROC glColor4hvNV;
static glTexCoord1hNVPROC glTexCoord1hNV;
static glTexCoord1hvNVPROC glTexCoord1hvNV;
static glTexCoord2hNVPROC glTexCoord2hNV;
static glTexCoord2hvNVPROC glTexCoord2hvNV;
static glTexCoord3hNVPROC glTexCoord3hNV;
static glTexCoord3hvNVPROC glTexCoord3hvNV;
static glTexCoord4hNVPROC glTexCoord4hNV;
static glTexCoord4hvNVPROC glTexCoord4hvNV;
static glMultiTexCoord1hNVPROC glMultiTexCoord1hNV;
static glMultiTexCoord1hvNVPROC glMultiTexCoord1hvNV;
static glMultiTexCoord2hNVPROC glMultiTexCoord2hNV;
static glMultiTexCoord2hvNVPROC glMultiTexCoord2hvNV;
static glMultiTexCoord3hNVPROC glMultiTexCoord3hNV;
static glMultiTexCoord3hvNVPROC glMultiTexCoord3hvNV;
static glMultiTexCoord4hNVPROC glMultiTexCoord4hNV;
static glMultiTexCoord4hvNVPROC glMultiTexCoord4hvNV;
static glFogCoordhNVPROC glFogCoordhNV;
static glFogCoordhvNVPROC glFogCoordhvNV;
static glSecondaryColor3hNVPROC glSecondaryColor3hNV;
static glSecondaryColor3hvNVPROC glSecondaryColor3hvNV;
static glVertexWeighthNVPROC glVertexWeighthNV;
static glVertexWeighthvNVPROC glVertexWeighthvNV;
static glVertexAttrib1hNVPROC glVertexAttrib1hNV;
static glVertexAttrib1hvNVPROC glVertexAttrib1hvNV;
static glVertexAttrib2hNVPROC glVertexAttrib2hNV;
static glVertexAttrib2hvNVPROC glVertexAttrib2hvNV;
static glVertexAttrib3hNVPROC glVertexAttrib3hNV;
static glVertexAttrib3hvNVPROC glVertexAttrib3hvNV;
static glVertexAttrib4hNVPROC glVertexAttrib4hNV;
static glVertexAttrib4hvNVPROC glVertexAttrib4hvNV;
static glVertexAttribs1hvNVPROC glVertexAttribs1hvNV;
static glVertexAttribs2hvNVPROC glVertexAttribs2hvNV;
static glVertexAttribs3hvNVPROC glVertexAttribs3hvNV;
static glVertexAttribs4hvNVPROC glVertexAttribs4hvNV;
void extgl_InitNVHalfFloat(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_NV_half_float)
return;
glVertex2hNV = (glVertex2hNVPROC) extgl_GetProcAddress("glVertex2hNV");
glVertex2hvNV = (glVertex2hvNVPROC) extgl_GetProcAddress("glVertex2hvNV");
glVertex3hNV = (glVertex3hNVPROC) extgl_GetProcAddress("glVertex3hNV");
glVertex3hvNV = (glVertex3hvNVPROC) extgl_GetProcAddress("glVertex3hvNV");
glVertex4hNV = (glVertex4hNVPROC) extgl_GetProcAddress("glVertex4hNV");
glVertex4hvNV = (glVertex4hvNVPROC) extgl_GetProcAddress("glVertex4hvNV");
glNormal3hNV = (glNormal3hNVPROC) extgl_GetProcAddress("glNormal3hNV");
glNormal3hvNV = (glNormal3hvNVPROC) extgl_GetProcAddress("glNormal3hvNV");
glColor3hNV = (glColor3hNVPROC) extgl_GetProcAddress("glColor3hNV");
glColor3hvNV = (glColor3hvNVPROC) extgl_GetProcAddress("glColor3hvNV");
glColor4hNV = (glColor4hNVPROC) extgl_GetProcAddress("glColor4hNV");
glColor4hvNV = (glColor4hvNVPROC) extgl_GetProcAddress("glColor4hvNV");
glTexCoord1hNV = (glTexCoord1hNVPROC) extgl_GetProcAddress("glTexCoord1hNV");
glTexCoord1hvNV = (glTexCoord1hvNVPROC) extgl_GetProcAddress("glTexCoord1hvNV");
glTexCoord2hNV = (glTexCoord2hNVPROC) extgl_GetProcAddress("glTexCoord2hNV");
glTexCoord2hvNV = (glTexCoord2hvNVPROC) extgl_GetProcAddress("glTexCoord2hvNV");
glTexCoord3hNV = (glTexCoord3hNVPROC) extgl_GetProcAddress("glTexCoord3hNV");
glTexCoord3hvNV = (glTexCoord3hvNVPROC) extgl_GetProcAddress("glTexCoord3hvNV");
glTexCoord4hNV = (glTexCoord4hNVPROC) extgl_GetProcAddress("glTexCoord4hNV");
glTexCoord4hvNV = (glTexCoord4hvNVPROC) extgl_GetProcAddress("glTexCoord4hvNV");
glMultiTexCoord1hNV = (glMultiTexCoord1hNVPROC) extgl_GetProcAddress("glMultiTexCoord1hNV");
glMultiTexCoord1hvNV = (glMultiTexCoord1hvNVPROC) extgl_GetProcAddress("glMultiTexCoord1hvNV");
glMultiTexCoord2hNV = (glMultiTexCoord2hNVPROC) extgl_GetProcAddress("glMultiTexCoord2hNV");
glMultiTexCoord2hvNV = (glMultiTexCoord2hvNVPROC) extgl_GetProcAddress("glMultiTexCoord2hvNV");
glMultiTexCoord3hNV = (glMultiTexCoord3hNVPROC) extgl_GetProcAddress("glMultiTexCoord3hNV");
glMultiTexCoord3hvNV = (glMultiTexCoord3hvNVPROC) extgl_GetProcAddress("glMultiTexCoord3hvNV");
glMultiTexCoord4hNV = (glMultiTexCoord4hNVPROC) extgl_GetProcAddress("glMultiTexCoord4hNV");
glMultiTexCoord4hvNV = (glMultiTexCoord4hvNVPROC) extgl_GetProcAddress("glMultiTexCoord4hvNV");
glFogCoordhNV = (glFogCoordhNVPROC) extgl_GetProcAddress("glFogCoordhNV");
glFogCoordhvNV = (glFogCoordhvNVPROC) extgl_GetProcAddress("glFogCoordhvNV");
glSecondaryColor3hNV = (glSecondaryColor3hNVPROC) extgl_GetProcAddress("glSecondaryColor3hNV");
glSecondaryColor3hvNV = (glSecondaryColor3hvNVPROC) extgl_GetProcAddress("glSecondaryColor3hvNV");
glVertexWeighthNV = (glVertexWeighthNVPROC) extgl_GetProcAddress("glVertexWeighthNV");
glVertexWeighthvNV = (glVertexWeighthvNVPROC) extgl_GetProcAddress("glVertexWeighthvNV");
glVertexAttrib1hNV = (glVertexAttrib1hNVPROC) extgl_GetProcAddress("glVertexAttrib1hNV");
glVertexAttrib1hvNV = (glVertexAttrib1hvNVPROC) extgl_GetProcAddress("glVertexAttrib1hvNV");
glVertexAttrib2hNV = (glVertexAttrib2hNVPROC) extgl_GetProcAddress("glVertexAttrib2hNV");
glVertexAttrib2hvNV = (glVertexAttrib2hvNVPROC) extgl_GetProcAddress("glVertexAttrib2hvNV");
glVertexAttrib3hNV = (glVertexAttrib3hNVPROC) extgl_GetProcAddress("glVertexAttrib3hNV");
glVertexAttrib3hvNV = (glVertexAttrib3hvNVPROC) extgl_GetProcAddress("glVertexAttrib3hvNV");
glVertexAttrib4hNV = (glVertexAttrib4hNVPROC) extgl_GetProcAddress("glVertexAttrib4hNV");
glVertexAttrib4hvNV = (glVertexAttrib4hvNVPROC) extgl_GetProcAddress("glVertexAttrib4hvNV");
glVertexAttribs1hvNV = (glVertexAttribs1hvNVPROC) extgl_GetProcAddress("glVertexAttribs1hvNV");
glVertexAttribs2hvNV = (glVertexAttribs2hvNVPROC) extgl_GetProcAddress("glVertexAttribs2hvNV");
glVertexAttribs3hvNV = (glVertexAttribs3hvNVPROC) extgl_GetProcAddress("glVertexAttribs3hvNV");
glVertexAttribs4hvNV = (glVertexAttribs4hvNVPROC) extgl_GetProcAddress("glVertexAttribs4hvNV");
EXTGL_SANITY_CHECK(env, ext_set, GL_NV_half_float)
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertex2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertex2hNV
(JNIEnv * env, jclass clazz, jshort x, jshort y)
{
CHECK_EXISTS(glVertex2hNV)
glVertex2hNV(x, y);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertex3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertex3hNV
(JNIEnv * env, jclass clazz, jshort x, jshort y, jshort z)
{
CHECK_EXISTS(glVertex3hNV)
glVertex3hNV(x, y, z);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertex4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertex4hNV
(JNIEnv * env, jclass clazz, jshort x, jshort y, jshort z, jshort w)
{
CHECK_EXISTS(glVertex4hNV)
glVertex4hNV(x, y, z, w);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glNormal3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glNormal3hNV
(JNIEnv * env, jclass clazz, jshort nx, jshort ny, jshort nz)
{
CHECK_EXISTS(glNormal3hNV)
glNormal3hNV(nx, ny, nz);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glColor3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glColor3hNV
(JNIEnv * env, jclass clazz, jshort red, jshort green, jshort blue)
{
CHECK_EXISTS(glColor3hNV)
glColor3hNV(red, green, blue);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glColor4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glColor4hNV
(JNIEnv * env, jclass clazz, jshort red, jshort green, jshort blue, jshort alpha)
{
CHECK_EXISTS(glColor4hNV)
glColor4hNV(red, green, blue, alpha);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord1hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord1hNV
(JNIEnv * env, jclass clazz, jshort s)
{
CHECK_EXISTS(glTexCoord1hNV)
glTexCoord1hNV(s);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord2hNV
(JNIEnv * env, jclass clazz, jshort s, jshort t)
{
CHECK_EXISTS(glTexCoord2hNV)
glTexCoord2hNV(s, t);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord3hNV
(JNIEnv * env, jclass clazz, jshort s, jshort t, jshort r)
{
CHECK_EXISTS(glTexCoord3hNV)
glTexCoord3hNV(s, t, r);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord4hNV
(JNIEnv * env, jclass clazz, jshort s, jshort t, jshort r, jshort q)
{
CHECK_EXISTS(glTexCoord4hNV)
glTexCoord4hNV(s, t, r, q);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord1hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord1hNV
(JNIEnv * env, jclass clazz, jint target, jshort s)
{
CHECK_EXISTS(glMultiTexCoord1hNV)
glMultiTexCoord1hNV(target, s);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord2hNV
(JNIEnv * env, jclass clazz, jint target, jshort s, jshort t)
{
CHECK_EXISTS(glMultiTexCoord2hNV)
glMultiTexCoord2hNV(target, s, t);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord3hNV
(JNIEnv * env, jclass clazz, jint target, jshort s, jshort t, jshort r)
{
CHECK_EXISTS(glMultiTexCoord3hNV)
glMultiTexCoord3hNV(target, s, t, r);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord4hNV
(JNIEnv * env, jclass clazz, jint target, jshort s, jshort t, jshort r, jshort q)
{
CHECK_EXISTS(glMultiTexCoord4hNV)
glMultiTexCoord4hNV(target, s, t, r, q);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glFogCoordhNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glFogCoordhNV
(JNIEnv * env, jclass clazz, jshort fog)
{
CHECK_EXISTS(glFogCoordhNV)
glFogCoordhNV(fog);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glSecondaryColor3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glSecondaryColor3hNV
(JNIEnv * env, jclass clazz, jshort red, jshort green, jshort blue)
{
CHECK_EXISTS(glSecondaryColor3hNV)
glSecondaryColor3hNV(red, green, blue);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexWeighthNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexWeighthNV
(JNIEnv * env, jclass clazz, jshort weight)
{
CHECK_EXISTS(glVertexWeighthNV)
glVertexWeighthNV(weight);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib1hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib1hNV
(JNIEnv * env, jclass clazz, jint index, jshort x)
{
CHECK_EXISTS(glVertexAttrib1hNV)
glVertexAttrib1hNV(index, x);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib2hNV
(JNIEnv * env, jclass clazz, jint index, jshort x, jshort y)
{
CHECK_EXISTS(glVertexAttrib2hNV)
glVertexAttrib2hNV(index, x, y);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib3hNV
(JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z)
{
CHECK_EXISTS(glVertexAttrib3hNV)
glVertexAttrib3hNV(index, x, y, z);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib4hNV
(JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w)
{
CHECK_EXISTS(glVertexAttrib4hNV)
glVertexAttrib4hNV(index, x, y, z, w);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs1hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs1hvNV
(JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset)
{
CHECK_EXISTS(glVertexAttribs1hvNV)
GLushort *attribs_ptr = (GLushort *)env->GetDirectBufferAddress(attribs) + attribsOffset;
glVertexAttribs1hvNV(index, n, attribs_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs2hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs2hvNV
(JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset)
{
CHECK_EXISTS(glVertexAttribs2hvNV)
GLushort *attribs_ptr = (GLushort *)env->GetDirectBufferAddress(attribs) + attribsOffset;
glVertexAttribs2hvNV(index, n, attribs_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs3hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs3hvNV
(JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset)
{
CHECK_EXISTS(glVertexAttribs3hvNV)
GLushort *attribs_ptr = (GLushort *)env->GetDirectBufferAddress(attribs) + attribsOffset;
glVertexAttribs3hvNV(index, n, attribs_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs4hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs4hvNV
(JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset)
{
CHECK_EXISTS(glVertexAttribs4hvNV)
GLushort *attribs_ptr = (GLushort *)env->GetDirectBufferAddress(attribs) + attribsOffset;
glVertexAttribs4hvNV(index, n, attribs_ptr);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,225 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.nv.NVHalfFloat
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_nv_NVHalfFloat
#define _Included_org_lwjgl_opengl_nv_NVHalfFloat
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertex2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertex2hNV
(JNIEnv *, jclass, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertex3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertex3hNV
(JNIEnv *, jclass, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertex4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertex4hNV
(JNIEnv *, jclass, jshort, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glNormal3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glNormal3hNV
(JNIEnv *, jclass, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glColor3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glColor3hNV
(JNIEnv *, jclass, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glColor4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glColor4hNV
(JNIEnv *, jclass, jshort, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord1hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord1hNV
(JNIEnv *, jclass, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord2hNV
(JNIEnv *, jclass, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord3hNV
(JNIEnv *, jclass, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glTexCoord4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glTexCoord4hNV
(JNIEnv *, jclass, jshort, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord1hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord1hNV
(JNIEnv *, jclass, jint, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord2hNV
(JNIEnv *, jclass, jint, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord3hNV
(JNIEnv *, jclass, jint, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glMultiTexCoord4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glMultiTexCoord4hNV
(JNIEnv *, jclass, jint, jshort, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glFogCoordhNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glFogCoordhNV
(JNIEnv *, jclass, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glSecondaryColor3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glSecondaryColor3hNV
(JNIEnv *, jclass, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexWeighthNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexWeighthNV
(JNIEnv *, jclass, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib1hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib1hNV
(JNIEnv *, jclass, jint, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib2hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib2hNV
(JNIEnv *, jclass, jint, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib3hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib3hNV
(JNIEnv *, jclass, jint, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: glVertexAttrib4hNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_glVertexAttrib4hNV
(JNIEnv *, jclass, jint, jshort, jshort, jshort, jshort);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs1hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs1hvNV
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs2hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs2hvNV
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs3hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs3hvNV
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.nv.NVHalfFloat
* Method: nglVertexAttribs4hvNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVHalfFloat_nglVertexAttribs4hvNV
(JNIEnv *, jclass, jint, jint, jobject, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,81 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.nv.NVPixelDataRange
// ----------------------------------
#include "org_lwjgl_opengl_nv_NVPixelDataRange.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef void (APIENTRY * glPixelDataRangeNVPROC) (GLenum target, GLsizei length, GLvoid *pointer);
typedef void (APIENTRY * glFlushPixelDataRangeNVPROC) (GLenum target);
static glPixelDataRangeNVPROC glPixelDataRangeNV;
static glFlushPixelDataRangeNVPROC glFlushPixelDataRangeNV;
void extgl_InitNVPixelDataRange(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_NV_pixel_data_range)
return;
glPixelDataRangeNV = (glPixelDataRangeNVPROC) extgl_GetProcAddress("glPixelDataRangeNV");
glFlushPixelDataRangeNV = (glFlushPixelDataRangeNVPROC) extgl_GetProcAddress("glFlushPixelDataRangeNV");
EXTGL_SANITY_CHECK(env, ext_set, GL_NV_pixel_data_range)
}
/*
* Class: org.lwjgl.opengl.nv.NVPixelDataRange
* Method: nglPixelDataRangeNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPixelDataRange_nglPixelDataRangeNV
(JNIEnv * env, jclass clazz, jint target, jint length, jobject data, jint dataOffset)
{
CHECK_EXISTS(glPixelDataRangeNV)
GLvoid *data_ptr = (GLvoid *)((GLubyte *)env->GetDirectBufferAddress(data) + dataOffset);
glPixelDataRangeNV(target, length, data_ptr);
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVPixelDataRange
* Method: glFlushPixelDataRangeNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPixelDataRange_glFlushPixelDataRangeNV
(JNIEnv * env, jclass clazz, jint target)
{
CHECK_EXISTS(glFlushPixelDataRangeNV)
glFlushPixelDataRangeNV(target);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,64 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.nv.NVPixelDataRange
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_nv_NVPixelDataRange
#define _Included_org_lwjgl_opengl_nv_NVPixelDataRange
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.nv.NVPixelDataRange
* Method: nglPixelDataRangeNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPixelDataRange_nglPixelDataRangeNV
(JNIEnv *, jclass, jint, jint, jobject, jint);
/*
* Class: org.lwjgl.opengl.nv.NVPixelDataRange
* Method: glFlushPixelDataRangeNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPixelDataRange_glFlushPixelDataRangeNV
(JNIEnv *, jclass, jint);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,80 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.nv.NVPrimitiveRestart
// ----------------------------------
#include "org_lwjgl_opengl_nv_NVPrimitiveRestart.h"
#include "extgl.h"
#include "checkGLerror.h"
typedef void (APIENTRY * glPrimitiveRestartNVPROC) (GLvoid);
typedef void (APIENTRY * glPrimitiveRestartIndexNVPROC) (GLuint index);
static glPrimitiveRestartNVPROC glPrimitiveRestartNV;
static glPrimitiveRestartIndexNVPROC glPrimitiveRestartIndexNV;
void extgl_InitNVPrimitiveRestart(JNIEnv *env, jobject ext_set)
{
if (!extgl_Extensions.GL_NV_primitive_restart)
return;
glPrimitiveRestartNV = (glPrimitiveRestartNVPROC) extgl_GetProcAddress("glPrimitiveRestartNV");
glPrimitiveRestartIndexNV = (glPrimitiveRestartIndexNVPROC) extgl_GetProcAddress("glPrimitiveRestartIndexNV");
EXTGL_SANITY_CHECK(env, ext_set, GL_NV_primitive_restart)
}
/*
* Class: org.lwjgl.opengl.nv.NVPrimitiveRestart
* Method: glPrimitiveRestartNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPrimitiveRestart_glPrimitiveRestartNV
(JNIEnv * env, jclass clazz)
{
CHECK_EXISTS(glPrimitiveRestartNV)
glPrimitiveRestartNV();
CHECK_GL_ERROR
}
/*
* Class: org.lwjgl.opengl.nv.NVPrimitiveRestart
* Method: glPrimitiveRestartIndexNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPrimitiveRestart_glPrimitiveRestartIndexNV
(JNIEnv * env, jclass clazz, jint index)
{
CHECK_EXISTS(glPrimitiveRestartIndexNV)
glPrimitiveRestartIndexNV(index);
CHECK_GL_ERROR
}

View File

@ -0,0 +1,64 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'Light Weight Java Game Library' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// ----------------------------------
// MACHINE GENERATED HEADER OF CLASS: org.lwjgl.opengl.nv.NVPrimitiveRestart
// ----------------------------------
#include <jni.h>
#ifndef _Included_org_lwjgl_opengl_nv_NVPrimitiveRestart
#define _Included_org_lwjgl_opengl_nv_NVPrimitiveRestart
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: org.lwjgl.opengl.nv.NVPrimitiveRestart
* Method: glPrimitiveRestartNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPrimitiveRestart_glPrimitiveRestartNV
(JNIEnv *, jclass);
/*
* Class: org.lwjgl.opengl.nv.NVPrimitiveRestart
* Method: glPrimitiveRestartIndexNV
*/
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_nv_NVPrimitiveRestart_glPrimitiveRestartIndexNV
(JNIEnv *, jclass, jint);
#ifdef __cplusplus
}
#endif
#endif