Commit Graph

62 Commits

Author SHA1 Message Date
Adam Honse
14d3c68145 Fix warnings 2025-02-10 10:21:36 -06:00
Adam Honse
bb79fbfc07 Add controller flags field with flags for controller location and update behavior 2025-02-06 20:00:27 -06:00
Adam Honse
012cb5e62d Fix segment creation and modification over the network protocol 2025-02-06 20:00:27 -06:00
Adam Honse
e634a77860 Add LED alternate names field to SDK protocol 2025-02-06 20:00:27 -06:00
Adam Honse
27cac898b0 Initial development for alternate LED names suppport in RGBController API
Alternate LED names allow an LED to have a secondary "alternate" name.  The led_alt_names vector should either be empty if alternate names are not used or be equal in size to the leds vector.  Empty strings in the led_alt_names vector indicate that a particular LED does not have an alternate name.
2025-02-06 20:00:27 -06:00
Adam Honse
11d6b19cde Add protocol handling for resizable effects-only modes, increment protocol revision to 5 2025-02-06 20:00:27 -06:00
Adam Honse
032b6c6300 Resizable Effects-Only Zones 2025-02-06 20:00:27 -06:00
Adam Honse
54802fdd4b Fix device type strings 2025-01-21 14:18:04 -06:00
Adam Honse
66487422ab Fix warning in RGBController.cpp 2025-01-16 23:44:58 -06:00
Adam Honse
1586812112 Fix warnings in RGBController.cpp 2024-11-26 02:28:19 -06:00
Adam Honse
f1da4a3b2f Fix warning in RGBController.cpp 2024-11-26 01:57:01 -06:00
Adam Honse
6c729ff60f Fix possible loss of data warnings in RGBController.cpp 2024-08-16 23:54:14 -05:00
Adam Honse
a3066db16c Update even more file header comments to standardized new format 2024-05-03 11:52:02 -05:00
Cooper Hall
45be4329c5 Fixed some warnings 2023-03-11 23:25:26 +00:00
Adam Honse
447e936464 Segments 2023-01-20 19:00:45 +00:00
Codename-Antares
ae8f40db00 Add Type Keypad & Tartarus Pro Layout for Razer 2022-10-21 16:52:09 +00:00
Adam Honse
389cdf340f Allow mode specific color mode for SetCustomMode 2022-08-21 22:08:23 -05:00
Adam Honse
afb975e5fc Add generic implementation of SetCustomMode to RGBController class 2022-08-09 20:49:38 -05:00
Arnaud MAURIN
287618ebe5 Add new device type "Case" 2022-03-13 04:49:18 +00:00
Qwex
57e7e6a823 Revert "Fix frames skip when using external effects engine" to fix ram race condition 2021-12-30 06:00:59 +00:00
NicolasNewman
7b63813cdb Add storage device type
Commit amended from original XPG Spectrix S40G merge request by Adam Honse <calcprogrammer1@gmail.com>
2021-11-22 00:12:30 -06:00
Cheerpipe
3100f72601 Fix frames skip when using external effects engine 2021-07-07 16:56:02 -05:00
Adam Honse
cbee33706f Fix some issues with mode constructor 2021-07-05 04:04:27 -05:00
Adam Honse
eade8fea1a Add save to device support to RGBController 2021-07-04 21:17:45 -05:00
Chris
a46eccef3c Added brightness to profile loading and saving
* Bumped profile version to 3
* Loading a v1/v2 profile onto a device with brightness will work
* Loading a v3 profile onto a device without brightness also works
* Add profile version parameter to Get/SetModeDescription

Commit amended for code style and to update versioning by Adam Honse <calcprogrammer1@gmail.com>
2021-07-04 21:16:56 -05:00
Chris
b76265cf7d Convert mode from struct to class, add automatic initialization
* To avoid filtering in the profile manager and to ensure that color_mode is set to MODE_COLORS_RANDOM correctly
for HW that has the mode flags

MODE_FLAG_HAS_RANDOM_COLOR | MODE_FLAG_HAS_PER_LED_COLOR

The values for speed_min, speed_max, colors_min and colors_max NEED to be initialised to allow for a saved
profile to load correctly in `ProfileManager::LoadDeviceFromListWithOptions`

