settings.h 888 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef Settings_h
  2. #define Settings_h
  3. #include "SPIFFS.h"
  4. #include <FS.h>
  5. #include <ArduinoJson.h>
  6. #define FORMAT_SPIFFS_IF_FAILED true
  7. #include "Display.h"
  8. extern Display display_obj;
  9. class Settings {
  10. private:
  11. String json_settings_string;
  12. void printJsonSettings(String json_string);
  13. bool createDefaultSettings(fs::FS &fs);
  14. public:
  15. bool begin();
  16. template <typename T>
  17. T loadSetting(String name);
  18. String getSettingType(String key);
  19. String setting_index_to_name(int i);
  20. int getNumberSettings();
  21. //template<>
  22. //int loadSetting<int>(String key);
  23. //template<>
  24. //String loadSetting<String>(String key);
  25. //template<>
  26. //bool loadSetting<bool>(String key);
  27. //template<>
  28. //uint8_t loadSetting<uint8_t>(String key);
  29. String getSettingsString();
  30. void main(uint32_t currentTime);
  31. };
  32. #endif