From 3cf2b66e13104b372611b3a9dbb722110370a9c7 Mon Sep 17 00:00:00 2001 From: Michael Zucchi Date: Fri, 25 Jan 2013 15:37:49 +0100 Subject: Bug 567 (part 1): add support for openal extensions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Imported JOAL specific parts from the patch made by Michael Zucchi. Author: Michael Zucchi Signed-off-by: Xerxes RĂ„nby --- src/java/com/jogamp/openal/ALFactory.java | 16 ++++++++++++++++ src/java/jogamp/openal/ALExtImpl.java | 15 +++++++++++++++ src/java/jogamp/openal/Debug.java | 2 +- src/native/almisc.c | 2 +- 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 src/java/jogamp/openal/ALExtImpl.java (limited to 'src') diff --git a/src/java/com/jogamp/openal/ALFactory.java b/src/java/com/jogamp/openal/ALFactory.java index 29174ba..f442f00 100644 --- a/src/java/com/jogamp/openal/ALFactory.java +++ b/src/java/com/jogamp/openal/ALFactory.java @@ -36,6 +36,7 @@ package com.jogamp.openal; import com.jogamp.common.os.Platform; import com.jogamp.openal.AL; import com.jogamp.openal.ALC; +import com.jogamp.openal.ALExt; import jogamp.openal.*; /** @@ -50,6 +51,7 @@ public class ALFactory { private static boolean initialized = false; private static AL al; private static ALC alc; + private static ALExt alext; private ALFactory() {} @@ -97,4 +99,18 @@ public class ALFactory { } return alc; } + + /** + * Get the default ALExt object. This object is used to access most of the + * OpenAL extension functionality. + * + * @return the ALExt object + */ + public static ALExt getALExt() throws ALException{ + initialize(); + if (alext == null) { + alext = new ALExtImpl(); + } + return alext; + } } diff --git a/src/java/jogamp/openal/ALExtImpl.java b/src/java/jogamp/openal/ALExtImpl.java new file mode 100644 index 0000000..23deab1 --- /dev/null +++ b/src/java/jogamp/openal/ALExtImpl.java @@ -0,0 +1,15 @@ +package jogamp.openal; + +import com.jogamp.common.nio.Buffers; +import com.jogamp.openal.ALException; +import com.jogamp.openal.ALCdevice; +import java.io.UnsupportedEncodingException; +import java.nio.ByteBuffer; +import java.util.ArrayList; + +/** + * ALExt implementation. + */ +public class ALExtImpl extends ALExtAbstractImpl { + +} diff --git a/src/java/jogamp/openal/Debug.java b/src/java/jogamp/openal/Debug.java index 36d2ecd..b73c955 100644 --- a/src/java/jogamp/openal/Debug.java +++ b/src/java/jogamp/openal/Debug.java @@ -68,6 +68,6 @@ public class Debug extends PropertyAccess { } public static boolean debug(String subcomponent) { - return debugAll() || isPropertyDefined("joal.debug." + subcomponent, true); + return debugAll() || isPropertyDefined("joal.debug." + subcomponent, true, null); } } diff --git a/src/native/almisc.c b/src/native/almisc.c index b850a9f..c77cb0e 100644 --- a/src/native/almisc.c +++ b/src/native/almisc.c @@ -31,7 +31,7 @@ JNIEXPORT jlong JNICALL Java_jogamp_openal_ALImpl_dispatch_1alGetProcAddressStatic(JNIEnv *env, jclass _unused, jstring fname, jlong procAddress) { LPALGETPROCADDRESS ptr_alGetProcAddress; const char* _strchars_fname = NULL; - ALproc _res; + void *_res; if ( NULL != fname ) { _strchars_fname = (*env)->GetStringUTFChars(env, fname, (jboolean*)NULL); if ( NULL == _strchars_fname ) { -- cgit v1.2.3