diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-03-17 16:56:33 +0100 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-03-17 16:56:33 +0100 |
| commit | d6c2553af2fc42b3ea61a1bd5f6e2cc395deccbe (patch) | |
| tree | e690297fd4f953824129dd148bcec66a63a86957 /src/config/ConfigManager.hpp | |
| parent | cf51ab71a25cbb60ebcf13edd4b7413c23264128 (diff) | |
start handling monitors
Diffstat (limited to 'src/config/ConfigManager.hpp')
| -rw-r--r-- | src/config/ConfigManager.hpp | 14 |
1 files changed, 14 insertions, 0 deletions
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 <unordered_map> #include "../defines.hpp" #include <vector> +#include <deque> 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<std::string, SConfigValue> configValues; time_t lastModifyTime = 0; // for reloading the config if changed @@ -32,12 +43,15 @@ private: bool isFirstLaunch = true; // For exec-once + std::deque<SMonitorRule> 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<CConfigManager> g_pConfigManager;
\ No newline at end of file |
