Cogs.Core
|
Manages runtime variables for the engine. More...
#include <Variables.h>
Public Member Functions | |
Variables (const char **variables, int count) | |
void | initialize (const ResourceStore &resourceStore) |
Variable * | set (const StringView &name, const StringView &value) |
Variable * | set (const StringView &name, const char *value) |
Variable * | set (const StringView &name, int value) |
Variable * | set (const StringView &name, float value) |
Variable * | set (const StringView &name, double value) |
Variable * | set (const StringView &name, bool value) |
Variable * | set (const StringView &name, glm::vec2 value) |
Variable * | set (const StringView &name, glm::vec3 value) |
Variable * | set (const StringView &name, glm::vec4 value) |
const Variable * | get (const StringView &name) const |
Retrieve a pointer to the variable with the given name. | |
Variable * | getIfExists (const StringView &name) |
Get a pointer to a variable if it exists, otherwise nullptr. Does not modify set of variables. | |
Variable * | get (const StringView &name) |
Retrieve a pointer to the variable with the given name. | |
bool | erase (const StringView &name) |
Remove a set variable (so it will revert to default). | |
bool | exist (const StringView &name) |
Check if a variable exists. | |
const StringView | get (const StringView &name, StringView defaultValue) const |
const char * | get (const StringView &name, const char *defaultValue) const |
bool | get (const StringView &name, bool defaultValue) const |
float | get (const StringView &name, float defaultValue) const |
double | get (const StringView &name, double defaultValue) const |
int | get (const StringView &name, int defaultValue) const |
glm::vec2 | get (const StringView &name, glm::vec2 defaultValue) const |
glm::vec3 | get (const StringView &name, glm::vec3 defaultValue) const |
glm::vec4 | get (const StringView &name, glm::vec4 defaultValue) const |
bool | getOrAdd (const StringView &name, bool defaultValue) |
void | getMatchingVariables (std::vector< const Variable * > &vars, const StringView &keyPrefix) |
Variable & | operator[] (const StringView &key) |
std::unordered_map< size_t, Variable > & | getVariables () |
Private Attributes | |
std::unordered_map< size_t, Variable > | variables |
Variable store. | |
Variable | empty |
Empty variable, returned on invalid queries. | |
Manages runtime variables for the engine.
Definition at line 102 of file Variables.h.
Cogs::Core::Variables::Variables | ( | const char ** | variables, |
int | count | ||
) |
Definition at line 57 of file Variables.cpp.
bool Cogs::Core::Variables::erase | ( | const StringView & | name | ) |
Remove a set variable (so it will revert to default).
Definition at line 100 of file Variables.cpp.
References Cogs::StringView::hash().
|
inline |
Check if a variable exists.
Definition at line 132 of file Variables.h.
References Cogs::StringView::hash().
Cogs::Core::Variable * Cogs::Core::Variables::get | ( | const StringView & | name | ) |
Retrieve a pointer to the variable with the given name.
Definition at line 124 of file Variables.cpp.
References Cogs::StringView::hash().
const Cogs::Core::Variable * Cogs::Core::Variables::get | ( | const StringView & | name | ) | const |
Retrieve a pointer to the variable with the given name.
Definition at line 109 of file Variables.cpp.
References Cogs::StringView::hash().
|
inline |
Definition at line 136 of file Variables.h.
|
inline |
Definition at line 135 of file Variables.h.
|
inline |
Definition at line 138 of file Variables.h.
|
inline |
Definition at line 137 of file Variables.h.
|
inline |
Definition at line 140 of file Variables.h.
|
inline |
Definition at line 141 of file Variables.h.
|
inline |
Definition at line 142 of file Variables.h.
|
inline |
Definition at line 139 of file Variables.h.
const Cogs::StringView Cogs::Core::Variables::get | ( | const StringView & | name, |
StringView | defaultValue | ||
) | const |
Definition at line 45 of file Variables.cpp.
Cogs::Core::Variable * Cogs::Core::Variables::getIfExists | ( | const StringView & | name | ) |
Get a pointer to a variable if it exists, otherwise nullptr. Does not modify set of variables.
Definition at line 116 of file Variables.cpp.
References Cogs::StringView::hash().
void Cogs::Core::Variables::getMatchingVariables | ( | std::vector< const Variable * > & | vars, |
const StringView & | keyPrefix | ||
) |
Definition at line 140 of file Variables.cpp.
|
inline |
Definition at line 144 of file Variables.h.
|
inline |
Definition at line 157 of file Variables.h.
void Cogs::Core::Variables::initialize | ( | const ResourceStore & | resourceStore | ) |
Definition at line 78 of file Variables.cpp.
Cogs::Core::Variable & Cogs::Core::Variables::operator[] | ( | const StringView & | key | ) |
Definition at line 135 of file Variables.cpp.
|
inline |
Definition at line 114 of file Variables.h.
|
inline |
Definition at line 110 of file Variables.h.
|
inline |
Definition at line 109 of file Variables.h.
|
inline |
Definition at line 113 of file Variables.h.
|
inline |
Definition at line 112 of file Variables.h.
|
inline |
Definition at line 115 of file Variables.h.
|
inline |
Definition at line 116 of file Variables.h.
|
inline |
Definition at line 117 of file Variables.h.
|
inline |
Definition at line 111 of file Variables.h.
|
private |
Empty variable, returned on invalid queries.
Definition at line 164 of file Variables.h.
|
private |
Variable store.
Definition at line 161 of file Variables.h.