Класс Binder
Класс Binder объявлен в классе QOpenGLVertexArrayObject.Класс QOpenGLVertexArrayObject::Binder — это вспомогательный класс, помогающий при связывании и освобождении объектов OpenGL Vertex Array Object. Подробнее...
Этот класс был представлен в Qt 5.1.
Примечание: Все функции в этом классе являются реентерабельными.
Публичные функции
| Binder(QOpenGLVertexArrayObject *v) | |
| ~Binder() | |
| void | rebind() |
| void | release() |
Подробное описание
QOpenGLVertexArrayObject::Binder — это простой вспомогательный класс, который может использоваться для связывания и отвязки экземпляров QOpenGLVertexArrayObject. Этот класс относится к QOpenGLVertexArrayObject так же, как QMutexLocker относится к QMutex.
Этот класс реализует принцип RAII, который помогает гарантировать корректное поведение в сложном коде или при возникновении исключений.
Конструктор этого класса принимает QOpenGLVertexArrayObject (VAO) в качестве аргумента и пытается связать VAO, вызывая QOpenGLVertexArrayObject::create(), если это необходимо. Деструктор этого класса вызывает QOpenGLVertexArrayObject::release(), что отвязывает VAO.
Если необходимо, VAO можно временно отвязать с помощью функции release() и снова связать с помощью rebind().
См. также QOpenGLVertexArrayObject.
Документация по членам-функциям
Binder::Binder(QOpenGLVertexArrayObject *v)
Создает объект QOpenGLVertexArrayObject::Binder и связывает v, вызвав QOpenGLVertexArrayObject::bind(). При необходимости сначала вызывается QOpenGLVertexArrayObject::create().
Binder::~Binder()
Уничтожает QOpenGLVertexArrayObject::Binder и освобождает связанный объект массива вершин.
void Binder::rebind()
Может использоваться для повторного связывания связанного объекта массива вершин.
См. также release().
void Binder::release()
Может использоваться для временного освобождения связанного объекта массива вершин.
См. также rebind().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qopenglvertexarrayobject-binder.html