diff options
Diffstat (limited to 'src/SystemTask/SystemTask.h')
| -rw-r--r-- | src/SystemTask/SystemTask.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/SystemTask/SystemTask.h b/src/SystemTask/SystemTask.h index 8fa7e7d..40277cf 100644 --- a/src/SystemTask/SystemTask.h +++ b/src/SystemTask/SystemTask.h @@ -8,16 +8,17 @@ #include <Components/Battery/BatteryController.h> #include <DisplayApp/DisplayApp.h> #include <drivers/Watchdog.h> -#include <Components/Ble/NimbleController.h> #include <drivers/SpiNorFlash.h> #include "SystemMonitor.h" +#include "Components/Ble/NimbleController.h" +#include "timers.h" namespace Pinetime { namespace System { class SystemTask { public: enum class Messages {GoToSleep, GoToRunning, OnNewTime, OnNewNotification, BleConnected, - BleFirmwareUpdateStarted, BleFirmwareUpdateFinished, OnTouchEvent, OnButtonEvent + BleFirmwareUpdateStarted, BleFirmwareUpdateFinished, OnTouchEvent, OnButtonEvent, OnDisplayTaskSleeping }; SystemTask(Drivers::SpiMaster &spi, Drivers::St7789 &lcd, @@ -37,6 +38,8 @@ namespace Pinetime { void OnIdle(); + Pinetime::Controllers::NimbleController& nimble() {return nimbleController;}; + private: TaskHandle_t taskHandle; @@ -51,7 +54,9 @@ namespace Pinetime { Pinetime::Controllers::Ble& bleController; Pinetime::Controllers::DateTime& dateTimeController; QueueHandle_t systemTaksMsgQueue; - bool isSleeping = false; + std::atomic<bool> isSleeping{false}; + std::atomic<bool> isGoingToSleep{false}; + std::atomic<bool> isWakingUp{false}; Pinetime::Drivers::Watchdog watchdog; Pinetime::Drivers::WatchdogView watchdogView; Pinetime::Controllers::NotificationManager& notificationManager; @@ -84,4 +89,4 @@ namespace Pinetime { #endif }; } -}
\ No newline at end of file +} |
