ref: 0.13.0
src/components/heartrate/HeartRateController.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
#pragma once #include <cstdint> #include <components/ble/HeartRateService.h> namespace Pinetime { namespace Applications { class HeartRateTask; } namespace System { class SystemTask; } namespace Controllers { class HeartRateController { public: enum class States { Stopped, NotEnoughData, NoTouch, Running}; explicit HeartRateController(System::SystemTask& systemTask); void Start(); void Stop(); void Update(States newState, uint8_t heartRate); void SetHeartRateTask(Applications::HeartRateTask* task); States State() const { return state; } uint8_t HeartRate() const { return heartRate; } void SetService(Pinetime::Controllers::HeartRateService *service); private: System::SystemTask& systemTask; Applications::HeartRateTask* task = nullptr; States state = States::Stopped; uint8_t heartRate = 0; Pinetime::Controllers::HeartRateService* service = nullptr; }; } } |