From 6d53b4b1dd07006e7af0e540b2c2e6ee6e1746d5 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Sun, 2 Jul 2023 14:26:04 +0200 Subject: GlueGen JavaCallback: Unify native 'T_JavaCallbackGlueData' typedef struct --- src/java/com/jogamp/gluegen/CCodeUnit.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/java/com/jogamp/gluegen/CCodeUnit.java') diff --git a/src/java/com/jogamp/gluegen/CCodeUnit.java b/src/java/com/jogamp/gluegen/CCodeUnit.java index 5c0db27..c70df79 100644 --- a/src/java/com/jogamp/gluegen/CCodeUnit.java +++ b/src/java/com/jogamp/gluegen/CCodeUnit.java @@ -84,6 +84,11 @@ public class CCodeUnit extends CodeUnit { emitln( getJNIOnLoadJNIEnvCode(libraryBasename) ); } + /** Emits {@link #JavaCallbackGlueDataDecl}. */ + public void emitJavaCallbackGlueDataDecl() { + emitln( JavaCallbackGlueDataDecl ); + } + @Override public String toString() { return "CCodeUnit[unit "+cUnitName+", file "+filename+"]"; } @@ -108,6 +113,16 @@ public class CCodeUnit extends CodeUnit { " return jbyteBuffer;\n"+ "}\n"; + /** JavaCallback Glue Data typedef struct */ + public static final String JavaCallbackGlueDataDecl = + "typedef struct {\n"+ + " jobject lockObj;\n"+ + " jobject cbFunc;\n"+ + " jmethodID cbMethodID;\n"+ + " jobject userParam;\n"+ + "} T_JavaCallbackGlueData;\n"+ + "\n"; + /** * Returns native JNI declarations for `JavaVM* {libraryBasename}_jvmHandle` * and `JVMUtil_GetJNIEnv(..)`. -- cgit v1.2.3