Beispiel #1
0
        public static void ChangeAllDevicesColor(Color color)
        {
            PrintLine("Starting SDK...");
            MyAuraSdk.SwitchMode();
            var allDevices = MyAuraSdk.Enumerate(0);

            Console.Clear();
            foreach (IAuraSyncDevice allDevice in allDevices)
            {
                Print($"Setting device {allDevice.Name}...");
                StopWatch.Restart();
                foreach (IAuraRgbLight light in allDevice.Lights)
                {
                    light.Red   = color.R;
                    light.Green = color.G;
                    light.Blue  = color.B;
                }

                allDevice.Apply();
                StopWatch.Stop();
                PrintLine($"Done! took {StopWatch.ElapsedMilliseconds}ms");
            }
            PrintLine("Stopping SDK...");
            MyAuraSdk.ReleaseControl(0);
        }
Beispiel #2
0
 public LedUpdater()
 {
     sdk = new AuraSdk() as IAuraSdk2;
     // Aquire control
     sdk.SwitchMode();
     // enumerate all devices
     devices = sdk.Enumerate(0);
 }
Beispiel #3
0
        public void Configure(DriverDetails driverDetails)
        {
            _sdk = (IAuraSdk2) new AuraSdk();
            _sdk.SwitchMode();
            _collection = _sdk.Enumerate(0);

            var drivers = GetDevices();

            foreach (ControlDevice controlDevice in drivers)
            {
                DeviceAdded?.Invoke(this, new Events.DeviceChangeEventArgs(controlDevice));
            }
        }
Beispiel #4
0
 public void Configure(DriverDetails driverDetails)
 {
     _sdk = (IAuraSdk2) new AuraSdk();
     _sdk.SwitchMode();
     _collection = _sdk.Enumerate(0);
 }
Beispiel #5
0
        /// <inheritdoc />
        public bool Initialize(RGBDeviceType loadFilter = RGBDeviceType.All, bool exclusiveAccessIfPossible = false, bool throwExceptions = false)
        {
            IsInitialized = false;

            try
            {
                UpdateTrigger?.Stop();

                // ReSharper disable once SuspiciousTypeConversion.Global
                _sdk = (IAuraSdk2) new AuraSdk();
                _sdk.SwitchMode();

                IList <IRGBDevice> devices = new List <IRGBDevice>();
                foreach (IAuraSyncDevice device in _sdk.Enumerate(0))
                {
                    try
                    {
                        IAsusRGBDevice rgbDevice;
                        switch ((AsusDeviceType)device.Type)
                        {
                        case AsusDeviceType.MB_RGB:
                            rgbDevice = new AsusMainboardRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Mainboard, device, WMIHelper.GetMainboardInfo()?.model ?? device.Name));
                            break;

                        case AsusDeviceType.MB_ADDRESABLE:
                            rgbDevice = new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.LedStripe, device), LedId.LedStripe1);
                            break;

                        case AsusDeviceType.VGA_RGB:
                            rgbDevice = new AsusGraphicsCardRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.GraphicsCard, device));
                            break;

                        case AsusDeviceType.HEADSET_RGB:
                            rgbDevice = new AsusHeadsetRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Headset, device));
                            break;

                        case AsusDeviceType.DRAM_RGB:
                            rgbDevice = new AsusDramRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.DRAM, device));
                            break;

                        case AsusDeviceType.KEYBOARD_RGB:
                        case AsusDeviceType.NB_KB_RGB:
                        case AsusDeviceType.NB_KB_4ZONE_RGB:
                            rgbDevice = new AsusKeyboardRGBDevice(new AsusKeyboardRGBDeviceInfo(device, CultureInfo.CurrentCulture));
                            break;

                        case AsusDeviceType.MOUSE_RGB:
                            rgbDevice = new AsusMouseRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Mouse, device));
                            break;

                        default:
                            rgbDevice = new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Unknown, device), LedId.Custom1);
                            break;
                        }

                        if (loadFilter.HasFlag(rgbDevice.DeviceInfo.DeviceType))
                        {
                            rgbDevice.Initialize(UpdateTrigger);
                            devices.Add(rgbDevice);
                        }
                    }
                    catch
                    {
                        if (throwExceptions)
                        {
                            throw;
                        }
                    }
                }

                UpdateTrigger?.Start();

                Devices       = new ReadOnlyCollection <IRGBDevice>(devices);
                IsInitialized = true;
            }
            catch
            {
                if (throwExceptions)
                {
                    throw;
                }
                return(false);
            }
            return(true);
        }
