|
Game Engine
Architected a C++ game engine with a runtime reflection system - employing Chain of
|
Public Member Functions | |
| virtual void | Update (float deltaTime) override |
| Public Member Functions inherited from Fiea::Engine::GameObject | |
| GameObject () | |
| GameObject (const GameObject &other) | |
| GameObject (GameObject &&other) noexcept | |
| GameObject & | operator= (const GameObject &other) |
| GameObject & | operator= (GameObject &&other) noexcept |
| virtual | ~GameObject ()=default |
| virtual GameObject * | Clone () const override |
| Creates a deep copy of this Attributed object. | |
| void | AddChild (GameObject *child) |
| bool | RemoveChild (GameObject *child) |
| size_t | GetChildCount () const |
| GameObject * | GetChild (size_t index) const |
| void | ForEachChild (const std::function< void(GameObject *)> &func) |
| Transform & | GetTransform () |
| const Transform & | GetTransform () const |
| void | SetTransform (const Transform &transform) |
| void | AddAction (Action *action) |
| bool | RemoveAction (Action *action) |
| Public Member Functions inherited from Fiea::Engine::Content::Attributed | |
| Attributed ()=delete | |
| Attributed (std::function< ClassDefinition()> defGenerator, const RTTI::IdType &idType) | |
| Constructor that initializes class attributes based on the provided class definition generator. | |
| Attributed (const Attributed &other) | |
| Copy constructor for Attributed. | |
| Attributed (Attributed &&other) noexcept | |
| Move constructor for Attributed. | |
| Attributed & | operator= (const Attributed &rhs) |
| Copy assignment operator. | |
| Attributed & | operator= (Attributed &&rhs) noexcept |
| Move assignment operator. | |
| virtual | ~Attributed ()=default |
| bool | IsAttribute (const string &key) |
| Checks if a given key is an attribute. | |
| bool | IsClassAttribute (const string &key) |
| Checks if a given key is a class attribute. | |
| bool | IsInstanceAttribute (const string &key) |
| Checks if a given key is an instance attribute. | |
| Datum & | AppendInstanceAttribute (const string &key) |
| Appends a new instance attribute. | |
| std::vector< string > | Attributes () |
| Retrieves all attribute names. | |
| std::vector< string > | ClassAttributes () |
| Retrieves all class attribute names. | |
| std::vector< string > | InstanceAttributes () |
| Retrieves all instance attribute names. | |
| Public Member Functions inherited from Fiea::Engine::Content::Scope | |
| Scope ()=default | |
| Scope (const Scope &rhs) | |
| Copy constructor. | |
| Scope (Scope &&rhs) noexcept | |
| Move constructor. | |
| Scope & | operator= (const Scope &rhs) |
| Copy assignment operator. | |
| Scope & | operator= (Scope &&rhs) noexcept |
| Move assignment operator. | |
| virtual | ~Scope () |
| Destructor. Clears the Scope. | |
| bool | operator== (const Scope &rhs) const |
| Equality operator. | |
| bool | operator!= (const Scope &rhs) const |
| Inequality operator. | |
| Datum * | Find (const string &key) |
| Finds a Datum by key. | |
| const Datum * | Find (const string &key) const |
| Finds a Datum by key (const version). | |
| Datum & | Append (const string &key) |
| Appends a new Datum with the given key. | |
| void | RemoveDatum (const string &key) |
| Datum * | Search (const string &key) |
| Datum & | operator[] (const string &key) |
| Overloads operator[] for accessing a Datum by key. If the key does not exist in the Scope, it is appended. | |
| Datum & | operator[] (size_t idx) |
| Overloads operator[] for accessing a Datum by index. Retrieves the Datum corresponding to the given index in the ordered list. | |
| size_t | Size () const |
| Returns the number of key-value pairs in the Scope. | |
| void | Clear () |
| Clears all data in the Scope. | |
| Scope & | AppendScope (const string &key, Scope *scope=nullptr) |
| Appends a new Scope as a child under the specified key. | |
| void | Adopt (const string &key, Scope &child) |
| Adopts an existing Scope as a child under the specified key. | |
| Scope * | GetParent () const |
| void | SetParent (Scope &parent) |
| Scope * | Orphan () |
| Removes this Scope from its parent. | |
| Datum * | FindContainedScope (const Scope &child, size_t &idx) |
| Finds the Datum that contains the specified child Scope. | |
| const Datum * | FindContainedScope (const Scope &child, size_t &idx) const |
| Finds the Datum that contains the specified child Scope (const version). | |
| bool | IsAncestorOf (const Scope &descendent) const |
| Checks if this Scope is an ancestor of the specified descendent Scope. | |
| bool | IsDescendentOf (const Scope &ancestor) const |
| Checks if this Scope is a descendent of the specified ancestor Scope. | |
| Public Member Functions inherited from Fiea::Engine::RTTI | |
| RTTI ()=default | |
| RTTI (const RTTI &)=default | |
| RTTI & | operator= (const RTTI &)=default |
| RTTI (RTTI &&) noexcept=default | |
| RTTI & | operator= (RTTI &&) noexcept=default |
| virtual | ~RTTI ()=default |
| virtual IdType | TypeIdInstance () const =0 |
| virtual bool | Is (IdType) const |
| template<typename T> | |
| T * | As () |
| template<typename T> | |
| const T * | As () const |
| virtual std::string | ToString () const |
| virtual bool | Equals (const RTTI *rhs) const |
Public Attributes | |
| int | updateCallCount = 0 |
Additional Inherited Members | |
| Public Types inherited from Fiea::Engine::RTTI | |
| using | IdType = std::size_t |
| Protected Member Functions inherited from Fiea::Engine::Content::Scope | |
| std::vector< const string * > | GetOrderedDatums () |
| Protected Attributes inherited from Fiea::Engine::GameObject | |
| Transform | _transform |
|
inlineoverridevirtual |
Reimplemented from Fiea::Engine::GameObject.
| int Fiea::Engine::Tests::TestGameObject::updateCallCount = 0 |