Sur cette page

QOpenGLDebugMessage Class

La classe QOpenGLDebugMessage encapsule un message de débogage OpenGL. En savoir plus...

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

Remarque : toutes les fonctions de cette classe sont réentrantes.

Types publics

flags Severities
enum Severity { InvalidSeverity, HighSeverity, MediumSeverity, LowSeverity, NotificationSeverity, AnySeverity }
enum Source { InvalidSource, APISource, WindowSystemSource, ShaderCompilerSource, ThirdPartySource, …, AnySource }
flags Sources
enum Type { InvalidType, ErrorType, DeprecatedBehaviorType, UndefinedBehaviorType, PortabilityType, …, AnyType }
flags Types

Fonctions publiques

QOpenGLDebugMessage()
QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage)
~QOpenGLDebugMessage()
GLuint id() const
QString message() const
QOpenGLDebugMessage::Severity severity() const
QOpenGLDebugMessage::Source source() const
void swap(QOpenGLDebugMessage &other)
QOpenGLDebugMessage::Type type() const
bool operator!=(const QOpenGLDebugMessage &debugMessage) const
QOpenGLDebugMessage &operator=(QOpenGLDebugMessage &&debugMessage)
QOpenGLDebugMessage &operator=(const QOpenGLDebugMessage &debugMessage)
bool operator==(const QOpenGLDebugMessage &debugMessage) const

Membres publics statiques

QOpenGLDebugMessage createApplicationMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)
QOpenGLDebugMessage createThirdPartyMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Severity severity)
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Source source)
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Type type)
QDebug operator<<(QDebug debug, const QOpenGLDebugMessage &message)

Description détaillée

Les messages de débogage sont généralement créés par le serveur OpenGL, puis lus par les clients OpenGL (soit à partir du journal de débogage interne d’OpenGL, soit enregistrés en temps réel). Un message de débogage comporte une représentation textuelle, un identifiant numérique propre au fournisseur, une source, un type et un niveau de gravité.

Il est également possible pour des applications ou des bibliothèques et kits d'outils tiers de créer et d'insérer des messages dans le journal de débogage. Pour ce faire, vous pouvez utiliser les fonctions statiques ` createApplicationMessage()` ou ` createThirdPartyMessage()`.

Voir également QOpenGLDebugLogger.

Documentation sur les types de membres

enum QOpenGLDebugMessage::Severity
flags QOpenGLDebugMessage::Severities

L'énumération « Severity » définit le niveau de gravité du message de débogage.

ConstanteValeurDescription
QOpenGLDebugMessage::InvalidSeverity0x00000000La gravité du message n'est pas valide ; il s'agit de la gravité d'un objet ` QOpenGLDebugMessage ` construit par défaut.
QOpenGLDebugMessage::HighSeverity0x00000001Le message présente un niveau de gravité élevé.
QOpenGLDebugMessage::MediumSeverity0x00000002Le message présente un niveau de gravité moyen.
QOpenGLDebugMessage::LowSeverity0x00000004Le message présente un niveau de gravité faible.
QOpenGLDebugMessage::NotificationSeverity0x00000008Le message est une notification.
QOpenGLDebugMessage::AnySeverity0xffffffffCette valeur correspond à un masque regroupant toutes les gravités de message possibles.

Le type « Severities » est un typedef pour QFlags<Severity>. Il stocke une combinaison OR de valeurs de gravité.

enum QOpenGLDebugMessage::Source
flags QOpenGLDebugMessage::Sources

L'énumération « Source » définit la source du message de débogage.

ConstanteValeurDescription
QOpenGLDebugMessage::InvalidSource0x00000000La source du message n'est pas valide ; il s'agit de la source d'un objet ` QOpenGLDebugMessage ` construit par défaut.
QOpenGLDebugMessage::APISource0x00000001Le message a été généré en réponse à des appels à l'API OpenGL.
QOpenGLDebugMessage::WindowSystemSource0x00000002Le message a été généré par le système de fenêtrage.
QOpenGLDebugMessage::ShaderCompilerSource0x00000004Le message a été généré par le compilateur de shaders.
QOpenGLDebugMessage::ThirdPartySource0x00000008Le message a été généré par un tiers, par exemple un framework OpenGL ou une boîte à outils de débogage.
QOpenGLDebugMessage::ApplicationSource0x00000010Le message a été généré par l'application elle-même.
QOpenGLDebugMessage::OtherSource0x00000020Le message a été généré par une source non incluse dans cette énumération.
QOpenGLDebugMessage::AnySource0xffffffffCette valeur correspond à un masque regroupant toutes les sources de message possibles.

Le type Sources est un typedef pour QFlags<Source>. Il stocke une combinaison OU des valeurs de Source.

enum QOpenGLDebugMessage::Type
flags QOpenGLDebugMessage::Types

L'énumération « Type » définit le type du message de débogage.

