From b3d85ae89a3ae02632f6215b2459bbf0bd2c080b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 5 Apr 2023 11:46:44 +0200 Subject: [PATCH] Prepare for settings move --- Core/Config.cpp | 14 +++++--------- Core/ConfigSettings.h | 6 ++++++ 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Core/Config.cpp b/Core/Config.cpp index 1984aa7490..ba3d4ea398 100644 --- a/Core/Config.cpp +++ b/Core/Config.cpp @@ -814,12 +814,6 @@ static const ConfigSetting vrSettings[] = { ConfigSetting("VRHeadRotationSmoothing", &g_Config.bHeadRotationSmoothing, false), }; -struct ConfigSectionSettings { - const char *section; - const ConfigSetting *settings; - size_t settingsCount; -}; - static const ConfigSectionSettings sections[] = { {"General", generalSettings, ARRAY_SIZE(generalSettings)}, {"CPU", cpuSettings, ARRAY_SIZE(cpuSettings)}, @@ -835,8 +829,10 @@ static const ConfigSectionSettings sections[] = { {"VR", vrSettings, ARRAY_SIZE(vrSettings)}, }; +const size_t numSections = ARRAY_SIZE(sections); + static void IterateSettings(IniFile &iniFile, std::function func) { - for (size_t i = 0; i < ARRAY_SIZE(sections); ++i) { + for (size_t i = 0; i < numSections; ++i) { Section *section = iniFile.GetOrCreateSection(sections[i].section); for (size_t j = 0; j < sections[i].settingsCount; j++) { func(section, sections[i].settings[j]); @@ -845,7 +841,7 @@ static void IterateSettings(IniFile &iniFile, std::function func) { - for (size_t i = 0; i < ARRAY_SIZE(sections); ++i) { + for (size_t i = 0; i < numSections; ++i) { for (size_t j = 0; j < sections[i].settingsCount; j++) { func(sections[i].settings[j]); } @@ -1686,7 +1682,7 @@ void Config::ResetControlLayout() { } void Config::GetReportingInfo(UrlEncoder &data) { - for (size_t i = 0; i < ARRAY_SIZE(sections); ++i) { + for (size_t i = 0; i < numSections; ++i) { const std::string prefix = std::string("config.") + sections[i].section; for (size_t j = 0; j < sections[i].settingsCount; j++) { sections[i].settings[j].Report(data, prefix); diff --git a/Core/ConfigSettings.h b/Core/ConfigSettings.h index 6f5aa33f7d..7c0456c202 100644 --- a/Core/ConfigSettings.h +++ b/Core/ConfigSettings.h @@ -222,3 +222,9 @@ struct ReportedConfigSetting : public ConfigSetting { report_ = true; } }; + +struct ConfigSectionSettings { + const char *section; + const ConfigSetting *settings; + size_t settingsCount; +};