#ifndef _OpenGl_Resource_H__
#define _OpenGl_Resource_H__
-#include <Standard_Transient.hxx>
-#include <Handle_Standard_Transient.hxx>
+#include <Standard_Type.hxx>
class Standard_Transient;
-class Handle(Standard_Type);
class OpenGl_Context;
//! Interface for OpenGl resource with following meaning:
//! @param theGlCtx - bound GL context, shouldn't be NULL.
Standard_EXPORT virtual void Release (OpenGl_Context* theGlCtx) = 0;
+ //! Returns estimated GPU memory usage for holding data without considering overheads and allocation alignment rules.
+ virtual Standard_Size EstimatedDataSize() const = 0;
+
private:
//! Copy should be performed only within Handles!
public:
- DEFINE_STANDARD_RTTI(OpenGl_Resource, Standard_Transient) // Type definition
+ DEFINE_STANDARD_RTTIEXT(OpenGl_Resource,Standard_Transient) // Type definition
};