Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
diff --git a/src/ftdi.h b/src/ftdi.h
index 6bb7a3e..daa8fdb 100644
--- a/src/ftdi.h
+++ b/src/ftdi.h
@@ -172,11 +172,14 @@ enum ftdi_module_detach_mode
#ifdef __GNUC__
#define DEPRECATED(func) func __attribute__ ((deprecated))
+ #define EXPORT /**/
#elif defined(_MSC_VER)
#define DEPRECATED(func) __declspec(deprecated) func
+ #define EXPORT __declspec(dllexport)
#else
#pragma message("WARNING: You need to implement DEPRECATED for this compiler")
#define DEPRECATED(func) func
+ #define EXPORT /**/
#endif
@@ -361,95 +364,95 @@ extern "C"
{
#endif
- int ftdi_init(struct ftdi_context *ftdi);
- struct ftdi_context *ftdi_new(void);
- int ftdi_set_interface(struct ftdi_context *ftdi, enum ftdi_interface interface);
-
- void ftdi_deinit(struct ftdi_context *ftdi);
- void ftdi_free(struct ftdi_context *ftdi);
- void ftdi_set_usbdev (struct ftdi_context *ftdi, usb_dev_handle *usbdev);
-
- int ftdi_usb_find_all(struct ftdi_context *ftdi, struct ftdi_device_list **devlist,
- int vendor, int product);
- void ftdi_list_free(struct ftdi_device_list **devlist);
- void ftdi_list_free2(struct ftdi_device_list *devlist);
- int ftdi_usb_get_strings(struct ftdi_context *ftdi, struct usb_device *dev,
- char * manufacturer, int mnf_len,
- char * description, int desc_len,
- char * serial, int serial_len);
-
- int ftdi_usb_open(struct ftdi_context *ftdi, int vendor, int product);
- int ftdi_usb_open_desc(struct ftdi_context *ftdi, int vendor, int product,
+ int EXPORT ftdi_init(struct ftdi_context *ftdi);
+ struct ftdi_context EXPORT *ftdi_new(void);
+ int EXPORT ftdi_set_interface(struct ftdi_context *ftdi, enum ftdi_interface interface);
+
+ void EXPORT ftdi_deinit(struct ftdi_context *ftdi);
+ void EXPORT ftdi_free(struct ftdi_context *ftdi);
+ void EXPORT ftdi_set_usbdev (struct ftdi_context *ftdi, usb_dev_handle *usbdev);
+
+ int EXPORT ftdi_usb_find_all(struct ftdi_context *ftdi, struct ftdi_device_list **devlist,
+ int vendor, int product);
+ void EXPORT ftdi_list_free(struct ftdi_device_list **devlist);
+ void EXPORT ftdi_list_free2(struct ftdi_device_list *devlist);
+ int EXPORT ftdi_usb_get_strings(struct ftdi_context *ftdi, struct usb_device *dev,
+ char * manufacturer, int mnf_len,
+ char * description, int desc_len,
+ char * serial, int serial_len);
+
+ int EXPORT ftdi_usb_open(struct ftdi_context *ftdi, int vendor, int product);
+ int EXPORT ftdi_usb_open_desc(struct ftdi_context *ftdi, int vendor, int product,
const char* description, const char* serial);
- int ftdi_usb_open_desc_index(struct ftdi_context *ftdi, int vendor, int product,
- const char* description, const char* serial, unsigned int index);
- int ftdi_usb_open_dev(struct ftdi_context *ftdi, struct usb_device *dev);
- int ftdi_usb_open_string(struct ftdi_context *ftdi, const char* description);
+ int EXPORT ftdi_usb_open_desc_index(struct ftdi_context *ftdi, int vendor, int product,
+ const char* description, const char* serial, unsigned int index);
+ int EXPORT ftdi_usb_open_dev(struct ftdi_context *ftdi, struct usb_device *dev);
+ int EXPORT ftdi_usb_open_string(struct ftdi_context *ftdi, const char* description);
- int ftdi_usb_close(struct ftdi_context *ftdi);
- int ftdi_usb_reset(struct ftdi_context *ftdi);
- int ftdi_usb_purge_rx_buffer(struct ftdi_context *ftdi);
- int ftdi_usb_purge_tx_buffer(struct ftdi_context *ftdi);
- int ftdi_usb_purge_buffers(struct ftdi_context *ftdi);
+ int EXPORT ftdi_usb_close(struct ftdi_context *ftdi);
+ int EXPORT ftdi_usb_reset(struct ftdi_context *ftdi);
+ int EXPORT ftdi_usb_purge_rx_buffer(struct ftdi_context *ftdi);
+ int EXPORT ftdi_usb_purge_tx_buffer(struct ftdi_context *ftdi);
+ int EXPORT ftdi_usb_purge_buffers(struct ftdi_context *ftdi);
- int ftdi_set_baudrate(struct ftdi_context *ftdi, int baudrate);
- int ftdi_set_line_property(struct ftdi_context *ftdi, enum ftdi_bits_type bits,
- enum ftdi_stopbits_type sbit, enum ftdi_parity_type parity);
- int ftdi_set_line_property2(struct ftdi_context *ftdi, enum ftdi_bits_type bits,
- enum ftdi_stopbits_type sbit, enum ftdi_parity_type parity,
- enum ftdi_break_type break_type);
+ int EXPORT ftdi_set_baudrate(struct ftdi_context *ftdi, int baudrate);
+ int EXPORT ftdi_set_line_property(struct ftdi_context *ftdi, enum ftdi_bits_type bits,
+ enum ftdi_stopbits_type sbit, enum ftdi_parity_type parity);
+ int EXPORT ftdi_set_line_property2(struct ftdi_context *ftdi, enum ftdi_bits_type bits,
+ enum ftdi_stopbits_type sbit, enum ftdi_parity_type parity,
+ enum ftdi_break_type break_type);
- int ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
- int ftdi_read_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
- int ftdi_read_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize);
+ int EXPORT ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
+ int EXPORT ftdi_read_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
+ int EXPORT ftdi_read_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize);
- int ftdi_write_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
- int ftdi_write_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
- int ftdi_write_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize);
+ int EXPORT ftdi_write_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
+ int EXPORT ftdi_write_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
+ int EXPORT ftdi_write_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize);
- int ftdi_write_data_async(struct ftdi_context *ftdi, unsigned char *buf, int size);
- void ftdi_async_complete(struct ftdi_context *ftdi, int wait_for_more);
+ int EXPORT ftdi_write_data_async(struct ftdi_context *ftdi, unsigned char *buf, int size);
+ void EXPORT ftdi_async_complete(struct ftdi_context *ftdi, int wait_for_more);
- int DEPRECATED(ftdi_enable_bitbang(struct ftdi_context *ftdi, unsigned char bitmask));
- int ftdi_disable_bitbang(struct ftdi_context *ftdi);
- int ftdi_set_bitmode(struct ftdi_context *ftdi, unsigned char bitmask, unsigned char mode);
- int ftdi_read_pins(struct ftdi_context *ftdi, unsigned char *pins);
+ int EXPORT DEPRECATED(ftdi_enable_bitbang(struct ftdi_context *ftdi, unsigned char bitmask));
+ int EXPORT ftdi_disable_bitbang(struct ftdi_context *ftdi);
+ int EXPORT ftdi_set_bitmode(struct ftdi_context *ftdi, unsigned char bitmask, unsigned char mode);
+ int EXPORT ftdi_read_pins(struct ftdi_context *ftdi, unsigned char *pins);
- int ftdi_set_latency_timer(struct ftdi_context *ftdi, unsigned char latency);
- int ftdi_get_latency_timer(struct ftdi_context *ftdi, unsigned char *latency);
+ int EXPORT ftdi_set_latency_timer(struct ftdi_context *ftdi, unsigned char latency);
+ int EXPORT ftdi_get_latency_timer(struct ftdi_context *ftdi, unsigned char *latency);
- int ftdi_poll_modem_status(struct ftdi_context *ftdi, unsigned short *status);
+ int EXPORT ftdi_poll_modem_status(struct ftdi_context *ftdi, unsigned short *status);
/* flow control */
- int ftdi_setflowctrl(struct ftdi_context *ftdi, int flowctrl);
- int ftdi_setdtr_rts(struct ftdi_context *ftdi, int dtr, int rts);
- int ftdi_setdtr(struct ftdi_context *ftdi, int state);
- int ftdi_setrts(struct ftdi_context *ftdi, int state);
+ int EXPORT ftdi_setflowctrl(struct ftdi_context *ftdi, int flowctrl);
+ int EXPORT ftdi_setdtr_rts(struct ftdi_context *ftdi, int dtr, int rts);
+ int EXPORT ftdi_setdtr(struct ftdi_context *ftdi, int state);
+ int EXPORT ftdi_setrts(struct ftdi_context *ftdi, int state);
- int ftdi_set_event_char(struct ftdi_context *ftdi, unsigned char eventch, unsigned char enable);
- int ftdi_set_error_char(struct ftdi_context *ftdi, unsigned char errorch, unsigned char enable);
+ int EXPORT ftdi_set_event_char(struct ftdi_context *ftdi, unsigned char eventch, unsigned char enable);
+ int EXPORT ftdi_set_error_char(struct ftdi_context *ftdi, unsigned char errorch, unsigned char enable);
/* set eeprom size */
- void ftdi_eeprom_setsize(struct ftdi_context *ftdi, struct ftdi_eeprom *eeprom, int size);
+ void EXPORT ftdi_eeprom_setsize(struct ftdi_context *ftdi, struct ftdi_eeprom *eeprom, int size);
/* init and build eeprom from ftdi_eeprom structure */
- void ftdi_eeprom_initdefaults(struct ftdi_eeprom *eeprom);
- void ftdi_eeprom_free(struct ftdi_eeprom *eeprom);
- int ftdi_eeprom_build(struct ftdi_eeprom *eeprom, unsigned char *output);
- int ftdi_eeprom_decode(struct ftdi_eeprom *eeprom, unsigned char *output, int size);
+ void EXPORT ftdi_eeprom_initdefaults(struct ftdi_eeprom *eeprom);
+ void EXPORT ftdi_eeprom_free(struct ftdi_eeprom *eeprom);
+ int EXPORT ftdi_eeprom_build(struct ftdi_eeprom *eeprom, unsigned char *output);
+ int EXPORT ftdi_eeprom_decode(struct ftdi_eeprom *eeprom, unsigned char *output, int size);
/* "eeprom" needs to be valid 128 byte eeprom (generated by the eeprom generator)
the checksum of the eeprom is valided */
- int ftdi_read_eeprom(struct ftdi_context *ftdi, unsigned char *eeprom);
- int ftdi_read_chipid(struct ftdi_context *ftdi, unsigned int *chipid);
- int ftdi_read_eeprom_getsize(struct ftdi_context *ftdi, unsigned char *eeprom, int maxsize);
- int ftdi_write_eeprom(struct ftdi_context *ftdi, unsigned char *eeprom);
- int ftdi_erase_eeprom(struct ftdi_context *ftdi);
+ int EXPORT ftdi_read_eeprom(struct ftdi_context *ftdi, unsigned char *eeprom);
+ int EXPORT ftdi_read_chipid(struct ftdi_context *ftdi, unsigned int *chipid);
+ int EXPORT ftdi_read_eeprom_getsize(struct ftdi_context *ftdi, unsigned char *eeprom, int maxsize);
+ int EXPORT ftdi_write_eeprom(struct ftdi_context *ftdi, unsigned char *eeprom);
+ int EXPORT ftdi_erase_eeprom(struct ftdi_context *ftdi);
- int ftdi_read_eeprom_location (struct ftdi_context *ftdi, int eeprom_addr, unsigned short *eeprom_val);
- int ftdi_write_eeprom_location(struct ftdi_context *ftdi, int eeprom_addr, unsigned short eeprom_val);
+ int EXPORT ftdi_read_eeprom_location (struct ftdi_context *ftdi, int eeprom_addr, unsigned short *eeprom_val);
+ int EXPORT ftdi_write_eeprom_location(struct ftdi_context *ftdi, int eeprom_addr, unsigned short eeprom_val);
- char *ftdi_get_error_string(struct ftdi_context *ftdi);
+ char EXPORT *ftdi_get_error_string(struct ftdi_context *ftdi);
#ifdef __cplusplus
}