Класс QOpenGLDebugMessage
Класс QOpenGLDebugMessage оборачивает сообщение об отладке OpenGL. Подробнее...
| Заголовок: | #include <QOpenGLDebugMessage> |
| CMake: | find_package(Qt6 COMPONENTS OpenGL REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::OpenGL) |
| qmake: | QT += opengl |
| С версии: | Qt 5.1 |
Примечание: Все функции в этом классе являются перевключенными.
Типы public
| Флаги | Уровни серьезности |
| Перечисление | Severity { НеверныйУровень, ВысокийУровень, СреднийУровень, НизкийУровень, Уведомление, ЛюбойУровень } |
| Перечисление | Источник { НеверныйИсточник, ИсточникAPI, ИсточникСистемыОкон, ИсточникКомпилятораТени, ИсточникТретьихСторон, …, ЛюбойИсточник } |
| Флаги | Источники |
| Перечисление | Тип { НеверныйТип, Ошибка, ТипУстаревшегоПоведения, ТипОпределенногоПоведения, ТипСовместимости, …, ЛюбойТип } |
| Флаги | Типы |
Функции public
| QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage) | |
| QOpenGLDebugMessage() | |
| QOpenGLDebugMessage & | operator=(QOpenGLDebugMessage &&debugMessage) |
| QOpenGLDebugMessage & | operator=(const QOpenGLDebugMessage &debugMessage) |
| ~QOpenGLDebugMessage() | |
| GLuint | id() const |
| QString | message() const |
| QOpenGLDebugMessage::Severity | severity() const |
| QOpenGLDebugMessage::Source | source() const |
| void | swap(QOpenGLDebugMessage &debugMessage) |
| QOpenGLDebugMessage::Type | type() const |
| bool | operator!=(const QOpenGLDebugMessage &debugMessage) const |
| bool | operator==(const QOpenGLDebugMessage &debugMessage) const |
Статические члены public
| 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::Source source) |
| QDebug | operator<<(QDebug debug, QOpenGLDebugMessage::Type type) |
| QDebug | operator<<(QDebug debug, QOpenGLDebugMessage::Severity severity) |
| QDebug | operator<<(QDebug debug, const QOpenGLDebugMessage &message) |
Подробное описание
Сообщения об отладке обычно создаются сервером OpenGL, а затем считываются клиентами OpenGL (либо из внутреннего журнала отладки OpenGL, либо в режиме реального времени). Сообщение об отладке имеет текстовое представление, уникальный числовой идентификатор поставщика, источник, тип и уровень серьезности.
Приложения или сторонние библиотеки и наборы инструментов также могут создавать и вставлять сообщения в журнал отладки. Для этого можно использовать статические функции createApplicationMessage() или createThirdPartyMessage().
См. также QOpenGLDebugLogger.
Документация по типам членов
перечисление QOpenGLDebugMessage::Severityфлаги QOpenGLDebugMessage::УровниСерьезности
Перечисление Severity определяет уровень серьезности сообщения об отладке.
| Постоянная | Значение | Описание |
|---|---|---|
QOpenGLDebugMessage::InvalidSeverity |
0x00000000 |
Уровень серьезности сообщения неверен; это уровень серьезности объекта QOpenGLDebugMessage, созданного по умолчанию. |
QOpenGLDebugMessage::HighSeverity |
0x00000001 |
Уровень серьезности сообщения высокий. |
QOpenGLDebugMessage::MediumSeverity |
0x00000002 |
Уровень серьезности сообщения средний. |
QOpenGLDebugMessage::LowSeverity |
0x00000004 |
Уровень серьезности сообщения низкий. |
QOpenGLDebugMessage::NotificationSeverity |
0x00000008 |
Сообщение — уведомление. |
QOpenGLDebugMessage::AnySeverity |
0xffffffff |
Это значение соответствует маске всех возможных уровней серьезности сообщений. |
Тип Severities — это псевдоним для QFlags<Severity>. Он хранит логическое ИЛИ сочетание значений Severity.
перечисление QOpenGLDebugMessage::Sourceфлаги QOpenGLDebugMessage::Источники
Перечисление Source определяет источник сообщения об отладке.
| Постоянная | Значение | Описание |
|---|---|---|
QOpenGLDebugMessage::InvalidSource |
0x00000000 |
Источник сообщения неверный; это источник объекта QOpenGLDebugMessage, созданного по умолчанию. |
QOpenGLDebugMessage::APISource |
0x00000001 |
Сообщение было сгенерировано в ответ на вызовы API OpenGL. |
QOpenGLDebugMessage::WindowSystemSource |
0x00000002 |
Сообщение было сгенерировано системой окон. |
QOpenGLDebugMessage::ShaderCompilerSource |
0x00000004 |
Сообщение было сгенерировано компилятором теней. |
QOpenGLDebugMessage::ThirdPartySource |
0x00000008 |
Сообщение было сгенерировано третьей стороной, например, фреймворком OpenGL или инструментом отладки. |
QOpenGLDebugMessage::ApplicationSource |
0x00000010 |
Сообщение было сгенерировано самим приложением. |
QOpenGLDebugMessage::OtherSource |
0x00000020 |
Сообщение было сгенерировано источником, не включённым в это перечисление. |
QOpenGLDebugMessage::AnySource |
0xffffffff |
Это значение соответствует маске всех возможных источников сообщений. |
Тип Sources — это typedef для QFlags<Source>. Он хранит логическое ИЛИ сочетание значений Source.
enum QOpenGLDebugMessage::Typeflags QOpenGLDebugMessage::Types
Перечисление Type определяет тип сообщения отладки.
| Константа | Значение | Описание |
|---|---|---|
QOpenGLDebugMessage::InvalidType |
0x00000000 |
Тип сообщения некорректен; это тип объекта QOpenGLDebugMessage, созданного по умолчанию. |
QOpenGLDebugMessage::ErrorType |
0x00000001 |
Сообщение представляет собой ошибку. |
QOpenGLDebugMessage::DeprecatedBehaviorType |
0x00000002 |
Сообщение представляет собой использование устаревшего поведения. |
QOpenGLDebugMessage::UndefinedBehaviorType |
0x00000004 |
Сообщение представляет собой использование неопределённого поведения. |
QOpenGLDebugMessage::PortabilityType |
0x00000008 |
Сообщение представляет собой использование поведения, зависящего от поставщика, что может вызвать проблемы с переносимостью. |
QOpenGLDebugMessage::PerformanceType |
0x00000010 |
Сообщение представляет собой проблему производительности. |
QOpenGLDebugMessage::OtherType |
0x00000020 |
Сообщение представляет собой тип, не включённый в это перечисление. |
QOpenGLDebugMessage::MarkerType |
0x00000040 |
Сообщение представляет собой метку в журнале отладки. |
QOpenGLDebugMessage::GroupPushType |
0x00000080 |
Сообщение представляет собой операцию «push» группы отладки. |
QOpenGLDebugMessage::GroupPopType |
0x00000100 |
Сообщение представляет собой операцию «pop» группы отладки. |
QOpenGLDebugMessage::AnyType |
0xffffffff |
Это значение соответствует маске всех возможных типов сообщений. |
Тип Types — это typedef для QFlags<Type>. Он хранит логическое ИЛИ сочетание значений Type.
Документация по функциям-членам
QOpenGLDebugMessage::QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage)
Создаёт сообщение отладки как копию debugMessage.
См. также operator=().
QOpenGLDebugMessage::QOpenGLDebugMessage()
Создаёт сообщение отладки с пустой строкой сообщения, id, равным 0, исходным источником, равным InvalidSource, типом, равным InvalidType, и уровнем серьёзности, равным InvalidSeverity.
Примечание: Этот конструктор не должен использоваться для создания сообщения отладки; вместо этого используйте статические функции createApplicationMessage() или createThirdPartyMessage().
См. также createApplicationMessage() и createThirdPartyMessage().
QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(QOpenGLDebugMessage &&debugMessage)
Перемещает присвоение debugMessage этому объекту.
QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(const QOpenGLDebugMessage &debugMessage)
Присваивает сообщение debugMessage этому объекту и возвращает ссылку на копию.
QOpenGLDebugMessage::~QOpenGLDebugMessage()
Уничтожает это сообщение отладки.
[static] QOpenGLDebugMessage QOpenGLDebugMessage::createApplicationMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)
Создаёт и возвращает сообщение отладки с text в качестве текста, id в качестве id, severity в качестве уровня серьёзности и type в качестве типа. Источник сообщения будет установлен в ApplicationSource.
См. также QOpenGLDebugLogger::logMessage() и createThirdPartyMessage().
[static] QOpenGLDebugMessage QOpenGLDebugMessage::createThirdPartyMessage(const QString &text, GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)
Создаёт и возвращает сообщение отладки с text в качестве текста, id в качестве id, severity в качестве уровня серьёзности и type в качестве типа. Источник сообщения будет установлен в ThirdPartySource.
См. также QOpenGLDebugLogger::logMessage() и createApplicationMessage().
GLuint QOpenGLDebugMessage::id() const
Возвращает id сообщения отладки. Id обычно зависят от поставщика.
QString QOpenGLDebugMessage::message() const
Возвращает текстовое сообщение, содержащееся в этом сообщении отладки.
QOpenGLDebugMessage::Severity QOpenGLDebugMessage::severity() const
Возвращает уровень серьёзности сообщения отладки.
QOpenGLDebugMessage::Source QOpenGLDebugMessage::source() const
Возвращает источник сообщения отладки.
void QOpenGLDebugMessage::swap(QOpenGLDebugMessage &debugMessage)
Меняет местами сообщение debugMessage с этим сообщением. Эта операция очень быстрая и никогда не терпит неудачу.
QOpenGLDebugMessage::Type QOpenGLDebugMessage::type() const
Возвращает тип сообщения отладки.
bool QOpenGLDebugMessage::operator!=(const QOpenGLDebugMessage &debugMessage) const
Возвращает true, если это сообщение отличается от debugMessage, или false в противном случае.
См. также operator==().
bool QOpenGLDebugMessage::operator==(const QOpenGLDebugMessage &debugMessage) const
Возвращает true, если это сообщение отладки равно debugMessage, или false в противном случае. Два сообщения отладки равны, если они имеют одинаковое текстовое сообщение, одинаковый id, одинаковый источник, одинаковый тип и одинаковый уровень серьёзности.
См. также operator!=().
Связанные нечлены
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Source source)
Записывает источник source в объект отладки debug для целей отладки.
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Type type)
Записывает тип type в объект отладки debug для целей отладки.
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Severity severity)
Записывает уровень серьёзности severity в объект отладки debug для целей отладки.
QDebug operator<<(QDebug debug, const QOpenGLDebugMessage &message)
Записывает сообщение message в объект отладки debug для целей отладки.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qopengldebugmessage.html