> # NAME

> cgGetParameterVariability - get a parameter's variability

> # SYNOPSIS

>       #include <Cg/cg.h>

>       CGenum cgGetParameterVariability( CGparameter param );

> # PARAMETERS

> param

>   The program parameter.

> # RETURN VALUES

> Returns the variability of param.

> Returns CG_ERROR if an error occurs.

> # DESCRIPTION

> cgGetParameterVariability allows the application to retrieve the variability of a parameter in a Cg program. This variability is necessary for the application to be able to supply the program's inputs and use the program's outputs.

> cgGetParameterVariability will return one of the following variabilities:

> CG_VARYING

>   A varying parameter is one whose value changes with each invocation of the program.

> CG_UNIFORM

>   A uniform parameter is one whose value does not change with each invocation of a program, but whose value can change between groups of program invocations.

> CG_LITERAL

>   A literal parameter is folded out at compile time. Making a uniform parameter literal with cgSetParameterVariability will often make a program more efficient at the expense of requiring a compile every time the value is set.

> CG_CONSTANT

>   A constant parameter is never changed by the user. It's generated by the compiler by certain profiles that require immediate values to be placed in certain resource locations.

> CG_MIXED

>   A structure parameter that contains parameters that differ in variability.

> # EXAMPLES

> to-be-written

> # ERRORS

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

> # HISTORY

> cgGetParameterVariability was introduced in Cg 1.1.

> # SEE ALSO

> cgGetNamedParameter, cgGetNextParameter, cgGetParameterName, cgGetParameterType, cgGetParameterDirection, cgGetParameterBinding, cgGetParameterDirectionalBinding, cgIsArray, cgSetParameterVariability