ConstanteValeurDescription
QOpenGLDebugMessage::InvalidType0x00000000Le type du message n'est pas valide ; il s'agit du type d'un objet ` QOpenGLDebugMessage ` construit par défaut.
QOpenGLDebugMessage::ErrorType0x00000001Le message représente une erreur.
QOpenGLDebugMessage::DeprecatedBehaviorType0x00000002Le message correspond à une utilisation d’un comportement obsolète.
QOpenGLDebugMessage::UndefinedBehaviorType0x00000004Le message correspond à un comportement non défini.
QOpenGLDebugMessage::PortabilityType0x00000008Le message indique l'utilisation d'un comportement spécifique au fournisseur, susceptible de poser des problèmes de portabilité.
QOpenGLDebugMessage::PerformanceType0x00000010Le message correspond à un problème de performances.
QOpenGLDebugMessage::OtherType0x00000020Le message correspond à un type non inclus dans cette énumération.
QOpenGLDebugMessage::MarkerType0x00000040Le message correspond à un marqueur dans le journal de débogage.
QOpenGLDebugMessage::GroupPushType0x00000080Le message correspond à une opération de poussée de groupe de débogage.
QOpenGLDebugMessage::GroupPopType0x00000100Le message correspond à une opération de suppression d'un groupe de débogage.
QOpenGLDebugMessage::AnyType0xffffffffCette valeur correspond à un masque regroupant tous les types de messages possibles.

Le type Types est un typedef pour QFlags<Type>. Il stocke une combinaison OR de valeurs de type Type.

Documentation des fonctions membres

QOpenGLDebugMessage::QOpenGLDebugMessage()

Construit un message de débogage avec une chaîne de message vide, un identifiant défini sur 0, une source définie sur InvalidSource, un type défini sur InvalidType et un niveau de gravité défini sur InvalidSeverity.

Remarque : ce constructeur ne doit pas être utilisé pour créer un message de débogage ; utilisez plutôt les fonctions statiques createApplicationMessage() ou createThirdPartyMessage().

Voir également createApplicationMessage() et createThirdPartyMessage().

QOpenGLDebugMessage::QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage)

Crée un message de débogage en reproduisant le contenu de debugMessage.

Voir aussi operator=().

[noexcept] QOpenGLDebugMessage::~QOpenGLDebugMessage()

Supprime ce message de débogage.

[static] QOpenGLDebugMessage QOpenGLDebugMessage::createApplicationMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)

Crée et renvoie un message de débogage dont le texte est « text », l’identifiant « id », le niveau de gravité « severity » et le type « type ». La source du message sera définie sur « ApplicationSource ».

Voir également QOpenGLDebugLogger::logMessage() et createThirdPartyMessage().

[static] QOpenGLDebugMessage QOpenGLDebugMessage::createThirdPartyMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)

Crée et renvoie un message de débogage dont le texte est « text », l'identifiant « id », le niveau de gravité « severity » et le type « type ». La source du message sera définie sur « ThirdPartySource ».

Voir également QOpenGLDebugLogger::logMessage() et createApplicationMessage().

GLuint QOpenGLDebugMessage::id() const

Renvoie l'identifiant du message de débogage. Les identifiants sont généralement propres à chaque éditeur.

QString QOpenGLDebugMessage::message() const

Renvoie le message textuel contenu dans ce message de débogage.

QOpenGLDebugMessage::Severity QOpenGLDebugMessage::severity() const

Renvoie le niveau de gravité du message de débogage.

QOpenGLDebugMessage::Source QOpenGLDebugMessage::source() const

Renvoie la source du message de débogage.

[noexcept] void QOpenGLDebugMessage::swap(QOpenGLDebugMessage &other)

Échange ce message avec other. Cette opération est très rapide et ne rate jamais.

QOpenGLDebugMessage::Type QOpenGLDebugMessage::type() const

Renvoie le type du message de débogage.

bool QOpenGLDebugMessage::operator!=(const QOpenGLDebugMessage &debugMessage) const

Renvoie « true » si ce message est différent de « debugMessage », ou « false » dans le cas contraire.

Voir également operator==().

[noexcept] QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(QOpenGLDebugMessage &&debugMessage)

La commande « Move » attribue la valeur « debugMessage » à cet objet.

QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(const QOpenGLDebugMessage &debugMessage)

Attribue le message « debugMessage » à cet objet et renvoie une référence à la copie.

bool QOpenGLDebugMessage::operator==(const QOpenGLDebugMessage &debugMessage) const

Renvoie « true » si ce message de débogage est égal à « debugMessage », ou « false » dans le cas contraire. Deux messages de débogage sont considérés comme égaux s’ils ont le même texte, le même identifiant, la même source, le même type et le même niveau de gravité.

Voir également operator!=().

Éléments non membres associés

QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Severity severity)

Enregistre le niveau de gravité severity dans l'objet de débogage debug à des fins de débogage.

QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Source source)

Écrit la source source dans l'objet de débogage debug à des fins de débogage.

QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Type type)

Ajoute l'type de type dans l'objet de débogage debug à des fins de débogage.

QDebug operator<<(QDebug debug, const QOpenGLDebugMessage &message)

Écrit le message « message » dans l'objet de débogage « debug » à des fins de débogage.

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