QWaylandView Class
Die Klasse QWaylandView stellt eine Ansicht einer Oberfläche auf einer Ausgabe dar. Mehr...
Kopfzeile: | #include <QWaylandView> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor) target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
qmake: | QT += waylandcompositor |
In QML: | WaylandView |
Vererbt: | QObject |
Eigenschaften
- allowDiscardFrontBuffer : bool
- bufferLocked : bool
- output : QWaylandOutput*
- surface : QWaylandSurface*
Öffentliche Funktionen
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 |
Signale
void | allowDiscardFrontBufferChanged() |
void | bufferLockedChanged() |
void | outputChanged() |
void | surfaceChanged() |
Detaillierte Beschreibung
QWaylandView entspricht der Darstellung einer Oberfläche auf einer bestimmten Ausgabe und verwaltet die Puffer, die die darzustellenden Inhalte enthalten. Sie können mehrere Sichten auf dieselbe Oberfläche haben.
Dokumentation der Eigenschaften
allowDiscardFrontBuffer : bool
Standardmäßig sperrt die Ansicht den aktuellen Puffer, bis advance() aufgerufen wird. Setzen Sie diese Eigenschaft auf true
, um Qt zu erlauben, den Puffer freizugeben, wenn die primäre Ansicht ihn nicht mehr verwendet.
Dies kann verwendet werden, um die Situation zu vermeiden, dass eine sekundäre Ansicht, die mit einer geringeren Frequenz aktualisiert, die Bildrate der Client-Anwendung drosselt.
Zugriffsfunktionen:
bool | allowDiscardFrontBuffer() const |
void | setAllowDiscardFrontBuffer(bool discard) |
Benachrichtigungssignal:
void | allowDiscardFrontBufferChanged() |
bufferLocked : bool
Diese Eigenschaft gibt an, ob der Puffer der Ansicht derzeit gesperrt ist. Wenn der Puffer gesperrt ist, geht advance() nicht zum nächsten Puffer über und gibt false
zurück.
Der Standardwert ist false
.
Zugriffsfunktionen:
bool | isBufferLocked() const |
void | setBufferLocked(bool locked) |
Benachrichtigungssignal:
void | bufferLockedChanged() |
output : QWaylandOutput*
Diese Eigenschaft enthält die Ausgabe, auf der diese Ansicht ihre Oberfläche anzeigt.
Zugriffsfunktionen:
QWaylandOutput * | output() const |
void | setOutput(QWaylandOutput *output) |
Benachrichtigungssignal:
void | outputChanged() |
surface : QWaylandSurface*
Diese Eigenschaft enthält die Oberfläche, die von dieser QWaylandView betrachtet wird.
Zugriffsfunktionen:
QWaylandSurface * | surface() const |
void | setSurface(QWaylandSurface *surface) |
Melder-Signal:
void | surfaceChanged() |
Member Function Dokumentation
QWaylandView::QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr)
Konstruiert eine QWaylandView mit den angegebenen renderObject und parent.
[override virtual noexcept]
QWaylandView::~QWaylandView()
Zerstört die QWaylandView.
[virtual]
bool QWaylandView::advance()
Aktualisiert den aktuellen Puffer und die Schadensregion auf die letzte vom Client übertragene Version. Gibt true zurück, wenn seit dem letzten Aufruf von advance() neue Inhalte übertragen wurden. Andernfalls wird false zurückgegeben.
Siehe auch currentBuffer() und currentDamage().
[virtual]
void QWaylandView::bufferCommitted(const QWaylandBufferRef &buffer, const QRegion &damage)
Diese Funktion wird aufgerufen, wenn eine neue buffer an die Oberfläche dieser Ansicht übergeben wird. damage enthält den Bereich, der sich vom aktuellen Puffer unterscheidet, d. h. den Bereich, der aktualisiert werden muss. Die neue buffer wird mit dem nächsten Aufruf von advance() aktuell.
Unterklassen, die diese Funktion neu implementieren , müssen die Basisimplementierung aufrufen.
[virtual]
QWaylandBufferRef QWaylandView::currentBuffer()
Gibt einen Verweis auf den aktuellen Puffer dieser Ansicht zurück.
[virtual]
QRegion QWaylandView::currentDamage()
Gibt die aktuelle Schadensregion dieser Ansicht zurück.
[virtual]
void QWaylandView::discardCurrentBuffer()
Zwingt den View, seinen aktuellen Puffer zu verwerfen, damit er auf der Client-Seite wiederverwendet werden kann.
bool QWaylandView::isPrimary() const
Gibt true zurück, wenn diese QWaylandView die primäre Ansicht für die QWaylandSurface
Siehe auch QWaylandSurface::primaryView.
void QWaylandView::setPrimary()
Macht diese QWaylandView zur primären Ansicht für die Oberfläche.
Es hat keine Auswirkung, wenn diese QWaylandView keine andere Ansicht enthält. QWaylandSurface
Siehe auch isPrimary() und QWaylandSurface::primaryView.
struct wl_resource *QWaylandView::surfaceResource() const
Gibt die Wayland-Oberflächenressource für diese QWaylandView zurück.
© 2025 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.