ref: fdc89f1a20889c0295534f58dc2e82ce8c55a18b
src/components/heartrate/Ppg.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 |
#pragma once #include <array> #include <cstddef> #include <cstdint> #include "components/heartrate/Biquad.h" #include "components/heartrate/Ptagc.h" namespace Pinetime { namespace Controllers { class Ppg { public: Ppg(); int8_t Preprocess(float spl); int HeartRate(); void SetOffset(uint16_t offset); void Reset(); private: std::array<int8_t, 200> data; size_t dataIndex = 0; float offset; Biquad hpf; Ptagc agc; Biquad lpf; int ProcessHeartRate(); }; } } |