31 void setSwitch(
const std::string &
name,
bool on);
33 void switchOn(
const std::string &
name);
35 void switchOff(
const std::string &
name);
37 bool isSwitchOn(
const std::string &
name)
const;
40 void setVariable(
const std::string &
name,
double value);
42 double getVariable(
const std::string &
name)
const;
44 void addVariable(
const std::string &
name,
double delta);
47 void setSelfVariable(
const std::string &
scope,
const std::string &
name,
double value);
49 double getSelfVariable(
const std::string &
scope,
const std::string &
name)
const;
51 bool hasSelfVariable(
const std::string &
scope,
const std::string &
name)
const;
63 void setSelfString(
const std::string &
scope,
const std::string &
name, std::string
value);
69 [[nodiscard]] std::string getSelfString(
const std::string &
scope,
const std::string &
name)
const;
71 [[nodiscard]]
bool hasSelfString(
const std::string &
scope,
const std::string &
name)
const;
73 void clearSelfString(
const std::string &
scope,
const std::string &
name);
107 std::unordered_map<std::string, bool> switches_;
108 std::unordered_map<std::string, double> variables_;
109 std::unordered_map<std::string, std::unordered_map<std::string, double>> selfVariables_;
110 std::unordered_map<std::string, std::unordered_map<std::string, std::string>> selfStrings_;