![]() |
FastEngine 0.9.3
A multiplayer oriented 2D engine made with Vulkan.
|
A class that can store any type of data. More...
#include <C_property.hpp>
Classes | |
union | Data |
Public Types | |
enum class | Types : uint8_t { PTYPE_NULL , PTYPE_INTEGERS , PTYPE_FLOAT , PTYPE_DOUBLE , PTYPE_STRING , PTYPE_POINTER , PTYPE_CLASS } |
Public Member Functions | |
Property (fge::Property const &val) | |
Property (fge::Property &&val) noexcept | |
template<class T , typename = std::enable_if_t<!std::is_same_v<remove_cvref_t<T>, fge::Property>>> | |
Property (T &&val) | |
Property (char const *val) | |
void | clear () |
bool | operator== (fge::Property const &val) const |
fge::Property & | operator= (fge::Property const &val) |
fge::Property & | operator= (fge::Property &&val) noexcept |
template<class T , typename = std::enable_if_t<!std::is_same_v<remove_cvref_t<T>, fge::Property>>> | |
fge::Property & | operator= (T &&val) |
fge::Property & | operator= (char const *val) |
template<class T > | |
T & | setType () |
void | setType (Types type) |
template<class T > | |
bool | isType () const |
bool | isType (Types type) const |
std::type_info const & | getClassType () const |
Types | getType () const |
bool | isSigned () const |
std::string | toString () const |
bool | set (fge::Property const &val) |
bool | set (fge::Property &&val) |
template<class T , typename = std::enable_if_t<!std::is_same_v<remove_cvref_t<T>, fge::Property>>> | |
bool | set (T &&val) |
bool | set (char const *val) |
template<class T > | |
bool | get (T &val) const |
template<class T > | |
std::optional< T > | get () const |
template<class T > | |
T * | getPtr () |
template<class T > | |
T const * | getPtr () const |
fge::ParrayType & | setArrayType () |
bool | resize (std::size_t n) |
bool | reserve (std::size_t n) |
bool | pushData (fge::Property const &value) |
bool | pushData (fge::Property &&value) |
template<class T > | |
bool | pushType () |
bool | setData (std::size_t index, fge::Property const &value) |
bool | setData (std::size_t index, fge::Property &&value) |
fge::Property * | getData (std::size_t index) |
fge::Property const * | getData (std::size_t index) const |
template<class T > | |
bool | getData (std::size_t index, T &val) const |
template<class T > | |
T * | getDataPtr (std::size_t index) |
template<class T > | |
T const * | getDataPtr (std::size_t index) const |
std::size_t | getDataSize () const |
fge::Property * | operator[] (std::size_t index) |
fge::Property const * | operator[] (std::size_t index) const |
bool | isModified () const |
void | setModifiedFlag (bool flag) |
template<class T > | |
T const * | getPtr () const |
template<class T > | |
T const * | getDataPtr (std::size_t index) const |
A class that can store any type of data.
This class can store any type of data. Integer is converted to PintType or PuintType so in order to get the value you need to use the defined types. class oder than the basic type are stored as a pointer to a PropertyClassWrapper.
This class also easly enable to store an array of Property.