public void Loop() { while (true) { Thread.Sleep(100); if (!Console.KeyAvailable) { continue; } var key = Console.ReadKey(true); var isShiftDown = key.Modifiers.HasFlag(ConsoleModifiers.Shift); switch (key.Key) { case ConsoleKey.A: if (isShiftDown) { _runner.KeyOnEvent(KeySwitch.KeyA); } else { _runner.KeyOffEvent(KeySwitch.KeyA); } break; case ConsoleKey.B: if (isShiftDown) { _runner.KeyOnEvent(KeySwitch.KeyB); } else { _runner.KeyOffEvent(KeySwitch.KeyB); } break; case ConsoleKey.UpArrow: _runner.UpPressedEvent(); break; case ConsoleKey.DownArrow: _runner.DownPressedEvent(); break; case ConsoleKey.Spacebar: _runner.ArmPressedEvent(); break; case ConsoleKey.Enter: _runner.DeployPressedEvent(); break; case ConsoleKey.Escape: return; } } }
private void ButtonArmOnInterrupt(uint data1, uint data2, DateTime time) { _modeRunner.ArmPressedEvent(); }