CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::TRendererSceneObject< SelfType, BaseType > Class Template Reference

Template class to help implement sub-classes of RendererSceneObject. More...

#include <CeresEngine/Renderer/RendererSceneObject.hpp>

Inheritance diagram for CeresEngine::TRendererSceneObject< SelfType, BaseType >:
CeresEngine::TRendererObject< SelfType, BaseType > CeresEngine::RendererObject

Public Member Functions

template<typename... Args>
 TRendererSceneObject (Args &&... args)
 Creates a new TRendererSceneObject instance.
 
 ~TRendererSceneObject () noexcept override
 Destroys an existing TRendererSceneObject instance.
 
- Public Member Functions inherited from CeresEngine::TRendererObject< SelfType, BaseType >
template<typename... Args>
 TRendererObject (ManagerType &manager, Args &&... args)
 Creates a new TRendererObject instance.
 
void destroy () noexcept override
 Destroys the RendererObject.
 
ManagerTypegetManager () const noexcept
 The owning object manager.
 
- Public Member Functions inherited from CeresEngine::RendererObject
 RendererObject ()=default
 Creates a new RendererObject instance.
 
virtual ~RendererObject () noexcept=default
 Destroys an existing RendererObject instance.
 
RendererObjectID getID () const noexcept
 An identifier that uniquely identifies this object in the renderer.
 

Private Types

using super = TRendererObject< SelfType, BaseType >
 

Additional Inherited Members

- Public Attributes inherited from CeresEngine::RendererObject
Event< void(RendererObjectID newID)> willChangeID
 An event called whenever the object is about to change it's ID.
 
Event< void(RendererObjectID oldID)> didChangeID
 An event called whenever the object changes it's ID.
 
- Protected Attributes inherited from CeresEngine::TRendererObject< SelfType, BaseType >
ManagerTypemManager
 The owning object manager.
 
- Protected Attributes inherited from CeresEngine::RendererObject
RendererObjectID mID
 An identifier that uniquely identifies this object in the renderer.
 

Detailed Description

template<typename SelfType, typename BaseType = RendererSceneObject>
class CeresEngine::TRendererSceneObject< SelfType, BaseType >

Template class to help implement sub-classes of RendererSceneObject.

Template Parameters
SelfTypeThe type of renderer object.
BaseTypeThe type to sub-class from. RendererSceneObject by default.

Member Typedef Documentation

◆ super

Constructor & Destructor Documentation

◆ TRendererSceneObject()

template<typename SelfType , typename BaseType = RendererSceneObject>
template<typename... Args>
CeresEngine::TRendererSceneObject< SelfType, BaseType >::TRendererSceneObject ( Args &&...  args)
inlineexplicit

Creates a new TRendererSceneObject instance.

Note
The constructor will automatically add the object to the scene.
Template Parameters
ArgsThe argument types to forward to the base class constructor.
Parameters
argsThe arguments to forward to the base class constructor.

◆ ~TRendererSceneObject()

template<typename SelfType , typename BaseType = RendererSceneObject>
CeresEngine::TRendererSceneObject< SelfType, BaseType >::~TRendererSceneObject ( )
inlineoverridenoexcept

Destroys an existing TRendererSceneObject instance.

Note
The destructor will automatically remove the object from the scene.

The documentation for this class was generated from the following file: