> ## Name

> cgSetProgramProfile - set a program's profile

> ## Synopsis

>     #include <Cg/cg.h>

>     void cgSetProgramProfile( CGprogram program,
>                               CGprofile profile );

> ## Parameters

> program
>   The program.
> profile
>   The profile to be used when compiling the program.

> ## Return Values

> None.

> ## Description

> cgSetProgramProfile allows the application to specify the profile to be used when compiling the given program. When called, the program will be unloaded if it is currently loaded, and marked as uncompiled. When the program is next compiled (see cgSetAutoCompile), the given profile will be used. cgSetProgramProfile can be used to override the profile specified in a CgFX compile statement, or to change the profile associated with a program created by a call to cgCreateProgram.

> ## Examples

> to-be-written

> ## Errors

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

> CG_INVALID_PROFILE_ERROR is generated if profile is not a valid profile enumerant.

> ## History

> cgSetProgramProfile was introduced in Cg 1.4.

> ## See Also

> cgGetProgramProfile, cgGetProfile, cgGetProfileString, cgCreateProgram, cgSetAutoCompile