Moved extension type definitions into extgl.h. Removed offset argument to safeGetBufferAddress

This commit is contained in:
Elias Naur 2005-02-09 10:57:33 +00:00
parent e4a0673211
commit 8d4bf3eb47
11 changed files with 26 additions and 28 deletions

View file

@ -37,9 +37,6 @@
#include "extgl.h"
#include "common_tools.h"
typedef int GLintptrARB;
typedef unsigned int GLsizeiptrARB;
typedef void (APIENTRY * glBindBufferARBPROC) (GLenum target, GLuint buffer);
typedef void (APIENTRY * glDeleteBuffersARBPROC) (GLsizei n, const GLuint *buffers);
typedef void (APIENTRY * glGenBuffersARBPROC) (GLsizei n, GLuint *buffers);
@ -117,7 +114,7 @@ static jboolean JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glIsBufferARB
static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBufferDataARB
(JNIEnv * env, jclass clazz, jint target, jint size, jobject data, jint data_offset, jint usage)
{
GLvoid *data_ptr = (GLvoid *)safeGetBufferAddress(env, data, data_offset);
GLvoid *data_ptr = (GLvoid *)safeGetBufferAddress(env, data) + data_offset;
glBufferDataARB(target, size, data_ptr, usage);
}
@ -155,7 +152,7 @@ static jobject JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glMapBufferARB
{
void *buffer_address = glMapBufferARB((GLenum)target, (GLenum)access);
void *old_buffer_address = safeGetBufferAddress(env, oldBuffer, 0);
void *old_buffer_address = safeGetBufferAddress(env, oldBuffer);
if (old_buffer_address == buffer_address)
return oldBuffer;
else

View file

@ -37,9 +37,6 @@
#include <stdlib.h>
#include "extgl.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);

View file

@ -70,7 +70,7 @@ static glGetVariantArrayObjectivATIPROC glGetVariantArrayObjectivATI;
static jint JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglNewObjectBufferATI
(JNIEnv * env, jclass clazz, jint size, jobject pPointer, jint pPointer_offset, jint usage)
{
GLvoid *pPointer_ptr = safeGetBufferAddress(env, pPointer, pPointer_offset);
GLvoid *pPointer_ptr = safeGetBufferAddress(env, pPointer) + pPointer_offset;
GLuint result = glNewObjectBufferATI(size, pPointer_ptr, usage);
return result;

View file

@ -69,12 +69,12 @@ typedef enum {false, true} bool;
#define inline __inline
#endif
static inline void * safeGetBufferAddress(JNIEnv *env, jobject buffer, int offset) {
static inline void * safeGetBufferAddress(JNIEnv *env, jobject buffer) {
if (buffer != NULL) {
#ifdef __cplusplus
return (void *)((char *)env->GetDirectBufferAddress(buffer) + offset);
return (void *)((char *)env->GetDirectBufferAddress(buffer));
#else
return (void *)((char *)(*env)->GetDirectBufferAddress(env, buffer) + offset);
return (void *)((char *)(*env)->GetDirectBufferAddress(env, buffer));
#endif
} else
return NULL;

View file

@ -172,7 +172,7 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_devil_IL_ilDefaultImage(JNIEnv *env, j
* Signature: (ILjava/nio/IntBuffer;I)V
*/
JNIEXPORT void JNICALL Java_org_lwjgl_devil_IL_nilDeleteImages(JNIEnv * env, jclass clazz, jint num, jobject lists_buffer, jint lists_offset) {
ILbyte *lists = (ILbyte *) safeGetBufferAddress(env, lists_buffer, lists_offset);
ILbyte *lists = (ILbyte *) safeGetBufferAddress(env, lists_buffer) + lists_offset;
ilDeleteImages((ILsizei)num, (ILuint *)lists);
}
@ -210,7 +210,7 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_devil_IL_ilFormatFunc(JNIEnv *env, jcl
* Signature: (ILjava/nio/IntBuffer;I)V
*/
JNIEXPORT void JNICALL Java_org_lwjgl_devil_IL_nilGenImages(JNIEnv *env , jclass clazz, jint num, jobject lists_buffer, jint lists_offset) {
ILbyte *lists = (ILbyte *) safeGetBufferAddress(env, lists_buffer, lists_offset);
ILbyte *lists = (ILbyte *) safeGetBufferAddress(env, lists_buffer) + lists_offset;
ilGenImages((ILsizei)num, (ILuint *)lists);
}
@ -432,7 +432,7 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_devil_IL_ilLoadImage(JNIEnv *env, jcla
* Signature: (ILjava/nio/ByteBuffer;II)Z
*/
JNIEXPORT jboolean JNICALL Java_org_lwjgl_devil_IL_nilLoadL(JNIEnv *env, jclass clazz, jint type, jobject lump_buffer, jint lump_offset, jint size) {
ILbyte *lump = (ILbyte *)safeGetBufferAddress(env, lump_buffer, lump_offset);
ILbyte *lump = (ILbyte *)safeGetBufferAddress(env, lump_buffer) + lump_offset;
return ilLoadL((ILenum)type, (ILvoid *)(lump), (ILuint)size);
}

View file

@ -261,7 +261,7 @@ JNIEXPORT jint JNICALL Java_org_lwjgl_devil_ILU_iluGetInteger(JNIEnv *env, jclas
* Signature: (ILjava/nio/IntBuffer;)V
*/
JNIEXPORT void JNICALL Java_org_lwjgl_devil_ILU_iluGetIntegerv(JNIEnv *env, jclass clazz, jint mode, jobject param_buffer, jint param_offset) {
ILbyte *lists = (ILbyte *) safeGetBufferAddress(env, param_buffer, param_offset);
ILbyte *lists = (ILbyte *) safeGetBufferAddress(env, param_buffer) + param_offset;
ilGenImages((ILsizei)mode, (ILuint *)lists);
}

View file

@ -123,6 +123,18 @@ typedef double GLdouble;
typedef double GLclampd;
typedef void GLvoid;
// OpenGL 2.0 types
typedef int GLintptr;
typedef unsigned int GLsizeiptr;
typedef unsigned char GLchar;
// ARB_shader_objects types
typedef unsigned int GLhandleARB;
// ARB_vertex_buffer_object types
typedef int GLintptrARB;
typedef unsigned int GLsizeiptrARB;
typedef unsigned char GLcharARB;
#define GL_VERSION 0x1F02
#define GL_EXTENSIONS 0x1F03

View file

@ -2486,7 +2486,7 @@ static void JNICALL Java_org_lwjgl_opengl_GL11_glTexParameteri(JNIEnv * env, jcl
*/
static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage2D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7, jobject buffer, jint offset)
{
GLvoid *buffer_ptr = (GLvoid *)safeGetBufferAddress(env, buffer, offset);
GLvoid *buffer_ptr = (GLvoid *)safeGetBufferAddress(env, buffer) + offset;
glTexImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7, buffer_ptr);
}
@ -2505,7 +2505,7 @@ static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage2DBO(JNIEnv * env, jcl
*/
static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage1D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jobject buffer, jint offset)
{
GLvoid *buffer_ptr = (GLvoid *)safeGetBufferAddress(env, buffer, offset);
GLvoid *buffer_ptr = (GLvoid *)safeGetBufferAddress(env, buffer) + offset;
glTexImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, buffer_ptr);
}

View file

@ -85,7 +85,7 @@ static void JNICALL Java_org_lwjgl_opengl_GL12_nglDrawRangeElementsVBO
static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexImage3D
(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint format, jint type, jobject buffer, jint offset)
{
GLvoid *buffer_ptr = (GLvoid *)safeGetBufferAddress(env, buffer, offset);
GLvoid *buffer_ptr = (GLvoid *)safeGetBufferAddress(env, buffer) + offset;
glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, buffer_ptr);
}

View file

@ -37,9 +37,6 @@
#include "extgl.h"
#include "common_tools.h"
typedef int GLintptr;
typedef unsigned int GLsizeiptr;
typedef void (APIENTRY * glBindBufferPROC) (GLenum target, GLuint buffer);
typedef void (APIENTRY * glDeleteBuffersPROC) (GLsizei n, const GLuint *buffers);
typedef void (APIENTRY * glGenBuffersPROC) (GLsizei n, GLuint *buffers);
@ -136,7 +133,7 @@ static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glIsBuffer
static void JNICALL Java_org_lwjgl_opengl_GL15_nglBufferData
(JNIEnv * env, jclass clazz, jint target, jint size, jobject data, jint data_offset, jint usage)
{
GLvoid *data_ptr = (GLvoid *)safeGetBufferAddress(env, data, data_offset);
GLvoid *data_ptr = (GLvoid *)safeGetBufferAddress(env, data) + data_offset;
glBufferData(target, size, data_ptr, usage);
}

View file

@ -38,11 +38,6 @@
#include "extgl.h"
#include "common_tools.h"
typedef int GLintptr;
typedef unsigned int GLsizeiptr;
typedef unsigned char GLchar;
// ARB_shader_objects
typedef void (APIENTRY * glAttachShaderPROC) (GLuint program, GLuint shader);
typedef void (APIENTRY * glCompileShaderPROC) (GLuint shader);