Beispiel #6
0
 /// <inheritdoc />
 public void ResetDevices()
 {
     _sdk?.ReleaseControl(0);
     _sdk?.SwitchMode();
 }
Beispiel #7
0
 public override void Activate()
 {
     sdk.SwitchMode();
     devs = sdk.Enumerate(0);
 }
Beispiel #8
0
        /// <inheritdoc />
        public bool Initialize(RGBDeviceType loadFilter = RGBDeviceType.All, bool exclusiveAccessIfPossible = false, bool throwExceptions = false)
        {
            IsInitialized = false;

            try
            {
                UpdateTrigger?.Stop();

                // ReSharper disable once SuspiciousTypeConversion.Global
                _sdk = (IAuraSdk2) new AuraSdk();
                _sdk.SwitchMode();

                IList <IRGBDevice> devices = new List <IRGBDevice>();
                foreach (IAuraSyncDevice device in _sdk.Enumerate(0))
                {
                    try
                    {
                        IAsusRGBDevice rgbDevice = null;
                        switch (device.Type)
                        {
                        case 0x00010000:     //Motherboard
                            rgbDevice = new AsusMainboardRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Mainboard, device, WMIHelper.GetMainboardInfo()?.model ?? device.Name));
                            break;

                        case 0x00011000:     //Motherboard LED Strip
                            rgbDevice = new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.LedStripe, device), LedId.LedStripe1);
                            break;

                        case 0x00020000:     //VGA
                            rgbDevice = new AsusGraphicsCardRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.GraphicsCard, device));
                            break;

                        case 0x00040000:     //Headset
                            rgbDevice = new AsusHeadsetRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Headset, device));
                            break;

                        case 0x00070000:     //DRAM
                            rgbDevice = new AsusDramRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.DRAM, device));
                            break;

                        case 0x00080000:     //Keyboard
                        case 0x00081000:     //Notebook Keyboard
                        case 0x00081001:     //Notebook Keyboard(4 - zone type)
                            rgbDevice = new AsusKeyboardRGBDevice(new AsusKeyboardRGBDeviceInfo(device, CultureInfo.CurrentCulture));
                            break;

                        case 0x00090000:     //Mouse
                            rgbDevice = new AsusMouseRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Mouse, device));
                            break;

                        case 0x00000000:     //All
                        case 0x00012000:     //All - In - One PC
                        case 0x00030000:     //Display
                        case 0x00050000:     //Microphone
                        case 0x00060000:     //External HDD
                        case 0x00061000:     //External BD Drive
                        case 0x000B0000:     //Chassis
                        case 0x000C0000:     //Projector
                            rgbDevice = new AsusUnspecifiedRGBDevice(new AsusRGBDeviceInfo(RGBDeviceType.Unknown, device), LedId.Custom1);
                            break;
                        }

                        if ((rgbDevice != null) && loadFilter.HasFlag(rgbDevice.DeviceInfo.DeviceType))
                        {
                            rgbDevice.Initialize(UpdateTrigger);
                            devices.Add(rgbDevice);
                        }
                    }
                    catch
                    {
                        if (throwExceptions)
                        {
                            throw;
                        }
                    }
                }

                UpdateTrigger?.Start();

                Devices       = new ReadOnlyCollection <IRGBDevice>(devices);
                IsInitialized = true;
            }
            catch
            {
                if (throwExceptions)
                {
                    throw;
                }
                return(false);
            }
            return(true);
        }