Commit | Line | Data |
---|---|---|
05c0dae8 TH |
1 | /* File: example.i */ |
2 | %module ftdi | |
3 | %include "typemaps.i" | |
4 | %include "cpointer.i" | |
f5b59bd6 | 5 | %pointer_functions(unsigned int, uintp); |
442f0164 CZ |
6 | %pointer_functions(unsigned char *, ucharp); |
7 | %pointer_functions(char *, charp); | |
f5b59bd6 | 8 | |
05c0dae8 TH |
9 | %typemap(in) unsigned char* = char*; |
10 | %ignore ftdi_write_data_async; | |
11 | %ignore ftdi_async_complete; | |
12 | ||
b060307c TJ |
13 | %immutable ftdi_version_info::version_str; |
14 | %immutable ftdi_version_info::snapshot_str; | |
15 | ||
05c0dae8 TH |
16 | %include ftdi.h |
17 | %{ | |
18 | #include <ftdi.h> | |
19 | %} | |
20 | ||
b790d38e UB |
21 | %include ftdi_i.h |
22 | %{ | |
23 | #include <ftdi_i.h> | |
24 | %} | |
25 | ||
05c0dae8 TH |
26 | extern "C" { |
27 | ||
28 | %apply char *OUTPUT { unsigned char *buf }; | |
29 | int ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size); | |
30 | %clear unsigned char *buf; | |
f0005c33 | 31 | |
05c0dae8 TH |
32 | %apply int *OUTPUT { unsigned int *chunksize }; |
33 | int ftdi_read_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize); | |
34 | int ftdi_write_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize); | |
35 | %clear unsigned int *chunksize; | |
f0005c33 | 36 | |
05c0dae8 TH |
37 | //int ftdi_write_data_async(struct ftdi_context *ftdi, unsigned char *buf, int size); |
38 | //void ftdi_async_complete(struct ftdi_context *ftdi, int wait_for_more); | |
39 | %apply char *OUTPUT { unsigned char *pins }; | |
40 | int ftdi_read_pins(struct ftdi_context *ftdi, unsigned char *pins); | |
41 | %clear unsigned char *pins; | |
f0005c33 | 42 | |
05c0dae8 TH |
43 | %apply char *OUTPUT { unsigned char *latency }; |
44 | int ftdi_get_latency_timer(struct ftdi_context *ftdi, unsigned char *latency); | |
f0005c33 TJ |
45 | %clear unsigned char *latency; |
46 | ||
47 | %apply char *OUTPUT { unsigned short *status }; | |
05c0dae8 | 48 | int ftdi_poll_modem_status(struct ftdi_context *ftdi, unsigned short *status); |
f0005c33 TJ |
49 | %clear unsigned short *status; |
50 | ||
05c0dae8 | 51 | %apply char *OUTPUT { unsigned char *output }; |
a35aa9bd | 52 | int ftdi_eeprom_build(struct ftdi_context *ftdi); |
05c0dae8 | 53 | %clear unsigned char *output; |
f0005c33 | 54 | |
05c0dae8 | 55 | %apply char *OUTPUT { unsigned char *eeprom }; |
a35aa9bd UB |
56 | int ftdi_read_eeprom(struct ftdi_context *ftdi); |
57 | int ftdi_write_eeprom(struct ftdi_context *ftdi); | |
05c0dae8 | 58 | %clear unsigned char *eeprom; |
f0005c33 | 59 | |
05c0dae8 TH |
60 | %apply int *OUTPUT { unsigned int *chipid }; |
61 | int ftdi_read_chipid(struct ftdi_context *ftdi, unsigned int *chipid); | |
62 | %clear unsigned int *chipid; | |
63 | ||
64 | } |