Open CASCADE Technology 7.8.0
|
Interface for OpenGl resource with following meaning: More...
#include <OpenGl_Resource.hxx>
Public Member Functions | |
OpenGl_Resource () | |
Empty constructor. | |
virtual | ~OpenGl_Resource () |
Destructor. Inheritors should call Clean (NULL) within it. | |
virtual void | Release (OpenGl_Context *theGlCtx)=0 |
Release GPU resources. Notice that implementation should be SAFE for several consecutive calls (thus should invalidate internal structures / ids to avoid multiple-free errors). | |
virtual Standard_Size | EstimatedDataSize () const =0 |
Returns estimated GPU memory usage for holding data without considering overheads and allocation alignment rules. | |
virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
Dumps the content of me into the stream. | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. | |
virtual | ~Standard_Transient () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Transient * | This () const |
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
Interface for OpenGl resource with following meaning:
OpenGl_Resource::OpenGl_Resource | ( | ) |
Empty constructor.
|
virtual |
Destructor. Inheritors should call Clean (NULL) within it.
|
inlinevirtual |
Dumps the content of me into the stream.
Reimplemented in OpenGl_Buffer, and OpenGl_IndexBuffer.
|
pure virtual |
Returns estimated GPU memory usage for holding data without considering overheads and allocation alignment rules.
Implemented in OpenGl_Buffer, OpenGl_CappingPlaneResource, OpenGl_DepthPeeling, OpenGl_Font, OpenGl_FrameBuffer, OpenGl_LineAttributes, OpenGl_PBREnvironment, OpenGl_Sampler, OpenGl_ShaderObject, OpenGl_ShaderProgram, OpenGl_ShadowMap, and OpenGl_Texture.
|
pure virtual |
Release GPU resources. Notice that implementation should be SAFE for several consecutive calls (thus should invalidate internal structures / ids to avoid multiple-free errors).
theGlCtx | - bound GL context, shouldn't be NULL. |
Implemented in OpenGl_CappingPlaneResource, OpenGl_Sampler, D3DHost_FrameBuffer, OpenGl_Font, OpenGl_PBREnvironment, OpenGl_PointSprite, OpenGl_ShaderObject, OpenGl_ShaderProgram, OpenGl_ShadowMap, OpenGl_Texture, OpenGl_Buffer, OpenGl_DepthPeeling, OpenGl_FrameBuffer, OpenGl_LineAttributes, and OpenGl_TextureBuffer.