summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/DynamicInputTextures/DITConfiguration.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/DynamicInputTextures/DITConfiguration.h')
-rw-r--r--Source/Core/InputCommon/DynamicInputTextures/DITConfiguration.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/DynamicInputTextures/DITConfiguration.h b/Source/Core/InputCommon/DynamicInputTextures/DITConfiguration.h
new file mode 100644
index 0000000000..49e3a350f9
--- /dev/null
+++ b/Source/Core/InputCommon/DynamicInputTextures/DITConfiguration.h
@@ -0,0 +1,32 @@
+// Copyright 2019 Dolphin Emulator Project
+// Licensed under GPLv2+
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <string>
+#include <unordered_map>
+#include <vector>
+
+#include "Common/CommonTypes.h"
+#include "Common/IniFile.h"
+#include "InputCommon/DynamicInputTextures/DITData.h"
+
+namespace InputCommon::DynamicInputTextures
+{
+class Configuration
+{
+public:
+ explicit Configuration(const std::string& json_file);
+ ~Configuration();
+ bool GenerateTextures(const IniFile::Section* sec, const std::string& controller_name) const;
+
+private:
+ bool GenerateTexture(const IniFile::Section* sec, const std::string& controller_name,
+ const Data& texture_data) const;
+
+ std::vector<Data> m_dynamic_input_textures;
+ std::string m_base_path;
+ bool m_valid = true;
+};
+} // namespace InputCommon::DynamicInputTextures