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

Ö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

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.