2013
Khronos Group
glObjectLabel
3G

# glObjectLabel

label a named object identified within a namespace

## C Specification

                    void glObjectLabel
                    GLenum identifier
                    GLuint name
                    GLsizei length
                    const char * label

## Parameters

`identifier`

  The namespace from which the name of the object is allocated.

`name`

  The name of the object to label.

`length`

  The length of the label to be used for the object.

`label`

  The address of a string containing the label to assign to the object.

## Description

`glObjectLabel` labels the object identified by `name` within the namespace given by `identifier`. `identifier` must be one of `GL_BUFFER`, `GL_SHADER`, `GL_PROGRAM`, `GL_VERTEX_ARRAY`, `GL_QUERY`, `GL_PROGRAM_PIPELINE`, `GL_TRANSFORM_FEEDBACK`, `GL_SAMPLER`, `GL_TEXTURE`, `GL_RENDERBUFFER`, `GL_FRAMEBUFFER`, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively.

`label` is the address of a string that will be used to label an object. `length` contains the number of characters in `label`. If `length` is negative, it is implied that `label` contains a null-terminated string. If `label` is NULL, any debug label is effectively removed from the object.

## Errors

`GL_INVALID_ENUM` is generated if `identifier` is not one of the accepted object types.

`GL_INVALID_OPERATION` is generated if `name` is not the name of an existing object of the type specified by `identifier`.

`GL_INVALID_VALUE` is generated if the number of characters in `label`, excluding the null terminator when `length` is negative, is greater than the value of `GL_MAX_LABEL_LENGTH`.

## Associated Gets

glGet with argument `GL_MAX_LABEL_LENGTH`.

## See Also

glPushDebugGroup, glPopDebugGroup, glObjectPtrLabel.

## Copyright

Copyright 2013 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/.