Artemis.DeviceProviders.Corsair.CorsairHeadsets.UpdateDevice C# (CSharp) Метод

UpdateDevice() публичный Метод

public UpdateDevice ( Bitmap bitmap ) : void
bitmap System.Drawing.Bitmap
Результат void
        public override void UpdateDevice(Bitmap bitmap)
        {
            if (!CanUse || bitmap == null)
                return;
            if (bitmap.Width != bitmap.Height)
                throw new ArgumentException("Bitmap must be a perfect square");

            var leds = CueSDK.HeadsetSDK.Leds.Count();
            var step = (double) bitmap.Width/leds;
            using (bitmap)
            {
                var ledIndex = 0;
                // Color each LED according to one of the pixels
                foreach (var corsairLed in CueSDK.HeadsetSDK.Leds)
                {
                    var col = ledIndex == 0
                        ? bitmap.GetPixel(0, 0)
                        : bitmap.GetPixel((int) ((ledIndex + 1)*step - 1), (int) ((ledIndex + 1)*step - 1));

                    corsairLed.Color = col;
                    ledIndex++;
                }
            }
            CueSDK.HeadsetSDK.Update();
        }