From 93c63bd880b6bc8a85a0057112b5065b312af1db Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Mon, 26 Jun 2023 03:14:59 +0200 Subject: GlueGen JavaCallback: Use new JavaType nature 'named-class', denoting the generated callback interface mapping the callback function. This passes the jobject for the callback function/interface and the userParam (from 'void*') down to the native implementation. TODO: Add specific native implementation for JavaCallback, wrapping the jobject's into a native struct as user-param and a universal C-function as the native callback to dispatch the call to the java method with known arguments. --- src/java/com/jogamp/gluegen/JavaEmitter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/java/com/jogamp/gluegen/JavaEmitter.java') diff --git a/src/java/com/jogamp/gluegen/JavaEmitter.java b/src/java/com/jogamp/gluegen/JavaEmitter.java index 59ca290..4953807 100644 --- a/src/java/com/jogamp/gluegen/JavaEmitter.java +++ b/src/java/com/jogamp/gluegen/JavaEmitter.java @@ -3103,7 +3103,7 @@ public class JavaEmitter implements GlueEmitter { if( isJavaCallbackArg ) { // Replace JavaCallback type with generated interface name - mappedType = JavaType.createForCStruct(cArgType.getName()); + mappedType = JavaType.createForNamedClass(cArgType.getName()); } else if( null != javaCallback && null != javaCallback.userParamName && javaCallback.userParamName.equals( cArgName ) && cArgType.isPointer() && cArgType.getTargetType().isVoid() ) -- cgit v1.2.3