aboutsummaryrefslogtreecommitdiffstats
path: root/src/nativewindow/native/NativewindowCommon.h
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2013-11-29 02:24:01 +0100
committerSven Gothel <[email protected]>2013-11-29 02:24:01 +0100
commit586446311ea1ba87f98236d5347955bf99b465d6 (patch)
tree2bba93f117ec08bbb3ea96ee6cd2c44d97b04421 /src/nativewindow/native/NativewindowCommon.h
parentcb0afe743d21a3480e2d41744a904ac7d404612d (diff)
Bug 907 - Refine DummyDispatchThread (DDT) Handling: Proper OO integration in RegisteredClass; Safe DDT Post/WaitForReady handling and error cases ; ...
Proper OO integration of DDT in RegisteredClass - DDT is optional to RegisteredClass[Factory], i.e. NEWT without DDT and DummyWindow with DDT. - Using native type DummyThreadContext per DDT passed as DDT handle to java referenced in RegisteredClass - Passing DDT handle to related native methods, if not null use DDT - otherwise work on current thread. The latter impacts CreateDummyWindow0 and DestroyWindow0. Safe DDT Post/WaitForReady handling and error cases ; ... - Wait until command it complete using a 3s timeout - Terminate thread if errors occur and throw an exception +++ Discussion: DDT Native Implementation Due to original code, the DDT is implemented in native code. Usually we should favor running the DDT from a java thread. However, since it's main purpose is _not_ to interact w/ java and the native implementation has less footprint (performance and memory) we shall be OK w/ it for now - as long the implementation IS SAFE.
Diffstat (limited to 'src/nativewindow/native/NativewindowCommon.h')
-rw-r--r--src/nativewindow/native/NativewindowCommon.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/nativewindow/native/NativewindowCommon.h b/src/nativewindow/native/NativewindowCommon.h
index a2975f3fd..a23fad9fd 100644
--- a/src/nativewindow/native/NativewindowCommon.h
+++ b/src/nativewindow/native/NativewindowCommon.h
@@ -4,6 +4,7 @@
#include <jni.h>
#include <stdlib.h>
+#include <gluegen_stdint.h>
int NativewindowCommon_init(JNIEnv *env);
@@ -15,4 +16,6 @@ void NativewindowCommon_throwNewRuntimeException(JNIEnv *env, const char* msg, .
JNIEnv* NativewindowCommon_GetJNIEnv (JavaVM * jvmHandle, int jvmVersion, int asDaemon, int * shallBeDetached);
+int64_t NativewindowCommon_CurrentTimeMillis();
+
#endif