Класс QOpenGLDebugMessage
Класс QOpenGLDebugMessage оборачивает сообщение об ошибке OpenGL. Подробнее...
| Заголовок: | #include <QOpenGLDebugMessage> |
| qmake: | QT += gui |
| С момента: | Qt 5.1 |
Примечание: Все функции в этом классе являются реентерабельными.
Открытые типы
| флаги | Уровни серьезности |
| перечисление | УровеньСерьезности { InvalidSeverity, HighSeverity, MediumSeverity, LowSeverity, NotificationSeverity, AnySeverity } |
| перечисление | Источник { InvalidSource, APISource, WindowSystemSource, ShaderCompilerSource, ..., AnySource } |
| флаги | Источники |
| перечисление | Тип { InvalidType, ErrorType, DeprecatedBehaviorType, UndefinedBehaviorType, ..., AnyType } |
| флаги | Типы |
Открытые функции
| QOpenGLDebugMessage() | |
| QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage) | |
| ~QOpenGLDebugMessage() | |
| GLuint | id() const |
| QString | message() const |
| УровеньСерьезности | severity() const |
| Источник | source() const |
| void | swap(QOpenGLDebugMessage &debugMessage) |
| Тип | type() const |
| bool | operator!=(const QOpenGLDebugMessage &debugMessage) const |
| QOpenGLDebugMessage & | operator=(const QOpenGLDebugMessage &debugMessage) |
| QOpenGLDebugMessage & | operator=(QOpenGLDebugMessage &&debugMessage) |
| bool | operator==(const QOpenGLDebugMessage &debugMessage) const |
Статические открытые члены
| QOpenGLDebugMessage | createApplicationMessage(const QString &text, GLuint id = 0, УровеньСерьезности severity = NotificationSeverity, Тип type = OtherType) |
| QOpenGLDebugMessage | createThirdPartyMessage(const QString &text, GLuint id = 0, УровеньСерьезности severity = NotificationSeverity, Тип type = OtherType) |
Связанные внешние члены
| QDebug | operator<<(QDebug debug, QOpenGLDebugMessage::Источник source) |
| QDebug | operator<<(QDebug debug, QOpenGLDebugMessage::Тип type) |
| QDebug | operator<<(QDebug debug, QOpenGLDebugMessage::УровеньСерьезности severity) |
| QDebug | operator<<(QDebug debug, const QOpenGLDebugMessage &message) |
Подробное описание
Класс QOpenGLDebugMessage оборачивает сообщение об ошибке OpenGL.
Сообщения об ошибках обычно создаются сервером OpenGL и затем считываются клиентами OpenGL (либо из внутреннего журнала отладки OpenGL, либо записываются в реальном времени). Сообщение об ошибке имеет текстовое представление, специфичный для поставщика числовой идентификатор, источник, тип и уровень серьезности.
Также приложения или сторонние библиотеки и инструменты могут создавать и вставлять сообщения в журнал отладки. Для этого можно использовать статические функции createApplicationMessage() или createThirdPartyMessage().
См. также QOpenGLDebugLogger.
Документация по типам членов
перечисление QOpenGLDebugMessage::УровеньСерьезности QOpenGLDebugMessage::УровниСерьезности
Перечисление УровеньСерьезности определяет уровень серьезности сообщения об ошибке.
| Константа | Значение | Описание |
|---|---|---|
QOpenGLDebugMessage::InvalidSeverity |
0x00000000 |
Уровень серьезности сообщения недействителен; это уровень серьезности объекта QOpenGLDebugMessage, созданного по умолчанию. |
QOpenGLDebugMessage::HighSeverity |
0x00000001 |
Сообщение имеет высокий уровень серьезности. |
QOpenGLDebugMessage::MediumSeverity |
0x00000002 |
Сообщение имеет средний уровень серьезности. |
QOpenGLDebugMessage::LowSeverity |
0x00000004 |
Сообщение имеет низкий уровень серьезности. |
QOpenGLDebugMessage::NotificationSeverity |
0x00000008 |
Сообщение — уведомление. |
QOpenGLDebugMessage::AnySeverity |
0xffffffff |
Это значение соответствует маске всех возможных уровней серьезности сообщений. |
Тип УровниСерьезности — псевдоним для QFlags<УровеньСерьезности>. Он хранит логическое ИЛИ сочетание значений УровеньСерьезности.
перечисление QOpenGLDebugMessage::Источник QOpenGLDebugMessage::Источники
Перечисление Источник определяет источник сообщения об ошибке.
| Константа | Значение | Описание |
|---|---|---|
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 |
Это значение соответствует маске всех возможных источников сообщений. |
Тип Источники — псевдоним для QFlags<Источник>. Он хранит логическое ИЛИ сочетание значений Источник.
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 |
Сообщение представляет операцию ввода группы отладки. |
QOpenGLDebugMessage::GroupPopType |
0x00000100 |
Сообщение представляет операцию вывода группы отладки. |
QOpenGLDebugMessage::AnyType |
0xffffffff |
Это значение соответствует маске всех возможных типов сообщений. |
Тип Types — это псевдоним для QFlags<Type>. Он хранит логическое ИЛИ сочетание значений Type.
Документация по функциям-членам
QOpenGLDebugMessage::QOpenGLDebugMessage()
Создаёт сообщение отладки с пустой строкой сообщения, id, установленным в 0, источником, установленным в InvalidSource, типом, установленным в InvalidType, и уровнем серьёзности, установленным в InvalidSeverity.
Примечание: Этот конструктор не следует использовать для создания сообщения отладки; используйте статические функции createApplicationMessage() или createThirdPartyMessage().
См. также createApplicationMessage() и createThirdPartyMessage().
QOpenGLDebugMessage::QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage)
Создаёт сообщение отладки как копию debugMessage.
См. также operator=().
QOpenGLDebugMessage::~QOpenGLDebugMessage()
Удаляет это сообщение отладки.
[static] QOpenGLDebugMessage QOpenGLDebugMessage::createApplicationMessage(const QString &text, GLuint id = 0, Severity severity = NotificationSeverity, Type type = OtherType)
Создаёт и возвращает сообщение отладки с текстом text, id id, уровнем серьёзности severity и типом type. Источник сообщения будет установлен в ApplicationSource.
См. также QOpenGLDebugLogger::logMessage() и createThirdPartyMessage().
[static] QOpenGLDebugMessage QOpenGLDebugMessage::createThirdPartyMessage(const QString &text, GLuint id = 0, Severity severity = NotificationSeverity, Type type = OtherType)
Создаёт и возвращает сообщение отладки с текстом text, id id, уровнем серьёзности severity и типом type. Источник сообщения будет установлен в ThirdPartySource.
См. также QOpenGLDebugLogger::logMessage() и createApplicationMessage().
GLuint QOpenGLDebugMessage::id() const
Возвращает id сообщения отладки. Ids обычно зависят от поставщика.
QString QOpenGLDebugMessage::message() const
Возвращает текстовое сообщение, содержащееся в этом сообщении отладки.
Severity QOpenGLDebugMessage::severity() const
Возвращает уровень серьёзности сообщения отладки.
Source QOpenGLDebugMessage::source() const
Возвращает источник сообщения отладки.
void QOpenGLDebugMessage::swap(QOpenGLDebugMessage &debugMessage)
Меняет местами сообщение debugMessage с этим сообщением. Эта операция очень быстрая и никогда не завершается с ошибкой.
Type QOpenGLDebugMessage::type() const
Возвращает тип сообщения отладки.
bool QOpenGLDebugMessage::operator!=(const QOpenGLDebugMessage &debugMessage) const
Возвращает true, если это сообщение отличается от debugMessage, иначе — false.
См. также operator==().
QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(const QOpenGLDebugMessage &debugMessage)
Присваивает сообщению debugMessage этому объекту и возвращает ссылку на копию.
QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(QOpenGLDebugMessage &&debugMessage)
Перемещающее присваивание debugMessage этому объекту.
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/archives/qt-5.6/qopengldebugmessage.html