NAME
    cgGLSetStateMatrixParameter - sets the value of a matrix parameter to a
    matrix in the OpenGL state

SYNOPSIS
      #include <Cg/cgGL.h>

      void cgGLSetStateMatrixParameter(CGparameter param, 
                                       CGGLenum matrix,
                                       CGGLenum transform);

PARAMETERS
    param   Specifies the parameter that will be set.

    matrix  An enumerant indicating which matrix should be retrieved from
            the OpenGL state. It may be any one of :

            CG_GL_MODELVIEW_MATRIX
                The current modelview matrix.

            CG_GL_PROJECTION_MATRIX
                The current projection matrix.

            CG_GL_TEXTURE_MATRIX
                The current texture matrix.

            CG_GL_MODELVIEW_PROJECTION_MATRIX
                The concatenated modelview and projection matrices.

    transform
            An optional transformation that may be applied to the OpenGL
            state matrix before it is set. The enumerants may be any one of
            :

            CG_GL_MATRIX_IDENTITY
                Doesn't apply any transform leaving the matrix as is.

            CG_GL_MATRIX_TRANSPOSE
                Transposes the matrix.

            CG_GL_MATRIX_INVERSE
                Inverts the matrix.

            CG_GL_MATRIX_INVERSE_TRANSPOSE
                Transforms and inverts the matrix.

DESCRIPTION
            cgGLSetStateMatrixParameter retrieves matrices from the OpenGL
            state and sets a matrix parameter to the matrix. The matrix may
            optionally be transformed before it is set via the transform
            parameter.

            cgGLSetStateMatrixParameter may only be called with any uniform
            matrix parameter. If the size of the matrix is less than 4x4,
            the upper left corner of the matrix that fits into the given
            matrix parameter will be returned.

RETURN VALUES
            cgGLSetStateMatrixParameter does not return any values.

ERRORS
            CG_INVALID_PROFILE_ERROR is generated if param's profile is not
            a supported OpenGL profile.

            CG_NOT_MATRIX_PARAM_ERROR is generated if param is not a matrix
            parameter.

            CG_INVALID_ENUMERANT_ERROR is generated if any of the enumerant
            parameters to cgGLSetStateMatrixParameter are invalid.

            CG_INVALID_PARAM_HANDLE_ERROR is generated if param is not a
            valid parameter handle.

            CG_INVALID_PARAMETER_ERROR is generated if the parameter fails
            to set for any other reason.

SEE ALSO
            the cgGLSetMatrixParameter manpage, and the
            cgGLGetMatrixParameter manpage

