> # NAME

> cgCreateProgramFromFile - create a program object from a file

> # SYNOPSIS

>       #include <Cg/cg.h>

>       CGprogram cgCreateProgramFromFile( CGcontext context,
>                                          CGenum program_type,
>                                          const char * program_file,
>                                          CGprofile profile,
>                                          const char * entry,
>                                          const char ** args );

> # PARAMETERS

> context

>   The context to which the new program will be added.

> program_type

>   An enumerant describing the contents of the program_file. The following enumerants are allowed:

>   CG_SOURCE

>     program_file contains Cg source code.

>   CG_OBJECT

>     program_file contains object code that resulted from the precompilation of some Cg source code.

> program_file

>   Name of a file containing source or object code. See program_type for more information.

> profile

>   The profile enumerant for the program.

> entry

>   The entry point to the program in the Cg source. If NULL, the entry point defaults to "main".

> args

>   If args is not NULL it is assumed to be an array of NULL-terminated strings that will be passed directly to the compiler as arguments. The last value of the array must be a NULL.

> # RETURN VALUES

> Returns a CGprogram handle on success.

> Returns NULL if an error occurs.

> # DESCRIPTION

> cgCreateProgramFromFile generates a new CGprogram object and adds it to the specified Cg context.

> # EXAMPLES

>       CGcontext context = cgCreateContext();
>       CGprogram program = cgCreateProgramFromFile(context,
>                                                   CG_SOURCE,
>                                                   mysourcefilename,
>                                                   CG_PROFILE_ARBVP1,
>                                                   "myshader",
>                                                   NULL);

> # ERRORS

> CG_INVALID_CONTEXT_HANDLE_ERROR is generated if context is not a valid context.

> CG_INVALID_ENUMERANT_ERROR is generated if program_type is not CG_SOURCE or CG_OBJECT.

> CG_UNKNOWN_PROFILE_ERROR is generated if profile is not a supported profile.

> CG_COMPILER_ERROR is generated if compilation fails.

> # HISTORY

> cgCreateProgramFromFile was introduced in Cg 1.1.

> # SEE ALSO

> cgCreateContext, cgCreateProgram, cgCreateProgramFromEffect, cgGetProgramString