glGetPixelMap — return the specified pixel map
void glGetPixelMapfv( | GLenum | map, |
GLfloat * | data) ; |
void glGetPixelMapuiv( | GLenum | map, |
GLuint * | data) ; |
void glGetPixelMapusv( | GLenum | map, |
GLushort * | data) ; |
map
Specifies the name of the pixel map to return.
Accepted values are
GL_PIXEL_MAP_I_TO_I
,
GL_PIXEL_MAP_S_TO_S
,
GL_PIXEL_MAP_I_TO_R
,
GL_PIXEL_MAP_I_TO_G
,
GL_PIXEL_MAP_I_TO_B
,
GL_PIXEL_MAP_I_TO_A
,
GL_PIXEL_MAP_R_TO_R
,
GL_PIXEL_MAP_G_TO_G
,
GL_PIXEL_MAP_B_TO_B
, and
GL_PIXEL_MAP_A_TO_A
.
data
Returns the pixel map contents.
See the glPixelMap reference page for a description of the acceptable
values for the map
parameter.
glGetPixelMap
returns in data
the contents of the pixel map
specified in map
.
Pixel maps are used during the execution of
glReadPixels,
glDrawPixels,
glCopyPixels,
glTexImage1D,
glTexImage2D,
glTexImage3D,
glTexSubImage1D,
glTexSubImage2D,
glTexSubImage3D,
glCopyTexImage1D,
glCopyTexImage2D,
glCopyTexSubImage1D,
glCopyTexSubImage2D, and
glCopyTexSubImage3D.
to map color indices,
stencil indices,
color components,
and depth components to other values.
If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER
target
(see glBindBuffer) while a pixel map is
requested, data
is treated as a byte offset into the buffer object's data store.
Unsigned integer values, if requested, are linearly mapped from the internal fixed or floating-point representation such that 1.0 maps to the largest representable integer value, and 0.0 maps to 0. Return unsigned integer values are undefined if the map value was not in the range [0,1].
To determine the required size of map
,
call glGet with the appropriate symbolic
constant.
GL_INVALID_ENUM
is generated if map
is not an accepted value.
GL_INVALID_OPERATION
is generated if a non-zero buffer object name is bound to the
GL_PIXEL_PACK_BUFFER
target and the buffer object's data store is currently mapped.
GL_INVALID_OPERATION
is generated if a non-zero buffer object name is bound to the
GL_PIXEL_PACK_BUFFER
target and the data would be packed to the buffer
object such that the memory writes required would exceed the data store size.
GL_INVALID_OPERATION
is generated by glGetPixelMapfv
if a non-zero buffer object name is bound to the
GL_PIXEL_PACK_BUFFER
target and data
is not evenly divisible
into the number of bytes needed to store in memory a GLfloat datum.
GL_INVALID_OPERATION
is generated by glGetPixelMapuiv
if a non-zero buffer object name is bound to the
GL_PIXEL_PACK_BUFFER
target and data
is not evenly divisible
into the number of bytes needed to store in memory a GLuint datum.
GL_INVALID_OPERATION
is generated by glGetPixelMapusv
if a non-zero buffer object name is bound to the
GL_PIXEL_PACK_BUFFER
target and data
is not evenly divisible
into the number of bytes needed to store in memory a GLushort datum.
GL_INVALID_OPERATION
is generated if glGetPixelMap
is executed between the execution of glBegin
and the corresponding execution of glEnd.
glGet with argument GL_PIXEL_MAP_I_TO_I_SIZE
glGet with argument GL_PIXEL_MAP_S_TO_S_SIZE
glGet with argument GL_PIXEL_MAP_I_TO_R_SIZE
glGet with argument GL_PIXEL_MAP_I_TO_G_SIZE
glGet with argument GL_PIXEL_MAP_I_TO_B_SIZE
glGet with argument GL_PIXEL_MAP_I_TO_A_SIZE
glGet with argument GL_PIXEL_MAP_R_TO_R_SIZE
glGet with argument GL_PIXEL_MAP_G_TO_G_SIZE
glGet with argument GL_PIXEL_MAP_B_TO_B_SIZE
glGet with argument GL_PIXEL_MAP_A_TO_A_SIZE
glGet with argument GL_MAX_PIXEL_MAP_TABLE
glGet with argument GL_PIXEL_PACK_BUFFER_BINDING
glColorSubTable, glColorTable, glConvolutionFilter1D, glConvolutionFilter2D, glCopyColorSubTable, glCopyColorTable, glCopyPixels, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, glCopyTexSubImage3D, glDrawPixels, glGetHistogram, glGetMinmax, glGetTexImage, glPixelMap, glPixelTransfer, glReadPixels, glSeparableFilter2D, glTexImage1D, glTexImage1D, glTexImage2D glTexImage2D, glTexImage3D, glTexSubImage1D, glTexSubImage2D, glTexSubImage3D
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.