logitech_led_sdk_sys/
bindings-x86_64.rs

1/* automatically generated by rust-bindgen 0.65.1 */
2
3pub const LOGI_LED_BITMAP_WIDTH: u32 = 21;
4pub const LOGI_LED_BITMAP_HEIGHT: u32 = 6;
5pub const LOGI_LED_BITMAP_BYTES_PER_KEY: u32 = 4;
6pub const LOGI_LED_BITMAP_SIZE: u32 = 504;
7pub const LOGI_LED_DURATION_INFINITE: u32 = 0;
8pub const LOGI_DEVICETYPE_MONOCHROME_ORD: u32 = 0;
9pub const LOGI_DEVICETYPE_RGB_ORD: u32 = 1;
10pub const LOGI_DEVICETYPE_PERKEY_RGB_ORD: u32 = 2;
11pub const LOGI_DEVICETYPE_MONOCHROME: u32 = 1;
12pub const LOGI_DEVICETYPE_RGB: u32 = 2;
13pub const LOGI_DEVICETYPE_PERKEY_RGB: u32 = 4;
14pub const LOGI_DEVICETYPE_ALL: u32 = 7;
15#[repr(i32)]
16#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
17pub enum LogiLed_KeyName {
18    ESC = 1,
19    F1 = 59,
20    F2 = 60,
21    F3 = 61,
22    F4 = 62,
23    F5 = 63,
24    F6 = 64,
25    F7 = 65,
26    F8 = 66,
27    F9 = 67,
28    F10 = 68,
29    F11 = 87,
30    F12 = 88,
31    PRINT_SCREEN = 311,
32    SCROLL_LOCK = 70,
33    PAUSE_BREAK = 325,
34    TILDE = 41,
35    ONE = 2,
36    TWO = 3,
37    THREE = 4,
38    FOUR = 5,
39    FIVE = 6,
40    SIX = 7,
41    SEVEN = 8,
42    EIGHT = 9,
43    NINE = 10,
44    ZERO = 11,
45    MINUS = 12,
46    EQUALS = 13,
47    BACKSPACE = 14,
48    INSERT = 338,
49    HOME = 327,
50    PAGE_UP = 329,
51    NUM_LOCK = 69,
52    NUM_SLASH = 309,
53    NUM_ASTERISK = 55,
54    NUM_MINUS = 74,
55    TAB = 15,
56    Q = 16,
57    W = 17,
58    E = 18,
59    R = 19,
60    T = 20,
61    Y = 21,
62    U = 22,
63    I = 23,
64    O = 24,
65    P = 25,
66    OPEN_BRACKET = 26,
67    CLOSE_BRACKET = 27,
68    BACKSLASH = 43,
69    KEYBOARD_DELETE = 339,
70    END = 335,
71    PAGE_DOWN = 337,
72    NUM_SEVEN = 71,
73    NUM_EIGHT = 72,
74    NUM_NINE = 73,
75    NUM_PLUS = 78,
76    CAPS_LOCK = 58,
77    A = 30,
78    S = 31,
79    D = 32,
80    F = 33,
81    G = 34,
82    H = 35,
83    J = 36,
84    K = 37,
85    L = 38,
86    SEMICOLON = 39,
87    APOSTROPHE = 40,
88    ENTER = 28,
89    NUM_FOUR = 75,
90    NUM_FIVE = 76,
91    NUM_SIX = 77,
92    LEFT_SHIFT = 42,
93    Z = 44,
94    X = 45,
95    C = 46,
96    V = 47,
97    B = 48,
98    N = 49,
99    M = 50,
100    COMMA = 51,
101    PERIOD = 52,
102    FORWARD_SLASH = 53,
103    RIGHT_SHIFT = 54,
104    ARROW_UP = 328,
105    NUM_ONE = 79,
106    NUM_TWO = 80,
107    NUM_THREE = 81,
108    NUM_ENTER = 284,
109    LEFT_CONTROL = 29,
110    LEFT_WINDOWS = 347,
111    LEFT_ALT = 56,
112    SPACE = 57,
113    RIGHT_ALT = 312,
114    RIGHT_WINDOWS = 348,
115    APPLICATION_SELECT = 349,
116    RIGHT_CONTROL = 285,
117    ARROW_LEFT = 331,
118    ARROW_DOWN = 336,
119    ARROW_RIGHT = 333,
120    NUM_ZERO = 82,
121    NUM_PERIOD = 83,
122    G_1 = 65521,
123    G_2 = 65522,
124    G_3 = 65523,
125    G_4 = 65524,
126    G_5 = 65525,
127    G_6 = 65526,
128    G_7 = 65527,
129    G_8 = 65528,
130    G_9 = 65529,
131    G_LOGO = 1048561,
132    G_BADGE = 1048562,
133}
134#[repr(i32)]
135#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
136pub enum LogiLed_DeviceType {
137    Keyboard = 0,
138    Mouse = 3,
139    Mousemat = 4,
140    Headset = 8,
141    Speaker = 14,
142}
143extern "C" {
144    #[link_name = "\u{1}?LogiLedInit@@YA_NXZ"]
145    pub fn LogiLedInit() -> bool;
146}
147extern "C" {
148    #[link_name = "\u{1}?LogiLedInitWithName@@YA_NQEBD@Z"]
149    pub fn LogiLedInitWithName(name: *const ::std::os::raw::c_char) -> bool;
150}
151extern "C" {
152    #[link_name = "\u{1}?LogiLedGetSdkVersion@@YA_NPEAH00@Z"]
153    pub fn LogiLedGetSdkVersion(
154        majorNum: *mut ::std::os::raw::c_int,
155        minorNum: *mut ::std::os::raw::c_int,
156        buildNum: *mut ::std::os::raw::c_int,
157    ) -> bool;
158}
159extern "C" {
160    #[link_name = "\u{1}?LogiLedGetConfigOptionNumber@@YA_NPEB_WPEAN@Z"]
161    pub fn LogiLedGetConfigOptionNumber(configPath: *const u16, defaultValue: *mut f64) -> bool;
162}
163extern "C" {
164    #[link_name = "\u{1}?LogiLedGetConfigOptionBool@@YA_NPEB_WPEA_N@Z"]
165    pub fn LogiLedGetConfigOptionBool(configPath: *const u16, defaultValue: *mut bool) -> bool;
166}
167extern "C" {
168    #[link_name = "\u{1}?LogiLedGetConfigOptionColor@@YA_NPEB_WPEAH11@Z"]
169    pub fn LogiLedGetConfigOptionColor(
170        configPath: *const u16,
171        defaultRed: *mut ::std::os::raw::c_int,
172        defaultGreen: *mut ::std::os::raw::c_int,
173        defaultBlue: *mut ::std::os::raw::c_int,
174    ) -> bool;
175}
176extern "C" {
177    #[link_name = "\u{1}?LogiLedGetConfigOptionRect@@YA_NPEB_WPEAH111@Z"]
178    pub fn LogiLedGetConfigOptionRect(
179        configPath: *const u16,
180        defaultX: *mut ::std::os::raw::c_int,
181        defaultY: *mut ::std::os::raw::c_int,
182        defaultWidth: *mut ::std::os::raw::c_int,
183        defaultHeight: *mut ::std::os::raw::c_int,
184    ) -> bool;
185}
186extern "C" {
187    #[link_name = "\u{1}?LogiLedGetConfigOptionString@@YA_NPEB_WPEA_WH@Z"]
188    pub fn LogiLedGetConfigOptionString(
189        configPath: *const u16,
190        defaultValue: *mut u16,
191        bufferSize: ::std::os::raw::c_int,
192    ) -> bool;
193}
194extern "C" {
195    #[link_name = "\u{1}?LogiLedGetConfigOptionKeyInput@@YA_NPEB_WPEA_WH@Z"]
196    pub fn LogiLedGetConfigOptionKeyInput(
197        configPath: *const u16,
198        defaultValue: *mut u16,
199        bufferSize: ::std::os::raw::c_int,
200    ) -> bool;
201}
202extern "C" {
203    #[link_name = "\u{1}?LogiLedGetConfigOptionSelect@@YA_NPEB_WPEA_WPEAH0H@Z"]
204    pub fn LogiLedGetConfigOptionSelect(
205        configPath: *const u16,
206        defaultValue: *mut u16,
207        valueSize: *mut ::std::os::raw::c_int,
208        values: *const u16,
209        bufferSize: ::std::os::raw::c_int,
210    ) -> bool;
211}
212extern "C" {
213    #[link_name = "\u{1}?LogiLedGetConfigOptionRange@@YA_NPEB_WPEAHHH@Z"]
214    pub fn LogiLedGetConfigOptionRange(
215        configPath: *const u16,
216        defaultValue: *mut ::std::os::raw::c_int,
217        min: ::std::os::raw::c_int,
218        max: ::std::os::raw::c_int,
219    ) -> bool;
220}
221extern "C" {
222    #[link_name = "\u{1}?LogiLedSetConfigOptionLabel@@YA_NPEB_WPEA_W@Z"]
223    pub fn LogiLedSetConfigOptionLabel(configPath: *const u16, label: *mut u16) -> bool;
224}
225extern "C" {
226    #[link_name = "\u{1}?LogiLedSetTargetDevice@@YA_NH@Z"]
227    pub fn LogiLedSetTargetDevice(targetDevice: ::std::os::raw::c_int) -> bool;
228}
229extern "C" {
230    #[link_name = "\u{1}?LogiLedSaveCurrentLighting@@YA_NXZ"]
231    pub fn LogiLedSaveCurrentLighting() -> bool;
232}
233extern "C" {
234    #[link_name = "\u{1}?LogiLedSetLighting@@YA_NHHH@Z"]
235    pub fn LogiLedSetLighting(
236        redPercentage: ::std::os::raw::c_int,
237        greenPercentage: ::std::os::raw::c_int,
238        bluePercentage: ::std::os::raw::c_int,
239    ) -> bool;
240}
241extern "C" {
242    #[link_name = "\u{1}?LogiLedRestoreLighting@@YA_NXZ"]
243    pub fn LogiLedRestoreLighting() -> bool;
244}
245extern "C" {
246    #[link_name = "\u{1}?LogiLedFlashLighting@@YA_NHHHHH@Z"]
247    pub fn LogiLedFlashLighting(
248        redPercentage: ::std::os::raw::c_int,
249        greenPercentage: ::std::os::raw::c_int,
250        bluePercentage: ::std::os::raw::c_int,
251        milliSecondsDuration: ::std::os::raw::c_int,
252        milliSecondsInterval: ::std::os::raw::c_int,
253    ) -> bool;
254}
255extern "C" {
256    #[link_name = "\u{1}?LogiLedPulseLighting@@YA_NHHHHH@Z"]
257    pub fn LogiLedPulseLighting(
258        redPercentage: ::std::os::raw::c_int,
259        greenPercentage: ::std::os::raw::c_int,
260        bluePercentage: ::std::os::raw::c_int,
261        milliSecondsDuration: ::std::os::raw::c_int,
262        milliSecondsInterval: ::std::os::raw::c_int,
263    ) -> bool;
264}
265extern "C" {
266    #[link_name = "\u{1}?LogiLedStopEffects@@YA_NXZ"]
267    pub fn LogiLedStopEffects() -> bool;
268}
269extern "C" {
270    #[link_name = "\u{1}?LogiLedSetLightingFromBitmap@@YA_NQEAE@Z"]
271    pub fn LogiLedSetLightingFromBitmap(bitmap: *mut ::std::os::raw::c_uchar) -> bool;
272}
273extern "C" {
274    #[link_name = "\u{1}?LogiLedSetLightingForKeyWithScanCode@@YA_NHHHH@Z"]
275    pub fn LogiLedSetLightingForKeyWithScanCode(
276        keyCode: ::std::os::raw::c_int,
277        redPercentage: ::std::os::raw::c_int,
278        greenPercentage: ::std::os::raw::c_int,
279        bluePercentage: ::std::os::raw::c_int,
280    ) -> bool;
281}
282extern "C" {
283    #[link_name = "\u{1}?LogiLedSetLightingForKeyWithHidCode@@YA_NHHHH@Z"]
284    pub fn LogiLedSetLightingForKeyWithHidCode(
285        keyCode: ::std::os::raw::c_int,
286        redPercentage: ::std::os::raw::c_int,
287        greenPercentage: ::std::os::raw::c_int,
288        bluePercentage: ::std::os::raw::c_int,
289    ) -> bool;
290}
291extern "C" {
292    #[link_name = "\u{1}?LogiLedSetLightingForKeyWithQuartzCode@@YA_NHHHH@Z"]
293    pub fn LogiLedSetLightingForKeyWithQuartzCode(
294        keyCode: ::std::os::raw::c_int,
295        redPercentage: ::std::os::raw::c_int,
296        greenPercentage: ::std::os::raw::c_int,
297        bluePercentage: ::std::os::raw::c_int,
298    ) -> bool;
299}
300extern "C" {
301    #[link_name = "\u{1}?LogiLedSetLightingForKeyWithKeyName@@YA_NW4KeyName@LogiLed@@HHH@Z"]
302    pub fn LogiLedSetLightingForKeyWithKeyName(
303        keyName: LogiLed_KeyName,
304        redPercentage: ::std::os::raw::c_int,
305        greenPercentage: ::std::os::raw::c_int,
306        bluePercentage: ::std::os::raw::c_int,
307    ) -> bool;
308}
309extern "C" {
310    #[link_name = "\u{1}?LogiLedSaveLightingForKey@@YA_NW4KeyName@LogiLed@@@Z"]
311    pub fn LogiLedSaveLightingForKey(keyName: LogiLed_KeyName) -> bool;
312}
313extern "C" {
314    #[link_name = "\u{1}?LogiLedRestoreLightingForKey@@YA_NW4KeyName@LogiLed@@@Z"]
315    pub fn LogiLedRestoreLightingForKey(keyName: LogiLed_KeyName) -> bool;
316}
317extern "C" {
318    #[link_name = "\u{1}?LogiLedExcludeKeysFromBitmap@@YA_NPEAW4KeyName@LogiLed@@H@Z"]
319    pub fn LogiLedExcludeKeysFromBitmap(
320        keyList: *mut LogiLed_KeyName,
321        listCount: ::std::os::raw::c_int,
322    ) -> bool;
323}
324extern "C" {
325    #[link_name = "\u{1}?LogiLedFlashSingleKey@@YA_NW4KeyName@LogiLed@@HHHHH@Z"]
326    pub fn LogiLedFlashSingleKey(
327        keyName: LogiLed_KeyName,
328        redPercentage: ::std::os::raw::c_int,
329        greenPercentage: ::std::os::raw::c_int,
330        bluePercentage: ::std::os::raw::c_int,
331        msDuration: ::std::os::raw::c_int,
332        msInterval: ::std::os::raw::c_int,
333    ) -> bool;
334}
335extern "C" {
336    #[link_name = "\u{1}?LogiLedPulseSingleKey@@YA_NW4KeyName@LogiLed@@HHHHHHH_N@Z"]
337    pub fn LogiLedPulseSingleKey(
338        keyName: LogiLed_KeyName,
339        startRedPercentage: ::std::os::raw::c_int,
340        startGreenPercentage: ::std::os::raw::c_int,
341        startBluePercentage: ::std::os::raw::c_int,
342        finishRedPercentage: ::std::os::raw::c_int,
343        finishGreenPercentage: ::std::os::raw::c_int,
344        finishBluePercentage: ::std::os::raw::c_int,
345        msDuration: ::std::os::raw::c_int,
346        isInfinite: bool,
347    ) -> bool;
348}
349extern "C" {
350    #[link_name = "\u{1}?LogiLedStopEffectsOnKey@@YA_NW4KeyName@LogiLed@@@Z"]
351    pub fn LogiLedStopEffectsOnKey(keyName: LogiLed_KeyName) -> bool;
352}
353extern "C" {
354    #[link_name = "\u{1}?LogiLedSetLightingForTargetZone@@YA_NW4DeviceType@LogiLed@@HHHH@Z"]
355    pub fn LogiLedSetLightingForTargetZone(
356        deviceType: LogiLed_DeviceType,
357        zone: ::std::os::raw::c_int,
358        redPercentage: ::std::os::raw::c_int,
359        greenPercentage: ::std::os::raw::c_int,
360        bluePercentage: ::std::os::raw::c_int,
361    ) -> bool;
362}
363extern "C" {
364    #[link_name = "\u{1}?LogiLedShutdown@@YAXXZ"]
365    pub fn LogiLedShutdown();
366}