NAME
    cgSetParameterValue - set the value of any numeric parameter

SYNOPSIS
      #include <Cg/cg.h>

      /* TYPE is int, float or double */

      void cgSetParameterValue{ifd}{rc}( CGparameter param, 
                                         int nelements,
                                         const TYPE * v );

PARAMETERS
    param   The program parameter whose value will be set.

    nelements
            The number of elements in array v.

    v       Source buffer from which the parameter values will be read.

RETURN VALUES
    None.

DESCRIPTION
    cgSetParameterValue allows the application to set the value of any
    numeric parameter or parameter array.

    The given parameter must be a scalar, vector, matrix, or a (possibly
    multidimensional) array of scalars, vectors, or matrices.

    There are versions of each function that take int, float or double
    values signified by the i, f or d in the function name.

    There are versions of each function that will cause any matrices
    referenced by param to be initialized in either row-major or
    column-major order, as signified by the r or c in the function name.

    For example, the cgSetParameterValueic manpage sets the given parameter
    using the supplied array of integer data, and initializes matrices in
    column-major order.

    If v is smaller than the total number of values in the given source
    parameter, CG_NOT_ENOUGH_DATA_ERROR is generated.

    The total number of values in a parameter, ntotal, may be computed as
    follow:

                int nrows = cgGetParameterRows(param);
                int ncols = cgGetParameterColumns(param);
                int asize = cgGetArrayTotalSize(param);
                int ntotal = nrows*ncols;
                if (asize > 0) ntotal *= asize;

EXAMPLES
    *to-be-written*

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

    CG_INVALID_PARAMETER_ERROR is generated if param is a varying input to a
    fragment program.

    CG_INVALID_POINTER_ERROR is generated if v is NULL.

    CG_NOT_ENOUGH_DATA_ERROR is generated if nelements is less than the
    total size of param.

    CG_NON_NUMERIC_PARAMETER_ERROR is generated if param is of a non-numeric
    type.

HISTORY
    The cgSetParameterValue functions were introduced in Cg 1.4.

SEE ALSO
    the cgGetParameterRows manpage, the cgGetParameterColumns manpage, the
    cgGetArrayTotalSize manpage, the cgGetParameterValue manpage

