glGetMinmax — get minimum and maximum pixel values
void glGetMinmax( | GLenum | target, |
GLboolean | reset, | |
GLenum | format, | |
GLenum | types, | |
GLvoid * | values) ; |
target
Must be
GL_MINMAX
.
reset
If GL_TRUE
, all entries in the minmax table that are actually
returned are reset to their initial values. (Other entries are unaltered.)
If GL_FALSE
, the minmax table is unaltered.
format
The format of the data to be returned in values
.
Must be one of
GL_RED
,
GL_GREEN
,
GL_BLUE
,
GL_ALPHA
,
GL_RGB
,
GL_BGR
,
GL_RGBA
,
GL_BGRA
,
GL_LUMINANCE
, or
GL_LUMINANCE_ALPHA
.
types
The type of the data to be returned in values
.
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.
values
A pointer to storage for the returned values.
glGetMinmax
returns the accumulated minimum and maximum pixel values (computed on a
per-component basis) in a one-dimensional image of width 2. The first set
of return values are the minima, and the second set of return values
are the maxima.
The format of the return values is determined by format
, and their type is
determined by types
.
If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER
target
(see glBindBuffer) while minimum and maximum pixel values are
requested, values
is treated as a byte offset into the buffer object's data store.
No pixel transfer operations are performed on the return values, but pixel
storage modes that are applicable to one-dimensional images are performed.
Color components that are requested in the specified format
, but that
are not included in the internal format of the minmax table, are
returned as zero. The assignment of internal color components to the
components requested by format
are as follows:
Internal Component | Resulting Component |
---|---|
Red | Red |
Green | Green |
Blue | Blue |
Alpha | Alpha |
Luminance | Red |
If reset
is GL_TRUE
, the minmax table entries corresponding
to the return values are reset to their initial
values. Minimum and maximum values that are not returned are not
modified, even if reset
is GL_TRUE
.
glGetMinmax
is present only if ARB_imaging
is returned when glGetString
is called with an argument of GL_EXTENSIONS
.
GL_INVALID_ENUM
is generated if target
is not GL_MINMAX
.
GL_INVALID_ENUM
is generated if format
is not one of the allowable
values.
GL_INVALID_ENUM
is generated if types
is not one of the allowable
values.
GL_INVALID_OPERATION
is generated if types
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 types
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 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 if a non-zero buffer object name is bound to the
GL_PIXEL_PACK_BUFFER
target and values
is not evenly divisible
into the number of bytes needed to store in memory a datum indicated by type
.
GL_INVALID_OPERATION
is generated if glGetMinmax
is executed
between the execution of glBegin and the corresponding
execution of glEnd.
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/.