QWaylandView Class
La classe QWaylandView représente une vue d'une surface sur une sortie. Plus d'informations...
| En-tête : | #include <QWaylandView> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
| qmake : | QT += waylandcompositor |
| En QML : | WaylandView |
| Héritages : | QObject |
Propriétés
- allowDiscardFrontBuffer : bool
- bufferLocked : bool
- output : QWaylandOutput*
- surface : QWaylandSurface*
Fonctions publiques
| 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 |
| QObject * | renderObject() 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 |
Signaux
| void | allowDiscardFrontBufferChanged() |
| void | bufferLockedChanged() |
| void | outputChanged() |
| void | surfaceChanged() |
Description détaillée
Le QWaylandView correspond à la présentation d'une surface sur une sortie spécifique, en gérant les tampons qui contiennent le contenu à rendre. Il est possible d'avoir plusieurs vues d'une même surface.
Documentation des propriétés
allowDiscardFrontBuffer : bool
Par défaut, la vue verrouille le tampon actuel jusqu'à ce que advance() soit appelé. Définissez cette propriété à true pour permettre à Qt XML de libérer le tampon lorsque la vue principale ne l'utilise plus.
Cela peut être utilisé pour éviter qu'une vue secondaire qui se met à jour à une fréquence plus faible ne vienne réduire la fréquence d'images de l'application cliente.
Fonctions d'accès :
| bool | allowDiscardFrontBuffer() const |
| void | setAllowDiscardFrontBuffer(bool discard) |
Signal Notificateur :
| void | allowDiscardFrontBufferChanged() |
bufferLocked : bool
Cette propriété indique si le tampon de la vue est actuellement verrouillé. Lorsque le tampon est verrouillé, advance() ne passe pas au tampon suivant et renvoie false.
La valeur par défaut est false.
Fonctions d'accès :
| bool | isBufferLocked() const |
| void | setBufferLocked(bool locked) |
Signal de notification :
| void | bufferLockedChanged() |
output : QWaylandOutput*
Cette propriété contient la sortie sur laquelle cette vue affiche sa surface.
Fonctions d'accès :
| QWaylandOutput * | output() const |
| void | setOutput(QWaylandOutput *output) |
Signal de notification :
| void | outputChanged() |
surface : QWaylandSurface*
Cette propriété contient la surface vue par ce site QWaylandView.
Fonctions d'accès :
| QWaylandSurface * | surface() const |
| void | setSurface(QWaylandSurface *surface) |
Signal du notificateur :
| void | surfaceChanged() |
Fonction membre Documentation
QWaylandView::QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr)
Construit un QWaylandView avec les données renderObject et parent.
[override virtual noexcept] QWaylandView::~QWaylandView()
Détruit le site QWaylandView.
[virtual] bool QWaylandView::advance()
Met à jour le tampon actuel et la région endommagée avec la dernière version validée par le client. Retourne true si un nouveau contenu a été validé depuis le dernier appel à advance(). Sinon, il renvoie false.
Voir aussi currentBuffer() et currentDamage().
[virtual] void QWaylandView::bufferCommitted(const QWaylandBufferRef &buffer, const QRegion &damage)
Cette fonction est appelée lorsqu'un nouveau buffer est ajouté à la surface de cette vue. damage contient la région qui est différente du tampon actuel, c'est-à-dire la région qui doit être mise à jour. Le nouveau buffer sera mis à jour lors du prochain appel à advance().
Les sous-classes qui réimplémentent cette fonction doivent appeler l'implémentation de base.
[virtual] QWaylandBufferRef QWaylandView::currentBuffer()
Renvoie une référence au tampon actuel de cette vue.
[virtual] QRegion QWaylandView::currentDamage()
Renvoie la zone de dommages actuelle de cette vue.
[virtual] void QWaylandView::discardCurrentBuffer()
Force la vue à se débarrasser de son tampon actuel, afin de permettre sa réutilisation du côté du client.
bool QWaylandView::isPrimary() const
Retourne vrai si cette page QWaylandView est la vue principale de l'application. QWaylandSurface
Voir aussi QWaylandSurface::primaryView.
void QWaylandView::setPrimary()
Fait de ce site QWaylandView la vue principale de la surface.
Cela n'a aucun effet si ce site QWaylandView ne contient pas de données. QWaylandSurface
Voir aussi isPrimary() et QWaylandSurface::primaryView.
struct wl_resource *QWaylandView::surfaceResource() const
Renvoie la ressource surfacique Wayland pour ce site QWaylandView.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.