mirror of
https://github.com/Maassoft/ColorControl.git
synced 2026-10-22 08:32:18 -05:00
82 lines
1.7 KiB
C#
82 lines
1.7 KiB
C#
using ColorControl.Shared.Contracts.NVIDIA;
|
|
|
|
namespace ColorControl.Shared.Contracts;
|
|
|
|
public enum SvcMessageType
|
|
{
|
|
SetLgConfig = 1,
|
|
GetLog = 2,
|
|
ClearLog = 3,
|
|
ExecuteRpc = 10,
|
|
ExecuteRpcGeneric = 11,
|
|
ExecuteRpcGenericTyped = 12,
|
|
ExecuteUpdate = 20,
|
|
RestartAfterUpdate = 21,
|
|
}
|
|
|
|
public class SvcMessage
|
|
{
|
|
public SvcMessageType MessageType { get; set; }
|
|
|
|
public string Data { get; set; }
|
|
}
|
|
|
|
public class SvcInstallUpdateMessage : SvcMessage
|
|
{
|
|
public SvcInstallUpdateMessage()
|
|
{
|
|
MessageType = SvcMessageType.ExecuteUpdate;
|
|
}
|
|
|
|
public string DownloadUrl { get; set; }
|
|
public string ClientPath { get; set; }
|
|
}
|
|
|
|
public class SvcRpcMessage : SvcMessage
|
|
{
|
|
public SvcRpcMessage()
|
|
{
|
|
MessageType = SvcMessageType.ExecuteRpcGeneric;
|
|
}
|
|
|
|
private string _typeName;
|
|
public string TypeName
|
|
{
|
|
get
|
|
{
|
|
if (_typeName == null)
|
|
{
|
|
_typeName = GetType().Name;
|
|
}
|
|
|
|
return _typeName;
|
|
|
|
}
|
|
set { _typeName = value; }
|
|
}
|
|
public string ServiceName { get; set; }
|
|
public string MethodName { get; set; }
|
|
public object[] Arguments { get; set; }
|
|
}
|
|
|
|
public class SvcRpcMessageTyped : SvcRpcMessage
|
|
{
|
|
public SvcRpcMessageTyped() : base()
|
|
{
|
|
MessageType = SvcMessageType.ExecuteRpcGenericTyped;
|
|
}
|
|
}
|
|
|
|
public class SvcRpcSetNvDriverSettingsMessage : SvcRpcMessageTyped
|
|
{
|
|
public string ProfileName { get; set; }
|
|
|
|
public List<KeyValuePair<uint, string>> DriverSettings { get; set; }
|
|
}
|
|
|
|
public class SvcRpcSetNvOverclockingMessage : SvcRpcMessageTyped
|
|
{
|
|
public List<NvGpuOcSettings> OverclockingSettings { get; set; }
|
|
}
|
|
|