|
CeresEngine 0.2.0
A game development framework
|
Template class to help implement sub-classes of RendererObjectManager.
More...
#include <CeresEngine/Renderer/RendererObject.hpp>
Public Member Functions | |
| template<typename... Args> | |
| TRendererObjectManager (Vector< UPtr< ObjectType > > &objects, Args &&... args) | |
Creates a new TRendererObjectManager instance. | |
| template<typename... Args> | |
| ObjectType & | create (Args &&... args) |
| Creates a new renderer object by calling it's constructor. | |
| void | destroy (ObjectType &object) |
| Destroys an existing renderer object by calling it's destructor and releasing it's memory. | |
Public Member Functions inherited from CeresEngine::RendererObjectManager | |
| RendererObjectManager (Renderer &renderer) noexcept | |
Creates a new RendererObjectManager instance. | |
| virtual | ~RendererObjectManager () noexcept=default |
Destroys an existing instance of RendererObjectManager. | |
| Renderer & | getRenderer () const noexcept |
| The renderer that owns this manager instance. | |
Private Attributes | |
| friend | ObjectType |
| friend | RendererObject |
| Vector< UPtr< ObjectType > > & | mObjects |
| A vector that owns all managed objects. | |
Additional Inherited Members | |
Protected Member Functions inherited from CeresEngine::RendererObjectManager | |
| void | notifyChangeID (RendererObject &object, const RendererObjectID newID) noexcept |
Method called whenever the RendererObject ID changes. | |
Protected Attributes inherited from CeresEngine::RendererObjectManager | |
| Renderer & | mRenderer |
| The renderer that owns this manager instance. | |
Template class to help implement sub-classes of RendererObjectManager.
| SelfType | The type of renderer object manager. |
| ObjectType | The type of renderer object managed by this manager. |
| BaseType | The type to sub-class from. RendererObjectManager by default. |
|
inlineexplicit |
Creates a new TRendererObjectManager instance.
| Args | The argument types to forward to the base class constructor. |
| objects | A vector that owns all managed objects. |
| args | The arguments to forward to the base class constructor. |
|
inline |
Creates a new renderer object by calling it's constructor.
with args.
| Args | The argument types to be passed to the object constructor. |
| args | The arguments to be passed to the object constructor. |
destroy on the object.
|
inline |
Destroys an existing renderer object by calling it's destructor and releasing it's memory.
| object | The renderer object to be destroyed. |
|
private |
A vector that owns all managed objects.
|
private |
|
private |