diff options
Diffstat (limited to 'make')
-rw-r--r-- | make/build.xml | 63 | ||||
-rw-r--r-- | make/cg-common.cfg | 26 | ||||
-rw-r--r-- | make/cgl-macosx.cfg | 4 | ||||
-rw-r--r-- | make/gl-common-x11.cfg | 3 | ||||
-rw-r--r-- | make/gl-glx-common.cfg | 4 | ||||
-rw-r--r-- | make/gl-impl-macosx.cfg | 2 | ||||
-rw-r--r-- | make/glu-common.cfg | 28 | ||||
-rw-r--r-- | make/glu-impl-common-CustomCCode.c | 831 | ||||
-rw-r--r-- | make/glu-impl-common-CustomJavaCode.java | 1219 | ||||
-rw-r--r-- | make/glu-impl-common.cfg | 5 | ||||
-rw-r--r-- | make/glu-impl-macosx.cfg | 6 | ||||
-rw-r--r-- | make/glu-impl-win32.cfg | 6 | ||||
-rw-r--r-- | make/glu-impl-x11.cfg | 4 | ||||
-rw-r--r-- | make/glu-interface-common-CustomJavaCode.java | 112 | ||||
-rw-r--r-- | make/jawt-macosx.cfg | 2 | ||||
-rw-r--r-- | make/jawt-x11.cfg | 2 | ||||
-rw-r--r-- | make/stub_includes/macosx/jni_md.h | 2 | ||||
-rw-r--r-- | make/stub_includes/macosx/window-system.c | 1 | ||||
-rw-r--r-- | make/stub_includes/opengl/GL/glext.h | 128 | ||||
-rw-r--r-- | make/stub_includes/win32/jni_md.h | 2 | ||||
-rw-r--r-- | make/stub_includes/x11/X11/X.h | 2 | ||||
-rw-r--r-- | make/stub_includes/x11/jni_md.h | 2 |
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 |