#pragma once #include #include #include class CrossPointState { // Static instance static CrossPointState instance; public: std::string openEpubPath; uint8_t lastSleepImage = UINT8_MAX; // UINT8_MAX = unset sentinel uint8_t readerActivityLoadCount = 0; bool lastSleepFromReader = false; ~CrossPointState() = default; // Get singleton instance static CrossPointState& getInstance() { return instance; } bool saveToFile() const; bool loadFromFile(); private: bool loadFromBinaryFile(); }; // Helper macro to access settings #define APP_STATE CrossPointState::getInstance()