Mercurial > hg > jvamp
view src/handle.h @ 5:8a0ac3d6903d
Fill in some more function definitions, including a getInputDomain that actually returns an enum! Woo
author | Chris Cannam |
---|---|
date | Mon, 23 Jan 2012 23:00:33 +0000 |
parents | f718b0961713 |
children | c9515589be7d |
line wrap: on
line source
#ifndef _HANDLE_H_INCLUDED_ #define _HANDLE_H_INCLUDED_ inline jfieldID getHandleField(JNIEnv *env, jobject obj) { jclass c = env->GetObjectClass(obj); return env->GetFieldID(c, "nativeHandle", "J"); } template <typename T> T *getHandle(JNIEnv *env, jobject obj) { jlong handle = env->GetLongField(obj, getHandleField(env, obj)); return reinterpret_cast<T *>(handle); } template <typename T> void setHandle(JNIEnv *env, jobject obj, T *t) { jlong handle = reinterpret_cast<jlong>(t); env->SetLongField(obj, getHandleField(env, obj), handle); } #endif