1765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%module javaupm_i2clcd
2765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "../upm.i"
3765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "stdint.i"
4765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "typemaps.i"
5765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "arrays_java.i";
6765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
7765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%apply signed char[] {uint8_t []};
8765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%ignore BasicFont;
9765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
10765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%typemap(jni) (uint8_t *data, int bytes) "jbyteArray";
11765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%typemap(jtype) (uint8_t *data, int bytes) "byte[]";
12765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%typemap(jstype) (uint8_t *data, int bytes) "byte[]";
13765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
14765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%typemap(javain) (uint8_t *data, int bytes) "$javainput";
15765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
16765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%typemap(in) (uint8_t *data, int bytes) {
17765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang        $1 = (uint8_t *) JCALL2(GetByteArrayElements, jenv, $input, NULL);
18765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang        $2 = JCALL1(GetArrayLength, jenv, $input);
19765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang}
20765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
21765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%typemap(freearg) (uint8_t *data, int bytes) {
22765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang        JCALL3(ReleaseByteArrayElements, jenv, $input, (jbyte *)$1, 0);
23765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang}
24765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
25765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%{
26765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "lcd.h"
27765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "ssd.h"
28765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "ssd1327.h"
29765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "ssd1308.h"
30765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "ssd1306.h"
31765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "eboled.h"
32765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "lcm1602.h"
33765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "jhd1313m1.h"
34765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang    #include "sainsmartks.h"
35765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%}
36765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang
37765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "lcd.h"
38765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "ssd.h"
39765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "ssd1327.h"
40765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "ssd1308.h"
41765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "ssd1306.h"
42765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "eboled.h"
43765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "lcm1602.h"
44765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "jhd1313m1.h"
45765adb95dc941c32690d6c43bc08b9d07d197fcbJianxun Zhang%include "sainsmartks.h"
46