Commit amended for code style by Adam Honse <calcprogrammer1@gmail.com>
2021-06-26 00:29:51 -05:00
Adam Honse
be1fbc27ca Add device type string for virtual device 2021-04-22 16:24:48 -05:00
morg
2a6b457324 Add UnregisterRGBController method to ResourceManager
Commit amended by Adam Honse <calcprogrammer1@gmail.com>
2021-04-20 09:21:24 -05:00
Cheerpipe
e9f3a1b3b9 Logitech G560 initial support
Logitech G560 Speaker working with Direct Mode using same bits as the Logitech Ambilight and Audioviz. Other modes are not working (get) as expected.

Note: G560 Direct mode is slow because Logitech hardware implementation but it is working.

Changing volume at the same time colors are changing can reduce FPS because G560 uses the same channel for led and audio modes commands.

Commits squashed and amended for code style by Adam Honse <calcprogrammer1@gmail.com>
2021-02-15 08:45:57 -06:00
morg
dba814215d Fixing memory leaks in controllers 2021-02-05 16:25:46 +01:00
Adam Honse
72da8f362c SDK protocol versioning implemented. Protocol updated to version 1 which adds vendor string to controller request. 2020-12-01 21:02:32 -06:00
Adam Honse
1e4eacd337 Add a Light device type with a bulb icon 2020-11-04 09:23:17 -06:00
Pol Rius
791df64f81 Add support for Sony DualShock 4 (manual merge of !160)
Files pulled in manually and code style changes, Gamepad type addition by Adam Honse <calcprogrammer1@gmail.com>
2020-10-08 17:15:18 -05:00
Adam Honse
8ead2f9c73 Call the callbacks when redetection starts, move matrix map deletion to individual controllers to avoid attempting to delete const pointers 2020-09-28 23:22:01 -05:00
Adam Honse
0345eb582b More warning fixes 2020-09-02 19:03:43 -05:00
k1-801
8b8451017e Non-important warnings removed
Commit amended by Adam Honse <calcprogrammer1@gmail.com> due to merging from a different branch.
2020-09-01 23:29:00 -05:00
Adam Honse
342d90b82a Add function to unregister update callback when device page is deleted 2020-08-24 00:40:44 -05:00
Adam Honse
d3993547c3 Device view resizes width to fit window size, UI updates on SDKcontroller update 2020-08-24 00:40:43 -05:00
Térence Clastres
53379c5482 Fixes for memory issues detected by valgrind 2020-08-12 23:48:03 -05:00
B Horn
bb743c6b62 Validating user provided indexes in RGBController
When using the SDK Server, it was possible to provide indexes that would
later be used inside the various SetXDescription functions in
RGBController. This would result in possible out of bounds reads /
writes.

This is patched by checking the various indexes remain in bounds.
2020-07-19 13:19:59 -05:00
Adam Honse
0ccf2d0c33 Remove some debugging printouts in Network Client and Server code 2020-07-17 22:10:53 -05:00
Adam Honse
97e1c3e913 Update mode asynchronously 2020-07-17 18:29:37 -05:00
Adam Honse
f108515a6e Fix Set All Devices being slow and crashing on certain setups. It was sending the update multiple times 2020-07-03 02:59:54 -05:00
Térence Clastres
b79ff124e6 Replace Sleep() by std::thread::sleep_for() 2020-06-24 09:28:11 -05:00
Adam Honse
5fdea9d34f Delete zone matrix maps when destroying RGBController 2020-05-31 19:36:01 -05:00
Adam Honse
baa04913c3 Add headset stand type string 2020-05-25 16:45:58 -05:00
Adam Honse
105f5642ef Add matrix map support 2020-05-09 15:48:13 -05:00
Adam Honse
e3e6c0347e Add a thread to RGBController to asynchronously perform device updates. Only implemented for UpdateLEDs for now 2020-05-09 15:48:13 -05:00
Adam Honse
39c5aff864 Send color data over the network when calling color update functions 2020-05-09 15:48:13 -05:00
Adam Honse
450f438538 Send mode data block when updating mode 2020-05-09 15:48:13 -05:00