Class for managing display objects. More...
Public Member Functions | |
const Burger::StaticRTTI * | get_StaticRTTI (void) const noexcept override |
Get the description to the class. | |
DisplayObject * | GetNext (void) const |
Get the next display object in the global linked list. | |
DisplayObject * | GetPrevious (void) const |
Get the previous display object in the global linked list. | |
virtual uint_t | CheckLoad (Display *pDisplay)=0 |
Load data onto the video display card. | |
virtual void | Release (Display *pDisplay)=0 |
Release hardware resources. | |
Public Member Functions inherited from Burger::ReferenceCounter | |
const Burger::StaticRTTI * | get_StaticRTTI (void) const noexcept override |
Get the description to the class. | |
ReferenceCounter () noexcept | |
Sets the reference count to zero. | |
virtual | ~ReferenceCounter () |
Destructor. | |
void | AddRef (void) noexcept |
Increase the reference count by 1. | |
void | Release (void) noexcept |
Decrease the reference count by 1. | |
Public Member Functions inherited from Burger::Base | |
const char * | get_class_name (void) const noexcept |
Get the name of the class. | |
virtual | ~Base () noexcept=default |
Destructor. | |
Static Public Member Functions | |
static DisplayObject * | GetFirstObject (void) |
Get the first display object in the global linked list. | |
static void | ReleaseAll (Display *pDisplay) |
Release all display objects. | |
Static Public Attributes | |
static const Burger::StaticRTTI | g_StaticRTTI |
The global description of the class. | |
Static Public Attributes inherited from Burger::ReferenceCounter | |
static const Burger::StaticRTTI | g_StaticRTTI |
The global description of the class. | |
Static Public Attributes inherited from Burger::Base | |
static const Burger::StaticRTTI | g_StaticRTTI |
The global description of the class. | |
Protected Member Functions | |
DisplayObject (void) | |
Add this display object to the global linked list. | |
virtual | ~DisplayObject () |
Remove this display object from the global linked list. | |
Protected Attributes | |
DisplayObject * | m_pNextDisplayObject |
Pointer to the next DisplayObject. | |
DisplayObject * | m_pPrevDisplayObject |
Pointer to the previous DisplayObject. | |
Static Protected Attributes | |
static DisplayObject * | g_pHead = NULL |
Global pointer to the linked list of display objects. | |
Private Member Functions | |
DisplayObject (const DisplayObject &)=delete | |
DisplayObject & | operator= (const DisplayObject &)=delete |
DisplayObject (DisplayObject &&)=delete | |
DisplayObject & | operator= (DisplayObject &&)=delete |
Class for managing display objects.
This class is adds an object intended for rendering onto a GPU or other video display device where the GPU could flush the data and needs a mechanism to clear and / or restore graphic objects into a video display card.
|
privatedelete |
|
privatedelete |
|
protected |
Add this display object to the global linked list.
To allow all display objects to get an event such as a reload due to video display card loss, this function will add this DisplayObject to the global list
|
protectedvirtual |
Remove this display object from the global linked list.
To allow all display objects to get an event such as a reload due to video card loss, this function will remove this DisplayObject from the global list
Load data onto the video display card.
Allow the derived class to load a display object from disk or memory and convert into a proper data for uploading onto the display card.
Implemented in Burger::Effect2DDX9, Burger::Effect2DOpenGL, Burger::EffectPositionColorTextureDX9, Burger::EffectPositionColorTextureOpenGL, Burger::EffectPositionTextureDX9, Burger::EffectPositionTextureOpenGL, Burger::Shader2DCColorDX9, Burger::Shader2DCColorOpenGL, Burger::Shader2DColorVertexDX9, Burger::Shader2DColorVertexOpenGL, Burger::Texture, Burger::TextureDirectX9, Burger::TextureOpenGL, Burger::VertexBuffer, Burger::VertexBufferDirectX9, and Burger::VertexBufferOpenGL.
|
overridevirtualnoexcept |
Get the description to the class.
This virtual function will pull the pointer to the StaticRTTI instance that has the name of the class. Due to it being virtual, it will be the name of the most derived class.
Reimplemented from Burger::Base.
Reimplemented in Burger::Effect2D, Burger::Effect2DDX9, Burger::Effect2DOpenGL, Burger::Effect, Burger::EffectPositionColorTexture, Burger::EffectPositionColorTextureDX9, Burger::EffectPositionColorTextureOpenGL, Burger::EffectPositionTexture, Burger::EffectPositionTextureDX9, Burger::EffectPositionTextureOpenGL, Burger::Shader2DCColor, Burger::Shader2DCColorDX9, Burger::Shader2DCColorOpenGL, Burger::Shader2DColorVertex, Burger::Shader2DColorVertexDX9, Burger::Shader2DColorVertexOpenGL, Burger::Texture, Burger::TextureDirectX9, Burger::TextureOpenGL, Burger::VertexBuffer, Burger::VertexBufferDirectX9, and Burger::VertexBufferOpenGL.
|
inlinestatic |
Get the first display object in the global linked list.
To traverse the linked list of display objects, use this function to get the first display object and if not NULL, use GetNext(void) const to get the next display object until the end of the linked list is reached when a NULL is found.
|
inline |
Get the next display object in the global linked list.
Return the pointer to the next display object in the linked list.
|
inline |
Get the previous display object in the global linked list.
Return the pointer to the previous display object in the linked list.
|
privatedelete |
|
privatedelete |
|
pure virtual |
Release hardware resources.
Allow the derived class to release hardware resources
Implemented in Burger::Effect2DDX9, Burger::Effect2DOpenGL, Burger::Effect, Burger::EffectPositionColorTextureDX9, Burger::EffectPositionColorTextureOpenGL, Burger::EffectPositionTextureDX9, Burger::EffectPositionTextureOpenGL, Burger::Shader2DCColorDX9, Burger::Shader2DCColorOpenGL, Burger::Shader2DColorVertexDX9, Burger::Shader2DColorVertexOpenGL, Burger::Texture, Burger::TextureDirectX9, Burger::TextureOpenGL, Burger::VertexBuffer, Burger::VertexBufferDirectX9, and Burger::VertexBufferOpenGL.
|
static |
Release all display objects.
Iterate over every display object in existence and release them from the display instance.
|
staticprotected |
Global pointer to the linked list of display objects.
|
static |
The global description of the class.
This record contains the name of this class and a reference to the parent
|
protected |
Pointer to the next DisplayObject.
|
protected |
Pointer to the previous DisplayObject.