comparison bindings/java/libAudioDB_JNI.c @ 698:10d3692e0b06

* Initial commit of Java bindings. * Currently supports creation of db. More to come!
author mas01mj
date Mon, 26 Apr 2010 17:17:07 +0000
parents
children
comparison
equal deleted inserted replaced
697:2741bbda39d7 698:10d3692e0b06
1 #include "AudioDB.h"
2
3 #include <jni.h>
4 #include "audioDB_API.h"
5
6
7 JNIEXPORT jboolean JNICALL Java_AudioDB_audiodb_1create (JNIEnv *env, jobject obj, jstring path, jint datasize, jint ntracks, jint datadim)
8 {
9 char buf[256];
10 const char *str;
11 str = (*env)->GetStringUTFChars(env, path, NULL);
12 if (str == NULL)
13 return;
14
15 adb_t *handle;
16 handle = audiodb_create(str, datasize, ntracks, datadim);
17 if(!handle)
18 return JNI_FALSE;
19
20 (*env)->ReleaseStringUTFChars(env, path, str);
21 return JNI_TRUE;
22 }
23
24 JNIEXPORT jboolean JNICALL Java_AudioDB_audiodb_1open (JNIEnv *env, jobject obj, jstring path, jobject mode)
25 {
26 jclass modeClass = (*env)->FindClass(env, "AudioDB$Mode");
27 jmethodID getNameMethod = (*env)->GetMethodID(env, modeClass, "name", "()Ljava/lang/String;");
28 jstring value = (jstring)(*env)->CallObjectMethod(env, mode, getNameMethod);
29 const char* openMode = (*env)->GetStringUTFChars(env, value, 0);
30
31 return JNI_TRUE;
32 }
33
34 JNIEXPORT void JNICALL Java_AudioDB_insert(JNIEnv *env, jobject obj)
35 {
36 }
37
38 JNIEXPORT void JNICALL Java_AudioDB_query(JNIEnv *env, jobject obj)
39 {
40 }
41
42 JNIEXPORT void JNICALL Java_AudioDB_status(JNIEnv *env, jobject obj)
43 {
44 }
45