Sur cette page

QRhiReadbackDescription Class

Décrit une opération de relecture (relecture du contenu d'une texture provenant d'une mémoire éventuellement réservée au GPU). En savoir plus...

En-tête : #include <rhi/qrhi.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS GuiPrivate)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake : QT += gui-private
Depuis : Qt 6.6

Fonctions publiques

QRhiReadbackDescription()
QRhiReadbackDescription(QRhiTexture *texture)
int layer() const
int level() const
(since 6.10) QRect rect() const
void setLayer(int layer)
void setLevel(int level)
(since 6.10) void setRect(const QRect &rectangle)
void setTexture(QRhiTexture *tex)
QRhiTexture *texture() const

Description détaillée

La source de l'opération de relecture est soit une chaîne de swap ( QRhiTexture ), soit le tampon arrière (backbuffer) de l'QRhiSwapChain actuellement ciblé. Lorsque la fonction ` texture()` n'est pas définie, c'est la chaîne de swap qui est utilisée. Dans le cas contraire, l'QRhiTexture spécifié est considéré comme la source.

Remarque : les textures utilisées dans les lectures doivent être créées à l’aide de ` QRhiTexture::UsedAsTransferSource`.

Remarque : les chaînes de permutation utilisées dans les lectures doivent être créées à l'aide de ` QRhiSwapChain::UsedAsTransferSource`.

layer() et ` level()` ne s’appliquent que lorsque la source est un ` QRhiTexture`.

Remarque : les texturesmultisample ne peuvent pas faire l'objet d'une relecture. Les relectures sont toutefois prises en charge pour les tampons de swapchain multisample.

Remarque : il s’agit d’une API RHI dont la compatibilité est garantie de manière limitée ; voir QRhi pour plus de détails.

Documentation des fonctions membres

[constexpr noexcept default] QRhiReadbackDescription::QRhiReadbackDescription()

Crée une description de relecture de texture vide.

Remarque : la texture source est définie sur null par défaut, ce qui constitue tout de même une lecture valide : cela spécifie que le tampon arrière de la chaîne d'échange actuelle doit être lu. (Par « actuelle », on entend la chaîne d'échange cible de l'image au moment de la validation de l'QRhiResourceUpdateBatch, sur laquelle se trouve l'texture readback.)

QRhiReadbackDescription::QRhiReadbackDescription(QRhiTexture *texture)

Crée une description de relecture de texture indiquant que le niveau 0 de la couche 0 de texture doit être relu.

Remarque : texture peut également être null, auquel cas ce constructeur est identique à la variante sans argument.

int QRhiReadbackDescription::layer() const

Renvoie la couche de tableau actuellement définie (face de cubemap, index de tableau). La valeur par défaut est 0.

Applicable uniquement lorsque la source de la relecture est un QRhiTexture.

Voir également setLayer().

int QRhiReadbackDescription::level() const

Renvoie le niveau de mip actuellement défini. La valeur par défaut est 0.

Applicable uniquement lorsque la source de la relecture est un QRhiTexture.

Voir également setLevel().

[since 6.10] QRect QRhiReadbackDescription::rect() const

Renvoie le rectangle à relire. La valeur par défaut est un rectangle non valide.

S'il est invalide, la texture entière ou le tampon de sortie de la chaîne d'échange est relu.

Cette fonction a été introduite dans Qt 6.10.

Voir également setRect().

void QRhiReadbackDescription::setLayer(int layer)

Définit le tableau « layer » à relire.

Voir aussi layer().

void QRhiReadbackDescription::setLevel(int level)

Définit l'level de mip à relire.

Voir aussi level().

[since 6.10] void QRhiReadbackDescription::setRect(const QRect &rectangle)

Définit l'rectangle e à relire.

Cette fonction a été introduite dans Qt 6.10.

Voir aussi ` rect()`.

void QRhiReadbackDescription::setTexture(QRhiTexture *tex)

Définit l'tex de texture comme source de l'opération de relecture.

Le paramètre « nullptr » est également valide ; dans ce cas, le tampon arrière actuel de la chaîne d'échange est utilisé. (Mais la lecture ne peut alors pas être lancée dans une image ne reposant pas sur une chaîne d'échange.)

Remarque : les texturesmultisample ne peuvent pas faire l’objet d’une lecture en retour. Les lectures en retour sont toutefois prises en charge pour les tampons de swapchain multisample.

Remarque : les textures utilisées dans les relectures doivent être créées avec l’option « QRhiTexture::UsedAsTransferSource ».

Remarque : les chaînes d’échange utilisées dans les relectures doivent être créées avec ` QRhiSwapChain::UsedAsTransferSource`.

Voir également ` texture()`.

QRhiTexture *QRhiReadbackDescription::texture() const

Renvoie l’ QRhiTexture e qui vient d’être lu. Peut être laissé à la valeur « nullptr », ce qui indique qu’il faut utiliser à la place le backbuffer de la chaîne d’échange (swapchain) actuelle.

Voir aussi setTexture().

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