> # NAME

> cgGetFirstParameter - get the first parameter in a program

> # SYNOPSIS

>       #include <Cg/cg.h>

>       CGparameter cgGetFirstParameter( CGprogram program,
>                                        CGenum name_space );

> # PARAMETERS

> program

>   The program from which to retrieve the first parameter.

> name_space

>   Specifies the parameter namespace through which to iterate. Currently CG_PROGRAM and CG_GLOBAL are supported.

> # RETURN VALUES

> Returns the first CGparameter object in program.

> Returns zero if program is invalid or if program does not have any parameters.

> Also returns zero if program is a combined program. To access the parameters of a combined program, use cgGetProgramDomainProgram to get each domain program and then call cgGetFirstParameter on each domain program.

> # DESCRIPTION

> cgGetFirstParameter returns the first top-level parameter in a program. cgGetFirstParameter is used for recursing through all parameters in a program. See cgGetNextParameter for more information on parameter traversal.

> # EXAMPLES

>       CGparameter param = cgGetFirstParameter( program, CG_GLOBAL );
>       while ( param )
>       {
>         /* Do stuff with leaf */
>         param = cgGetNextParameter( param );
>       }

> # ERRORS

> CG_INVALID_PROGRAM_HANDLE_ERROR is generated if program is not a valid program handle.

> CG_INVALID_ENUMERANT_ERROR is generated if name_space is not CG_PROGRAM or CG_GLOBAL.

> # HISTORY

> cgGetFirstParameter was introduced in Cg 1.1.

> # SEE ALSO

> cgGetNextParameter, cgGetProgramDomainProgram, cgGetFirstDependentParameter, cgGetFirstEffectParameter, cgGetFirstParameterAnnotation