glGetColorTable
Prev | GL | Next

## Name

glGetColorTable — retrieve contents of a color lookup table

## C Specification

`void `glGetColorTable`` | `(` | `GLenum `target`, GLenum `format`, GLenum `type`, GLvoid *`table`);`

## Python Specification

``glGetColorTable`` | `(` | ``target`, `format`, `type`, `table`) → `None``

## Parameters

`target`
  Must be `GL_COLOR_TABLE`, `GL_POST_CONVOLUTION_COLOR_TABLE`, or `GL_POST_COLOR_MATRIX_COLOR_TABLE`.
`format`
  The of the pixel data in `table`. The possible values are `GL_RED`, `GL_GREEN`, `GL_BLUE`, `GL_ALPHA`, `GL_LUMINANCE`, `GL_LUMINANCE_ALPHA`, `GL_RGB`, `GL_BGR`, `GL_RGBA`, and `GL_BGRA`.
`type`
  The type of the pixel data in `table`. Symbolic constants `GL_UNSIGNED_BYTE`, `GL_BYTE`, `GL_BITMAP`, `GL_UNSIGNED_SHORT`, `GL_SHORT`, `GL_UNSIGNED_INT`, `GL_INT`, `GL_FLOAT`, `GL_UNSIGNED_BYTE_3_3_2`, `GL_UNSIGNED_BYTE_2_3_3_REV`, `GL_UNSIGNED_SHORT_5_6_5`, `GL_UNSIGNED_SHORT_5_6_5_REV`, `GL_UNSIGNED_SHORT_4_4_4_4`, `GL_UNSIGNED_SHORT_4_4_4_4_REV`, `GL_UNSIGNED_SHORT_5_5_5_1`, `GL_UNSIGNED_SHORT_1_5_5_5_REV`, `GL_UNSIGNED_INT_8_8_8_8`, `GL_UNSIGNED_INT_8_8_8_8_REV`, `GL_UNSIGNED_INT_10_10_10_2`, and `GL_UNSIGNED_INT_2_10_10_10_REV` are accepted.
`table`
  Pointer to a one-dimensional array of pixel data containing the contents of the color table.

## Description

`glGetColorTable` returns in `table` the contents of the color table specified by `target`. No pixel transfer operations are performed, but pixel storage modes that are applicable to `glReadPixels` are performed.

Color components that are requested in the specified `format`, but which are not included in the internal of the color lookup table, are returned as zero. The assignments of internal color components to the components requested by `format` are

Internal Component | Resulting Component
red | red
green | green
blue | blue
alpha | alpha
luminance | red
intensity | red

## Notes

`glGetColorTable` is present only if `GL_ARB_imaging` is returned when `glGetString` is called with an argument of `GL_EXTENSIONS`.

## Errors

`GL_INVALID_ENUM` is generated if `target` is not one of the allowable values.

`GL_INVALID_ENUM` is generated if `format` is not one of the allowable values.

`GL_INVALID_ENUM` is generated if `type` is not one of the allowable values.

`GL_INVALID_OPERATION` is generated if `type` is one of `GL_UNSIGNED_BYTE_3_3_2`, `GL_UNSIGNED_BYTE_2_3_3_REV`, `GL_UNSIGNED_SHORT_5_6_5`, or `GL_UNSIGNED_SHORT_5_6_5_REV` and `format` is not `GL_RGB`.

`GL_INVALID_OPERATION` is generated if `type` is one of `GL_UNSIGNED_SHORT_4_4_4_4`, `GL_UNSIGNED_SHORT_4_4_4_4_REV`, `GL_UNSIGNED_SHORT_5_5_5_1`, `GL_UNSIGNED_SHORT_1_5_5_5_REV`, `GL_UNSIGNED_INT_8_8_8_8`, `GL_UNSIGNED_INT_8_8_8_8_REV`, `GL_UNSIGNED_INT_10_10_10_2`, or `GL_UNSIGNED_INT_2_10_10_10_REV` and `format` is neither `GL_RGBA` nor `GL_BGRA`.

`GL_INVALID_OPERATION` is generated if `glGetColorTable` is executed between the execution of `glBegin` and the corresponding execution of `glEnd`.

## See Also

glColorTable, glColorTableParameter, glGetColorTableParameter

Prev | Up | Next
glGetClipPlane | Home | glGetColorTableParameter