diff options
Diffstat (limited to 'src/components/datetime/DateTimeController.h')
-rw-r--r-- | src/components/datetime/DateTimeController.h | 123 |
1 files changed, 81 insertions, 42 deletions
diff --git a/src/components/datetime/DateTimeController.h b/src/components/datetime/DateTimeController.h index fb0969d1..d0ae727e 100644 --- a/src/components/datetime/DateTimeController.h +++ b/src/components/datetime/DateTimeController.h @@ -9,56 +9,95 @@ namespace Pinetime { } namespace Controllers { class DateTime { - public: - enum class Days : uint8_t {Unknown, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday}; - enum class Months : uint8_t {Unknown, January, February, March, April, May, June, July, August, September, October, November, December}; + public: + enum class Days : uint8_t { Unknown, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday }; + enum class Months : uint8_t { + Unknown, + January, + February, + March, + April, + May, + June, + July, + August, + September, + October, + November, + December + }; - DateTime(System::SystemTask& systemTask); + DateTime(System::SystemTask& systemTask); - void SetTime(uint16_t year, uint8_t month, uint8_t day, uint8_t dayOfWeek, uint8_t hour, uint8_t minute, uint8_t second, uint32_t systickCounter); - void UpdateTime(uint32_t systickCounter); - uint16_t Year() const { return year; } - Months Month() const { return month; } - uint8_t Day() const { return day; } - Days DayOfWeek() const { return dayOfWeek; } - uint8_t Hours() const { return hour; } - uint8_t Minutes() const { return minute; } - uint8_t Seconds() const { return second; } + void SetTime(uint16_t year, + uint8_t month, + uint8_t day, + uint8_t dayOfWeek, + uint8_t hour, + uint8_t minute, + uint8_t second, + uint32_t systickCounter); + void UpdateTime(uint32_t systickCounter); + uint16_t Year() const { + return year; + } + Months Month() const { + return month; + } + uint8_t Day() const { + return day; + } + Days DayOfWeek() const { + return dayOfWeek; + } + uint8_t Hours() const { + return hour; + } + uint8_t Minutes() const { + return minute; + } + uint8_t Seconds() const { + return second; + } - const char *MonthShortToString(); - const char *MonthShortToStringLow(); - const char *MonthsToStringLow(); - const char *DayOfWeekToString(); - const char *DayOfWeekShortToString(); - const char *DayOfWeekToStringLow(); - const char *DayOfWeekShortToStringLow(); + const char* MonthShortToString(); + const char* MonthShortToStringLow(); + const char* MonthsToStringLow(); + const char* DayOfWeekToString(); + const char* DayOfWeekShortToString(); + const char* DayOfWeekToStringLow(); + const char* DayOfWeekShortToStringLow(); - std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds> CurrentDateTime() const { return currentDateTime; } - std::chrono::seconds Uptime() const { return uptime; } - private: - System::SystemTask& systemTask; - uint16_t year = 0; - Months month = Months::Unknown; - uint8_t day = 0; - Days dayOfWeek = Days::Unknown; - uint8_t hour = 0; - uint8_t minute = 0; - uint8_t second = 0; + std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds> CurrentDateTime() const { + return currentDateTime; + } + std::chrono::seconds Uptime() const { + return uptime; + } - uint32_t previousSystickCounter = 0; - std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds> currentDateTime; - std::chrono::seconds uptime {0}; + private: + System::SystemTask& systemTask; + uint16_t year = 0; + Months month = Months::Unknown; + uint8_t day = 0; + Days dayOfWeek = Days::Unknown; + uint8_t hour = 0; + uint8_t minute = 0; + uint8_t second = 0; - bool isMidnightAlreadyNotified = false; + uint32_t previousSystickCounter = 0; + std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds> currentDateTime; + std::chrono::seconds uptime {0}; - static char const *DaysString[]; - static char const *DaysStringShort[]; - static char const *DaysStringLow[]; - static char const *DaysStringShortLow[]; - static char const *MonthsString[]; - static char const *MonthsStringLow[]; - static char const *MonthsLow[]; + bool isMidnightAlreadyNotified = false; + static char const* DaysString[]; + static char const* DaysStringShort[]; + static char const* DaysStringLow[]; + static char const* DaysStringShortLow[]; + static char const* MonthsString[]; + static char const* MonthsStringLow[]; + static char const* MonthsLow[]; }; } }
\ No newline at end of file |