Urho3D::GPUObject Class Reference

Base class for GPU resources. More...

#include <OGLGPUObject.h>

Inheritance diagram for Urho3D::GPUObject:
[legend]
Collaboration diagram for Urho3D::GPUObject:
[legend]

Public Member Functions

 GPUObject (Graphics *graphics)
 Construct with graphics subsystem pointer.
 
virtual ~GPUObject ()
 Destruct. Remove from the graphics subsystem.
 
virtual void Release ()
 Unconditionally release the GPU resource.
 
void ClearDataLost ()
 Clear the data lost flag. No-op on D3D11.
 
GraphicsGetGraphics () const
 Return the graphics subsystem.
 
void * GetGPUObject () const
 Return Direct3D object.
 
bool IsDataLost () const
 Return whether data is lost due to device loss. Always false on D3D11.
 
bool HasPendingData () const
 Return whether has pending data assigned while device was lost. Always false on D3D11.
 
 GPUObject (Graphics *graphics)
 Construct with graphics subsystem pointer.
 
virtual ~GPUObject ()
 Destruct. Remove from the Graphics.
 
virtual void OnDeviceLost ()
 Mark the GPU resource destroyed on context destruction.
 
virtual void OnDeviceReset ()
 Recreate the GPU resource and restore data if applicable.
 
virtual void Release ()
 Unconditionally release the GPU resource.
 
void ClearDataLost ()
 Clear the data lost flag.
 
GraphicsGetGraphics () const
 Return the graphics subsystem.
 
unsigned GetGPUObject () const
 Return the object's OpenGL handle.
 
bool IsDataLost () const
 Return whether data is lost due to context loss.
 
bool HasPendingData () const
 Return whether has pending data assigned while context was lost.
 

Protected Attributes

WeakPtr< Graphicsgraphics_
 Graphics subsystem.
 
void * object_
 Direct3D object.
 
unsigned object_
 Object handle.
 
bool dataLost_
 Data lost flag.
 
bool dataPending_
 Data pending flag.
 

Detailed Description

Base class for GPU resources.


The documentation for this class was generated from the following files:
  • /home/travis/build/urho3d/Urho3D/Source/Urho3D/Graphics/Direct3D11/D3D11GPUObject.h
  • /home/travis/build/urho3d/Urho3D/Source/Urho3D/Graphics/OpenGL/OGLGPUObject.h
  • /home/travis/build/urho3d/Urho3D/Source/Urho3D/Graphics/Direct3D11/D3D11GPUObject.cpp
  • /home/travis/build/urho3d/Urho3D/Source/Urho3D/Graphics/OpenGL/OGLGPUObject.cpp