QOpenGLDebugMessage Class

QOpenGLDebugMessage 클래스는 OpenGL 디버그 메시지를 래핑합니다. 더 보기...

헤더: #include <QOpenGLDebugMessage>
CMake: find_package(Qt6 REQUIRED COMPONENTS OpenGL)
target_link_libraries(mytarget PRIVATE Qt6::OpenGL)
qmake: QT += opengl

참고: 이 클래스의 모든 함수는 재진입됩니다.

공용 유형

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참조하세요 .

멤버 유형 문서

열거형 QOpenGLDebugMessage::Severity
플래그 QOpenGLDebugMessage::Severities

Severity 열거형은 디버그 메시지의 심각도를 정의합니다.

상수설명
QOpenGLDebugMessage::InvalidSeverity0x00000000메시지의 심각도가 유효하지 않습니다. 기본으로 구성된 QOpenGLDebugMessage 객체의 심각도입니다.
QOpenGLDebugMessage::HighSeverity0x00000001메시지의 심각도가 높습니다.
QOpenGLDebugMessage::MediumSeverity0x00000002메시지의 심각도가 중간입니다.
QOpenGLDebugMessage::LowSeverity0x00000004메시지의 심각도가 낮습니다.
QOpenGLDebugMessage::NotificationSeverity0x00000008메시지가 알림입니다.
QOpenGLDebugMessage::AnySeverity0xffffffff이 값은 가능한 모든 메시지 심각도의 마스크에 해당합니다.

Severities 유형은 QFlags<Severity>에 대한 타입 정의입니다. Severity 값의 OR 조합을 저장합니다.

열거형 QOpenGLDebugMessage::Source
플래그 QOpenGLDebugMessage::소스

Source 열거형은 디버그 메시지의 소스를 정의합니다.

상수설명
QOpenGLDebugMessage::InvalidSource0x00000000메시지의 소스가 유효하지 않습니다. 기본으로 구성된 QOpenGLDebugMessage 객체의 소스입니다.
QOpenGLDebugMessage::APISource0x00000001메시지가 OpenGL API 호출에 대한 응답으로 생성되었습니다.
QOpenGLDebugMessage::WindowSystemSource0x00000002메시지가 창 시스템에 의해 생성되었습니다.
QOpenGLDebugMessage::ShaderCompilerSource0x00000004셰이더 컴파일러에서 메시지를 생성했습니다.
QOpenGLDebugMessage::ThirdPartySource0x00000008메시지가 타사(예: OpenGL 프레임워크 a 또는 디버깅 툴킷)에 의해 생성되었습니다.
QOpenGLDebugMessage::ApplicationSource0x00000010메시지가 애플리케이션 자체에서 생성되었습니다.
QOpenGLDebugMessage::OtherSource0x00000020이 열거에 포함되지 않은 소스에 의해 메시지가 생성되었습니다.
QOpenGLDebugMessage::AnySource0xffffffff이 값은 가능한 모든 메시지 소스의 마스크에 해당합니다.

Sources 유형은 QFlags<Source>에 대한 타입 정의입니다. Source 값의 OR 조합을 저장합니다.

열거형 QOpenGLDebugMessage::Type
플래그 QOpenGLDebugMessage::Types

Type 열거형은 디버그 메시지의 유형을 정의합니다.

Constant설명
QOpenGLDebugMessage::InvalidType0x00000000메시지 유형이 유효하지 않습니다. 기본으로 구성된 QOpenGLDebugMessage 객체의 유형입니다.
QOpenGLDebugMessage::ErrorType0x00000001메시지는 오류를 나타냅니다.
QOpenGLDebugMessage::DeprecatedBehaviorType0x00000002메시지가 더 이상 사용되지 않는 동작의 사용법을 나타냅니다.
QOpenGLDebugMessage::UndefinedBehaviorType0x00000004메시지가 정의되지 않은 동작의 사용법을 나타냅니다.
QOpenGLDebugMessage::PortabilityType0x00000008메시지가 이식성 문제를 일으킬 수 있는 공급업체별 동작의 사용을 나타냅니다.
QOpenGLDebugMessage::PerformanceType0x00000010메시지가 성능 문제를 나타냅니다.
QOpenGLDebugMessage::OtherType0x00000020메시지가 이 열거형에 포함되지 않은 유형을 나타냅니다.
QOpenGLDebugMessage::MarkerType0x00000040메시지는 디버그 로그의 마커를 나타냅니다.
QOpenGLDebugMessage::GroupPushType0x00000080메시지는 디버그 그룹 푸시 작업을 나타냅니다.
QOpenGLDebugMessage::GroupPopType0x00000100메시지는 디버그 그룹 팝 작업을 나타냅니다.
QOpenGLDebugMessage::AnyType0xffffffff이 값은 가능한 모든 메시지 유형의 마스크에 해당합니다.

Types 유형은 QFlags<Type>에 대한 typedef입니다. Type 값의 OR 조합을 저장합니다.

멤버 함수 문서

QOpenGLDebugMessage::QOpenGLDebugMessage()

빈 메시지 문자열, 0으로 설정된 id, InvalidSource 으로 설정된 소스, InvalidType 으로 설정된 유형, 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, 심각도는 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, 심각도는 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 을 반환하고, 그렇지 않으면 거짓을 반환합니다.

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)

디버깅을 위해 디버그 객체 debug 에 심각도 severity 를 씁니다.

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

디버깅을 위해 소스 source 를 디버그 객체 debug 에 씁니다.

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

디버깅을 위해 디버그 객체 debugtype 유형을 씁니다.

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

디버깅을 위해 디버그 객체 debugmessage 메시지를 씁니다.

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