summaryrefslogtreecommitdiff
path: root/src/systemtask/SystemTask.h
diff options
context:
space:
mode:
authorMichele Bini <michele.bini@gmail.com>2022-06-06 18:27:54 (GMT)
committerMichele Bini <michele.bini@gmail.com>2022-06-06 23:09:58 (GMT)
commit7c45f185a32c7bcff47c8fda1acdec82d3213717 (patch)
tree53b0419fe2a19e6ec5c89d0be0a11dcd8d4ceb00 /src/systemtask/SystemTask.h
parent94b1b330fc1f6e941a797fedabade4e790e28bc2 (diff)
parent35dcf8c8607483c104711c9398d47d57147f4389 (diff)
Merge remote-tracking branch 'origin/develop' into analog24
Diffstat (limited to 'src/systemtask/SystemTask.h')
-rw-r--r--src/systemtask/SystemTask.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index f59b2af..e884ca3 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -53,6 +53,7 @@ namespace Pinetime {
namespace System {
class SystemTask {
public:
+ enum class SystemTaskState { Sleeping, Running, GoingToSleep, WakingUp };
SystemTask(Drivers::SpiMaster& spi,
Drivers::St7789& lcd,
Pinetime::Drivers::SpiNorFlash& spiNorFlash,
@@ -91,7 +92,7 @@ namespace Pinetime {
};
bool IsSleeping() const {
- return isSleeping;
+ return state == SystemTaskState::Sleeping || state == SystemTaskState::WakingUp;
}
// For accelerator-based games
@@ -119,10 +120,6 @@ namespace Pinetime {
Pinetime::Controllers::TimerController& timerController;
Pinetime::Controllers::AlarmController& alarmController;
QueueHandle_t systemTasksMsgQueue;
- std::atomic<bool> isSleeping {false};
- std::atomic<bool> isGoingToSleep {false};
- std::atomic<bool> isWakingUp {false};
- std::atomic<bool> isDimmed {false};
Pinetime::Drivers::Watchdog& watchdog;
Pinetime::Controllers::NotificationManager& notificationManager;
Pinetime::Controllers::MotorController& motorController;
@@ -148,6 +145,8 @@ namespace Pinetime {
TimerHandle_t idleTimer;
TimerHandle_t measureBatteryTimer;
bool doNotGoToSleep = false;
+ bool isDimmed = false;
+ SystemTaskState state = SystemTaskState::Running;
void HandleButtonAction(Controllers::ButtonActions action);
bool fastWakeUpDone = false;