From d6c2553af2fc42b3ea61a1bd5f6e2cc395deccbe Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Thu, 17 Mar 2022 16:56:33 +0100 Subject: start handling monitors --- src/config/ConfigManager.hpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/config/ConfigManager.hpp') diff --git a/src/config/ConfigManager.hpp b/src/config/ConfigManager.hpp index 5e58173a..eda06044 100644 --- a/src/config/ConfigManager.hpp +++ b/src/config/ConfigManager.hpp @@ -5,6 +5,7 @@ #include #include "../defines.hpp" #include +#include struct SConfigValue { int64_t intValue = -1; @@ -12,6 +13,14 @@ struct SConfigValue { std::string strValue = ""; }; +struct SMonitorRule { + std::string name = ""; + Vector2D resolution = Vector2D(1280,720); + Vector2D offset = Vector2D(0,0); + float mfact = 0.5; + float scale = 1; +}; + class CConfigManager { public: CConfigManager(); @@ -22,6 +31,8 @@ public: float getFloat(std::string); std::string getString(std::string); + SMonitorRule getMonitorRuleFor(std::string); + private: std::unordered_map configValues; time_t lastModifyTime = 0; // for reloading the config if changed @@ -32,12 +43,15 @@ private: bool isFirstLaunch = true; // For exec-once + std::deque m_dMonitorRules; + // internal methods void loadConfigLoadVars(); SConfigValue getConfigValueSafe(std::string); void parseLine(std::string&); void configSetValueSafe(const std::string&, const std::string&); void handleRawExec(const std::string&, const std::string&); + void handleMonitor(const std::string&, const std::string&); }; inline std::unique_ptr g_pConfigManager; \ No newline at end of file -- cgit v1.2.3