fglIndexPointer(3G)

fglIndexPointer - define an array of color indexes

As shipped in IRIX 6.5.7. Unchanged since IRIX 6.5.

NAME
     fglIndexPointer - define an array of color indexes


FORTRAN SPECIFICATION
     SUBROUTINE fglIndexPointer( INTEGER*4 type,
                                 INTEGER*4 stride,
                                 CHARACTER*8 pointer )


PARAMETERS
     type     Specifies the data type of each color index in the array.
              Symbolic constants GL_UNSIGNED_BYTE, GL_SHORT, GL_INT, GL_FLOAT,
              and GL_DOUBLE are accepted.

     stride   Specifies the byte offset between consecutive color indexes.  If
              stride is 0 (the initial value), the color indexes are
              understood to be tightly packed in the array.

     pointer  Specifies a pointer to the first index in the array.

DESCRIPTION
     fglIndexPointer specifies the location and data format of an array of
     color indexes to use when rendering.  type specifies the data type of
     each color index and stride gives the byte stride from one color index to
     the next allowing vertexes and attributes to be packed into a single
     array or stored in separate arrays.  (Single-array storage may be more
     efficient on some implementations; see fglInterleavedArrays.)

     type, stride, and pointer are saved as client-side state.

     The color index array is initially disabled. To enable and disable the
     array, call fglEnableClientState and fglDisableClientState with the
     argument GL_INDEX_ARRAY. If enabled, the color index array is used when
     fglDrawArrays, fglDrawElements or fglArrayElement is called.

     Use fglDrawArrays to construct a sequence of primitives (all of the same
     type) from prespecified vertex and vertex attribute arrays.  Use
     fglArrayElement to specify primitives by indexing vertexes and vertex
     attributes and fglDrawElements to construct a sequence of primitives by
     indexing vertexes and vertex attributes.

NOTES
     fglIndexPointer is available only if the GL version is 1.1 or greater.

     The color index array is initially disabled, and it isn't accessed when
     fglArrayElement, fglDrawElements or fglDrawArrays is called.

     Execution of fglIndexPointer is not allowed between fglBegin and the
     corresponding fglEnd, but an error may or may not be generated. If an
     error is not generated, the operation is undefined.
     fglIndexPointer is typically implemented on the client side.

     Since the color index array parameters are client-side state, they are
     not saved or restored by fglPushAttrib and fglPopAttrib.  Use
     fglPushClientAttrib and
     fglPopClientAttrib instead.

ERRORS
     GL_INVALID_ENUM is generated if type is not an accepted value.

     GL_INVALID_VALUE is generated if stride is negative.

ASSOCIATED GETS
     fglIsEnabled with argument GL_INDEX_ARRAY
     fglGet with argument GL_INDEX_ARRAY_TYPE
     fglGet with argument GL_INDEX_ARRAY_STRIDE
     fglGetPointerv with argument GL_INDEX_ARRAY_POINTER


MACHINE DEPENDENCIES
     On RealityEngine, RealityEngine2, and VTX systems, do not enable or
     disable GL_VERTEX_ARRAY, GL_VERTEX_ARRAY_EXT, GL_NORMAL_ARRAY,
     GL_NORMAL_ARRAY_EXT, GL_COLOR_ARRAY, GL_COLOR_ARRAY_EXT,
     GL_INDEX_ARRAY,GL_INDEX_ARRAY_EXT, GL_TEXTURE_COORD_ARRAY,
     GL_TEXTURE_COORD_ARRAY_EXT, GL_EDGE_FLAG_ARRAY or GL_EDGE_FLAG_ARRAY_EXT
     between a call to fglNewList and the corresponding call to fglEndList.
     Instead, enable or disable before the call to fglNewList.


SEE ALSO
     fglArrayElement, fglColorPointer, fglDrawArrays, fglDrawElements,
     fglEdgeFlagPointer, fglEnable, fglGetPointerv, fglInterleavedArrays,
     fglNormalPointer, fglPopClientAttrib, fglPushClientAttrib,
     fglTexCoordPointer, fglVertexPointer