summaryrefslogtreecommitdiffstats
path: root/make
diff options
context:
space:
mode:
Diffstat (limited to 'make')
-rw-r--r--make/build.xml63
-rw-r--r--make/cg-common.cfg26
-rw-r--r--make/cgl-macosx.cfg4
-rw-r--r--make/gl-common-x11.cfg3
-rw-r--r--make/gl-glx-common.cfg4
-rw-r--r--make/gl-impl-macosx.cfg2
-rw-r--r--make/glu-common.cfg28
-rw-r--r--make/glu-impl-common-CustomCCode.c831
-rw-r--r--make/glu-impl-common-CustomJavaCode.java1219
-rw-r--r--make/glu-impl-common.cfg5
-rw-r--r--make/glu-impl-macosx.cfg6
-rw-r--r--make/glu-impl-win32.cfg6
-rw-r--r--make/glu-impl-x11.cfg4
-rw-r--r--make/glu-interface-common-CustomJavaCode.java112
-rw-r--r--make/jawt-macosx.cfg2
-rw-r--r--make/jawt-x11.cfg2
-rw-r--r--make/stub_includes/macosx/jni_md.h2
-rw-r--r--make/stub_includes/macosx/window-system.c1
-rw-r--r--make/stub_includes/opengl/GL/glext.h128
-rw-r--r--make/stub_includes/win32/jni_md.h2
-rw-r--r--make/stub_includes/x11/X11/X.h2
-rw-r--r--make/stub_includes/x11/jni_md.h2
22 files changed, 2437 insertions, 17 deletions
diff --git a/make/build.xml b/make/build.xml
index 19e192018..7ce104390 100644
--- a/make/build.xml
+++ b/make/build.xml
@@ -198,8 +198,10 @@
<property name="java.includes.dir.linux" value="${java.includes.dir}/linux" />
<property name="java.includes.dir.solaris" value="${java.includes.dir}/solaris" />
<property name="java.includes.dir.macosx" value="/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Headers" />
+ <property name="java.includes.dir.freebsd" value="${java.includes.dir}/freebsd" />
<property name="java.lib.dir.win32" value="${java.home.dir}/lib" />
<property name="java.lib.dir.linux" value="${java.home.dir}/jre/lib/i386" />
+ <property name="java.lib.dir.linux.amd64" value="${java.home.dir}/jre/lib/amd64" />
<condition property="cpu" value="sparc">
<os name="SunOS" arch="sparc" />
</condition>
@@ -303,7 +305,6 @@
<property name="javadoc.dev.packagenames.platform" value="${javadoc.dev.packagenames.x11}" />
</target>
-
<target name="declare.linux" depends="declare.x11">
<property name="java.includes.dir.platform" value="${java.includes.dir.linux}" />
<property name="java.lib.dir.platform" value="${java.lib.dir.linux}" />
@@ -312,7 +313,22 @@
<property name="linker.cfg.id" value="linker.cfg.linux" />
</target>
+ <target name="declare.linux.amd64" depends="declare.x11">
+ <property name="java.includes.dir.platform" value="${java.includes.dir.linux}" />
+ <property name="java.lib.dir.platform" value="${java.lib.dir.linux.amd64}" />
+
+ <property name="compiler.cfg.id" value="compiler.cfg.linux.amd64" />
+ <property name="linker.cfg.id" value="linker.cfg.linux.amd64" />
+ </target>
+ <target name="declare.freebsd" depends="declare.x11">
+ <property name="java.includes.dir.platform" value="${java.includes.dir.freebsd}" />
+ <property name="java.lib.dir.platform" value="${java.lib.dir.linux}" />
+
+ <property name="compiler.cfg.id" value="compiler.cfg.freebsd" />
+ <property name="linker.cfg.id" value="linker.cfg.linux" />
+ </target>
+
<target name="declare.solaris" depends="declare.x11">
<property name="java.includes.dir.platform" value="${java.includes.dir.solaris}" />
<property name="java.lib.dir.platform" value="${java.lib.dir.solaris}" />
@@ -653,6 +669,10 @@
<!-- compiler configuration -->
<compiler id="compiler.cfg.linux" name="gcc" />
+ <compiler id="compiler.cfg.linux.amd64" name="gcc">
+ <compilerarg value="-fPIC"/>
+ </compiler>
+
<compiler id="compiler.cfg.solaris" name="suncc">
</compiler>
@@ -699,6 +719,10 @@
</defineset>
</compiler>
+ <compiler id="compiler.cfg.freebsd" name="gcc">
+ <includepath path="/usr/X11R6/include" />
+ </compiler>
+
<!-- linker configuration -->
<linker id="linker.cfg.linux" name="gcc">
@@ -706,6 +730,11 @@
<syslibset dir="${x11.cg.lib}" libs="Cg, CgGL" if="c.compiler.use-cglib"/>
</linker>
+ <linker id="linker.cfg.linux.amd64" name="gcc">
+ <syslibset dir="/usr/X11R6/lib64" libs="GL, GLU, X11"/>
+ <syslibset dir="${x11.cg.lib}" libs="Cg, CgGL" if="c.compiler.use-cglib"/>
+ </linker>
+
<linker id="linker.cfg.solaris" name="suncc">
<syslibset libs="GL, GLU, X11"/>
</linker>
@@ -845,12 +874,18 @@
<target name="c.compile.jogl.linux" depends="declare.linux, c.build.jogl, c.build.cg" >
</target>
+ <target name="c.compile.jogl.linux.amd64" depends="declare.linux.amd64, c.build.jogl, c.build.cg" >
+ </target>
+
<target name="c.compile.jogl.solaris" depends="declare.solaris, c.build.jogl">
</target>
<target name="c.compile.jogl.macosx" depends="declare.macosx, c.build.jogl, c.build.cg">
</target>
+ <target name="c.compile.jogl.freebsd" depends="declare.freebsd, c.build.jogl, c.build.cg" >
+ </target>
+
<!-- ================================================================== -->
<!--
- Build the jogl.jar file.
@@ -1001,7 +1036,7 @@
<target name="all">
<fail>
-Use a platform specific target: linux, macosx, solaris, win32.vc6, win32.vc7, win32.mingw
+Use a platform specific target: linux, linux.amd64, macosx, solaris, win32.vc6, win32.vc7, win32.mingw
</fail>
</target>
@@ -1050,7 +1085,18 @@ Use a platform specific target: linux, macosx, solaris, win32.vc6, win32.vc7, w
</target>
<!--
- - Solaris (assuming Solaris CC)
+ - Linux on AMD64 (assuming GCC)
+ -->
+ <target name="linux.amd64" depends="setup.java.home.dir.nonmacosx, declare.linux.amd64">
+ <!-- Generate, compile, and build the jar for the Java sources. -->
+ <antcall target="jar" inheritRefs="true" />
+
+ <!-- Compile the native C sources and build the jogl lib. -->
+ <antcall target="c.compile.jogl.linux.amd64" />
+ </target>
+
+ <!--
+ - Solaris (assuming Solaris CC)
-->
<target name="solaris" depends="setup.java.home.dir, declare.solaris">
<!-- Generate, compile, and build the jar for the Java sources. -->
@@ -1070,4 +1116,15 @@ Use a platform specific target: linux, macosx, solaris, win32.vc6, win32.vc7, w
<!-- Compile the native C sources and build the jogl lib. -->
<antcall target="c.compile.jogl.macosx" />
</target>
+
+ <!--
+ - FreeBSD (assuming GCC)
+ -->
+ <target name="freebsd" depends="declare.freebsd">
+ <!-- Generate, compile, and build the jar for the Java sources. -->
+ <antcall target="jar" inheritRefs="true" />
+
+ <!-- Compile the native C sources and build the jogl lib. -->
+ <antcall target="c.compile.jogl.freebsd" />
+ </target>
</project>
diff --git a/make/cg-common.cfg b/make/cg-common.cfg
index 043822838..275d9941d 100644
--- a/make/cg-common.cfg
+++ b/make/cg-common.cfg
@@ -8,6 +8,11 @@ JavaOutputDir ../build/gensrc/classes
NativeOutputDir ../build/gensrc/native/jogl_cg
HierarchicalNativeOutput false
+# Generate "flattened" NIO variants for routines taking C primitive
+# pointers that aren't of type void*
+NioMode ALL_POINTERS
+FlattenNIOVariants true
+
#
# Map const char* return values to Java strings for these functions
#
@@ -55,6 +60,8 @@ Ignore cgGetParameterValues
# Need to import New IO for Buffer classes
#
Import java.nio.*
+# and java.security.* to allow unsigned Cg applications
+Import java.security.*
# Raise CgException instead of RuntimeException in glue code
RuntimeExceptionType CgException
@@ -67,4 +74,21 @@ RuntimeExceptionType CgException
CustomCCode #include <stdlib.h>
CustomCCode #include <Cg/cgGL.h>
-CustomJavaCode CgGL static { System.loadLibrary("jogl_cg");}
+CustomJavaCode CgGL static {
+CustomJavaCode CgGL AccessController.doPrivileged(new PrivilegedAction() {
+CustomJavaCode CgGL public Object run() {
+CustomJavaCode CgGL try {
+CustomJavaCode CgGL // Workaround so that these don't need to be in the system
+CustomJavaCode CgGL // path but can be referenced from java.library.path
+CustomJavaCode CgGL // (this is intended to help with Webstarted applications)
+CustomJavaCode CgGL System.loadLibrary("cg");
+CustomJavaCode CgGL System.loadLibrary("cgGL");
+CustomJavaCode CgGL } catch (UnsatisfiedLinkError e) {
+CustomJavaCode CgGL // Consider this non-fatal
+CustomJavaCode CgGL }
+CustomJavaCode CgGL // Load the actual Cg binding
+CustomJavaCode CgGL System.loadLibrary("jogl_cg");
+CustomJavaCode CgGL return null;
+CustomJavaCode CgGL }
+CustomJavaCode CgGL });
+CustomJavaCode CgGL }
diff --git a/make/cgl-macosx.cfg b/make/cgl-macosx.cfg
index b3eab2184..c7a7f3841 100644
--- a/make/cgl-macosx.cfg
+++ b/make/cgl-macosx.cfg
@@ -13,7 +13,10 @@ Opaque long void *
# this was the easiest way of sharing the prototypes between these files
CustomCCode typedef int Bool;
+CustomCCode #include </usr/include/machine/types.h>
+
CustomCCode extern void* createContext(void* shareContext, void* nsView,
+CustomCCode int doubleBuffer,
CustomCCode int redBits,
CustomCCode int greenBits,
CustomCCode int blueBits,
@@ -45,3 +48,4 @@ CustomCCode extern void* getProcAddress(const char *procName);
# Implement the first argument to getProcAddress as String instead
# of byte[]
ArgumentIsString getProcAddress 0
+
diff --git a/make/gl-common-x11.cfg b/make/gl-common-x11.cfg
index 15154e363..dcaeac4f2 100644
--- a/make/gl-common-x11.cfg
+++ b/make/gl-common-x11.cfg
@@ -5,6 +5,9 @@ Include gl-common.cfg
JavaOutputDir ../build/gensrc/classes
NativeOutputDir ../build/gensrc/native/jogl
+# XID needs to be treated as a long for 32/64 bit compatibility
+Opaque long XID
+
# Get returned array's capacity from XGetVisualInfo to be correct
TemporaryCVariableDeclaration XGetVisualInfo int count;
TemporaryCVariableAssignment XGetVisualInfo count = _ptr3[0];
diff --git a/make/gl-glx-common.cfg b/make/gl-glx-common.cfg
index 93e5f794c..a613149bc 100644
--- a/make/gl-glx-common.cfg
+++ b/make/gl-glx-common.cfg
@@ -79,3 +79,7 @@ Ignore GLXHyperpipeNetworkSGIX
Ignore GLXHyperpipeConfigSGIX
Ignore GLXPipeRect
Ignore GLXPipeRectLimits
+
+# XID shows up in the public API (and shouldn't -- will be removed in
+# the JSR 231/239 APIs) and needs to be treated as a long for now
+Opaque long XID
diff --git a/make/gl-impl-macosx.cfg b/make/gl-impl-macosx.cfg
index 9edf96731..8ce128851 100644
--- a/make/gl-impl-macosx.cfg
+++ b/make/gl-impl-macosx.cfg
@@ -22,6 +22,8 @@ CustomCCode #define GL_GLEXT_PROTOTYPES
CustomCCode /* Include the OpenGL headers */
CustomCCode #include <GL/gl.h>
+CustomCCode #include </usr/include/machine/types.h>
+
CustomCCode /* Provide Windows typedefs */
CustomCCode typedef void* LPVOID;
CustomCCode typedef unsigned int* PUINT;
diff --git a/make/glu-common.cfg b/make/glu-common.cfg
index 65919e410..917a95a62 100644
--- a/make/glu-common.cfg
+++ b/make/glu-common.cfg
@@ -176,3 +176,31 @@ ManuallyImplement gluOrtho2D
ManuallyImplement gluPerspective
ManuallyImplement gluLookAt
ManuallyImplement gluPickMatrix
+
+#
+# ------------------------
+# Mipmaps
+# ------------------------
+#
+# Ignore the mipmap routines and use GKW's Java port instead.
+# Currently the Java and native code have fallback paths to the
+# C code, but this will be removed in a future release.
+
+Ignore gluBuild1DMipmapLevels
+Ignore gluBuild1DMipmaps
+Ignore gluBuild2DMipmapLevels
+Ignore gluBuild2DMipmaps
+Ignore gluBuild3DMipmapLevels
+Ignore gluBuild3DMipmaps
+Ignore gluScaleImage
+
+# Must force proc address generation for these routines, though, since
+# we still fall back on the C implementations
+
+ForceProcAddressGen gluBuild1DMipmapLevels
+ForceProcAddressGen gluBuild1DMipmaps
+ForceProcAddressGen gluBuild2DMipmapLevels
+ForceProcAddressGen gluBuild2DMipmaps
+ForceProcAddressGen gluBuild3DMipmapLevels
+ForceProcAddressGen gluBuild3DMipmaps
+ForceProcAddressGen gluScaleImage
diff --git a/make/glu-impl-common-CustomCCode.c b/make/glu-impl-common-CustomCCode.c
index 9a6a8d2ab..5a3f645c5 100644
--- a/make/glu-impl-common-CustomCCode.c
+++ b/make/glu-impl-common-CustomCCode.c
@@ -1,2 +1,833 @@
/* Include the OpenGL GLU header */
#include <GL/glu.h>
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, byte[] data)
+ * C function: GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmapLevels__IIIIIIII_3BJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jint level, jint base, jint max, jbyteArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPLEVELSPROC ptr_gluBuild1DMipmapLevels;
+ void * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmapLevels = (PFNGLUBUILD1DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr8 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr8);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, short[] data)
+ * C function: GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmapLevels__IIIIIIII_3SJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jint level, jint base, jint max, jshortArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPLEVELSPROC ptr_gluBuild1DMipmapLevels;
+ void * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmapLevels = (PFNGLUBUILD1DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr8 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr8);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, int[] data)
+ * C function: GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmapLevels__IIIIIIII_3IJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jint level, jint base, jint max, jintArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPLEVELSPROC ptr_gluBuild1DMipmapLevels;
+ void * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmapLevels = (PFNGLUBUILD1DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr8 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr8);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, float[] data)
+ * C function: GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmapLevels__IIIIIIII_3FJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jint level, jint base, jint max, jfloatArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPLEVELSPROC ptr_gluBuild1DMipmapLevels;
+ void * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmapLevels = (PFNGLUBUILD1DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr8 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr8);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, java.nio.ByteBuffer data)
+ * C function: GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmapLevels__IIIIIIIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jint level, jint base, jint max, jobject data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPLEVELSPROC ptr_gluBuild1DMipmapLevels;
+ void * _ptr8 = NULL;
+ GLint _res;
+ if (data != NULL) {
+ _ptr8 = (void *) (*env)->GetDirectBufferAddress(env, data);
+ } else {
+ _ptr8 = NULL;
+ }
+ ptr_gluBuild1DMipmapLevels = (PFNGLUBUILD1DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmapLevels != NULL);
+ _res = (* ptr_gluBuild1DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr8);
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, byte[] data)
+ * C function: GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmaps__IIIII_3BJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jbyteArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPSPROC ptr_gluBuild1DMipmaps;
+ void * _ptr5 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmaps = (PFNGLUBUILD1DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr5 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (void *) _ptr5);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr5, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, short[] data)
+ * C function: GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmaps__IIIII_3SJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jshortArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPSPROC ptr_gluBuild1DMipmaps;
+ void * _ptr5 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmaps = (PFNGLUBUILD1DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr5 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (void *) _ptr5);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr5, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, int[] data)
+ * C function: GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmaps__IIIII_3IJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jintArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPSPROC ptr_gluBuild1DMipmaps;
+ void * _ptr5 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmaps = (PFNGLUBUILD1DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr5 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (void *) _ptr5);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr5, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, float[] data)
+ * C function: GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmaps__IIIII_3FJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jfloatArray data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPSPROC ptr_gluBuild1DMipmaps;
+ void * _ptr5 = NULL;
+ GLint _res;
+ ptr_gluBuild1DMipmaps = (PFNGLUBUILD1DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr5 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild1DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (void *) _ptr5);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr5, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, java.nio.ByteBuffer data)
+ * C function: GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild1DMipmaps__IIIIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint format, jint type, jobject data, jlong glProcAddress) {
+ PFNGLUBUILD1DMIPMAPSPROC ptr_gluBuild1DMipmaps;
+ void * _ptr5 = NULL;
+ GLint _res;
+ if (data != NULL) {
+ _ptr5 = (void *) (*env)->GetDirectBufferAddress(env, data);
+ } else {
+ _ptr5 = NULL;
+ }
+ ptr_gluBuild1DMipmaps = (PFNGLUBUILD1DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild1DMipmaps != NULL);
+ _res = (* ptr_gluBuild1DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLenum) format, (GLenum) type, (void *) _ptr5);
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, byte[] data)
+ * C function: GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmapLevels__IIIIIIIII_3BJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jint level, jint base, jint max, jbyteArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPLEVELSPROC ptr_gluBuild2DMipmapLevels;
+ void * _ptr9 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmapLevels = (PFNGLUBUILD2DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr9 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr9);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr9, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, short[] data)
+ * C function: GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmapLevels__IIIIIIIII_3SJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jint level, jint base, jint max, jshortArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPLEVELSPROC ptr_gluBuild2DMipmapLevels;
+ void * _ptr9 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmapLevels = (PFNGLUBUILD2DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr9 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr9);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr9, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, int[] data)
+ * C function: GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmapLevels__IIIIIIIII_3IJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jint level, jint base, jint max, jintArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPLEVELSPROC ptr_gluBuild2DMipmapLevels;
+ void * _ptr9 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmapLevels = (PFNGLUBUILD2DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr9 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr9);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr9, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, float[] data)
+ * C function: GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmapLevels__IIIIIIIII_3FJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jint level, jint base, jint max, jfloatArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPLEVELSPROC ptr_gluBuild2DMipmapLevels;
+ void * _ptr9 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmapLevels = (PFNGLUBUILD2DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr9 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr9);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr9, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, java.nio.ByteBuffer data)
+ * C function: GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmapLevels__IIIIIIIIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jint level, jint base, jint max, jobject data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPLEVELSPROC ptr_gluBuild2DMipmapLevels;
+ void * _ptr9 = NULL;
+ GLint _res;
+ if (data != NULL) {
+ _ptr9 = (void *) (*env)->GetDirectBufferAddress(env, data);
+ } else {
+ _ptr9 = NULL;
+ }
+ ptr_gluBuild2DMipmapLevels = (PFNGLUBUILD2DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmapLevels != NULL);
+ _res = (* ptr_gluBuild2DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr9);
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, byte[] data)
+ * C function: GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmaps__IIIIII_3BJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jbyteArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPSPROC ptr_gluBuild2DMipmaps;
+ void * _ptr6 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmaps = (PFNGLUBUILD2DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr6 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (void *) _ptr6);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr6, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, short[] data)
+ * C function: GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmaps__IIIIII_3SJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jshortArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPSPROC ptr_gluBuild2DMipmaps;
+ void * _ptr6 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmaps = (PFNGLUBUILD2DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr6 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (void *) _ptr6);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr6, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, int[] data)
+ * C function: GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmaps__IIIIII_3IJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jintArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPSPROC ptr_gluBuild2DMipmaps;
+ void * _ptr6 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmaps = (PFNGLUBUILD2DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr6 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (void *) _ptr6);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr6, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, float[] data)
+ * C function: GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmaps__IIIIII_3FJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jfloatArray data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPSPROC ptr_gluBuild2DMipmaps;
+ void * _ptr6 = NULL;
+ GLint _res;
+ ptr_gluBuild2DMipmaps = (PFNGLUBUILD2DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr6 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild2DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (void *) _ptr6);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr6, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, java.nio.ByteBuffer data)
+ * C function: GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild2DMipmaps__IIIIIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint format, jint type, jobject data, jlong glProcAddress) {
+ PFNGLUBUILD2DMIPMAPSPROC ptr_gluBuild2DMipmaps;
+ void * _ptr6 = NULL;
+ GLint _res;
+ if (data != NULL) {
+ _ptr6 = (void *) (*env)->GetDirectBufferAddress(env, data);
+ } else {
+ _ptr6 = NULL;
+ }
+ ptr_gluBuild2DMipmaps = (PFNGLUBUILD2DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild2DMipmaps != NULL);
+ _res = (* ptr_gluBuild2DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLenum) format, (GLenum) type, (void *) _ptr6);
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, byte[] data)
+ * C function: GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmapLevels__IIIIIIIIII_3BJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jint level, jint base, jint max, jbyteArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPLEVELSPROC ptr_gluBuild3DMipmapLevels;
+ void * _ptr10 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmapLevels = (PFNGLUBUILD3DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr10 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr10);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr10, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, short[] data)
+ * C function: GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmapLevels__IIIIIIIIII_3SJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jint level, jint base, jint max, jshortArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPLEVELSPROC ptr_gluBuild3DMipmapLevels;
+ void * _ptr10 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmapLevels = (PFNGLUBUILD3DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr10 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr10);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr10, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, int[] data)
+ * C function: GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmapLevels__IIIIIIIIII_3IJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jint level, jint base, jint max, jintArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPLEVELSPROC ptr_gluBuild3DMipmapLevels;
+ void * _ptr10 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmapLevels = (PFNGLUBUILD3DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr10 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr10);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr10, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, float[] data)
+ * C function: GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmapLevels__IIIIIIIIII_3FJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jint level, jint base, jint max, jfloatArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPLEVELSPROC ptr_gluBuild3DMipmapLevels;
+ void * _ptr10 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmapLevels = (PFNGLUBUILD3DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmapLevels != NULL);
+ if (data != NULL) {
+ _ptr10 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr10);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr10, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, java.nio.ByteBuffer data)
+ * C function: GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmapLevels__IIIIIIIIIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jint level, jint base, jint max, jobject data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPLEVELSPROC ptr_gluBuild3DMipmapLevels;
+ void * _ptr10 = NULL;
+ GLint _res;
+ if (data != NULL) {
+ _ptr10 = (void *) (*env)->GetDirectBufferAddress(env, data);
+ } else {
+ _ptr10 = NULL;
+ }
+ ptr_gluBuild3DMipmapLevels = (PFNGLUBUILD3DMIPMAPLEVELSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmapLevels != NULL);
+ _res = (* ptr_gluBuild3DMipmapLevels) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (GLint) level, (GLint) base, (GLint) max, (void *) _ptr10);
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, byte[] data)
+ * C function: GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmaps__IIIIIII_3BJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jbyteArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPSPROC ptr_gluBuild3DMipmaps;
+ void * _ptr7 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmaps = (PFNGLUBUILD3DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr7 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (void *) _ptr7);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr7, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, short[] data)
+ * C function: GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmaps__IIIIIII_3SJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jshortArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPSPROC ptr_gluBuild3DMipmaps;
+ void * _ptr7 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmaps = (PFNGLUBUILD3DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr7 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (void *) _ptr7);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr7, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, int[] data)
+ * C function: GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmaps__IIIIIII_3IJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jintArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPSPROC ptr_gluBuild3DMipmaps;
+ void * _ptr7 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmaps = (PFNGLUBUILD3DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr7 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (void *) _ptr7);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr7, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, float[] data)
+ * C function: GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmaps__IIIIIII_3FJ(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jfloatArray data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPSPROC ptr_gluBuild3DMipmaps;
+ void * _ptr7 = NULL;
+ GLint _res;
+ ptr_gluBuild3DMipmaps = (PFNGLUBUILD3DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmaps != NULL);
+ if (data != NULL) {
+ _ptr7 = (void *) (*env)->GetPrimitiveArrayCritical(env, data, NULL);
+ }
+ _res = (* ptr_gluBuild3DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (void *) _ptr7);
+ if (data != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, data, _ptr7, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, java.nio.ByteBuffer data)
+ * C function: GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluBuild3DMipmaps__IIIIIIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint target, jint internalFormat, jint width, jint height, jint depth, jint format, jint type, jobject data, jlong glProcAddress) {
+ PFNGLUBUILD3DMIPMAPSPROC ptr_gluBuild3DMipmaps;
+ void * _ptr7 = NULL;
+ GLint _res;
+ if (data != NULL) {
+ _ptr7 = (void *) (*env)->GetDirectBufferAddress(env, data);
+ } else {
+ _ptr7 = NULL;
+ }
+ ptr_gluBuild3DMipmaps = (PFNGLUBUILD3DMIPMAPSPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluBuild3DMipmaps != NULL);
+ _res = (* ptr_gluBuild3DMipmaps) ((GLenum) target, (GLint) internalFormat, (GLsizei) width, (GLsizei) height, (GLsizei) depth, (GLenum) format, (GLenum) type, (void *) _ptr7);
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, byte[] dataIn, int wOut, int hOut, int typeOut, byte[] dataOut)
+ * C function: GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluScaleImage__IIII_3BIII_3BJ(JNIEnv *env, jobject _unused, jint format, jint wIn, jint hIn, jint typeIn, jbyteArray dataIn, jint wOut, jint hOut, jint typeOut, jbyteArray dataOut, jlong glProcAddress) {
+ PFNGLUSCALEIMAGEPROC ptr_gluScaleImage;
+ void * _ptr4 = NULL;
+ GLvoid * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluScaleImage = (PFNGLUSCALEIMAGEPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluScaleImage != NULL);
+ if (dataIn != NULL) {
+ _ptr4 = (void *) (*env)->GetPrimitiveArrayCritical(env, dataIn, NULL);
+ }
+ if (dataOut != NULL) {
+ _ptr8 = (GLvoid *) (*env)->GetPrimitiveArrayCritical(env, dataOut, NULL);
+ }
+ _res = (* ptr_gluScaleImage) ((GLenum) format, (GLsizei) wIn, (GLsizei) hIn, (GLenum) typeIn, (void *) _ptr4, (GLsizei) wOut, (GLsizei) hOut, (GLenum) typeOut, (GLvoid *) _ptr8);
+ if (dataIn != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataIn, _ptr4, JNI_ABORT);
+ }
+ if (dataOut != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataOut, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, short[] dataIn, int wOut, int hOut, int typeOut, short[] dataOut)
+ * C function: GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluScaleImage__IIII_3SIII_3SJ(JNIEnv *env, jobject _unused, jint format, jint wIn, jint hIn, jint typeIn, jshortArray dataIn, jint wOut, jint hOut, jint typeOut, jshortArray dataOut, jlong glProcAddress) {
+ PFNGLUSCALEIMAGEPROC ptr_gluScaleImage;
+ void * _ptr4 = NULL;
+ GLvoid * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluScaleImage = (PFNGLUSCALEIMAGEPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluScaleImage != NULL);
+ if (dataIn != NULL) {
+ _ptr4 = (void *) (*env)->GetPrimitiveArrayCritical(env, dataIn, NULL);
+ }
+ if (dataOut != NULL) {
+ _ptr8 = (GLvoid *) (*env)->GetPrimitiveArrayCritical(env, dataOut, NULL);
+ }
+ _res = (* ptr_gluScaleImage) ((GLenum) format, (GLsizei) wIn, (GLsizei) hIn, (GLenum) typeIn, (void *) _ptr4, (GLsizei) wOut, (GLsizei) hOut, (GLenum) typeOut, (GLvoid *) _ptr8);
+ if (dataIn != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataIn, _ptr4, JNI_ABORT);
+ }
+ if (dataOut != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataOut, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, int[] dataIn, int wOut, int hOut, int typeOut, int[] dataOut)
+ * C function: GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluScaleImage__IIII_3IIII_3IJ(JNIEnv *env, jobject _unused, jint format, jint wIn, jint hIn, jint typeIn, jintArray dataIn, jint wOut, jint hOut, jint typeOut, jintArray dataOut, jlong glProcAddress) {
+ PFNGLUSCALEIMAGEPROC ptr_gluScaleImage;
+ void * _ptr4 = NULL;
+ GLvoid * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluScaleImage = (PFNGLUSCALEIMAGEPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluScaleImage != NULL);
+ if (dataIn != NULL) {
+ _ptr4 = (void *) (*env)->GetPrimitiveArrayCritical(env, dataIn, NULL);
+ }
+ if (dataOut != NULL) {
+ _ptr8 = (GLvoid *) (*env)->GetPrimitiveArrayCritical(env, dataOut, NULL);
+ }
+ _res = (* ptr_gluScaleImage) ((GLenum) format, (GLsizei) wIn, (GLsizei) hIn, (GLenum) typeIn, (void *) _ptr4, (GLsizei) wOut, (GLsizei) hOut, (GLenum) typeOut, (GLvoid *) _ptr8);
+ if (dataIn != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataIn, _ptr4, JNI_ABORT);
+ }
+ if (dataOut != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataOut, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, float[] dataIn, int wOut, int hOut, int typeOut, float[] dataOut)
+ * C function: GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluScaleImage__IIII_3FIII_3FJ(JNIEnv *env, jobject _unused, jint format, jint wIn, jint hIn, jint typeIn, jfloatArray dataIn, jint wOut, jint hOut, jint typeOut, jfloatArray dataOut, jlong glProcAddress) {
+ PFNGLUSCALEIMAGEPROC ptr_gluScaleImage;
+ void * _ptr4 = NULL;
+ GLvoid * _ptr8 = NULL;
+ GLint _res;
+ ptr_gluScaleImage = (PFNGLUSCALEIMAGEPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluScaleImage != NULL);
+ if (dataIn != NULL) {
+ _ptr4 = (void *) (*env)->GetPrimitiveArrayCritical(env, dataIn, NULL);
+ }
+ if (dataOut != NULL) {
+ _ptr8 = (GLvoid *) (*env)->GetPrimitiveArrayCritical(env, dataOut, NULL);
+ }
+ _res = (* ptr_gluScaleImage) ((GLenum) format, (GLsizei) wIn, (GLsizei) hIn, (GLenum) typeIn, (void *) _ptr4, (GLsizei) wOut, (GLsizei) hOut, (GLenum) typeOut, (GLvoid *) _ptr8);
+ if (dataIn != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataIn, _ptr4, JNI_ABORT);
+ }
+ if (dataOut != NULL) {
+ (*env)->ReleasePrimitiveArrayCritical(env, dataOut, _ptr8, JNI_ABORT);
+ }
+ return _res;
+}
+
+
+/* Java->C glue code:
+ * Java package: net.java.games.jogl.impl.GLUImpl
+ * Java method: int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, java.nio.ByteBuffer dataIn, int wOut, int hOut, int typeOut, java.nio.ByteBuffer dataOut)
+ * C function: GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut);
+ */
+JNIEXPORT jint JNICALL
+Java_net_java_games_jogl_impl_GLUImpl_dispatch_1gluScaleImage__IIIILjava_nio_Buffer_2IIILjava_nio_Buffer_2J(JNIEnv *env, jobject _unused, jint format, jint wIn, jint hIn, jint typeIn, jobject dataIn, jint wOut, jint hOut, jint typeOut, jobject dataOut, jlong glProcAddress) {
+ PFNGLUSCALEIMAGEPROC ptr_gluScaleImage;
+ void * _ptr4 = NULL;
+ GLvoid * _ptr8 = NULL;
+ GLint _res;
+ if (dataIn != NULL) {
+ _ptr4 = (void *) (*env)->GetDirectBufferAddress(env, dataIn);
+ } else {
+ _ptr4 = NULL;
+ }
+ if (dataOut != NULL) {
+ _ptr8 = (GLvoid *) (*env)->GetDirectBufferAddress(env, dataOut);
+ } else {
+ _ptr8 = NULL;
+ }
+ ptr_gluScaleImage = (PFNGLUSCALEIMAGEPROC) (intptr_t) glProcAddress;
+ assert(ptr_gluScaleImage != NULL);
+ _res = (* ptr_gluScaleImage) ((GLenum) format, (GLsizei) wIn, (GLsizei) hIn, (GLenum) typeIn, (void *) _ptr4, (GLsizei) wOut, (GLsizei) hOut, (GLenum) typeOut, (GLvoid *) _ptr8);
+ return _res;
+}
diff --git a/make/glu-impl-common-CustomJavaCode.java b/make/glu-impl-common-CustomJavaCode.java
index 854030351..0706aa390 100644
--- a/make/glu-impl-common-CustomJavaCode.java
+++ b/make/glu-impl-common-CustomJavaCode.java
@@ -1,3 +1,17 @@
+private static boolean useJavaMipmapCode = true;
+
+static {
+ AccessController.doPrivileged(new PrivilegedAction() {
+ public Object run() {
+ String val = System.getProperty("jogl.glu.nojava");
+ if (val != null && !val.toLowerCase().equals("false")) {
+ useJavaMipmapCode = false;
+ }
+ return null;
+ }
+ });
+}
+
/** Indicates whether the given GLU routine is available to be called. */
public boolean isFunctionAvailable(String gluFunctionName)
{
@@ -205,3 +219,1208 @@ public boolean gluUnProject4(double winX, double winY, double winZ, double clipW
public void gluPickMatrix(double x, double y, double delX, double delY, int[] viewport) {
project.gluPickMatrix(gl, x, y, delX, delY, viewport);
}
+
+//----------------------------------------------------------------------
+// Mipmap and image scaling functionality
+
+
+// Boolean
+public static final int GLU_FALSE = 0;
+public static final int GLU_TRUE = 1;
+
+// String Name
+public static final int GLU_VERSION = 100800;
+public static final int GLU_EXTENSIONS = 100801;
+
+// Extensions
+public static final String versionString = "1.3";
+public static final String extensionString = "GLU_EXT_nurbs_tessellator " +
+ "GLU_EXT_object_space_tess ";
+
+// ErrorCode
+public static final int GLU_INVALID_ENUM = 100900;
+public static final int GLU_INVALID_VALUE = 100901;
+public static final int GLU_OUT_OF_MEMORY = 100902;
+public static final int GLU_INVALID_OPERATION = 100904;
+
+// NurbsDisplay
+// GLU_FILL
+public static final int GLU_OUTLINE_POLYGON = 100240;
+public static final int GLU_OUTLINE_PATCH = 100241;
+
+// NurbsCallback
+public static final int GLU_NURBS_ERROR = 100103;
+public static final int GLU_ERROR = 100103;
+public static final int GLU_NURBS_BEGIN = 100164;
+public static final int GLU_NURBS_BEGIN_EXT = 100164;
+public static final int GLU_NURBS_VERTEX = 100165;
+public static final int GLU_NURBS_VERTEX_EXT = 100165;
+public static final int GLU_NURBS_NORMAL = 100166;
+public static final int GLU_NURBS_NORMAL_EXT = 100166;
+public static final int GLU_NURBS_COLOR = 100167;
+public static final int GLU_NURBS_COLOR_EXT = 100167;
+public static final int GLU_NURBS_TEXTURE_COORD = 100168;
+public static final int GLU_NURBS_TEX_COORD_EXT = 100168;
+public static final int GLU_NURBS_END = 100169;
+public static final int GLU_NURBS_END_EXT = 100169;
+public static final int GLU_NURBS_BEGIN_DATA = 100170;
+public static final int GLU_NURBS_BEGIN_DATA_EXT = 100170;
+public static final int GLU_NURBS_VERTEX_DATA = 100171;
+public static final int GLU_NURBS_VERTEX_DATA_EXT = 100171;
+public static final int GLU_NURBS_NORMAL_DATA = 100172;
+public static final int GLU_NURBS_NORMAL_DATA_EXT = 100172;
+public static final int GLU_NURBS_COLOR_DATA = 100173;
+public static final int GLU_NURBS_COLOR_DATA_EXT = 100173;
+public static final int GLU_NURBS_TEXTURE_COORD_DATA = 100174;
+public static final int GLU_NURBS_TEX_COORD_DATA_EXT = 100174;
+public static final int GLU_NURBS_END_DATA = 100175;
+public static final int GLU_NURBS_END_DATA_EXT = 100175;
+
+// NurbsError
+public static final int GLU_NURBS_ERROR1 = 100251;
+public static final int GLU_NURBS_ERROR2 = 100252;
+public static final int GLU_NURBS_ERROR3 = 100253;
+public static final int GLU_NURBS_ERROR4 = 100254;
+public static final int GLU_NURBS_ERROR5 = 100255;
+public static final int GLU_NURBS_ERROR6 = 100256;
+public static final int GLU_NURBS_ERROR7 = 100257;
+public static final int GLU_NURBS_ERROR8 = 100258;
+public static final int GLU_NURBS_ERROR9 = 100259;
+public static final int GLU_NURBS_ERROR10 = 100260;
+public static final int GLU_NURBS_ERROR11 = 100261;
+public static final int GLU_NURBS_ERROR12 = 100262;
+public static final int GLU_NURBS_ERROR13 = 100263;
+public static final int GLU_NURBS_ERROR14 = 100264;
+public static final int GLU_NURBS_ERROR15 = 100265;
+public static final int GLU_NURBS_ERROR16 = 100266;
+public static final int GLU_NURBS_ERROR17 = 100267;
+public static final int GLU_NURBS_ERROR18 = 100268;
+public static final int GLU_NURBS_ERROR19 = 100269;
+public static final int GLU_NURBS_ERROR20 = 100270;
+public static final int GLU_NURBS_ERROR21 = 100271;
+public static final int GLU_NURBS_ERROR22 = 100272;
+public static final int GLU_NURBS_ERROR23 = 100273;
+public static final int GLU_NURBS_ERROR24 = 100274;
+public static final int GLU_NURBS_ERROR25 = 100275;
+public static final int GLU_NURBS_ERROR26 = 100276;
+public static final int GLU_NURBS_ERROR27 = 100277;
+public static final int GLU_NURBS_ERROR28 = 100278;
+public static final int GLU_NURBS_ERROR29 = 100279;
+public static final int GLU_NURBS_ERROR30 = 100280;
+public static final int GLU_NURBS_ERROR31 = 100281;
+public static final int GLU_NURBS_ERROR32 = 100282;
+public static final int GLU_NURBS_ERROR33 = 100283;
+public static final int GLU_NURBS_ERROR34 = 100284;
+public static final int GLU_NURBS_ERROR35 = 100285;
+public static final int GLU_NURBS_ERROR36 = 100286;
+public static final int GLU_NURBS_ERROR37 = 100287;
+
+// NurbsProperty
+public static final int GLU_AUTO_LOAD_MATRIX = 100200;
+public static final int GLU_CULLING = 100201;
+public static final int GLU_SAMPLING_TOLERANCE = 100203;
+public static final int GLU_DISPLAY_MODE = 100204;
+public static final int GLU_PARAMETRIC_TOLERANCE = 100202;
+public static final int GLU_SAMPLING_METHOD = 100205;
+public static final int GLU_U_STEP = 100206;
+public static final int GLU_V_STEP = 100207;
+public static final int GLU_NURBS_MODE = 100160;
+public static final int GLU_NURBS_MODE_EXT = 100160;
+public static final int GLU_NURBS_TESSELLATOR = 100161;
+public static final int GLU_NURBS_TESSELLATOR_EXT = 100161;
+public static final int GLU_NURBS_RENDERER = 100162;
+public static final int GLU_NURBS_RENDERER_EXT = 100162;
+
+// NurbsSampling
+public static final int GLU_OBJECT_PARAMETRIC_ERROR = 100208;
+public static final int GLU_OBJECT_PARAMETRIC_ERROR_EXT = 100208;
+public static final int GLU_OBJECT_PATH_LENGTH = 100209;
+public static final int GLU_OBJECT_PATH_LENGTH_EXT = 100209;
+public static final int GLU_PATH_LENGTH = 100215;
+public static final int GLU_PARAMETRIC_ERROR = 100216;
+public static final int GLU_DOMAIN_DISTANCE = 100217;
+
+// NurbsTrim
+public static final int GLU_MAP1_TRIM_2 = 100210;
+public static final int GLU_MAP1_TRIM_3 = 100211;
+
+// QuadricDrawStyle
+public static final int GLU_POINT = 100010;
+public static final int GLU_LINE = 100011;
+public static final int GLU_FILL = 100012;
+public static final int GLU_SILHOUETTE = 100013;
+
+// QuadricCallback
+// GLU_ERROR
+
+// QuadricNormal
+public static final int GLU_SMOOTH = 100000;
+public static final int GLU_FLAT = 100001;
+public static final int GLU_NONE = 100002;
+
+// QuadricOrientation
+public static final int GLU_OUTSIDE = 100020;
+public static final int GLU_INSIDE = 100021;
+
+// TessCallback
+public static final int GLU_TESS_BEGIN = 100100;
+public static final int GLU_BEGIN = 100100;
+public static final int GLU_TESS_VERTEX = 100101;
+public static final int GLU_VERTEX = 100101;
+public static final int GLU_TESS_END = 100102;
+public static final int GLU_END = 100102;
+public static final int GLU_TESS_ERROR = 100103;
+public static final int GLU_TESS_EDGE_FLAG = 100104;
+public static final int GLU_EDGE_FLAG = 100104;
+public static final int GLU_TESS_COMBINE = 100105;
+public static final int GLU_TESS_BEGIN_DATA = 100106;
+public static final int GLU_TESS_VERTEX_DATA = 100107;
+public static final int GLU_TESS_END_DATA = 100108;
+public static final int GLU_TESS_ERROR_DATA = 100109;
+public static final int GLU_TESS_EDGE_FLAG_DATA = 100110;
+public static final int GLU_TESS_COMBINE_DATA = 100111;
+
+// TessContour
+public static final int GLU_CW = 100120;
+public static final int GLU_CCW = 100121;
+public static final int GLU_INTERIOR = 100122;
+public static final int GLU_EXTERIOR = 100123;
+public static final int GLU_UNKNOWN = 100124;
+
+// TessProperty
+public static final int GLU_TESS_WINDING_RULE = 100140;
+public static final int GLU_TESS_BOUNDRY_ONLY = 100141;
+public static final int GLU_TESS_TOLERANCE = 100142;
+
+// TessError
+public static final int GLU_TESS_ERROR1 = 100151;
+public static final int GLU_TESS_ERROR2 = 100152;
+public static final int GLU_TESS_ERROR3 = 100153;
+public static final int GLU_TESS_ERROR4 = 100154;
+public static final int GLU_TESS_ERROR5 = 100155;
+public static final int GLU_TESS_ERROR6 = 100156;
+public static final int GLU_TESS_ERROR7 = 100157;
+public static final int GLU_TESS_ERROR8 = 100158;
+public static final int GLU_TESS_MISSING_BEGIN_POLYGON = 100151;
+public static final int GLU_TESS_MISSING_BEGIN_CONTOUR = 100152;
+public static final int GLU_TESS_MISSING_END_POLYGON = 100153;
+public static final int GLU_TESS_MISSING_END_CONTOUR = 100154;
+public static final int GLU_TESS_COORD_TOO_LARGE = 100155;
+public static final int GLU_TESS_NEED_COMBINE_CALLBACK = 100156;
+
+// TessWinding
+public static final int GLU_TESS_WINDING_ODD = 100130;
+public static final int GLU_TESS_WINDING_NONZERO = 100131;
+public static final int GLU_TESS_WINDING_POSITIVE = 100132;
+public static final int GLU_TESS_WINDING_NEGATIVE = 100133;
+public static final int GLU_TESS_WINDING_ABS_GEQ_TWO = 100134;
+
+public int gluScaleImageJava( int format, int widthin, int heightin,
+ int typein, Object datain, int widthout, int heightout,
+ int typeout, Object dataout ) {
+ ByteBuffer in = null;
+ ByteBuffer out = null;
+ if( datain instanceof ByteBuffer ) {
+ in = (ByteBuffer)datain;
+ } else if( datain instanceof byte[] ) {
+ in = ByteBuffer.allocateDirect( ((byte[])datain).length ).order( ByteOrder.nativeOrder() );
+ in.put((byte[]) datain).rewind();
+ } else if( datain instanceof short[] ) {
+ in = ByteBuffer.allocateDirect( ((byte[])datain).length * 2 ).order( ByteOrder.nativeOrder() );
+ in.asShortBuffer().put((short[]) datain).rewind();
+ } else if( datain instanceof int[] ) {
+ in = ByteBuffer.allocateDirect( ((byte[])datain).length * 4 ).order( ByteOrder.nativeOrder() );
+ in.asIntBuffer().put((int[]) datain).rewind();
+ } else if( datain instanceof float[] ) {
+ in = ByteBuffer.allocateDirect( ((byte[])datain).length * 4 ).order( ByteOrder.nativeOrder() );
+ in.asFloatBuffer().put((float[]) datain).rewind();
+ } else {
+ throw new IllegalArgumentException( "Input data must be a primitive array or a ByteBuffer" );
+ }
+ if( dataout instanceof ByteBuffer ) {
+ out = (ByteBuffer)dataout;
+ } else if( dataout instanceof byte[] ) {
+ out = ByteBuffer.wrap( ((byte[])dataout) );
+ } else if( dataout instanceof short[] ) {
+ out = ByteBuffer.allocate( ((short[])dataout).length * 2 );
+ } else if( dataout instanceof int[] ) {
+ out = ByteBuffer.allocate( ((int[])dataout).length * 4 );
+ } else if( dataout instanceof float[] ) {
+ out = ByteBuffer.allocate( ((float[])dataout).length * 4 );
+ } else {
+ throw new IllegalArgumentException( "Output data must be a primitive array or a ByteBuffer" );
+ }
+ int errno = Mipmap.gluScaleImage( gl, format, widthin, heightin, typein, in,
+ widthout, heightout, typeout, out );
+ if( errno == 0 ) {
+ if( dataout instanceof short[] ) {
+ out.asShortBuffer().get( (short[])dataout );
+ } else if( dataout instanceof int[] ) {
+ out.asIntBuffer().get( (int[])dataout );
+ } else if( dataout instanceof float[] ) {
+ out.asFloatBuffer().get( (float[])dataout );
+ }
+ }
+ return( errno );
+}
+
+public int gluBuild1DMipmapLevelsJava( int target, int internalFormat, int width,
+ int format, int type, int userLevel, int baseLevel, int maxLevel,
+ Object data ) {
+ ByteBuffer buffer = null;
+ if( data instanceof ByteBuffer ) {
+ buffer = (ByteBuffer)data;
+ } else if( data instanceof byte[] ) {
+ buffer = ByteBuffer.allocateDirect( ((byte[])data).length ).order( ByteOrder.nativeOrder() );
+ buffer.put( (byte[])data );
+ } else if( data instanceof short[] ) {
+ buffer = ByteBuffer.allocateDirect( ((short[])data).length * 2 ).order( ByteOrder.nativeOrder() );
+ buffer.asShortBuffer().put( (short[])data );
+ } else if( data instanceof int[] ) {
+ buffer = ByteBuffer.allocateDirect( ((int[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asIntBuffer().put( (int[])data );
+ } else if( data instanceof float[] ) {
+ buffer = ByteBuffer.allocateDirect( ((float[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asFloatBuffer().put( (float[])data );
+ } else {
+ throw new IllegalArgumentException( "Input data must be a primitive array or a ByteBuffer" );
+ }
+ return( Mipmap.gluBuild1DMipmapLevels( gl, target, internalFormat, width,
+ format, type, userLevel, baseLevel, maxLevel, buffer ) );
+}
+
+public int gluBuild1DMipmapsJava( int target, int internalFormat, int width,
+ int format, int type, Object data ) {
+ ByteBuffer buffer = null;
+ if( data instanceof ByteBuffer ) {
+ buffer = (ByteBuffer)data;
+ } else if( data instanceof byte[] ) {
+ buffer = ByteBuffer.allocateDirect( ((byte[])data).length ).order( ByteOrder.nativeOrder() );
+ buffer.put( (byte[])data );
+ } else if( data instanceof short[] ) {
+ buffer = ByteBuffer.allocateDirect( ((short[])data).length * 2 ).order( ByteOrder.nativeOrder() );
+ buffer.asShortBuffer().put( (short[])data );
+ } else if( data instanceof int[] ) {
+ buffer = ByteBuffer.allocateDirect( ((int[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asIntBuffer().put( (int[])data );
+ } else if( data instanceof float[] ) {
+ buffer = ByteBuffer.allocateDirect( ((float[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asFloatBuffer().put( (float[])data );
+ } else {
+ throw new IllegalArgumentException( "Input data must be a primitive array or a ByteBuffer" );
+ }
+ return( Mipmap.gluBuild1DMipmaps( gl, target, internalFormat, width, format,
+ type, buffer ) );
+}
+
+public int gluBuild2DMipmapLevelsJava( int target, int internalFormat, int width,
+ int height, int format, int type, int userLevel, int baseLevel,
+ int maxLevel, Object data ) {
+ return( Mipmap.gluBuild2DMipmapLevels( gl, target, internalFormat, width,
+ height, format, type, userLevel, baseLevel, maxLevel, data ) );
+}
+
+public int gluBuild2DMipmapsJava( int target, int internalFormat, int width,
+ int height, int format, int type, Object data ) {
+ return( Mipmap.gluBuild2DMipmaps( gl, target, internalFormat, width, height,
+ format, type, data ) );
+}
+
+public int gluBuild3DMipmapLevelsJava( int target, int internalFormat, int width,
+ int height, int depth, int format, int type, int userLevel, int baseLevel,
+ int maxLevel, Object data ) {
+ ByteBuffer buffer = null;
+ if( data instanceof ByteBuffer ) {
+ buffer = (ByteBuffer)data;
+ } else if( data instanceof byte[] ) {
+ buffer = ByteBuffer.allocateDirect( ((byte[])data).length ).order( ByteOrder.nativeOrder() );
+ buffer.put( (byte[])data );
+ } else if( data instanceof short[] ) {
+ buffer = ByteBuffer.allocateDirect( ((short[])data).length * 2 ).order( ByteOrder.nativeOrder() );
+ buffer.asShortBuffer().put( (short[])data );
+ } else if( data instanceof int[] ) {
+ buffer = ByteBuffer.allocateDirect( ((int[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asIntBuffer().put( (int[])data );
+ } else if( data instanceof float[] ) {
+ buffer = ByteBuffer.allocateDirect( ((float[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asFloatBuffer().put( (float[])data );
+ } else {
+ throw new IllegalArgumentException( "Input data must be a primitive array or a ByteBuffer" );
+ }
+ return( Mipmap.gluBuild3DMipmapLevels( gl, target, internalFormat, width,
+ height, depth, format, type, userLevel, baseLevel, maxLevel, buffer ) );
+}
+
+public int gluBuild3DMipmapsJava( int target, int internalFormat, int width,
+ int height, int depth, int format, int type, Object data ) {
+ ByteBuffer buffer = null;
+ if( data instanceof ByteBuffer ) {
+ buffer = (ByteBuffer)data;
+ } else if( data instanceof byte[] ) {
+ buffer = ByteBuffer.allocateDirect( ((byte[])data).length ).order( ByteOrder.nativeOrder() );
+ buffer.put( (byte[])data );
+ } else if( data instanceof short[] ) {
+ buffer = ByteBuffer.allocateDirect( ((short[])data).length * 2 ).order( ByteOrder.nativeOrder() );
+ buffer.asShortBuffer().put( (short[])data );
+ } else if( data instanceof int[] ) {
+ buffer = ByteBuffer.allocateDirect( ((int[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asIntBuffer().put( (int[])data );
+ } else if( data instanceof float[] ) {
+ buffer = ByteBuffer.allocateDirect( ((float[])data).length * 4 ).order( ByteOrder.nativeOrder() );
+ buffer.asFloatBuffer().put( (float[])data );
+ } else {
+ throw new IllegalArgumentException( "Input data must be a primitive array or a ByteBuffer" );
+ }
+ return( Mipmap.gluBuild3DMipmaps( gl, target, internalFormat, width, height,
+ depth, format, type, buffer ) );
+}
+
+
+//----------------------------------------------------------------------
+// Wrappers for mipmap and image scaling entry points which dispatch either
+// to the Java or C versions.
+//
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, byte[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapLevelsJava(target, internalFormat, width, format, type, level, base, max, data);
+ } else {
+ return gluBuild1DMipmapLevelsC(target, internalFormat, width, format, type, level, base, max, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, short[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapLevelsJava(target, internalFormat, width, format, type, level, base, max, data);
+ } else {
+ return gluBuild1DMipmapLevelsC(target, internalFormat, width, format, type, level, base, max, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, int[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapLevelsJava(target, internalFormat, width, format, type, level, base, max, data);
+ } else {
+ return gluBuild1DMipmapLevelsC(target, internalFormat, width, format, type, level, base, max, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, float[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapLevelsJava(target, internalFormat, width, format, type, level, base, max, data);
+ } else {
+ return gluBuild1DMipmapLevelsC(target, internalFormat, width, format, type, level, base, max, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, java.nio.Buffer data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapLevelsJava(target, internalFormat, width, format, type, level, base, max, data);
+ } else {
+ return gluBuild1DMipmapLevelsC(target, internalFormat, width, format, type, level, base, max, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, byte[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapsJava(target, internalFormat, width, format, type, data);
+ } else {
+ return gluBuild1DMipmapsC(target, internalFormat, width, format, type, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, short[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapsJava(target, internalFormat, width, format, type, data);
+ } else {
+ return gluBuild1DMipmapsC(target, internalFormat, width, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, int[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapsJava(target, internalFormat, width, format, type, data);
+ } else {
+ return gluBuild1DMipmapsC(target, internalFormat, width, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, float[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild1DMipmapsJava(target, internalFormat, width, format, type, data);
+ } else {
+ return gluBuild1DMipmapsC(target, internalFormat, width, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, byte[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapLevelsJava(target, internalFormat, width, height, format, type, level, base, max, data);
+ } else {
+ return gluBuild2DMipmapLevelsC(target, internalFormat, width, height, format, type, level, base, max, data);
+ }
+}
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, short[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapLevelsJava(target, internalFormat, width, height, format, type, level, base, max, data);
+ } else {
+ return gluBuild2DMipmapLevelsC(target, internalFormat, width, height, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, int[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapLevelsJava(target, internalFormat, width, height, format, type, level, base, max, data);
+ } else {
+ return gluBuild2DMipmapLevelsC(target, internalFormat, width, height, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, float[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapLevelsJava(target, internalFormat, width, height, format, type, level, base, max, data);
+ } else {
+ return gluBuild2DMipmapLevelsC(target, internalFormat, width, height, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, java.nio.Buffer data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapLevelsJava(target, internalFormat, width, height, format, type, level, base, max, data);
+ } else {
+ return gluBuild2DMipmapLevelsC(target, internalFormat, width, height, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, byte[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapsJava(target, internalFormat, width, height, format, type, data);
+ } else {
+ return gluBuild2DMipmapsC(target, internalFormat, width, height, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, short[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapsJava(target, internalFormat, width, height, format, type, data);
+ } else {
+ return gluBuild2DMipmapsC(target, internalFormat, width, height, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, int[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapsJava(target, internalFormat, width, height, format, type, data);
+ } else {
+ return gluBuild2DMipmapsC(target, internalFormat, width, height, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, float[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapsJava(target, internalFormat, width, height, format, type, data);
+ } else {
+ return gluBuild2DMipmapsC(target, internalFormat, width, height, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, java.nio.Buffer data) {
+ if (useJavaMipmapCode) {
+ return gluBuild2DMipmapsJava(target, internalFormat, width, height, format, type, data);
+ } else {
+ return gluBuild2DMipmapsC(target, internalFormat, width, height, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, byte[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapLevelsJava(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ } else {
+ return gluBuild3DMipmapLevelsC(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, short[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapLevelsJava(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ } else {
+ return gluBuild3DMipmapLevelsC(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, int[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapLevelsJava(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ } else {
+ return gluBuild3DMipmapLevelsC(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, float[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapLevelsJava(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ } else {
+ return gluBuild3DMipmapLevelsC(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, java.nio.Buffer data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapLevelsJava(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ } else {
+ return gluBuild3DMipmapLevelsC(target, internalFormat, width, height, depth, format, type, level, base, max, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, byte[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapsJava(target, internalFormat, width, height, depth, format, type, data);
+ } else {
+ return gluBuild3DMipmapsC(target, internalFormat, width, height, depth, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, short[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapsJava(target, internalFormat, width, height, depth, format, type, data);
+ } else {
+ return gluBuild3DMipmapsC(target, internalFormat, width, height, depth, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, int[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapsJava(target, internalFormat, width, height, depth, format, type, data);
+ } else {
+ return gluBuild3DMipmapsC(target, internalFormat, width, height, depth, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, float[] data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapsJava(target, internalFormat, width, height, depth, format, type, data);
+ } else {
+ return gluBuild3DMipmapsC(target, internalFormat, width, height, depth, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, java.nio.Buffer data) {
+ if (useJavaMipmapCode) {
+ return gluBuild3DMipmapsJava(target, internalFormat, width, height, depth, format, type, data);
+ } else {
+ return gluBuild3DMipmapsC(target, internalFormat, width, height, depth, format, type, data);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, byte[] dataIn, int wOut, int hOut, int typeOut, byte[] dataOut) {
+ if (useJavaMipmapCode) {
+ return gluScaleImageJava(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ } else {
+ return gluScaleImageC(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, short[] dataIn, int wOut, int hOut, int typeOut, short[] dataOut) {
+ if (useJavaMipmapCode) {
+ return gluScaleImageJava(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ } else {
+ return gluScaleImageC(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, int[] dataIn, int wOut, int hOut, int typeOut, int[] dataOut) {
+ if (useJavaMipmapCode) {
+ return gluScaleImageJava(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ } else {
+ return gluScaleImageC(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, float[] dataIn, int wOut, int hOut, int typeOut, float[] dataOut) {
+ if (useJavaMipmapCode) {
+ return gluScaleImageJava(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ } else {
+ return gluScaleImageC(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ }
+}
+
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, java.nio.Buffer dataIn, int wOut, int hOut, int typeOut, java.nio.Buffer dataOut) {
+ if (useJavaMipmapCode) {
+ return gluScaleImageJava(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ } else {
+ return gluScaleImageC(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut);
+ }
+}
+
+
+
+//----------------------------------------------------------------------
+// Wrappers for C entry points for mipmap and scaling functionality.
+// (These are only used as a fallback and will be removed in a future release)
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild1DMipmapLevelsC(int target, int internalFormat, int width, int format, int type, int level, int base, int max, byte[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild1DMipmapLevels(target, internalFormat, width, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, byte[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild1DMipmapLevelsC(int target, int internalFormat, int width, int format, int type, int level, int base, int max, short[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild1DMipmapLevels(target, internalFormat, width, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, short[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild1DMipmapLevelsC(int target, int internalFormat, int width, int format, int type, int level, int base, int max, int[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild1DMipmapLevels(target, internalFormat, width, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, int[] data, long glProcAddress);
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild1DMipmapLevelsC(int target, int internalFormat, int width, int format, int type, int level, int base, int max, float[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild1DMipmapLevels(target, internalFormat, width, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, float[] data, long glProcAddress);
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild1DMipmapLevelsC(int target, int internalFormat, int width, int format, int type, int level, int base, int max, java.nio.Buffer data)
+ {
+ if (!BufferFactory.isDirect(data))
+ throw new GLException("Argument \"data\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild1DMipmapLevels(target, internalFormat, width, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ native private int dispatch_gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, java.nio.Buffer data, long glProcAddress);
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild1DMipmapsC(int target, int internalFormat, int width, int format, int type, byte[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmaps\" not available");
+ }
+ return dispatch_gluBuild1DMipmaps(target, internalFormat, width, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, byte[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild1DMipmapsC(int target, int internalFormat, int width, int format, int type, short[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmaps\" not available");
+ }
+ return dispatch_gluBuild1DMipmaps(target, internalFormat, width, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, short[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild1DMipmapsC(int target, int internalFormat, int width, int format, int type, int[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmaps\" not available");
+ }
+ return dispatch_gluBuild1DMipmaps(target, internalFormat, width, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, int[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild1DMipmapsC(int target, int internalFormat, int width, int format, int type, float[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmaps\" not available");
+ }
+ return dispatch_gluBuild1DMipmaps(target, internalFormat, width, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, float[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild1DMipmapsC(int target, int internalFormat, int width, int format, int type, java.nio.Buffer data)
+ {
+ if (!BufferFactory.isDirect(data))
+ throw new GLException("Argument \"data\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild1DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild1DMipmaps\" not available");
+ }
+ return dispatch_gluBuild1DMipmaps(target, internalFormat, width, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+ native private int dispatch_gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, java.nio.Buffer data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild2DMipmapLevelsC(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, byte[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild2DMipmapLevels(target, internalFormat, width, height, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, byte[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild2DMipmapLevelsC(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, short[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild2DMipmapLevels(target, internalFormat, width, height, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, short[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild2DMipmapLevelsC(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, int[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild2DMipmapLevels(target, internalFormat, width, height, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, int[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild2DMipmapLevelsC(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, float[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild2DMipmapLevels(target, internalFormat, width, height, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, float[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild2DMipmapLevelsC(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, java.nio.Buffer data)
+ {
+ if (!BufferFactory.isDirect(data))
+ throw new GLException("Argument \"data\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild2DMipmapLevels(target, internalFormat, width, height, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ native private int dispatch_gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, java.nio.Buffer data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild2DMipmapsC(int target, int internalFormat, int width, int height, int format, int type, byte[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmaps\" not available");
+ }
+ return dispatch_gluBuild2DMipmaps(target, internalFormat, width, height, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, byte[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild2DMipmapsC(int target, int internalFormat, int width, int height, int format, int type, short[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmaps\" not available");
+ }
+ return dispatch_gluBuild2DMipmaps(target, internalFormat, width, height, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, short[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild2DMipmapsC(int target, int internalFormat, int width, int height, int format, int type, int[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmaps\" not available");
+ }
+ return dispatch_gluBuild2DMipmaps(target, internalFormat, width, height, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, int[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild2DMipmapsC(int target, int internalFormat, int width, int height, int format, int type, float[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmaps\" not available");
+ }
+ return dispatch_gluBuild2DMipmaps(target, internalFormat, width, height, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, float[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild2DMipmapsC(int target, int internalFormat, int width, int height, int format, int type, java.nio.Buffer data)
+ {
+ if (!BufferFactory.isDirect(data))
+ throw new GLException("Argument \"data\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild2DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild2DMipmaps\" not available");
+ }
+ return dispatch_gluBuild2DMipmaps(target, internalFormat, width, height, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+ native private int dispatch_gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, java.nio.Buffer data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild3DMipmapLevelsC(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, byte[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild3DMipmapLevels(target, internalFormat, width, height, depth, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, byte[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild3DMipmapLevelsC(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, short[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild3DMipmapLevels(target, internalFormat, width, height, depth, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, short[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild3DMipmapLevelsC(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, int[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild3DMipmapLevels(target, internalFormat, width, height, depth, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, int[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild3DMipmapLevelsC(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, float[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild3DMipmapLevels(target, internalFormat, width, height, depth, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, float[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ public int gluBuild3DMipmapLevelsC(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, java.nio.Buffer data)
+ {
+ if (!BufferFactory.isDirect(data))
+ throw new GLException("Argument \"data\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmapLevels;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmapLevels\" not available");
+ }
+ return dispatch_gluBuild3DMipmapLevels(target, internalFormat, width, height, depth, format, type, level, base, max, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+ native private int dispatch_gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, java.nio.Buffer data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild3DMipmapsC(int target, int internalFormat, int width, int height, int depth, int format, int type, byte[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmaps\" not available");
+ }
+ return dispatch_gluBuild3DMipmaps(target, internalFormat, width, height, depth, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, byte[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild3DMipmapsC(int target, int internalFormat, int width, int height, int depth, int format, int type, short[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmaps\" not available");
+ }
+ return dispatch_gluBuild3DMipmaps(target, internalFormat, width, height, depth, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, short[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild3DMipmapsC(int target, int internalFormat, int width, int height, int depth, int format, int type, int[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmaps\" not available");
+ }
+ return dispatch_gluBuild3DMipmaps(target, internalFormat, width, height, depth, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, int[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild3DMipmapsC(int target, int internalFormat, int width, int height, int depth, int format, int type, float[] data)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmaps\" not available");
+ }
+ return dispatch_gluBuild3DMipmaps(target, internalFormat, width, height, depth, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ private native int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, float[] data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ public int gluBuild3DMipmapsC(int target, int internalFormat, int width, int height, int depth, int format, int type, java.nio.Buffer data)
+ {
+ if (!BufferFactory.isDirect(data))
+ throw new GLException("Argument \"data\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluBuild3DMipmaps;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluBuild3DMipmaps\" not available");
+ }
+ return dispatch_gluBuild3DMipmaps(target, internalFormat, width, height, depth, format, type, data, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+ native private int dispatch_gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, java.nio.Buffer data, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ public int gluScaleImageC(int format, int wIn, int hIn, int typeIn, byte[] dataIn, int wOut, int hOut, int typeOut, byte[] dataOut)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluScaleImage;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluScaleImage\" not available");
+ }
+ return dispatch_gluScaleImage(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ private native int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, byte[] dataIn, int wOut, int hOut, int typeOut, byte[] dataOut, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ public int gluScaleImageC(int format, int wIn, int hIn, int typeIn, short[] dataIn, int wOut, int hOut, int typeOut, short[] dataOut)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluScaleImage;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluScaleImage\" not available");
+ }
+ return dispatch_gluScaleImage(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ private native int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, short[] dataIn, int wOut, int hOut, int typeOut, short[] dataOut, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ public int gluScaleImageC(int format, int wIn, int hIn, int typeIn, int[] dataIn, int wOut, int hOut, int typeOut, int[] dataOut)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluScaleImage;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluScaleImage\" not available");
+ }
+ return dispatch_gluScaleImage(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ private native int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, int[] dataIn, int wOut, int hOut, int typeOut, int[] dataOut, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ public int gluScaleImageC(int format, int wIn, int hIn, int typeIn, float[] dataIn, int wOut, int hOut, int typeOut, float[] dataOut)
+ {
+ final long __addr_ = gluProcAddressTable._addressof_gluScaleImage;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluScaleImage\" not available");
+ }
+ return dispatch_gluScaleImage(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ private native int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, float[] dataIn, int wOut, int hOut, int typeOut, float[] dataOut, long glProcAddress);
+
+
+ /** Entry point to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ public int gluScaleImageC(int format, int wIn, int hIn, int typeIn, java.nio.Buffer dataIn, int wOut, int hOut, int typeOut, java.nio.Buffer dataOut)
+ {
+ if (!BufferFactory.isDirect(dataIn))
+ throw new GLException("Argument \"dataIn\" was not a direct buffer");
+ if (!BufferFactory.isDirect(dataOut))
+ throw new GLException("Argument \"dataOut\" was not a direct buffer");
+ final long __addr_ = gluProcAddressTable._addressof_gluScaleImage;
+ if (__addr_ == 0) {
+ throw new GLException("Method \"gluScaleImage\" not available");
+ }
+ return dispatch_gluScaleImage(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut, __addr_);
+ }
+
+ /** Encapsulates function pointer for OpenGL function <br>: <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+ native private int dispatch_gluScaleImage(int format, int wIn, int hIn, int typeIn, java.nio.Buffer dataIn, int wOut, int hOut, int typeOut, java.nio.Buffer dataOut, long glProcAddress);
+
+
+
diff --git a/make/glu-impl-common.cfg b/make/glu-impl-common.cfg
index 539bf9784..6710d0369 100644
--- a/make/glu-impl-common.cfg
+++ b/make/glu-impl-common.cfg
@@ -9,8 +9,11 @@ EmitProcAddressTable true
ProcAddressTableClassName GLUProcAddressTable
GetProcAddressTableExpr gluProcAddressTable
-#GLUImpl needs access to the GLUtesselatorImpl class for GLUtesselator.
+# GLUImpl needs access to the GLUtesselatorImpl class for GLUtesselator
+# and to the Mipmap class for scaling and mipmap generation
Import net.java.games.jogl.impl.tesselator.GLUtesselatorImpl
+Import net.java.games.jogl.impl.mipmap.Mipmap
+Import java.security.*
# Custom Java code for GLUImpl class
IncludeAs CustomJavaCode GLUImpl glu-impl-common-CustomJavaCode.java
diff --git a/make/glu-impl-macosx.cfg b/make/glu-impl-macosx.cfg
index 6dac11f54..21e9b3700 100644
--- a/make/glu-impl-macosx.cfg
+++ b/make/glu-impl-macosx.cfg
@@ -1,7 +1,9 @@
# This .cfg file is used to generate the GLU implementation on
# Mac OS X.
-Include glu-impl-common.cfg
-
CustomCCode #include <inttypes.h>
CustomCCode #include <jni.h>
+
+CustomCCode #include </usr/include/machine/types.h>
+
+Include glu-impl-common.cfg
diff --git a/make/glu-impl-win32.cfg b/make/glu-impl-win32.cfg
index cc6b13a72..983513712 100644
--- a/make/glu-impl-win32.cfg
+++ b/make/glu-impl-win32.cfg
@@ -1,7 +1,5 @@
# This .cfg file is used to generate the GLU implementation on Windows.
-Include glu-impl-common.cfg
-
CustomCCode #define WIN32_LEAN_AND_MEAN
CustomCCode #include <windows.h>
CustomCCode #undef WIN32_LEAN_AND_MEAN
@@ -13,7 +11,9 @@ CustomCCode #if _MSC_VER <= 1200
CustomCCode typedef int intptr_t;
CustomCCode #endif
+Include glu-impl-common.cfg
+
# FIXME!!!!
# Include some hacks to get around the fact that GLU1.3 is not yet
# supported in Windows distributions.
-Include glu-impl-win32-GLU13Hacks.cfg
+# Include glu-impl-win32-GLU13Hacks.cfg
diff --git a/make/glu-impl-x11.cfg b/make/glu-impl-x11.cfg
index 3e46a73b5..35fc7034d 100644
--- a/make/glu-impl-x11.cfg
+++ b/make/glu-impl-x11.cfg
@@ -1,8 +1,6 @@
# This .cfg file is used to generate the GLU implementation on
# X11.
-Include glu-impl-common.cfg
-
CustomCCode #include <inttypes.h>
-
+Include glu-impl-common.cfg
diff --git a/make/glu-interface-common-CustomJavaCode.java b/make/glu-interface-common-CustomJavaCode.java
index 0019046c5..8be08f0a6 100644
--- a/make/glu-interface-common-CustomJavaCode.java
+++ b/make/glu-interface-common-CustomJavaCode.java
@@ -803,6 +803,118 @@ public void gluTessProperty(GLUtesselator tesselator, int which, double value);
public void gluTessVertex(GLUtesselator tesselator, double[] coords, Object data);
+//----------------------------------------------------------------------
+// Mipmap and scaling routines
+//
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, byte[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, short[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, int[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, float[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild1DMipmapLevels(int target, int internalFormat, int width, int format, int type, int level, int base, int max, java.nio.Buffer data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, byte[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, short[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, int[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild1DMipmaps(int target, int internalFormat, int width, int format, int type, float[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, byte[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, short[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, int[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, float[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild2DMipmapLevels(int target, int internalFormat, int width, int height, int format, int type, int level, int base, int max, java.nio.Buffer data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, byte[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, short[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, int[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, float[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild2DMipmaps(int target, int internalFormat, int width, int height, int format, int type, java.nio.Buffer data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, byte[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, short[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, int[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, float[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void * data); </code> */
+public int gluBuild3DMipmapLevels(int target, int internalFormat, int width, int height, int depth, int format, int type, int level, int base, int max, java.nio.Buffer data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, byte[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, short[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, int[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, float[] data);
+
+/** Interface to C language function: <br> <code> GLint gluBuild3DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data); </code> */
+public int gluBuild3DMipmaps(int target, int internalFormat, int width, int height, int depth, int format, int type, java.nio.Buffer data);
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, byte[] dataIn, int wOut, int hOut, int typeOut, byte[] dataOut);
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, short[] dataIn, int wOut, int hOut, int typeOut, short[] dataOut);
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, int[] dataIn, int wOut, int hOut, int typeOut, int[] dataOut);
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, float[] dataIn, int wOut, int hOut, int typeOut, float[] dataOut);
+
+/** Interface to C language function: <br> <code> GLint gluScaleImage(GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void * dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid * dataOut); </code> */
+public int gluScaleImage(int format, int wIn, int hIn, int typeIn, java.nio.Buffer dataIn, int wOut, int hOut, int typeOut, java.nio.Buffer dataOut);
+
+
+//----------------------------------------------------------------------
+// Function availability routines
+//
+
+
/**
* Returns true if the specified GLU core- or extension-function can be
* successfully used through this GLU instance. By "successfully" we mean
diff --git a/make/jawt-macosx.cfg b/make/jawt-macosx.cfg
index 829e4f80a..ebdbad734 100644
--- a/make/jawt-macosx.cfg
+++ b/make/jawt-macosx.cfg
@@ -18,6 +18,8 @@ IgnoreField JAWT_DrawingSurfaceInfo platformInfo
CustomCCode #include <inttypes.h>
CustomCCode #include <jawt.h>
+CustomCCode #include </usr/include/machine/types.h>
+
Import net.java.games.jogl.impl.JAWT_PlatformInfo
StructPackage JAWT_MacOSXDrawingSurfaceInfo net.java.games.jogl.impl.macosx
EmitStruct JAWT_MacOSXDrawingSurfaceInfo
diff --git a/make/jawt-x11.cfg b/make/jawt-x11.cfg
index 4161d7d13..5794ed4e0 100644
--- a/make/jawt-x11.cfg
+++ b/make/jawt-x11.cfg
@@ -7,8 +7,10 @@ JavaOutputDir ../build/gensrc/classes
NativeOutputDir ../build/gensrc/native/jogl
HierarchicalNativeOutput false
Opaque boolean jboolean
+Opaque long Drawable
Opaque long Display *
IgnoreField JAWT GetComponent
+IgnoreField JAWT_DrawingSurfaceInfo platformInfo
IgnoreField JAWT_X11DrawingSurfaceInfo GetAWTColor
CustomCCode #include <inttypes.h>
CustomCCode #include <jawt.h>
diff --git a/make/stub_includes/macosx/jni_md.h b/make/stub_includes/macosx/jni_md.h
index 3c2987529..449786272 100644
--- a/make/stub_includes/macosx/jni_md.h
+++ b/make/stub_includes/macosx/jni_md.h
@@ -3,7 +3,7 @@
#define JNIIMPORT
#define JNICALL
-typedef long jint;
+typedef int jint;
#ifdef _LP64 /* 64-bit Solaris */
typedef long jlong;
#else
diff --git a/make/stub_includes/macosx/window-system.c b/make/stub_includes/macosx/window-system.c
index 4b3f95649..e5ba4307f 100644
--- a/make/stub_includes/macosx/window-system.c
+++ b/make/stub_includes/macosx/window-system.c
@@ -4,6 +4,7 @@
typedef int Bool;
void* createContext(void* shareContext, void* nsView,
+ int doubleBuffer,
int redBits,
int greenBits,
int blueBits,
diff --git a/make/stub_includes/opengl/GL/glext.h b/make/stub_includes/opengl/GL/glext.h
index 3c99e777b..36b31d51b 100644
--- a/make/stub_includes/opengl/GL/glext.h
+++ b/make/stub_includes/opengl/GL/glext.h
@@ -6110,6 +6110,134 @@ typedef void (APIENTRY * PFNGLDRAWBUFFERREGIONPROC) (GLuint region, GLint x, GLi
typedef GLuint (APIENTRY * PFNGLBUFFERREGIONENABLEDPROC) (GLvoid);
#endif
+/*
+ * Note: (kbr) manually created this definition from the spec at http://www.opengl.org/documentation/extensions/EXT_framebuffer_object.txt
+ */
+#ifndef GL_EXT_framebuffer_object
+#define GL_FRAMEBUFFER_EXT 0x8D40
+#define GL_RENDERBUFFER_EXT 0x8D41
+#define GL_STENCIL_INDEX_EXT 0x8D45
+#define GL_STENCIL_INDEX1_EXT 0x8D46
+#define GL_STENCIL_INDEX4_EXT 0x8D47
+#define GL_STENCIL_INDEX8_EXT 0x8D48
+#define GL_STENCIL_INDEX16_EXT 0x8D49
+#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
+#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
+#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
+#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
+#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
+#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
+#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
+#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
+#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
+#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
+#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
+#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
+#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
+#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
+#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
+#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
+#define GL_COLOR_ATTACHMENT13_EXT 0x8CED
+#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
+#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
+#define GL_DEPTH_ATTACHMENT_EXT 0x8D00
+#define GL_STENCIL_ATTACHMENT_EXT 0x8D20
+#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
+#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
+#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
+#define GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT 0x8CD8
+#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
+#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
+#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
+#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
+#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
+#define GL_FRAMEBUFFER_STATUS_ERROR_EXT 0x8CDE
+#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
+#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
+#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
+#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
+#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
+#endif
+
+#ifndef GL_EXT_framebuffer_object
+#define GL_EXT_framebuffer_object 1
+#ifdef GL_GLEXT_PROTOTYPES
+GLAPI GLboolean APIENTRY glIsRenderbufferEXT(GLuint renderbuffer);
+GLAPI void APIENTRY glBindRenderbufferEXT(GLenum target, GLuint renderbuffer);
+GLAPI void APIENTRY glDeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers);
+GLAPI void APIENTRY glGenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers);
+
+GLAPI void APIENTRY glRenderbufferStorageEXT(GLenum target, GLenum internalformat,
+ GLsizei width, GLsizei height);
+
+GLAPI void APIENTRY glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint* params);
+
+GLAPI GLboolean APIENTRY glIsFramebufferEXT(GLuint framebuffer);
+GLAPI void APIENTRY glBindFramebufferEXT(GLenum target, GLuint framebuffer);
+GLAPI void APIENTRY glDeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers);
+GLAPI void APIENTRY glGenFramebuffersEXT(GLsizei n, GLuint *framebuffers);
+
+GLAPI GLenum APIENTRY glCheckFramebufferStatusEXT(GLenum target);
+
+GLAPI void APIENTRY glFramebufferTexture1DEXT(GLenum target, GLenum attachment,
+ GLenum textarget, GLuint texture,
+ GLint level);
+GLAPI void APIENTRY glFramebufferTexture2DEXT(GLenum target, GLenum attachment,
+ GLenum textarget, GLuint texture,
+ GLint level);
+GLAPI void APIENTRY glFramebufferTexture3DEXT(GLenum target, GLenum attachment,
+ GLenum textarget, GLuint texture,
+ GLint level, GLint zoffset);
+
+GLAPI void APIENTRY glFramebufferRenderbufferEXT(GLenum target, GLenum attachment,
+ GLenum renderbuffertarget, GLuint renderbuffer);
+
+GLAPI void APIENTRY glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment,
+ GLenum pname, GLint *params);
+
+GLAPI void APIENTRY glGenerateMipmapEXT(GLenum target);
+#endif
+typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer);
+typedef void (APIENTRYP PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer);
+typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint *renderbuffers);
+typedef void (APIENTRYP PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint *renderbuffers);
+
+typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat,
+ GLsizei width, GLsizei height);
+
+typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);
+
+typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer);
+typedef void (APIENTRYP PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer);
+typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint *framebuffers);
+typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint *framebuffers);
+
+typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target);
+
+typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment,
+ GLenum textarget, GLuint texture,
+ GLint level);
+typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment,
+ GLenum textarget, GLuint texture,
+ GLint level);
+typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment,
+ GLenum textarget, GLuint texture,
+ GLint level, GLint zoffset);
+
+typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment,
+ GLenum renderbuffertarget, GLuint renderbuffer);
+
+typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment,
+ GLenum pname, GLint *params);
+
+typedef void (APIENTRYP PFNGLGENERATEMIPMAPEXTPROC) (GLenum target);
+#endif
+
#ifdef __cplusplus
}
#endif
diff --git a/make/stub_includes/win32/jni_md.h b/make/stub_includes/win32/jni_md.h
index c2ccd0d45..0c020e8e9 100644
--- a/make/stub_includes/win32/jni_md.h
+++ b/make/stub_includes/win32/jni_md.h
@@ -3,7 +3,7 @@
#define JNIIMPORT
#define JNICALL
-typedef long jint;
+typedef int jint;
typedef __int64 jlong;
typedef signed char jbyte;
diff --git a/make/stub_includes/x11/X11/X.h b/make/stub_includes/x11/X11/X.h
index 2cd64bbf0..239836ee4 100644
--- a/make/stub_includes/x11/X11/X.h
+++ b/make/stub_includes/x11/X11/X.h
@@ -1,7 +1,7 @@
#ifndef _X_H_
#define _X_H_
-typedef unsigned long XID;
+typedef struct {} * XID;
typedef int Bool;
typedef struct {} Display;
typedef int Status;
diff --git a/make/stub_includes/x11/jni_md.h b/make/stub_includes/x11/jni_md.h
index 3c2987529..449786272 100644
--- a/make/stub_includes/x11/jni_md.h
+++ b/make/stub_includes/x11/jni_md.h
@@ -3,7 +3,7 @@
#define JNIIMPORT
#define JNICALL
-typedef long jint;
+typedef int jint;
#ifdef _LP64 /* 64-bit Solaris */
typedef long jlong;
#else