public override bool UpdateDevice(Dictionary <DeviceKeys, System.Drawing.Color> keyColors, DoWorkEventArgs e, bool forced = false) { if (!isInitialized) { return(false); } try { byte[] bitmap = new byte[392]; bitmap[0] = 0xF3; bitmap[1] = 0x01; bitmap[2] = 0x00; bitmap[3] = 0x7F; int index = 0; foreach (var key in keyColors) { if (e.Cancel) { return(false); } index = DrevoRadiSDK.ToDrevoBitmap((int)key.Key); if (index != -1) { index = index * 3 + 4; bitmap[index] = key.Value.R; bitmap[index + 1] = key.Value.G; bitmap[index + 2] = key.Value.B; } } DrevoRadiSDK.DrevoRadiSetRGB(bitmap, 392); return(true); } catch (Exception exc) { LogError("Drevo device, error when updating device. Error: " + exc); return(false); } }
public override void Shutdown() { DrevoRadiSDK.DrevoRadiShutdown(); isInitialized = false; return; }
public override bool Initialize() => isInitialized = DrevoRadiSDK.DrevoRadiInit();