annotate src/RealTime.cpp @ 21:0a91d898acc3

Finish implementation of RealTime; add dispose() calls
author Chris Cannam
date Thu, 09 Feb 2012 16:18:33 +0000
parents cf6c69871f9c
children 02db37c2301b
rev   line source
Chris@20 1 #include "org_vamp_plugins_RealTime.h"
Chris@20 2
Chris@20 3 #include <vamp-hostsdk/RealTime.h>
Chris@20 4
Chris@20 5 #include "handle.h"
Chris@20 6
Chris@20 7 using Vamp::RealTime;
Chris@20 8 using std::string;
Chris@20 9
Chris@20 10 void
Chris@20 11 Java_org_vamp_1plugins_RealTime_dispose(JNIEnv *env, jobject obj)
Chris@20 12 {
Chris@20 13 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 14 setHandle<RealTime>(env, obj, 0);
Chris@20 15 delete rt;
Chris@20 16 }
Chris@20 17
Chris@20 18 jint
Chris@20 19 Java_org_vamp_1plugins_RealTime_sec(JNIEnv *env, jobject obj)
Chris@20 20 {
Chris@20 21 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 22 return rt->sec;
Chris@20 23 }
Chris@20 24
Chris@20 25 jint
Chris@20 26 Java_org_vamp_1plugins_RealTime_nsec(JNIEnv *env, jobject obj)
Chris@20 27 {
Chris@20 28 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 29 return rt->nsec;
Chris@20 30 }
Chris@20 31
Chris@20 32 jint
Chris@20 33 Java_org_vamp_1plugins_RealTime_usec(JNIEnv *env, jobject obj)
Chris@20 34 {
Chris@20 35 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 36 return rt->usec();
Chris@20 37 }
Chris@20 38
Chris@20 39 jint
Chris@20 40 Java_org_vamp_1plugins_RealTime_msec(JNIEnv *env, jobject obj)
Chris@20 41 {
Chris@20 42 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 43 return rt->msec();
Chris@20 44 }
Chris@20 45
Chris@20 46 jstring
Chris@20 47 Java_org_vamp_1plugins_RealTime_toString(JNIEnv *env, jobject obj)
Chris@20 48 {
Chris@20 49 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 50 return env->NewStringUTF(rt->toString().c_str());
Chris@20 51 }
Chris@20 52
Chris@20 53 jstring
Chris@20 54 Java_org_vamp_1plugins_RealTime_toText(JNIEnv *env, jobject obj)
Chris@20 55 {
Chris@20 56 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@20 57 return env->NewStringUTF(rt->toText().c_str());
Chris@20 58 }
Chris@20 59
Chris@20 60 jobject
Chris@20 61 Java_org_vamp_1plugins_RealTime_fromSeconds(JNIEnv *env, jclass cls, jdouble s)
Chris@20 62 {
Chris@21 63 jclass rtClass = env->FindClass("org/vamp_plugins/RealTime");
Chris@21 64 jmethodID rtCtor = env->GetMethodID(rtClass, "<init>", "(II)V");
Chris@21 65 RealTime rt = RealTime::fromSeconds(s);
Chris@21 66 return env->NewObject(rtClass, rtCtor, rt.sec, rt.nsec);
Chris@20 67 }
Chris@20 68
Chris@21 69 jobject Java_org_vamp_1plugins_RealTime_fromMilliseconds(JNIEnv *env, jclass cls, jint ms)
Chris@20 70 {
Chris@21 71 jclass rtClass = env->FindClass("org/vamp_plugins/RealTime");
Chris@21 72 jmethodID rtCtor = env->GetMethodID(rtClass, "<init>", "(II)V");
Chris@21 73 RealTime rt = RealTime::fromMilliseconds(ms);
Chris@21 74 return env->NewObject(rtClass, rtCtor, rt.sec, rt.nsec);
Chris@20 75 }
Chris@20 76
Chris@21 77 jobject Java_org_vamp_1plugins_RealTime_frame2RealTime(JNIEnv *env, jclass cls, jlong frame, jint sampleRate)
Chris@21 78 {
Chris@21 79 jclass rtClass = env->FindClass("org/vamp_plugins/RealTime");
Chris@21 80 jmethodID rtCtor = env->GetMethodID(rtClass, "<init>", "(II)V");
Chris@21 81 RealTime rt = RealTime::frame2RealTime(frame, sampleRate);
Chris@21 82 return env->NewObject(rtClass, rtCtor, rt.sec, rt.nsec);
Chris@21 83 }
Chris@20 84
Chris@21 85 jlong Java_org_vamp_1plugins_RealTime_realTime2Frame(JNIEnv *env, jclass cls, jobject obj, jint sampleRate)
Chris@21 86 {
Chris@21 87 RealTime *rt = getHandle<RealTime>(env, obj);
Chris@21 88 return RealTime::realTime2Frame(*rt, sampleRate);
Chris@21 89 }
Chris@20 90
Chris@21 91 void Java_org_vamp_1plugins_RealTime_initialise(JNIEnv *env, jobject obj, jint sec, jint nsec)
Chris@21 92 {
Chris@21 93 RealTime *rt = new RealTime(sec, nsec);
Chris@21 94 setHandle(env, obj, rt);
Chris@21 95 }
Chris@21 96
Chris@21 97
Chris@21 98