aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Zucchi <[email protected]>2013-01-25 15:37:49 +0100
committerXerxes Rånby <[email protected]>2013-01-25 15:37:49 +0100
commit3cf2b66e13104b372611b3a9dbb722110370a9c7 (patch)
tree070bbe4e58f4661a601259e1ddfe6e96eefb3be4 /src
parent6b86449596dabf87201d7321799a39a7b78ab692 (diff)
Bug 567 (part 1): add support for openal extensions
Imported JOAL specific parts from the patch made by Michael Zucchi. Author: Michael Zucchi <[email protected]> Signed-off-by: Xerxes Rånby <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/java/com/jogamp/openal/ALFactory.java16
-rw-r--r--src/java/jogamp/openal/ALExtImpl.java15
-rw-r--r--src/java/jogamp/openal/Debug.java2
-rw-r--r--src/native/almisc.c2
4 files changed, 33 insertions, 2 deletions
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 ) {