private void writeOutputState() { if (string.IsNullOrEmpty(Error) && owner != null && owner.Connected && MatrixLedConfig != null) { foreach (SevenSegmentDigit digit in SevenSegmentDigits) { for (int segmentPosition = 0; segmentPosition < 8; ++segmentPosition) { SevenSegmentDigitSegment segment = digit.Segments[segmentPosition]; if (segment.Dirty) { bool setPixelOk; if (MatrixLedConfig.DigitOnRow) { setPixelOk = MatrixLed.SetPixel(owner.PokeysDevice, (byte)(digit.Index - 1), (byte)(MatrixLedConfig.SegmentIndexes[segmentPosition] - 1), segment.Value); } else { setPixelOk = MatrixLed.SetPixel(owner.PokeysDevice, (byte)(MatrixLedConfig.SegmentIndexes[segmentPosition] - 1), (byte)(digit.Index - 1), segment.Value); } if (!setPixelOk) { Error = Translations.Main.MatrixLedErrorWrite; } segment.Dirty = false; } } } } }
protected override void writeOutputState() { if (string.IsNullOrEmpty(Error) && owner != null && owner.Connected && MatrixLed != null && Row.HasValue && Column.HasValue) { if (!MatrixLed.SetPixel(owner.PokeysDevice, (byte)(Row.Value - 1), (byte)(Column.Value - 1), OutputState)) { Error = Translations.Main.MatrixLedErrorWrite; } } }
private void writeOutputState() { if (string.IsNullOrEmpty(Error) && owner != null && owner.PokeysIndex.HasValue && MatrixLedConfig != null) { PoKeysDevice_DLL.PoKeysDevice poKeysDevice = PoKeysEnumerator.Singleton.PoKeysDevice; if (!poKeysDevice.ConnectToDevice(owner.PokeysIndex.Value)) { Error = Translations.Main.PokeysConnectError; } else { foreach (SevenSegmentDigit digit in SevenSegmentDigits) { for (int segmentPosition = 0; segmentPosition < 8; ++segmentPosition) { SevenSegmentDigitSegment segment = digit.Segments[segmentPosition]; if (segment.Dirty) { bool setPixelOk; if (MatrixLedConfig.DigitOnRow) { setPixelOk = MatrixLed.SetPixel((byte)(digit.Index - 1), (byte)(MatrixLedConfig.SegmentIndexes[segmentPosition] - 1), segment.Value); } else { setPixelOk = MatrixLed.SetPixel((byte)(MatrixLedConfig.SegmentIndexes[segmentPosition] - 1), (byte)(digit.Index - 1), segment.Value); } if (!setPixelOk) { Error = Translations.Main.MatrixLedErrorWrite; } segment.Dirty = false; } } } poKeysDevice.DisconnectDevice(); } } }
protected override void writeOutputState() { if (string.IsNullOrEmpty(Error) && owner != null && owner.PokeysIndex.HasValue && MatrixLed != null && Row.HasValue && Column.HasValue) { PoKeysDevice_DLL.PoKeysDevice poKeysDevice = PoKeysEnumerator.Singleton.PoKeysDevice; if (!poKeysDevice.ConnectToDevice(owner.PokeysIndex.Value)) { Error = Translations.Main.PokeysConnectError; } else { if (!MatrixLed.SetPixel((byte)(Row.Value - 1), (byte)(Column.Value - 1), OutputState)) { Error = Translations.Main.MatrixLedErrorWrite; } poKeysDevice.DisconnectDevice(); } } }