Auf dieser Seite

QWaylandView Class

Die Klasse „QWaylandView“ stellt eine Ansicht einer Oberfläche auf einem Ausgabegerät dar. Mehr...

Header: #include <QWaylandView>
CMake: find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)
target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor)
qmake: QT += waylandcompositor
Erbt von: 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

Ausführliche Beschreibung

Die QWaylandView entspricht der Darstellung einer Oberfläche auf einer bestimmten Ausgabe und verwaltet die Puffer, die den zu rendernden Inhalt enthalten. Es können mehrere Ansichten derselben Oberfläche vorhanden sein.

Eigenschaftsdokumentation

allowDiscardFrontBuffer : bool

Standardmäßig sperrt die Ansicht den aktuellen Puffer, bis „ advance()“ aufgerufen wird. Setzen Sie diese Eigenschaft auf „ true “, damit Qt den Puffer freigeben kann, sobald die primäre Ansicht ihn nicht mehr verwendet.

Dies kann genutzt werden, um zu vermeiden, dass eine sekundäre Ansicht, die mit geringerer Frequenz aktualisiert wird, die Bildrate der Client-Anwendung drosselt.

Zugriffsfunktionen:

bool allowDiscardFrontBuffer() const
void setAllowDiscardFrontBuffer(bool discard)

Notifier-Signal:

void allowDiscardFrontBufferChanged()

bufferLocked : bool

Diese Eigenschaft gibt an, ob der Puffer der Ansicht derzeit gesperrt ist. Wenn der Puffer gesperrt ist, springt die Funktion „ advance()“ nicht zum nächsten Puffer und gibt „ false “ zurück.

Der Standardwert ist ` false`.

Zugriffsfunktionen:

bool isBufferLocked() const
void setBufferLocked(bool locked)

Notifier-Signal:

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 diesem QWaylandView angezeigt wird.

Zugriffsfunktionen:

QWaylandSurface *surface() const
void setSurface(QWaylandSurface *surface)

Benachrichtigungssignal:

void surfaceChanged()

Dokumentation der Member-Funktionen

QWaylandView::QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr)

Erstellt ein `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 den Schadensbereich auf die neueste vom Client übermittelte Version. Gibt „true“ zurück, wenn seit dem letzten Aufruf von „advance()“ neue Inhalte übermittelt 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 ein neuer „ buffer “ auf die Oberfläche dieser Ansicht übertragen wird. „ damage “ enthält den Bereich, der sich vom aktuellen Puffer unterscheidet, d. h. den Bereich, der aktualisiert werden muss. Der neue „ buffer “ wird beim nächsten Aufruf von „ advance()“ zum aktuellen Puffer.

Unterklassen, die diese Funktion neu implementieren, müssen die Basisimplementierung aufrufen.

[virtual] QWaylandBufferRef QWaylandView::currentBuffer()

Gibt eine Referenz auf den aktuellen Puffer dieser Ansicht zurück.

[virtual] QRegion QWaylandView::currentDamage()

Gibt den aktuellen Schadensbereich dieser Ansicht zurück.

[virtual] void QWaylandView::discardCurrentBuffer()

Die Ansicht dazu zwingen, ihren aktuellen Puffer zu löschen, 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()

Legt diese QWaylandView als primäre Ansicht für die Oberfläche fest.

Dies hat keine Auswirkung, wenn diese „ QWaylandView “ keine QWaylandSurface

Siehe auch ` isPrimary()` und ` QWaylandSurface::primaryView`.

struct wl_resource *QWaylandView::surfaceResource() const

Gibt die Wayland-Oberflächenressource für diese „ QWaylandView “ zurück.

© 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.