QOpenGLDebugMessage Class
QOpenGLDebugMessage 클래스는 OpenGL 디버그 메시지를 래핑합니다. 더 보기...
| 헤더: | #include <QOpenGLDebugMessage> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS OpenGL) target_link_libraries(mytarget PRIVATE Qt6::OpenGL) |
| qmake: | QT += opengl |
- 상속된 멤버를 포함한 모든 멤버 목록
- QOpenGLDebugMessage는 ‘암시적 공유 클래스’ 및 ‘3D 렌더링’의 일부입니다.
참고: 이 클래스의 모든 함수는 재진입 가능합니다.
공개 유형
| 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 |
공개 함수
| 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 |
정적 공용 멤버
| 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) |
상세 설명
디버그 메시지는 일반적으로 OpenGL 서버에서 생성된 후 OpenGL 클라이언트가 읽습니다(OpenGL 내부 디버그 로그에서 읽거나 실시간으로 기록된 메시지). 디버그 메시지에는 텍스트 표현, 벤더별 숫자 ID, 출처, 유형 및 심각도가 포함됩니다.
또한 애플리케이션이나 타사 라이브러리 및 툴킷에서 메시지를 생성하여 디버그 로그에 삽입할 수도 있습니다. 이를 위해서는 createApplicationMessage() 또는 createThirdPartyMessage() 정적 함수를 사용할 수 있습니다.
QOpenGLDebugLogger도 참조하십시오 .
멤버 유형 설명서
enum QOpenGLDebugMessage::Severity
flags QOpenGLDebugMessage::Severities
Severity 열거형은 디버그 메시지의 중요도를 정의합니다.
| 상수 | 값 | 설명 |
|---|---|---|
QOpenGLDebugMessage::InvalidSeverity | 0x00000000 | 메시지의 심각도가 유효하지 않습니다. 이는 기본 생성된 ` QOpenGLDebugMessage ` 객체의 심각도입니다. |
QOpenGLDebugMessage::HighSeverity | 0x00000001 | 메시지의 심각도가 높습니다. |
QOpenGLDebugMessage::MediumSeverity | 0x00000002 | 메시지의 심각도가 높습니다. |
QOpenGLDebugMessage::LowSeverity | 0x00000004 | 메시지의 심각도가 낮습니다. |
QOpenGLDebugMessage::NotificationSeverity | 0x00000008 | 이 메시지는 알림입니다. |
QOpenGLDebugMessage::AnySeverity | 0xffffffff | 이 값은 가능한 모든 메시지 심각도 마스크에 해당합니다. |
Severities 유형은 QFlags<Severity>에 대한 typedef입니다. 이 유형은 Severity 값들의 OR 조합을 저장합니다.
enum QOpenGLDebugMessage::Source
flags QOpenGLDebugMessage::Sources
Source 열거형은 디버그 메시지의 출처를 정의합니다.
| 상수 | 값 | 설명 |
|---|---|---|
QOpenGLDebugMessage::InvalidSource | 0x00000000 | 메시지의 소스가 유효하지 않습니다. 이는 기본 생성된 ` QOpenGLDebugMessage ` 객체의 소스입니다. |
QOpenGLDebugMessage::APISource | 0x00000001 | 이 메시지는 OpenGL API 호출에 대한 응답으로 생성되었습니다. |
QOpenGLDebugMessage::WindowSystemSource | 0x00000002 | 이 메시지는 윈도우 시스템에 의해 생성되었습니다. |
QOpenGLDebugMessage::ShaderCompilerSource | 0x00000004 | 이 메시지는 셰이더 컴파일러에 의해 생성되었습니다. |
QOpenGLDebugMessage::ThirdPartySource | 0x00000008 | 이 메시지는 OpenGL 프레임워크나 디버깅 툴킷과 같은 타사에서 생성되었습니다. |
QOpenGLDebugMessage::ApplicationSource | 0x00000010 | 이 메시지는 애플리케이션 자체에 의해 생성되었습니다. |
QOpenGLDebugMessage::OtherSource | 0x00000020 | 이 메시지는 이 열거형에 포함되지 않은 소스에 의해 생성되었습니다. |
QOpenGLDebugMessage::AnySource | 0xffffffff | 이 값은 가능한 모든 메시지 소스의 마스크에 해당합니다. |
Sources 유형은 QFlags<Source>에 대한 typedef입니다. 이 유형은 Source 값들의 OR 조합을 저장합니다.
enum QOpenGLDebugMessage::Type
flags 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 | 이 메시지는 디버그 그룹 팝(pop) 작업을 나타냅니다. |
QOpenGLDebugMessage::AnyType | 0xffffffff | 이 값은 가능한 모든 메시지 유형의 마스크에 해당합니다. |
Types 유형은 QFlags<Type>에 대한 typedef입니다. 이 유형은 Type 값들의 OR 조합을 저장합니다.
멤버 함수 문서
QOpenGLDebugMessage::QOpenGLDebugMessage()
메시지 문자열을 비워두고, id를 0으로, source를 InvalidSource 로, type을 InvalidType 로, severity를 InvalidSeverity 로 설정하여 디버그 메시지를 생성합니다.
참고: 이 생성자는 디버그 메시지를 생성하는 데 사용해서는 안 됩니다. 대신 createApplicationMessage() 또는 createThirdPartyMessage() 정적 함수를 사용하십시오.
createApplicationMessage() 및 createThirdPartyMessage()도 참조하십시오 .
QOpenGLDebugMessage::QOpenGLDebugMessage(const QOpenGLDebugMessage &debugMessage)
debugMessage 의 복사본 형태로 디버그 메시지를 생성합니다.
operator=()도 참조하십시오 .
[noexcept] 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
디버그 메시지의 출처를 반환합니다.
[noexcept] void QOpenGLDebugMessage::swap(QOpenGLDebugMessage &other)
이 메시지를 other 로 교체합니다. 이 작업은 매우 빠르며 절대 실패하지 않습니다.
QOpenGLDebugMessage::Type QOpenGLDebugMessage::type() const
디버그 메시지의 유형을 반환합니다.
bool QOpenGLDebugMessage::operator!=(const QOpenGLDebugMessage &debugMessage) const
이 메시지가 debugMessage 와 다를 경우 true 를 반환하고, 그렇지 않은 경우 false를 반환합니다.
operator==()도 참조하십시오 .
[noexcept] QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(QOpenGLDebugMessage &&debugMessage)
debugMessage 를 이 객체에 할당합니다.
QOpenGLDebugMessage &QOpenGLDebugMessage::operator=(const QOpenGLDebugMessage &debugMessage)
이 객체에 “ debugMessage ” 메시지를 할당하고, 그 복사본에 대한 참조를 반환합니다.
bool QOpenGLDebugMessage::operator==(const QOpenGLDebugMessage &debugMessage) const
이 디버그 메시지가 ` debugMessage`와 동일한 경우 ` true `를 반환하고, 그렇지 않은 경우 `false`를 반환합니다. 두 디버그 메시지는 텍스트 메시지, ID, 출처, 유형 및 심각도가 모두 동일할 때 서로 동일한 것으로 간주됩니다.
operator!=()도 참조하십시오 .
관련 비멤버
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Severity severity)
디버깅을 위해 심각도 severity 를 디버그 객체 debug 에 기록합니다.
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Source source)
디버깅을 위해 소스 source 을 디버그 객체 debug 에 기록합니다.
QDebug operator<<(QDebug debug, QOpenGLDebugMessage::Type type)
디버깅을 위해 ` type ` 유형을 디버그 객체 ` debug `에 기록합니다.
QDebug operator<<(QDebug debug, const QOpenGLDebugMessage &message)
디버깅을 위해 debug 디버그 객체에 “ message ”라는 메시지를 기록합니다.
© 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.