NAME
    cgGetProgramOutput - get the program's output

SYNOPSIS
      #include <Cg/cg.h>

      CGenum cgGetProgramOutput( CGprogram program );

PARAMETERS
    program A program handle.

RETURN VALUES
    Returns a program output enumerant. If the program is a vertex or
    fragment program, it returns CG_VERTEX or CG_FRAGMENT, respectively. For
    geometry programs the output is one of: CG_POINT_OUT, CG_LINE_OUT, or
    CG_TRIANGLE_OUT.

    Returns CG_UNKNOWN if the output is unknown.

DESCRIPTION
    cgGetProgramOutput returns the program output enumerant.

    For geometry programs, an input must be specified but not an output
    because of implicit output defaults. For example, if either "TRIANGLE"
    or "TRIANGLE_ADJ" is specified as an input without an explicit output in
    the shader source, then cgGetProgramOutput will return CG_TRIANGLE_OUT.

EXAMPLES
      void printProgramOutput(CGprogram program)
      {
        char * output = NULL;
        switch(cgGetProgramOutput(program))
        {
          case CG_POINT_OUT:
              output = "point";
              break;
          case CG_LINE_OUT:
              output = "line";
              break;
          case CG_TRIANGLE_OUT:
              output = "triangle";
              break;
          default:
              output = "unknown";
              break;
        }
        printf("Program outputs %s.\n", output);
      }

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

HISTORY
    cgGetProgramOutput was introduced in Cg 2.0.

SEE ALSO
    cgGetProgramInput

