QOpenGLDebugMessage Class
Die Klasse `QOpenGLDebugMessage` verpackt eine OpenGL-Debug-Meldung. Mehr...
| Header: | #include <QOpenGLDebugMessage> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS OpenGL) target_link_libraries(mytarget PRIVATE Qt6::OpenGL) |
| qmake: | QT += opengl |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QOpenGLDebugMessage ist Teil der Themen „Implizit gemeinsam genutzte Klassen “ und „3D-Rendering“.
Hinweis: Alle Funktionen dieser Klasse sind reentrant.
Öffentliche Typen
| 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 |
Öffentliche Funktionen
| 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 |
Statische öffentliche Mitglieder
| 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) |
Verwandte Nicht-Mitglieder
| 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) |
Ausführliche Beschreibung
Debug-Meldungen werden in der Regel vom OpenGL-Server erstellt und anschließend von OpenGL-Clients gelesen (entweder aus dem internen OpenGL-Debug-Protokoll oder in Echtzeit protokolliert). Eine Debug-Meldung besteht aus einer textuellen Darstellung, einer herstellerspezifischen numerischen ID, einer Quelle, einem Typ und einem Schweregrad.
Es ist auch möglich, dass Anwendungen oder Bibliotheken und Toolkits von Drittanbietern Meldungen erstellen und in das Debug-Protokoll einfügen. Dazu können Sie die statischen Funktionen „ createApplicationMessage()“ oder „ createThirdPartyMessage()“ verwenden.
Siehe auch „ QOpenGLDebugLogger “.
Dokumentation zu Mitgliedstypen
enum QOpenGLDebugMessage::Severity
flags QOpenGLDebugMessage::Severities
Die Enumeration „Severity“ definiert den Schweregrad der Debug-Meldung.
| Konstante | Wert | Beschreibung |
|---|---|---|
QOpenGLDebugMessage::InvalidSeverity | 0x00000000 | Der Schweregrad der Meldung ist ungültig; dies ist der Schweregrad eines standardmäßig konstruierten „ QOpenGLDebugMessage “-Objekts. |
QOpenGLDebugMessage::HighSeverity | 0x00000001 | Die Meldung hat einen hohen Schweregrad. |
QOpenGLDebugMessage::MediumSeverity | 0x00000002 | Die Meldung hat einen mittleren Schweregrad. |
QOpenGLDebugMessage::LowSeverity | 0x00000004 | Die Meldung hat einen niedrigen Schweregrad. |
QOpenGLDebugMessage::NotificationSeverity | 0x00000008 | Die Meldung ist eine Benachrichtigung. |
QOpenGLDebugMessage::AnySeverity | 0xffffffff | Dieser Wert entspricht einer Maske aller möglichen Meldungsschweregrade. |
Der Typ „Severities“ ist ein typedef für QFlags<Severity>. Er speichert eine ODER-Kombination von Schweregradwerten.
enum QOpenGLDebugMessage::Source
flags QOpenGLDebugMessage::Sources
Die Enumeration „Source“ definiert die Quelle der Debug-Meldung.
| Konstante | Wert | Beschreibung |
|---|---|---|
QOpenGLDebugMessage::InvalidSource | 0x00000000 | Die Quelle der Meldung ist ungültig; dies ist die Quelle eines standardmäßig konstruierten „ QOpenGLDebugMessage “-Objekts. |
QOpenGLDebugMessage::APISource | 0x00000001 | Die Meldung wurde als Reaktion auf OpenGL-API-Aufrufe generiert. |
QOpenGLDebugMessage::WindowSystemSource | 0x00000002 | Die Meldung wurde vom Fenstersystem generiert. |
QOpenGLDebugMessage::ShaderCompilerSource | 0x00000004 | Die Meldung wurde vom Shader-Compiler generiert. |
QOpenGLDebugMessage::ThirdPartySource | 0x00000008 | Die Meldung wurde von einem Drittanbieter generiert, beispielsweise einem OpenGL-Framework oder einem Debugging-Toolkit. |
QOpenGLDebugMessage::ApplicationSource | 0x00000010 | Die Meldung wurde von der Anwendung selbst generiert. |
QOpenGLDebugMessage::OtherSource | 0x00000020 | Die Meldung wurde von einer Quelle erzeugt, die nicht in dieser Aufzählung enthalten ist. |
QOpenGLDebugMessage::AnySource | 0xffffffff | Dieser Wert entspricht einer Maske aller möglichen Meldungsquellen. |
Der Typ „Sources“ ist ein typedef für QFlags<Source>. Er speichert eine ODER-Kombination von „Source“-Werten.
enum QOpenGLDebugMessage::Type
flags QOpenGLDebugMessage::Types
Die Enumeration „Type“ definiert den Typ der Debug-Meldung.
| Konstante | Wert | Beschreibung |
|---|---|---|
QOpenGLDebugMessage::InvalidType | 0x00000000 | Der Typ der Meldung ist ungültig; dies ist der Typ eines standardmäßig konstruierten „ QOpenGLDebugMessage “-Objekts. |
QOpenGLDebugMessage::ErrorType | 0x00000001 | Die Meldung stellt einen Fehler dar. |
QOpenGLDebugMessage::DeprecatedBehaviorType | 0x00000002 | Die Meldung weist auf die Verwendung eines veralteten Verhaltens hin. |
QOpenGLDebugMessage::UndefinedBehaviorType | 0x00000004 | Die Meldung weist auf die Verwendung von undefiniertem Verhalten hin. |
QOpenGLDebugMessage::PortabilityType | 0x00000008 | Die Meldung weist auf die Verwendung eines herstellerspezifischen Verhaltens hin, das zu Portabilitätsproblemen führen könnte. |
QOpenGLDebugMessage::PerformanceType | 0x00000010 | Die Meldung weist auf ein Leistungsproblem hin. |
QOpenGLDebugMessage::OtherType | 0x00000020 | Die Meldung bezieht sich auf einen Typ, der nicht in dieser Aufzählung enthalten ist. |
QOpenGLDebugMessage::MarkerType | 0x00000040 | Die Meldung steht für eine Markierung im Debug-Protokoll. |
QOpenGLDebugMessage::GroupPushType | 0x00000080 | Die Meldung steht für eine Push-Operation einer Debug-Gruppe. |
QOpenGLDebugMessage::GroupPopType | 0x00000100 | Die Meldung steht für einen Pop-Vorgang einer Debug-Gruppe. |
QOpenGLDebugMessage::AnyType | 0xffffffff | Dieser Wert entspricht einer Maske aller möglichen Meldungstypen. |
Der Typ „Types“ ist eine Typdefinition für QFlags<Type>. Er speichert eine ODER-Verknüpfung von Type-Werten.
Dokumentation der Mitgliedsfunktionen
QOpenGLDebugMessage::QOpenGLDebugMessage()
Erstellt eine Debug-Meldung mit einer leeren Meldungszeichenfolge, der ID „0“, der Quelle „ InvalidSource “, dem Typ „ InvalidType “ und dem Schweregrad „ InvalidSeverity “.
Hinweis: Dieser Konstruktor sollte nicht zum Erstellen einer Debug-Meldung verwendet werden; verwenden Sie stattdessen die statischen Funktionen „ createApplicationMessage()“ oder „ createThirdPartyMessage()“.
Siehe auch createApplicationMessage() und createThirdPartyMessage().
QOpenGLDebugMessage::QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage)
Erstellt eine Debug-Meldung als Kopie von debugMessage.
Siehe auch operator=().
[noexcept] QOpenGLDebugMessage::~QOpenGLDebugMessage()
Löscht diese Debug-Meldung.
[static] QOpenGLDebugMessage QOpenGLDebugMessage::createApplicationMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)
Erstellt und gibt eine Debug-Meldung zurück, deren Text „ text “, deren ID „ id “, deren Schweregrad „ severity “ und deren Typ „ type “ lautet. Als Quelle der Meldung wird „ ApplicationSource “ festgelegt.
Siehe auch „ QOpenGLDebugLogger::logMessage()“ und „ createThirdPartyMessage()“.
[static] QOpenGLDebugMessage QOpenGLDebugMessage::createThirdPartyMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)
Erstellt und gibt eine Debug-Meldung zurück, deren Text „ text “, deren ID „ id “, deren Schweregrad „ severity “ und deren Typ „ type “ lautet. Die Meldungsquelle wird auf „ ThirdPartySource “ gesetzt.
Siehe auch QOpenGLDebugLogger::logMessage() und createApplicationMessage().
GLuint QOpenGLDebugMessage::id() const
Gibt die ID der Debug-Meldung zurück. IDs sind in der Regel herstellerspezifisch.
QString QOpenGLDebugMessage::message() const
Gibt die in dieser Debug-Meldung enthaltene Textnachricht zurück.
QOpenGLDebugMessage::Severity QOpenGLDebugMessage::severity() const
Gibt den Schweregrad der Debug-Meldung zurück.
QOpenGLDebugMessage::Source QOpenGLDebugMessage::source() const
Gibt die Quelle der Debug-Meldung zurück.
[noexcept] void QOpenGLDebugMessage::swap(QOpenGLDebugMessage &other)
Tauscht diese Nachricht mit other aus. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.
QOpenGLDebugMessage::Type QOpenGLDebugMessage::type() const
Gibt den Typ der Debug-Meldung zurück.
bool QOpenGLDebugMessage::operator!=(const QOpenGLDebugMessage &debugMessage) const
Gibt „ true “ zurück, wenn sich diese Meldung von „ debugMessage “ unterscheidet, andernfalls „false“.
Siehe auch operator==().
[noexcept] QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(QOpenGLDebugMessage &&debugMessage)
Mit „Move“ wird „ debugMessage “ diesem Objekt zugewiesen.
QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(const QOpenGLDebugMessage &debugMessage)
Weist diesem Objekt das Nachrichten debugMessage zu und gibt eine Referenz auf die Kopie zurück.
bool QOpenGLDebugMessage::operator==(const QOpenGLDebugMessage &debugMessage) const
Gibt „ true “ zurück, wenn diese Debug-Meldung mit „ debugMessage “ übereinstimmt, andernfalls „false“. Zwei Debug-Meldungen sind identisch, wenn sie denselben Text, dieselbe ID, dieselbe Quelle, denselben Typ und denselben Schweregrad aufweisen.
Siehe auch „ operator!=()“.
Verwandte Nicht-Mitglieder
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Severity severity)
Schreibt den Schweregrad „ severity “ zu Debugging-Zwecken in das Debug-Objekt „ debug “.
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Source source)
Schreibt die Quelle „ source “ zu Debugging-Zwecken in das Debug-Objekt „ debug “.
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Type type)
Schreibt zu Debugging-Zwecken den Typ „ type “ in das Debug-Objekt „ debug “.
QDebug operator<<(QDebug debug, const QOpenGLDebugMessage &message)
Schreibt die Meldung „ message “ zu Debugging-Zwecken in das Debug-Objekt „ debug “.
© 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.