ref: e5b73212f6addcfdb5e306df63d7135e543c4f8d
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 39 40 41 42 43 44 |
#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 }; HeartRateController() = default; 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: Applications::HeartRateTask* task = nullptr; States state = States::Stopped; uint8_t heartRate = 0; Pinetime::Controllers::HeartRateService* service = nullptr; }; } } |