NvdrsSetting.cs
1 using System.Runtime.InteropServices; 2 3 namespace Ryujinx.Common.GraphicsDriver.NVAPI 4 { 5 enum NvdrsSettingType : uint 6 { 7 NvdrsDwordType, 8 NvdrsBinaryType, 9 NvdrsStringType, 10 NvdrsWstringType, 11 } 12 13 enum NvdrsSettingLocation : uint 14 { 15 NvdrsCurrentProfileLocation, 16 NvdrsGlobalProfileLocation, 17 NvdrsBaseProfileLocation, 18 NvdrsDefaultProfileLocation, 19 } 20 21 [StructLayout(LayoutKind.Explicit, Size = 0x3020)] 22 struct NvdrsSetting 23 { 24 [FieldOffset(0x0)] 25 public uint Version; 26 [FieldOffset(0x4)] 27 public NvapiUnicodeString SettingName; 28 [FieldOffset(0x1004)] 29 public Nvapi SettingId; 30 [FieldOffset(0x1008)] 31 public NvdrsSettingType SettingType; 32 [FieldOffset(0x100C)] 33 public NvdrsSettingLocation SettingLocation; 34 [FieldOffset(0x1010)] 35 public uint IsCurrentPredefined; 36 [FieldOffset(0x1014)] 37 public uint IsPredefinedValid; 38 39 [FieldOffset(0x1018)] 40 public uint PredefinedValue; 41 [FieldOffset(0x1018)] 42 public NvapiUnicodeString PredefinedString; 43 44 [FieldOffset(0x201C)] 45 public uint CurrentValue; 46 [FieldOffset(0x201C)] 47 public NvapiUnicodeString CurrentString; 48 } 49 }