NAME
    cgDestroyParameter - destroys a parameter

SYNOPSIS
      #include <Cg/cg.h>

      CGparameter cgDestroyParameter(CGparameter param);

PARAMETERS
    param   The parameter to destroy.

DESCRIPTION
    cgDestroyParameter destroys parameters created with cgCreateParameter,
    cgCreateParameterArray, or cgCreateParameterMultiDimArray.

    Upon destruction, the CGparameter will become invalid. Any connections
    (see the cgConnectParameter manpage) in which param is the destination
    parameter will be disconnected. An error will be thrown if param is a
    source parameter in any connections.

    The parameter being destroyed may not be one of the children parameters
    of a struct or array parameter. In other words it must be a CGparameter
    returned by one of the cgCreateParameter family of entry points.

RETURN VALUES
    This function does not return a value.

EXAMPLES
      CGcontext Context = cgCreateContext();
      CGparameter MyFloatParam = cgCreateParameter(Context, CG_FLOAT);
      CGparameter MyFloatParamArray = cgCreateParameterArray(Context, CG_FLOAT, 5);

      // ...

      cgDestroyParameter(MyFloatParam);
      cgDestroyParameter(MyFloatParamArray);

ERRORS
    CG_INVALID_PARAM_HANDLE_ERROR is generated if param is invalid.

    CG_NOT_ROOT_PARAMETER_ERROR is generated if the param isn't the
    top-level parameter of a struct or array that was created.

    CG_PARAMETER_IS_NOT_SHARED_ERROR is generated if param does not refer to
    a parameter created by one of the cgCreateParameter family of entry
    points.

    CG_CANNOT_DESTROY_PARAMETER_ERROR is generated if param is a source
    parameter in a connection made by cgConnectParameter.
    cgDisconnectParameter should be used before calling cgDestroyParameter
    in such a case.

SEE ALSO
    the cgCreateParameter manpage, the cgCreateParameterMultiDimArray
    manpage, and the cgCreateParameterArray manpage

