3 #include <nlohmann/json.hpp>
5 #include "ISettingsLoader.h"
12 JSONSettingsLoader(std::string_view filename, std::string_view path,
bool relative =
false);
14 void getValue(
const std::string& name,
int* value)
const override;
15 void getValue(
const std::string& name,
double* value)
const override;
16 void getValue(
const std::string& name, std::string* value)
const override;
17 void getValue(
const std::string& name,
bool* value)
const override;
19 void setValue(
const std::string& name,
int value,
bool overwrite,
bool save)
override;
20 void setValue(
const std::string& name,
double value,
bool overwrite,
bool save)
override;
21 void setValue(
const std::string& name,
const std::string& value,
bool overwrite,
bool save)
override;
22 void setValue(
const std::string& name,
bool value,
bool overwrite,
bool save)
override;
24 [[nodiscard]]
bool hasValue(
const std::string& name)
const override;
29 nlohmann::json settings{};