From ff2152017924a689f389bcee62713b4142b588c6 Mon Sep 17 00:00:00 2001 From: Brian Matzon Date: Fri, 25 Mar 2005 01:42:04 +0000 Subject: [PATCH] added ilutGetv --- src/java/org/lwjgl/devil/ILUT.java | 9 ++++-- .../common/devil/org_lwjgl_devil_ILUT.c | 28 +++++++++++++++++-- 2 files changed, 32 insertions(+), 5 deletions(-) diff --git a/src/java/org/lwjgl/devil/ILUT.java b/src/java/org/lwjgl/devil/ILUT.java index 01c19d35..b41a13d1 100644 --- a/src/java/org/lwjgl/devil/ILUT.java +++ b/src/java/org/lwjgl/devil/ILUT.java @@ -33,6 +33,8 @@ package org.lwjgl.devil; import java.io.File; import java.lang.reflect.Method; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; import java.util.ArrayList; import java.util.List; import java.util.StringTokenizer; @@ -94,15 +96,16 @@ public class ILUT { public static native boolean ilutEnable(int mode); public static native boolean ilutGetBoolean(int mode); public static native int ilutGetInteger(int mode); - public static native String ilutGetString(int stringName); + public static native void ilutGetBooleanv(int mode, ByteBuffer param); + public static native void ilutGetIntegerv(int mode, IntBuffer Param); + public static native String ilutGetString(int stringName); private static native void ilutInit(); public static native boolean ilutIsDisabled(int mode); public static native boolean ilutIsEnabled(int mode); public static native void ilutPopAttrib(); public static native void ilutPushAttrib(int bits); public static native void ilutSetInteger(int Mode, int param); - // public static native void ilutGetBooleanv(int mode, ILboolean *Param); - // public static native void ilutGetIntegerv(int mode, ILint *Param); + // ImageLib Utility Toolkit's OpenGL Functions public static native int ilutGLBindTexImage(); diff --git a/src/native/common/devil/org_lwjgl_devil_ILUT.c b/src/native/common/devil/org_lwjgl_devil_ILUT.c index c125d97c..b5f9e19e 100644 --- a/src/native/common/devil/org_lwjgl_devil_ILUT.c +++ b/src/native/common/devil/org_lwjgl_devil_ILUT.c @@ -5,6 +5,8 @@ typedef ILboolean (ILAPIENTRY *ilutDisablePROC) (ILenum Mode); typedef ILboolean (ILAPIENTRY *ilutEnablePROC) (ILenum Mode); typedef ILboolean (ILAPIENTRY *ilutGetBooleanPROC) (ILenum Mode); typedef ILint (ILAPIENTRY *ilutGetIntegerPROC) (ILenum Mode); +typedef void (ILAPIENTRY *ilutGetBooleanvPROC) (ILenum Mode, ILboolean *Param); +typedef void (ILAPIENTRY *ilutGetIntegervPROC) (ILenum Mode, ILint *Param); typedef const ILstring (ILAPIENTRY *ilutGetStringPROC) (ILenum StringName); typedef ILvoid (ILAPIENTRY *ilutInitPROC) (ILvoid); typedef ILboolean (ILAPIENTRY *ilutIsDisabledPROC) (ILenum Mode); @@ -27,6 +29,8 @@ static ilutDisablePROC ilutDisable; static ilutEnablePROC ilutEnable; static ilutGetBooleanPROC ilutGetBoolean; static ilutGetIntegerPROC ilutGetInteger; +static ilutGetBooleanvPROC ilutGetBooleanv; +static ilutGetIntegervPROC ilutGetIntegerv; static ilutGetStringPROC ilutGetString; static ilutInitPROC ilutInit; static ilutIsDisabledPROC ilutIsDisabled; @@ -89,6 +93,26 @@ JNIEXPORT jint JNICALL Java_org_lwjgl_devil_ILUT_ilutGetInteger(JNIEnv *env, jcl return ilutGetInteger((ILenum)mode); } +/* + * Class: org_lwjgl_devil_ILUT + * Method: ilutGetBooleanv + * Signature: (ILjava/nio/CharBuffer;)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_devil_ILUT_ilutGetBooleanv(JNIEnv *env, jclass clazz, jint mode, jobject param) { + ILboolean* destination = (ILboolean*) safeGetBufferAddress(env, param); + ilutGetBooleanv(mode, destination); +} + +/* + * Class: org_lwjgl_devil_ILUT + * Method: ilutGetIntegerv + * Signature: (ILjava/nio/IntBuffer;)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_devil_ILUT_ilutGetIntegerv(JNIEnv *env, jclass clazz, jint mode, jobject param) { + ILint* destination = (ILint*) safeGetBufferAddress(env, param); + ilutGetIntegerv(mode, destination); +} + /* * Class: org_lwjgl_devil_ILUT * Method: ilutGetString @@ -188,7 +212,6 @@ JNIEXPORT jint JNICALL Java_org_lwjgl_devil_ILUT_ilutGLLoadImage(JNIEnv *env, jc char *strFileName = GetStringNativeChars(env, fileName); jint result = ilutGLLoadImage((const ILstring)strFileName); free(strFileName); - return result; } @@ -219,7 +242,6 @@ JNIEXPORT jboolean JNICALL Java_org_lwjgl_devil_ILUT_ilutGLSaveImage(JNIEnv *env char *strFileName = GetStringNativeChars(env, fileName); jboolean result = ilutGLSaveImage((const ILstring)strFileName, texID); free(strFileName); - return result; } @@ -268,6 +290,8 @@ JavaMethodAndExtFunction functions[] = { {"ilutEnable", "(I)Z", (void*)&Java_org_lwjgl_devil_ILUT_ilutEnable, "ilutEnable", (void*)&ilutEnable}, {"ilutGetBoolean", "(I)Z", (void*)&Java_org_lwjgl_devil_ILUT_ilutGetBoolean, "ilutGetBoolean", (void*)&ilutGetBoolean}, {"ilutGetInteger", "(I)I", (void*)&Java_org_lwjgl_devil_ILUT_ilutGetInteger, "ilutGetInteger", (void*)&ilutGetInteger}, + {"ilutGetBooleanv", "(ILjava/nio/ByteBuffer;)V", (void*)&Java_org_lwjgl_devil_ILUT_ilutGetBooleanv, "ilutGetBooleanv", (void*)&ilutGetBooleanv}, + {"ilutGetIntegerv", "(ILjava/nio/IntBuffer;)V", (void*)&Java_org_lwjgl_devil_ILUT_ilutGetIntegerv, "ilutGetIntegerv", (void*)&ilutGetIntegerv}, {"ilutGetString", "(I)Ljava/lang/String;", (void*)&Java_org_lwjgl_devil_ILUT_ilutGetString, "ilutGetString", (void*)&ilutGetString}, {"ilutInit", "()V", (void*)&Java_org_lwjgl_devil_ILUT_ilutInit, "ilutInit", (void*)&ilutInit}, {"ilutIsDisabled", "(I)Z", (void*)&Java_org_lwjgl_devil_ILUT_ilutIsDisabled, "ilutIsDisabled", (void*)&ilutIsDisabled},