Home | History | Annotate | Download | only in mic
      1 %module javaupm_mic
      2 %include "../upm.i"
      3 %include "stdint.i"
      4 %include "arrays_java.i"
      5 
      6 %{
      7     #include "mic.h"
      8 %}
      9 
     10 %typemap(jni) (uint16_t *buffer, int len) "jshortArray";
     11 %typemap(jtype) (uint16_t *buffer, int len) "short[]";
     12 %typemap(jstype) (uint16_t *buffer, int len) "short[]";
     13 
     14 %typemap(javain) (uint16_t *buffer, int len) "$javainput";
     15 
     16 %typemap(in) (uint16_t *buffer, int len) {
     17         $1 = (uint16_t *) JCALL2(GetShortArrayElements, jenv, $input, NULL);
     18         $2 = JCALL1(GetArrayLength, jenv, $input);
     19 }
     20 
     21 %typemap(freearg) (uint16_t *buffer, int len) {
     22         JCALL3(ReleaseShortArrayElements, jenv, $input, (jshort *)$1, 0);
     23 }
     24 
     25 %typemap(jni) (int numberOfSamples, uint16_t *buffer) "jshortArray";
     26 %typemap(jtype) (int numberOfSamples, uint16_t *buffer) "short[]";
     27 %typemap(jstype) (int numberOfSamples, uint16_t *buffer) "short[]";
     28 
     29 %typemap(javain) (int numberOfSamples, uint16_t *buffer) "$javainput";
     30 
     31 %typemap(in) (int numberOfSamples, uint16_t *buffer) {
     32         $2 = (uint16_t *) JCALL2(GetShortArrayElements, jenv, $input, NULL);
     33         $1 = JCALL1(GetArrayLength, jenv, $input);
     34 }
     35 
     36 %typemap(freearg) (int numberOfSamples, uint16_t *buffer) {
     37         JCALL3(ReleaseShortArrayElements, jenv, $input, (jshort *)$2, 0);
     38 }
     39 
     40 %include "mic.h"
     41