> # NAME

> cgD3D9GetOptimalOptions - get the best set of compiler options for a profile

> # SYNOPSIS

>       #include <Cg/cgD3D9.h>

>       char const ** cgD3D9GetOptimalOptions( CGprofile profile );

> # PARAMETERS

> profile

>   The profile whose optimal arguments are requested.

> # RETURN VALUES

> Returns a null-terminated array of strings representing the optimal set of compiler options for profile.

> Returns NULL if no D3D device is currently set.

> # DESCRIPTION

> cgD3D9GetOptimalOptions returns the best set of compiler options for a given profile. This is an expanded interface function because it needs to know about the D3D device to determine the most optimal options.

> The elements of the returned array are meant to be used as part of the args parameter to cgCreateProgram or cgCreateProgramFromFile.

> The returned string does not need to be destroyed by the application. However, the contents could change if the function is called again for the same profile but a different D3D device.

> # EXAMPLES

>       const char* vertOptions[]  = { myCustomArgs,
>                                      cgD3D9GetOptimalOptions(vertProfile),
>                                      NULL };

>       // create the vertex shader
>       CGprogram myVS = cgCreateProgramFromFile( context,
>                                                 CG_SOURCE,
>                                                 "vshader.cg",
>                                                 vertProfile,
>                                                 "VertexShader",
>                                                 vertOptions);

> # ERRORS

> None.

> # HISTORY

> cgD3D9GetOptimalOptions was introduced in Cg 1.1.

> # SEE ALSO

> cgD3D9GetLatestVertexProfile, cgD3D9GetLatestPixelProfile, cgCreateProgram, cgCreateProgramFromFile