X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=bindings%2Fjava%2Forg%2Fsigrok%2Fcore%2Fclasses%2Fclasses.i;h=52eace85a7acfc7ed778b6fe07a8d3bf821dcd19;hb=7a958e2a0703ba1ddc4c27a3f597efe1873eec69;hp=5fdbc83e17cb97d590aa2591fb1c7f7ff888adf2;hpb=2928f47d6404e51c2dda1842c43db578cb1d6cdd;p=libsigrok.git diff --git a/bindings/java/org/sigrok/core/classes/classes.i b/bindings/java/org/sigrok/core/classes/classes.i index 5fdbc83e..52eace85 100644 --- a/bindings/java/org/sigrok/core/classes/classes.i +++ b/bindings/java/org/sigrok/core/classes/classes.i @@ -7,6 +7,13 @@ } %} +/* Import interfaces. */ +%pragma(java) jniclassimports=%{ + import org.sigrok.core.interfaces.LogCallback; + import org.sigrok.core.interfaces.DatafeedCallback; + import org.sigrok.core.interfaces.SourceCallback; +%} + /* Map Java FileDescriptor objects to int fds */ %typemap(jni) int fd "jobject" %typemap(jtype) int fd "java.io.FileDescriptor" @@ -197,7 +204,7 @@ MAP_COMMON(const sigrok::ConfigKey *, Glib::VariantBase, ConfigKey, Variant) std::shared_ptr create_output( std::shared_ptr device) { - std::map options; + std::map options; return $self->create_output(device, options); } } @@ -210,6 +217,9 @@ MAP_COMMON(const sigrok::ConfigKey *, Glib::VariantBase, ConfigKey, Variant) /* Support Java log callbacks. */ +%typemap(javaimports) sigrok::Context + "import org.sigrok.core.interfaces.LogCallback;" + %inline { typedef jobject jlogcallback; } @@ -249,6 +259,9 @@ typedef jobject jlogcallback; /* Support Java datafeed callbacks. */ +%typemap(javaimports) sigrok::Session + "import org.sigrok.core.interfaces.DatafeedCallback;" + %inline { typedef jobject jdatafeedcallback; } @@ -296,6 +309,9 @@ typedef jobject jdatafeedcallback; /* Support Java event source callbacks. */ +%typemap(javaimports) sigrok::EventSource + "import org.sigrok.core.interfaces.SourceCallback;" + %inline { typedef jobject jsourcecallback; } @@ -326,4 +342,7 @@ typedef jobject jsourcecallback; } } +/* Currently broken due to some std::map typemap issues. */ +%ignore sigrok::Meta::get_config; + %include "bindings/swig/classes.i"