namespace
configConfiguration functionality.
Classes
- class Configuration
- This class holds configuration data in a map of ConfigValues, and also supports nested configurations via a map of smart pointers to this type.
- class ConfigValue
- This class uses an anonymous tagged union to store values of different types, as well as providing access to the values in a type safe manner.
Enums
- enum class ConfigStoredType { Unknown = ID_UNDEFINED, Boolean, Integer, Double, MagnumVec2, MagnumVec3, MagnumVec4, MagnumMat3, MagnumQuat, MagnumRad, _nonTrivialTypes, String = _nonTrivialTypes }
- This enum lists every type of value that can be currently stored directly in an esp::
core:: config:: Configuration. All supported types should have entries in this enum class. All non-trivial types should have their enums placed below _nonTrivialTypes
tag.
Functions
- void initConfigBindings(pybind11::module& m)
- Specify bindings for esp::
core:: config:: Configuration. -
auto getNameForStoredType(const ConfigStoredType& value) -> std::
string - Retrieve a string description of the passed ConfigStoredType enum value.
- auto isConfigStoredTypeNonTrivial(ConfigStoredType type) -> bool constexpr
- Quick check to see if type is trivial or not.
-
template<class T>auto configStoredTypeFor() -> ConfigStoredType constexpr
- Function template to return type enum for specified type. All supported types should have a specialization of this function handling their type to ConfigStoredType enum tags mapping.
-
template<>auto configStoredTypeFor<bool>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
Boolean type enum for specified type. -
template<>auto configStoredTypeFor<int>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
Integer type enum for specified type. -
template<>auto configStoredTypeFor<double>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
Double type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Vector2>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumVec2 type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Vector3>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumVec3 type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Color3>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumVec3 type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Vector4>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumVec4 type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Color4>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumVec4 type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Matrix3>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumMat3 type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Quaternion>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumQuat type enum for specified type. -
template<>auto configStoredTypeFor<Mn::Rad>() -> ConfigStoredType constexpr
- Returns ConfigStoredType::
MagnumRad type enum for specified type. -
auto operator<<(Mn::
Debug& debug, const ConfigStoredType& value) -> MAGNUM_EXPORT Mn:: Debug& - Stream operator to support display of ConfigStoredType enum tags.
-
auto operator<<(Mn::
Debug& debug, const ConfigValue& value) -> MAGNUM_EXPORT Mn:: Debug& - provide debug stream support for ConfigValue
-
auto operator<<(Mn::
Debug& debug, const Configuration& value) -> MAGNUM_EXPORT Mn:: Debug& - provide debug stream support for a Configuration
Enum documentation
enum class esp:: core:: config:: ConfigStoredType
#include <esp/core/Configuration.h>
This enum lists every type of value that can be currently stored directly in an esp::_nonTrivialTypes
tag.
Enumerators | |
---|---|
Unknown |
Unknown type. |
Boolean |
boolean type |
Integer |
integer type |
Double |
double type |
MagnumVec2 |
Magnum::Vector2 type. |
MagnumVec3 |
Magnum::Vector3 type. |
MagnumVec4 |
Magnum::Vector4 type. |
MagnumMat3 |
Magnum::Matrix3 (3x3) type. |
MagnumQuat |
Magnum::Quaternion type. |
MagnumRad |
Magnum::Rad angle type. |
_nonTrivialTypes |
|
String |
All enum values of nontrivial types must be added after |
Function documentation
void esp:: core:: config:: initConfigBindings(pybind11::module& m)
#include <esp/bindings/Bindings.h>
Specify bindings for esp::
std:: string esp:: core:: config:: getNameForStoredType(const ConfigStoredType& value)
#include <esp/core/Configuration.h>
Retrieve a string description of the passed ConfigStoredType enum value.
bool esp:: core:: config:: isConfigStoredTypeNonTrivial(ConfigStoredType type) constexpr
#include <esp/core/Configuration.h>
Quick check to see if type is trivial or not.
#include <esp/core/Configuration.h>
template<class T>
ConfigStoredType esp:: core:: config:: configStoredTypeFor() constexpr
Function template to return type enum for specified type. All supported types should have a specialization of this function handling their type to ConfigStoredType enum tags mapping.
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<bool>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<int>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<double>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Vector2>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Vector3>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Color3>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Vector4>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Color4>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Matrix3>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Quaternion>() constexpr
Returns ConfigStoredType::
#include <esp/core/Configuration.h>
template<>
ConfigStoredType esp:: core:: config:: configStoredTypeFor<Mn::Rad>() constexpr
Returns ConfigStoredType::
MAGNUM_EXPORT Mn:: Debug& esp:: core:: config:: operator<<(Mn:: Debug& debug,
const ConfigStoredType& value)
#include <esp/core/Configuration.h>
Stream operator to support display of ConfigStoredType enum tags.
MAGNUM_EXPORT Mn:: Debug& esp:: core:: config:: operator<<(Mn:: Debug& debug,
const ConfigValue& value)
#include <esp/core/Configuration.h>
provide debug stream support for ConfigValue
MAGNUM_EXPORT Mn:: Debug& esp:: core:: config:: operator<<(Mn:: Debug& debug,
const Configuration& value)
#include <esp/core/Configuration.h>
provide debug stream support for a Configuration