Binder Class▲
-
Header: Binder
-
Since: Qt 5.1
-
CMake:
find_package(Qt6 REQUIRED COMPONENTS OpenGL)
target_link_libraries(mytarget PRIVATE Qt6::OpenGL)
-
qmake: QT += opengl
-
Group: Binder is part of painting-3D
Detailed Description▲
QOpenGLVertexArrayObject::Binder is a simple convenience class that can be used to assist with the binding and releasing of QOpenGLVertexArrayObject instances. This class is to QOpenGLVertexArrayObject as QMutexLocker is to QMutex.
This class implements the RAII principle which helps to ensure behavior in complex code or in the presence of exceptions.
The constructor of this class accepts a QOpenGLVertexArrayObject (VAO) as an argument and attempts to bind the VAO, calling QOpenGLVertexArrayObject::create() if necessary. The destructor of this class calls QOpenGLVertexArrayObject::release() which unbinds the VAO.
If needed the VAO can be temporarily unbound with the release() function and bound once more with rebind().
See Also▲
See also QOpenGLVertexArrayObject
Member Function Documentation▲
Binder::Binder(QOpenGLVertexArrayObject *v)▲
Creates a QOpenGLVertexArrayObject::Binder object and binds v by calling QOpenGLVertexArrayObject::bind(). If necessary it first calls QOpenGLVertexArrayObject::create().
Binder::~Binder()▲
Destroys the QOpenGLVertexArrayObject::Binder and releases the associated vertex array object.