Класс QWaylandView
Класс QWaylandView представляет представление поверхности на выводе. Подробнее...
| Заголовок: | #include <QWaylandView> |
| CMake: | find_package(Qt6 COMPONENTS Waylandcompositor REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Waylandcompositor) |
| qmake: | QT += waylandcompositor |
| С момента: | Qt 5.8 |
| Наследуется от: | QObject |
Свойства
- allowDiscardFrontBuffer : bool
- bufferLocked : bool
- output : QWaylandOutput*
- surface : QWaylandSurface*
Открытые функции
| QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr) | |
| virtual | ~QWaylandView() override |
| virtual bool | advance() |
| bool | allowDiscardFrontBuffer() const |
| virtual void | bufferCommitted(const QWaylandBufferRef &buffer, const QRegion &damage) |
| virtual QWaylandBufferRef | currentBuffer() |
| virtual QRegion | currentDamage() |
| virtual void | discardCurrentBuffer() |
| bool | isBufferLocked() const |
| bool | isPrimary() const |
| QWaylandOutput * | output() const |
| void | setAllowDiscardFrontBuffer(bool discard) |
| void | setBufferLocked(bool locked) |
| void | setOutput(QWaylandOutput *output) |
| void | setPrimary() |
| void | setSurface(QWaylandSurface *surface) |
| QWaylandSurface * | surface() const |
| struct wl_resource * | surfaceResource() const |
Сигналы
| void | allowDiscardFrontBufferChanged() |
| void | bufferLockedChanged() |
| void | outputChanged() |
| void | surfaceChanged() |
Подробное описание
QWaylandView соответствует представлению поверхности на определенном выводе, управляя буферами, содержащими содержимое для отрисовки. Вы можете иметь несколько представлений одной и той же поверхности.
Документация по свойствам
allowDiscardFrontBuffer : bool
По умолчанию представление блокирует текущий буфер до тех пор, пока не будет вызван advance(). Установите это свойство в true чтобы разрешить Qt освободить буфер, когда первичное представление больше им не пользуется.
Это может быть использовано для предотвращения ситуации, когда вторичное представление, обновляемое с меньшей частотой, будет ограничивать частоту кадров клиентского приложения.
Функции доступа:
| bool | allowDiscardFrontBuffer() const |
| void | setAllowDiscardFrontBuffer(bool discard) |
Сигнал уведомления:
| void | allowDiscardFrontBufferChanged() |
bufferLocked : bool
Это свойство содержит информацию о том, заблокирован ли буфер представления в данный момент. Когда буфер заблокирован, advance() не переходит к следующему буферу и возвращает false.
Значение по умолчанию false.
Функции доступа:
| bool | isBufferLocked() const |
| void | setBufferLocked(bool locked) |
Сигнал уведомления:
| void | bufferLockedChanged() |
output : QWaylandOutput*
Это свойство содержит вывод, на котором это представление отображает свою поверхность.
Функции доступа:
| QWaylandOutput * | output() const |
| void | setOutput(QWaylandOutput *output) |
Сигнал уведомления:
| void | outputChanged() |
surface : QWaylandSurface*
Это свойство содержит поверхность, отображаемую данным QWaylandView.
Функции доступа:
| QWaylandSurface * | surface() const |
| void | setSurface(QWaylandSurface *surface) |
Сигнал уведомления:
| void | surfaceChanged() |
Документация по функциям-членам
QWaylandView::QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr)
Конструирует QWaylandView с заданным renderObject и parent.
[override virtual] QWaylandView::~QWaylandView()
Уничтожает QWaylandView.
[virtual] bool QWaylandView::advance()
Обновляет текущий буфер и область повреждений до последней версии, предоставленной клиентом. Возвращает true, если с предыдущего вызова advance() было предоставлено новое содержимое. В противном случае возвращает false.
См. также currentBuffer() и currentDamage().
[virtual] void QWaylandView::bufferCommitted(const QWaylandBufferRef &buffer, const QRegion &damage)
Этот метод вызывается при добавлении нового буфера на поверхность этого представления. damage содержит область, которая отличается от текущего буфера, то есть область, которую нужно обновить. Новый буфер станет текущим при следующем вызове advance().
Подклассы, переопределяющие этот метод, обязаны вызывать базовый метод.
[virtual] QWaylandBufferRef QWaylandView::currentBuffer()
Возвращает ссылку на текущий буфер этого представления.
[virtual] QRegion QWaylandView::currentDamage()
Возвращает текущую область повреждения этого представления.
[virtual] void QWaylandView::discardCurrentBuffer()
Принудительно заставляет представление отбросить текущий буфер, чтобы он мог быть повторно использован на стороне клиента.
bool QWaylandView::isPrimary() const
Возвращает true, если это QWaylandView является основным представлением для QWaylandSurface
См. также QWaylandSurface::primaryView.
void QWaylandView::setPrimary()
Делает это QWaylandView основным представлением для поверхности.
Метод не имеет эффекта, если это QWaylandView не содержит QWaylandSurface.
См. также isPrimary() и QWaylandSurface::primaryView.
struct wl_resource *QWaylandView::surfaceResource() const
Возвращает ресурс Wayland поверхности для этого QWaylandView.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qwaylandview.html