private void button_Click(object sender, RoutedEventArgs e) { _mpu6050.Dispose(); Application.Current.Exit(); }
public void Disable(Accessories accessory) { try { switch (accessory) { case Accessories.Camera: camera.Dispose(); break; case Accessories.IMU: imu.Dispose(); break; case Accessories.MotorL: if (motorL != null) { motorL.Speed = 0; } motorL.Dispose(); break; case Accessories.MotorR: if (motorR != null) { motorR.Speed = 0; } motorR.Dispose(); break; case Accessories.Motors: Disable(Accessories.MotorL); Disable(Accessories.MotorR); break; case Accessories.ADC: adc.Dispose(); break; case Accessories.IR: ir.Dispose(); break; case Accessories.Sonar: sonar.Dispose(); break; case Accessories.LED: led.Dispose(); break; case Accessories.CPUTemp: cpuTemperature = null; break; case Accessories.All: foreach (var item in Enum.GetValues(typeof(Accessories))) { if ((Accessories)item != Accessories.All) { Disable((Accessories)item); } } break; default: Console.WriteLine("Something went wrong (Disabling accessories)"); break; } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine($"Disabling accessory: {Enum.GetName(typeof(Accessories), accessory)} has failed."); System.Diagnostics.Debug.WriteLine($"Exception message: {ex.Message}"); Console.WriteLine($"Disabling accessory: {Enum.GetName(typeof(Accessories), accessory)} has failed."); Console.WriteLine($"Exception message: {ex.Message}"); } }