QOpenGLDebugMessage 類

The QOpenGLDebugMessage class wraps an OpenGL debug message. 更多...

頭: #include <QOpenGLDebugMessage>
qmake: QT += gui
Since: Qt 5.1

注意: 此類的所有函數 可重入 .

公共類型

flags Severities
enum Severity { InvalidSeverity, HighSeverity, MediumSeverity, LowSeverity, NotificationSeverity, AnySeverity }
enum Source { InvalidSource, APISource, WindowSystemSource, ShaderCompilerSource, ..., AnySource }
flags
enum Type { InvalidType, ErrorType, DeprecatedBehaviorType, UndefinedBehaviorType, ..., AnyType }
flags 類型

公共函數

QOpenGLDebugMessage ()
QOpenGLDebugMessage (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
QOpenGLDebugMessage & operator= (const QOpenGLDebugMessage & debugMessage )
QOpenGLDebugMessage & operator= (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::Source source )
QDebug operator<< (QDebug debug , QOpenGLDebugMessage::Type type )
QDebug operator<< (QDebug debug , QOpenGLDebugMessage::Severity severity )
QDebug operator<< (QDebug debug , const QOpenGLDebugMessage & message )

詳細描述

The QOpenGLDebugMessage class wraps an OpenGL debug message.

Debug messages are usually created by the OpenGL server and then read by OpenGL clients (either from the OpenGL internal debug log, or logged in real-time). A debug message has a textual representation, a vendor-specific numeric id, a source, a type and a severity.

It's also possible for applications or third-party libraries and toolkits to create and insert messages in the debug log. In order to do so, you can use the createApplicationMessage () 或 createThirdPartyMessage () static functions.

另請參閱 QOpenGLDebugLogger .

成員類型文檔編製

enum QOpenGLDebugMessage:: Severity
flags QOpenGLDebugMessage:: Severities

The Severity enum defines the severity of the debug message.

常量 描述
QOpenGLDebugMessage::InvalidSeverity 0x00000000 The severity of the message is invalid; this is the severity of a default-constructed QOpenGLDebugMessage 對象。
QOpenGLDebugMessage::HighSeverity 0x00000001 The message has a high severity.
QOpenGLDebugMessage::MediumSeverity 0x00000002 The message has a medium severity.
QOpenGLDebugMessage::LowSeverity 0x00000004 The message has a low severity.
QOpenGLDebugMessage::NotificationSeverity 0x00000008 The message is a notification.
QOpenGLDebugMessage::AnySeverity 0xffffffff This value corresponds to a mask of all possible message severities.

The Severities type is a typedef for QFlags <Severity>. It stores an OR combination of Severity values.

enum QOpenGLDebugMessage:: Source
flags QOpenGLDebugMessage::

The Source enum defines the source of the debug message.

常量 描述
QOpenGLDebugMessage::InvalidSource 0x00000000 The source of the message is invalid; this is the source of a default-constructed QOpenGLDebugMessage 對象。
QOpenGLDebugMessage::APISource 0x00000001 The message was generated in response to OpenGL API calls.
QOpenGLDebugMessage::WindowSystemSource 0x00000002 The message was generated by the window system.
QOpenGLDebugMessage::ShaderCompilerSource 0x00000004 The message was generated by the shader compiler.
QOpenGLDebugMessage::ThirdPartySource 0x00000008 The message was generated by a third party, for instance an OpenGL framework a or debugging toolkit.
QOpenGLDebugMessage::ApplicationSource 0x00000010 The message was generated by the application itself.
QOpenGLDebugMessage::OtherSource 0x00000020 The message was generated by a source not included in this enumeration.
QOpenGLDebugMessage::AnySource 0xffffffff This value corresponds to a mask of all possible message sources.

The Sources type is a typedef for QFlags <Source>. It stores an OR combination of Source values.

enum QOpenGLDebugMessage:: Type
flags QOpenGLDebugMessage:: 類型

The Type enum defines the type of the debug message.

常量 描述
QOpenGLDebugMessage::InvalidType 0x00000000 The type of the message is invalid; this is the type of a default-constructed QOpenGLDebugMessage 對象。
QOpenGLDebugMessage::ErrorType 0x00000001 The message represents an error.
QOpenGLDebugMessage::DeprecatedBehaviorType 0x00000002 The message represents an usage of deprecated behavior.
QOpenGLDebugMessage::UndefinedBehaviorType 0x00000004 The message represents an usage of undefined behavior.
QOpenGLDebugMessage::PortabilityType 0x00000008 The message represents an usage of vendor-specific behavior, that might pose portability concerns.
QOpenGLDebugMessage::PerformanceType 0x00000010 The message represents a performance issue.
QOpenGLDebugMessage::OtherType 0x00000020 The message represents a type not included in this enumeration.
QOpenGLDebugMessage::MarkerType 0x00000040 The message represents a marker in the debug log.
QOpenGLDebugMessage::GroupPushType 0x00000080 The message represents a debug group push operation.
QOpenGLDebugMessage::GroupPopType 0x00000100 The message represents a debug group pop operation.
QOpenGLDebugMessage::AnyType 0xffffffff This value corresponds to a mask of all possible message types.

The Types type is a typedef for QFlags <Type>. It stores an OR combination of Type values.

成員函數文檔編製

QOpenGLDebugMessage:: QOpenGLDebugMessage ()

Constructs a debug message with an empty message string, id set to 0, source set to InvalidSource , type set to InvalidType , and severity set to InvalidSeverity .

注意: This constructor should not be used to create a debug message; instead, use the createApplicationMessage () 或 createThirdPartyMessage () static functions.

另請參閱 createApplicationMessage () 和 createThirdPartyMessage ().

QOpenGLDebugMessage:: QOpenGLDebugMessage (const QOpenGLDebugMessage & debugMessage )

構造調試消息作為副本為 debugMessage .

另請參閱 operator= ().

QOpenGLDebugMessage:: ~QOpenGLDebugMessage ()

銷毀此調試消息。

[static] QOpenGLDebugMessage QOpenGLDebugMessage:: createApplicationMessage (const QString & text , GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)

Constructs and returns a debug message with text as its text, id as id, severity as severity, and type as type. The message source will be set to ApplicationSource .

另請參閱 QOpenGLDebugLogger::logMessage () 和 createThirdPartyMessage ().

[static] QOpenGLDebugMessage QOpenGLDebugMessage:: createThirdPartyMessage (const QString & text , GLuint id = 0, QOpenGLDebugMessage::Severity severity = NotificationSeverity, QOpenGLDebugMessage::Type type = OtherType)

Constructs and returns a debug message with text as its text, id as id, severity as severity, and type as type. The message source will be set to ThirdPartySource .

另請參閱 QOpenGLDebugLogger::logMessage () 和 createApplicationMessage ().

GLuint QOpenGLDebugMessage:: id () const

Returns the id of the debug message. Ids are generally vendor-specific.

QString QOpenGLDebugMessage:: message () const

Returns the textual message contained by this debug message.

QOpenGLDebugMessage::Severity QOpenGLDebugMessage:: severity () const

Returns the severity of the debug message.

QOpenGLDebugMessage::Source QOpenGLDebugMessage:: source () const

Returns the source of the debug message.

void QOpenGLDebugMessage:: swap ( QOpenGLDebugMessage & debugMessage )

Swaps the message debugMessage with this message. This operation is very fast and never fails.

QOpenGLDebugMessage::Type QOpenGLDebugMessage:: type () const

Returns the type of the debug message.

bool QOpenGLDebugMessage:: operator!= (const QOpenGLDebugMessage & debugMessage ) const

返迴 true if this message is different from debugMessage ,或 false 否則。

另請參閱 operator== ().

QOpenGLDebugMessage &QOpenGLDebugMessage:: operator= (const QOpenGLDebugMessage & debugMessage )

Assigns the message debugMessage to this object, and returns a reference to the copy.

QOpenGLDebugMessage &QOpenGLDebugMessage:: operator= ( QOpenGLDebugMessage && debugMessage )

移動賦值 debugMessage 到此對象。

bool QOpenGLDebugMessage:: operator== (const QOpenGLDebugMessage & debugMessage ) const

返迴 true if this debug message is equal to debugMessage , or false otherwise. Two debugging messages are equal if they have the same textual message, the same id, the same source, the same type and the same severity.

另請參閱 operator!= ().

相關非成員

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

Writes the source source 到 debug 對象 debug 為調試目的。

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

Writes the type type 到 debug 對象 debug 為調試目的。

QDebug operator<< ( QDebug debug , QOpenGLDebugMessage::Severity severity )

Writes the severity severity 到 debug 對象 debug 為調試目的。

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

Writes the message message 到 debug 對象 debug 為調試目的。