Sur cette page

QWaylandBufferRef Class

La classe QWaylandBufferRef contient une référence à un tampon de surface. En savoir plus...

En-tête : #include <QWaylandBufferRef>
CMake : find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)
target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor)
qmake : QT += waylandcompositor

Fonctions publiques

QWaylandBufferRef()
QWaylandBufferRef(const QWaylandBufferRef &ref)
~QWaylandBufferRef()
bool hasBuffer() const
bool hasContent() const
(since 6.2) bool hasProtectedContent() const
QImage image() const
bool isDestroyed() const
bool isNull() const
bool isSharedMemory() const
quintptr lockNativeBuffer()
QWaylandSurface::Origin origin() const
QSize size() const
QOpenGLTexture *toOpenGLTexture(int plane = 0) const
void unlockNativeBuffer(quintptr handle)
struct wl_resource *wl_buffer() const
QWaylandBufferRef &operator=(const QWaylandBufferRef &ref)
bool operator!=(const QWaylandBufferRef &lhs, const QWaylandBufferRef &rhs)
bool operator==(const QWaylandBufferRef &lhs, const QWaylandBufferRef &rhs)

Description détaillée

Cette classe permet de référencer un tampon de surface. Tant qu'une référence à ce tampon existe, celui-ci appartient au compositeur et le client ne peut pas le modifier.

Documentation des fonctions membres

QWaylandBufferRef::QWaylandBufferRef()

Crée une référence de tampon nul.

QWaylandBufferRef::QWaylandBufferRef(const QWaylandBufferRef &ref)

Crée une nouvelle référence au tampon référencé par ` ref`.

[noexcept] QWaylandBufferRef::~QWaylandBufferRef()

Déréférence le tampon.

bool QWaylandBufferRef::hasBuffer() const

Renvoie « true » si cet objet ` QWaylandBufferRef ` fait référence à un tampon. Sinon, renvoie « false ».

Voir aussi ` isNull()` et ` hasContent()`.

bool QWaylandBufferRef::hasContent() const

Renvoie « true » si cette QWaylandBufferRef fait référence à un tampon contenant des données. Sinon, renvoie « false ».

Voir également ` isNull()` et ` hasBuffer()`.

[since 6.2] bool QWaylandBufferRef::hasProtectedContent() const

Renvoie « true » si cette « QWaylandBufferRef » fait référence à un tampon dont le contenu est protégé. Sinon, renvoie « false ».

Remarque : il s'agit d'un activateur qui présuppose la prise en charge dans l'intégration de tampon client. Aucune des intégrations de tampon client incluses dans Qt ne prend actuellement en charge les tampons de contenu protégé.

Cette fonction a été introduite dans Qt 6.2.

Voir aussi hasContent().

QImage QWaylandBufferRef::image() const

Renvoie une image contenant le contenu du tampon.

bool QWaylandBufferRef::isDestroyed() const

Renvoie « true » si cette fonction « QWaylandBufferRef » fait référence à un tampon qui a été détruit. Sinon, elle renvoie « false ».

bool QWaylandBufferRef::isNull() const

Renvoie « true » si cet objet « QWaylandBufferRef » ne fait pas référence à un tampon. Sinon, renvoie « false ».

Voir également hasBuffer() et hasContent().

bool QWaylandBufferRef::isSharedMemory() const

Renvoie « true » si le tampon est un tampon de mémoire partagée. Sinon, renvoie « false ».

quintptr QWaylandBufferRef::lockNativeBuffer()

Renvoie le descripteur natif de ce tampon et le marque comme verrouillé, de sorte qu'il ne sera pas libéré tant que la fonction unlockNativeBuffer() n'aura pas été appelée.

Renvoie 0 s'il n'existe pas de descripteur natif pour ce tampon, ou si le verrouillage a échoué.

QWaylandSurface::Origin QWaylandBufferRef::origin() const

Renvoie l'origine du tampon. Si le tampon référencé est nul, la valeur « QWaylandSurface::OriginBottomLeft » est renvoyée.

QSize QWaylandBufferRef::size() const

Renvoie la taille du tampon. Si le tampon référencé est nul, une valeur QSize() non valide est renvoyée.

QOpenGLTexture *QWaylandBufferRef::toOpenGLTexture(int plane = 0) const

Renvoie une texture OpenGL pour le tampon. ` plane ` correspond à l'index pour les formats à plusieurs plans, tels que YUV.

La texture renvoyée appartient au tampon. Elle n’est valide que tant que la référence au tampon existe. L’appelant de cette fonction ne doit pas supprimer la texture et doit conserver une référence au tampon tant que la texture est utilisée.

Renvoie nullptr s’il n’existe aucun tampon valide ou si aucune texture ne peut être créée.

void QWaylandBufferRef::unlockNativeBuffer(quintptr handle)

Marque le tampon natif comme n'étant plus utilisé. La valeur ` handle ` doit correspondre à la valeur renvoyée par un appel précédent à la fonction ` lockNativeBuffer()`.

struct wl_resource *QWaylandBufferRef::wl_buffer() const

Renvoie la ressource Wayland associée au tampon.

QWaylandBufferRef &QWaylandBufferRef::operator=(const QWaylandBufferRef &ref)

Attribue la valeur « ref » à ce tampon et ajoute une référence à celui-ci. La référence au tampon précédent est supprimée.

Éléments non membres associés

[noexcept] bool operator!=(const QWaylandBufferRef &lhs, const QWaylandBufferRef &rhs)

Renvoie ` false ` si ` lhs ` fait référence au même tampon que ` rhs`. Sinon, renvoie ` true`.

[noexcept] bool operator==(const QWaylandBufferRef &lhs, const QWaylandBufferRef &rhs)

Renvoie « true » si « lhs » fait référence au même tampon que « rhs ». Sinon, renvoie « false ».

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