2012 Khronos Group
glDebugMessageInsert 3G
glDebugMessageInsert inject an application-supplied message into the debug message queue

## C Specification

void `glDebugMessageInsert` GLenum source GLenum type GLuint id GLenum severity GLsizei length const char *message

## Parameters

source

  The source of the debug message to insert.

type

  The type of the debug message insert.

id

  The user-supplied identifier of the message to insert.

severity

  The severity of the debug messages to insert.

length

  The length string contained in the character array whose address is given by message.

message

  The address of a character array containing the message to insert.

## Description

`glDebugMessageInsert` inserts a user-supplied message into the debug output queue. source specifies the source that will be used to classify the message and must be `GL_DEBUG_SOURCE_APPLICATION` or `GL_DEBUG_SOURCE_THIRD_PARTY`. All other sources are reserved for use by the GL implementation. type indicates the type of the message to be inserted and may be one of `GL_DEBUG_TYPE_ERROR`, `GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR`, `GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR`, `GL_DEBUG_TYPE_PORTABILITY`, `GL_DEBUG_TYPE_PERFORMANCE`, or `GL_DEBUG_TYPE_OTHER`. severity indicates the severity of the message and may be `GL_DEBUG_SEVERITY_LOW`, `GL_DEBUG_SEVERITY_MEDIUM`, or `GL_DEBUG_SEVERITY_HIGH`. id is available for application defined use and may be any value. This value will be recorded and used to identify the message.

length contains a count of the characters in the character array whose address is given in message. If length is negative then message is treated as a null-terminated string. The length of the message, whether specified explicitly or implicitly, must be less than or equal to the implementation defined constant `GL_MAX_DEBUG_MESSAGE_LENGTH`.

## Errors

`GL_INVALID_ENUM` is generated if any of source, type or severity is not one of the accepted interface types.

`GL_INVALID_VALUE` is generated if the length of the message is greater than the value of `GL_MAX_DEBUG_MESSAGE_LENGTH`.

## See Also

glDebugMessageControl, glDebugMessageCallback, glGetDebugMessageLog.

## Copyright

Copyright 2012 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.