diff options
Diffstat (limited to 'src/heartratetask')
-rw-r--r-- | src/heartratetask/HeartRateTask.cpp | 29 | ||||
-rw-r--r-- | src/heartratetask/HeartRateTask.h | 11 |
2 files changed, 20 insertions, 20 deletions
diff --git a/src/heartratetask/HeartRateTask.cpp b/src/heartratetask/HeartRateTask.cpp index 5a6d2a5e..36c8cc18 100644 --- a/src/heartratetask/HeartRateTask.cpp +++ b/src/heartratetask/HeartRateTask.cpp @@ -5,10 +5,8 @@ using namespace Pinetime::Applications; -HeartRateTask::HeartRateTask(Drivers::Hrs3300 &heartRateSensor, Controllers::HeartRateController& controller) : - heartRateSensor{heartRateSensor}, - controller{controller}, - ppg{static_cast<float>(heartRateSensor.ReadHrs())} { +HeartRateTask::HeartRateTask(Drivers::Hrs3300& heartRateSensor, Controllers::HeartRateController& controller) + : heartRateSensor {heartRateSensor}, controller {controller}, ppg {static_cast<float>(heartRateSensor.ReadHrs())} { messageQueue = xQueueCreate(10, 1); controller.SetHeartRateTask(this); } @@ -18,8 +16,8 @@ void HeartRateTask::Start() { APP_ERROR_HANDLER(NRF_ERROR_NO_MEM); } -void HeartRateTask::Process(void *instance) { - auto *app = static_cast<HeartRateTask *>(instance); +void HeartRateTask::Process(void* instance) { + auto* app = static_cast<HeartRateTask*>(instance); app->Work(); } @@ -29,8 +27,10 @@ void HeartRateTask::Work() { Messages msg; uint32_t delay; if (state == States::Running) { - if (measurementStarted) delay = 40; - else delay = 100; + if (measurementStarted) + delay = 40; + else + delay = 100; } else delay = portMAX_DELAY; @@ -42,19 +42,21 @@ void HeartRateTask::Work() { break; case Messages::WakeUp: state = States::Running; - if(measurementStarted) { + if (measurementStarted) { lastBpm = 0; StartMeasurement(); } break; case Messages::StartMeasurement: - if(measurementStarted) break; + if (measurementStarted) + break; lastBpm = 0; StartMeasurement(); measurementStarted = true; break; case Messages::StopMeasurement: - if(!measurementStarted) break; + if (!measurementStarted) + break; StopMeasurement(); measurementStarted = false; break; @@ -66,8 +68,9 @@ void HeartRateTask::Work() { ppg.Preprocess(hrs); auto bpm = ppg.HeartRate(); - if (lastBpm == 0 && bpm == 0) controller.Update(Controllers::HeartRateController::States::NotEnoughData, 0); - if(bpm != 0) { + if (lastBpm == 0 && bpm == 0) + controller.Update(Controllers::HeartRateController::States::NotEnoughData, 0); + if (bpm != 0) { lastBpm = bpm; controller.Update(Controllers::HeartRateController::States::Running, lastBpm); } diff --git a/src/heartratetask/HeartRateTask.h b/src/heartratetask/HeartRateTask.h index f142af1a..0796dc74 100644 --- a/src/heartratetask/HeartRateTask.h +++ b/src/heartratetask/HeartRateTask.h @@ -4,19 +4,18 @@ #include <queue.h> #include <components/heartrate/Ppg.h> - namespace Pinetime { namespace Drivers { class Hrs3300; } - namespace Controllers{ + namespace Controllers { class HeartRateController; } namespace Applications { class HeartRateTask { public: - enum class Messages : uint8_t {GoToSleep, WakeUp, StartMeasurement, StopMeasurement }; - enum class States {Idle, Running}; + enum class Messages : uint8_t { GoToSleep, WakeUp, StartMeasurement, StopMeasurement }; + enum class States { Idle, Running }; explicit HeartRateTask(Drivers::Hrs3300& heartRateSensor, Controllers::HeartRateController& controller); void Start(); @@ -31,13 +30,11 @@ namespace Pinetime { TaskHandle_t taskHandle; QueueHandle_t messageQueue; States state = States::Running; - Drivers::Hrs3300 &heartRateSensor; + Drivers::Hrs3300& heartRateSensor; Controllers::HeartRateController& controller; Controllers::Ppg ppg; bool measurementStarted = false; - }; } } - |