From 124eee5f1273b7f8081dfccdd21e19299002c6f2 Mon Sep 17 00:00:00 2001 From: shinichi Date: Fri, 9 Oct 2020 11:16:51 +0200 Subject: [PATCH] implemented stop for BLEHandler and BikeSimulator --- ProftaakRH/BLEHandler.cs | 8 +++++++- ProftaakRH/BikeSimulator.cs | 10 +++++++++- ProftaakRH/IHandler.cs | 2 ++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/ProftaakRH/BLEHandler.cs b/ProftaakRH/BLEHandler.cs index c368072..99b166c 100644 --- a/ProftaakRH/BLEHandler.cs +++ b/ProftaakRH/BLEHandler.cs @@ -44,7 +44,7 @@ namespace Hardware /// public void Connect() { - + BLE bleBike = new BLE(); Thread.Sleep(1000); // We need some time to list available devices @@ -203,5 +203,11 @@ namespace Hardware bleBike.WriteCharacteristic("6e40fec3-b5a3-f393-e0a9-e50e24dcca9e", antMessage); } + + public void stop() + { + bleBike.SubscriptionValueChanged -= BleBike_SubscriptionValueChanged; + bleHeart.SubscriptionValueChanged -= BleBike_SubscriptionValueChanged; + } } } diff --git a/ProftaakRH/BikeSimulator.cs b/ProftaakRH/BikeSimulator.cs index 4dad948..faa8517 100644 --- a/ProftaakRH/BikeSimulator.cs +++ b/ProftaakRH/BikeSimulator.cs @@ -28,6 +28,8 @@ namespace Hardware.Simulators byte[] powerArray; byte[] accPowerArray; + bool running = false; + public BikeSimulator(IDataReceiver dataReceiver) @@ -51,12 +53,14 @@ namespace Hardware.Simulators //Example BLE Message //4A-09-4E-05-19-16-00-FF-28-00-00-20-F0 + this.running = true; + float x = 0.0f; //Perlin for Random values ImprovedPerlin improvedPerlin = new ImprovedPerlin(0, LibNoise.NoiseQuality.Best); - while (true) + while (this.running) { CalculateVariables(improvedPerlin.GetValue(x) + 1); @@ -124,6 +128,10 @@ namespace Hardware.Simulators this.resistance = (byte)Math.Max(Math.Min(Math.Round(percentage / 0.5), 255), 0); } + public void stop() + { + this.running = false; + } } } diff --git a/ProftaakRH/IHandler.cs b/ProftaakRH/IHandler.cs index 4f52042..266f4c2 100644 --- a/ProftaakRH/IHandler.cs +++ b/ProftaakRH/IHandler.cs @@ -7,5 +7,7 @@ namespace ProftaakRH public interface IHandler { void setResistance(float percentage); + + void stop(); } }