%module javaupm_bmm150 %include "../upm.i" %include "typemaps.i" %include "../upm_javastdvector.i" %ignore getMagnetometer(float *, float *, float *); %typemap(javaimports) SWIGTYPE %{ import java.util.AbstractList; import java.lang.Float; %} %typemap(javaout) SWIGTYPE { return new $&javaclassname($jnicall, true); } %typemap(javaout) std::vector { return (AbstractList)(new $&javaclassname($jnicall, true)); } %typemap(jstype) std::vector "AbstractList" %template(floatVector) std::vector; %include "bmm150_defs.h" %include "bmm150.hpp" %{ #include "bmm150.hpp" %} %pragma(java) jniclasscode=%{ static { try { System.loadLibrary("javaupm_bmm150"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load. \n" + e); System.exit(1); } } %}