|
Game Engine
Architected a C++ game engine with a runtime reflection system - employing Chain of
|
#include <Datum.h>
Public Types | |
| enum class | _DatumType { Unknown , Int , Float , String , Pointer , Table , Vec4 , Mat4x4 } |
Public Member Functions | |
| Datum () | |
| ~Datum () | |
| Datum (const Datum &other) | |
| Datum & | operator= (const Datum &rhs) |
| Datum (Datum &&other) noexcept | |
| Datum & | operator= (Datum &&rhs) |
| Datum (int32_t value) | |
| Datum (float value) | |
| Datum (string value) | |
| Datum (RTTI *value) | |
| Datum (Scope *value) | |
| Datum (Vec4 value) | |
| Datum (Mat4x4 value) | |
| Datum (std::initializer_list< int32_t > values) | |
| Datum (std::initializer_list< float > values) | |
| Datum (std::initializer_list< string > values) | |
| Datum (std::initializer_list< RTTI * > values) | |
| Datum (std::initializer_list< Scope * > values) | |
| Datum (std::initializer_list< Vec4 > values) | |
| Datum (std::initializer_list< Mat4x4 > values) | |
| Datum & | operator= (const int32_t value) |
| Datum & | operator= (const float value) |
| Datum & | operator= (const string value) |
| Datum & | operator= (RTTI *const value) |
| Datum & | operator= (Scope *const value) |
| Datum & | operator= (const Vec4 value) |
| Datum & | operator= (const Mat4x4 value) |
| bool | operator== (const Datum &other) const |
| bool | operator!= (const Datum &other) const |
| void | RemoveAt (size_t idx) |
| void | SetType (_DatumType typeToSet) |
| bool | IsType (_DatumType typeToCheck) const |
| template<typename U> | |
| void | Set (U &&val, size_t idx=0) |
| int32_t & | GetAsInt (size_t idx=0) |
| float & | GetAsFloat (size_t idx=0) |
| string & | GetAsString (size_t idx=0) |
| RTTI *& | GetAsPointer (size_t idx=0) |
| Scope *& | GetAsTable (size_t idx=0) |
| Vec4 & | GetAsVec4 (size_t idx=0) |
| Mat4x4 & | GetAsMat4x4 (size_t idx=0) |
| const int32_t & | GetAsInt (size_t idx=0) const |
| const float & | GetAsFloat (size_t idx=0) const |
| const string & | GetAsString (size_t idx=0) const |
| RTTI *const & | GetAsPointer (size_t idx=0) const |
| Scope *const & | GetAsTable (size_t idx=0) const |
| const Vec4 & | GetAsVec4 (size_t idx=0) const |
| const Mat4x4 & | GetAsMat4x4 (size_t idx=0) const |
| template<typename U> | |
| void | Push (U &&val) |
| void | ResizeArray (const _DatumType &type) |
| void | Pop () |
| void | Clear () |
| size_t | Size () const |
| size_t | Capacity () const |
| void | SetFromString (const string &, size_t idx=0) |
| string | GetToString (size_t idx=0) const |
| void | PushFromString (const string &) |
| template<typename T> | |
| void | SetStorage (T *items, size_t count=1) |
Friends | |
| class | Scope |
|
strong |
| Fiea::Engine::Content::Datum::Datum | ( | ) |
| Fiea::Engine::Content::Datum::~Datum | ( | ) |
| Fiea::Engine::Content::Datum::Datum | ( | const Datum & | other | ) |
|
noexcept |
|
explicit |
|
explicit |
|
explicit |
|
explicit |
|
explicit |
|
explicit |
|
explicit |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< int32_t > | values | ) |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< float > | values | ) |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< string > | values | ) |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< RTTI * > | values | ) |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< Scope * > | values | ) |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< Vec4 > | values | ) |
| Fiea::Engine::Content::Datum::Datum | ( | std::initializer_list< Mat4x4 > | values | ) |
| size_t Fiea::Engine::Content::Datum::Capacity | ( | ) | const |
| void Fiea::Engine::Content::Datum::Clear | ( | ) |
| float & Fiea::Engine::Content::Datum::GetAsFloat | ( | size_t | idx = 0 | ) |
| const float & Fiea::Engine::Content::Datum::GetAsFloat | ( | size_t | idx = 0 | ) | const |
| int32_t & Fiea::Engine::Content::Datum::GetAsInt | ( | size_t | idx = 0 | ) |
| const int32_t & Fiea::Engine::Content::Datum::GetAsInt | ( | size_t | idx = 0 | ) | const |
| Mat4x4 & Fiea::Engine::Content::Datum::GetAsMat4x4 | ( | size_t | idx = 0 | ) |
| const Mat4x4 & Fiea::Engine::Content::Datum::GetAsMat4x4 | ( | size_t | idx = 0 | ) | const |
| RTTI *& Fiea::Engine::Content::Datum::GetAsPointer | ( | size_t | idx = 0 | ) |
| RTTI *const & Fiea::Engine::Content::Datum::GetAsPointer | ( | size_t | idx = 0 | ) | const |
| string & Fiea::Engine::Content::Datum::GetAsString | ( | size_t | idx = 0 | ) |
| const string & Fiea::Engine::Content::Datum::GetAsString | ( | size_t | idx = 0 | ) | const |
| Scope *& Fiea::Engine::Content::Datum::GetAsTable | ( | size_t | idx = 0 | ) |
| Scope *const & Fiea::Engine::Content::Datum::GetAsTable | ( | size_t | idx = 0 | ) | const |
| Vec4 & Fiea::Engine::Content::Datum::GetAsVec4 | ( | size_t | idx = 0 | ) |
| const Vec4 & Fiea::Engine::Content::Datum::GetAsVec4 | ( | size_t | idx = 0 | ) | const |
| string Fiea::Engine::Content::Datum::GetToString | ( | size_t | idx = 0 | ) | const |
| bool Fiea::Engine::Content::Datum::IsType | ( | _DatumType | typeToCheck | ) | const |
| bool Fiea::Engine::Content::Datum::operator!= | ( | const Datum & | other | ) | const |
| Datum & Fiea::Engine::Content::Datum::operator= | ( | const float | value | ) |
| Datum & Fiea::Engine::Content::Datum::operator= | ( | const int32_t | value | ) |
| bool Fiea::Engine::Content::Datum::operator== | ( | const Datum & | other | ) | const |
| void Fiea::Engine::Content::Datum::Pop | ( | ) |
|
inline |
| void Fiea::Engine::Content::Datum::PushFromString | ( | const string & | value | ) |
| void Fiea::Engine::Content::Datum::RemoveAt | ( | size_t | idx | ) |
| void Fiea::Engine::Content::Datum::ResizeArray | ( | const _DatumType & | type | ) |
| void Fiea::Engine::Content::Datum::Set | ( | U && | val, |
| size_t | idx = 0 ) |
| void Fiea::Engine::Content::Datum::SetFromString | ( | const string & | value, |
| size_t | idx = 0 ) |
|
inline |
| void Fiea::Engine::Content::Datum::SetType | ( | _DatumType | typeToSet | ) |
| size_t Fiea::Engine::Content::Datum::Size | ( | ) | const |
|
friend |