globjects
1.1.0.2f0c753c8647
Strict OpenGL objects wrapper.
|
Superclass of all wrapped OpenGL objects. More...
#include <globjects/include/globjects/Object.h>
Public Types | |
enum | NameImplementation { NameImplementation::DebugKHR, NameImplementation::Legacy } |
Public Member Functions | |
virtual void | accept (ObjectVisitor &visitor)=0 |
gl::GLuint | id () const |
std::string | name () const |
void | setName (const std::string &name) |
bool | hasName () const |
bool | isDefault () const |
virtual gl::GLenum | objectType () const =0 |
void | detach () |
Public Member Functions inherited from globjects::Referenced | |
Referenced () | |
void | ref () const |
void | unref () const |
int | refCounter () const |
Public Member Functions inherited from globjects::HeapOnly | |
HeapOnly () | |
void | destroy () const |
Static Public Member Functions | |
static void | hintNameImplementation (NameImplementation impl) |
Protected Member Functions | |
Object (IDResource *resource) | |
virtual | ~Object () |
Protected Member Functions inherited from globjects::Referenced | |
virtual | ~Referenced () |
Protected Member Functions inherited from globjects::HeapOnly | |
virtual | ~HeapOnly () |
Protected Attributes | |
IDResource * | m_resource |
void * | m_objectLabelState |
Friends | |
class | AbstractObjectNameImplementation |
Superclass of all wrapped OpenGL objects.
The superclass is Referenced so that each wrapped OpenGL object supports reference counting. The OpenGL name (id) of the OpenGL resource that was provided in the constructor can be queried using id(). Additionally, an Object can have meaningful name wich can be get and set using name() and setName().
|
strong |
|
protected |
|
protectedvirtual |
|
static |
|
pure virtual |
gl::GLuint globjects::Object::id | ( | ) | const |
std::string globjects::Object::name | ( | ) | const |
void globjects::Object::setName | ( | const std::string & | name | ) |
bool globjects::Object::hasName | ( | ) | const |
bool globjects::Object::isDefault | ( | ) | const |
|
pure virtual |
void globjects::Object::detach | ( | ) |
unlinks and destroys the associated opengl object
|
friend |
|
protected |
|
mutableprotected |