/* * MemoryManager.cpp * * Created on: 21.06.2026 * Author: FSmilari */ #include "ConfigManager.h" ConfigManager::ConfigManager() { memset(&_config, 0, sizeof(Config)); _config.wifiValid = false; } ConfigManager::~ConfigManager() { // TODO Auto-generated destructor stub } bool ConfigManager::loadConfig() { EEPROM.begin(sizeof(Config)); EEPROM.get(0, _config); if (_config.wifiValid != true) { memset(&_config, 0, sizeof(Config)); _config.wifiValid = false; return false; } return true; } bool ConfigManager::saveConfig(const Config &config) { _config = config; EEPROM.begin(sizeof(Config)); EEPROM.put(0, _config); return EEPROM.commit(); } void ConfigManager::resetConfig() { memset(&_config, 0, sizeof(Config)); _config.wifiValid = false; EEPROM.begin(sizeof(Config)); EEPROM.put(0, _config); EEPROM.commit(); } Config& ConfigManager::setToDefaultConfig() { memset(&_config, 0, sizeof(Config)); String ssid = ""; String pass = ""; ssid.toCharArray(_config.ssid, sizeof(_config.ssid)); pass.toCharArray(_config.pass, sizeof(_config.pass)); _config.wifiValid = false; _config.version = CONFIG_VERSION; _config.mode = LM_SINGLE_COLOR; _config.color.r = 0; _config.color.g = 0; _config.color.b = 0; _config.color.w = 255; _config.brightness = 128; EEPROM.begin(sizeof(Config)); EEPROM.put(0, _config); EEPROM.commit(); return _config; } Config& ConfigManager::getConfig() { return _config; }