1
0
mirror of https://github.com/DarthAffe/RGB.NET.git synced 2025-12-13 10:08:31 +00:00

Compare commits

...

11 Commits

Author SHA1 Message Date
6e313ea6a1
Merge pull request #301 from DarthAffe/SDK/Corsair
Added corsair session details
2023-02-12 16:28:15 +01:00
bb3b74b919 Removed debug output 2023-02-12 16:23:27 +01:00
cc652a08a6 Added corsair session details 2023-02-12 16:19:00 +01:00
d66e4d87d9
Merge pull request #300 from motabass/master
Add missing Logitech G915 TKL wireless PID
2023-02-12 15:55:58 +01:00
631c8d2047
Merge pull request #299 from roxaskeyheart/Development
Add definitions for Asus ROG Terminal
2023-02-12 15:55:49 +01:00
db2f16d371
Update RGB.NET.Devices.Asus/AsusDeviceProvider.cs 2023-02-12 13:48:01 +01:00
Markus Mohoritsch
b67294eb3c Added missing G915 TKL PID 2023-02-12 10:06:38 +01:00
Danielle
914bd8c0a1 Update AsusDeviceProvider.cs
Code cleanup
2023-02-12 12:45:30 +11:00
Danielle
df2f5620ee Update AsusDeviceProvider.cs 2023-02-12 12:44:39 +11:00
Danielle
3dc4f45f66 Merge branch 'Development' of https://github.com/DarthAffe/RGB.NET into Development 2023-02-12 11:41:31 +11:00
Danielle
38840ef6f4 Asus dev 2023-02-12 11:41:18 +11:00
5 changed files with 55 additions and 5 deletions

View File

@ -60,6 +60,7 @@ public class AsusDeviceProvider : AbstractRGBDeviceProvider
for (int i = 0; i < _devices.Count; i++)
{
IAuraSyncDevice device = _devices[i];
yield return (AsusDeviceType)device.Type switch
{
AsusDeviceType.MB_RGB => new AsusMainboardRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Mainboard, device, WMIHelper.GetMainboardInfo()?.model ?? device.Name), GetUpdateTrigger()),
@ -71,7 +72,8 @@ public class AsusDeviceProvider : AbstractRGBDeviceProvider
AsusDeviceType.NB_KB_RGB => new AsusKeyboardRGBDevice(new AsusKeyboardRGBDeviceInfo(device), LedMappings.KeyboardMapping, GetUpdateTrigger()),
AsusDeviceType.NB_KB_4ZONE_RGB => new AsusKeyboardRGBDevice(new AsusKeyboardRGBDeviceInfo(device), null, GetUpdateTrigger()),
AsusDeviceType.MOUSE_RGB => new AsusMouseRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Mouse, device), GetUpdateTrigger()),
_ => new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Unknown, device), LedId.Custom1, GetUpdateTrigger())
AsusDeviceType.TERMINAL_RGB => new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.LedController, device), LedId.Custom1, GetUpdateTrigger()),
_ => new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Unknown, device), LedId.Unknown1, GetUpdateTrigger())
};
}
}

View File

@ -20,5 +20,6 @@ internal enum AsusDeviceType : uint
NB_KB_4ZONE_RGB = 0x81001,
MOUSE_RGB = 0x90000,
CHASSIS_RGB = 0xB0000,
PROJECTOR_RGB = 0xC0000
PROJECTOR_RGB = 0xC0000,
TERMINAL_RGB = 0xE0000
}

View File

@ -45,6 +45,11 @@ public class CorsairDeviceProvider : AbstractRGBDeviceProvider
/// </summary>
public static bool ExclusiveAccess { get; set; } = false;
/// <summary>
/// Gets the details for the current SDK-session.
/// </summary>
public CorsairSessionDetails SessionDetails { get; private set; } = new();
#endregion
#region Constructors
@ -81,12 +86,17 @@ public class CorsairDeviceProvider : AbstractRGBDeviceProvider
_CUESDK.SessionStateChanged += OnSessionStateChanged;
CorsairError errorCode = _CUESDK.CorsairConnect();
if (errorCode != CorsairError.Success)
Throw(new RGBDeviceException($"Failed to initialized Corsair-SDK. (ErrorCode: {errorCode})"));
if (!waitEvent.Wait(ConnectionTimeout))
Throw(new RGBDeviceException($"Failed to initialized Corsair-SDK. (Timeout - Current connection state: {_CUESDK.SesionState})"));
_CUESDK.CorsairGetSessionDetails(out _CorsairSessionDetails? details);
if (errorCode != CorsairError.Success)
Throw(new RGBDeviceException($"Failed to get session details. (ErrorCode: {errorCode})"));
SessionDetails = new CorsairSessionDetails(details!);
}
finally
{
@ -119,8 +129,7 @@ public class CorsairDeviceProvider : AbstractRGBDeviceProvider
Throw(new RGBDeviceException($"Failed to take control of device '{device.id}'. (ErrorCode: {error})"));
CorsairDeviceUpdateQueue updateQueue = new(GetUpdateTrigger(), device);
Console.WriteLine("Loading " + device.model);
int channelLedCount = 0;
for (int i = 0; i < device.channelCount; i++)
{

View File

@ -0,0 +1,37 @@
// ReSharper disable MemberCanBePrivate.Global
using RGB.NET.Devices.Corsair.Native;
namespace RGB.NET.Devices.Corsair;
/// <summary>
/// Represents version information for the Corsair-SDK
/// </summary>
public class CorsairSessionDetails
{
#region Properties & Fields
public string ClientVersion { get; }
public string ServerVersion { get; }
public string ServerHostVersion { get; }
#endregion
#region Constructors
internal CorsairSessionDetails()
{
ClientVersion = string.Empty;
ServerVersion = string.Empty;
ServerHostVersion = string.Empty;
}
internal CorsairSessionDetails(_CorsairSessionDetails nativeDetails)
{
this.ClientVersion = nativeDetails.clientVersion.ToString();
this.ServerVersion = nativeDetails.serverVersion.ToString();
this.ServerHostVersion = nativeDetails.serverHostVersion.ToString();
}
#endregion
}

View File

@ -73,6 +73,7 @@ public class LogitechDeviceProvider : AbstractRGBDeviceProvider
{
{ 0x407C, RGBDeviceType.Keyboard, "G915", LedMappings.PerKey, 0 },
{ 0x408E, RGBDeviceType.Keyboard, "G915 TKL", LedMappings.PerKey, 0 },
{ 0xC232, RGBDeviceType.Keyboard, "G915 TKL", LedMappings.PerKey, 0 },
};
/// <summary>