#ifndef TJDUI_APP_SLEEP_MODEL_H #define TJDUI_APP_SLEEP_MODEL_H #include #include "sql_fit.h" #include namespace TJD { class TjdUiAppSleepModel { public: TjdUiAppSleepModel() {} ~TjdUiAppSleepModel() {} static TjdUiAppSleepModel &GetInstance(void); void LoadSleepData(void); std::string GenerateTimeString(int minutes); uint16_t GetTotalSleepTime(void) { return totalSleepTime; } uint16_t GetDeepSleepTime(void) { return deepSleepTime; } uint16_t GetLightSleepTime(void) { return lightSleepTime; } uint16_t *GetDeepSleepTimeArray(void) { return deepSleepTimeArray; } uint16_t *GetBlinkSleepTimeArray(void) { return blinkSleepTimeArray; } uint16_t *GetWakeupSleepTimeArray(void) { return wakeupSleepTimeArray; } uint16_t *GetLightSleepTimeArray(void) { return lightSleepTimeArray; } uint16_t *GetTotalSleepTimeArray(void) { return totalSleepTimeArray; } uint16_t GetBlinkTime(void) { return blinkTime; } uint16_t GetWakeupTime(void) { return wakeupTime; } uint8_t GetWeekDay(void); private: uint16_t totalSleepTime; uint16_t blinkTime; uint16_t wakeupTime; uint16_t deepSleepTime; // min uint16_t lightSleepTime; uint16_t blinkSleepTimeArray[7]{0}; uint16_t wakeupSleepTimeArray[7]{0}; uint16_t deepSleepTimeArray[7]{0}; uint16_t lightSleepTimeArray[7]{0}; uint16_t totalSleepTimeArray[7]{0}; }; } // namespace TJD #endif