Name
cgGetParameterValuefc - get the value of any numeric parameter
Synopsis
#include <Cg/cg.h>
int cgGetParameterValuefc( CGparameter param,
int nelements,
float * v );
Parameters
- param
-
The parameter whose value will be retrieved.
- nelements
-
The number of elements in array v.
- v
-
Destination buffer into which the parameter values will be written.
Return Values
Returns the total number of values written to v.
Description
cgGetParameterValuefc allows the application to get the value(s) from any
numeric parameter or parameter array. The value(s) are returned as floats
in v.
The given parameter must be a scalar, vector, matrix, or a (possibly
multidimensional) array of scalars, vectors, or matrices.
Any matrices referenced by param will be copied in column-major order.
The size of v is passed as nelements.
If v is smaller than the total number of values in the given
source parameter, CG_NOT_ENOUGH_DATA_ERROR is generated.
The total number of values in a parameter, ntotal, may be computed as follow:
int nrows = cgGetParameterRows(param);
int ncols = cgGetParameterColumns(param);
int asize = cgGetArrayTotalSize(param);
int ntotal = nrows*ncols;
if (asize > 0) ntotal *= asize;
Examples
to-be-written
Errors
CG_INVALID_PARAM_HANDLE_ERROR is generated if param is not a valid parameter.
CG_INVALID_POINTER_ERROR is generated if v is NULL.
CG_NOT_ENOUGH_DATA_ERROR is generated if nelements is less than the total
size of param.
CG_NON_NUMERIC_PARAMETER_ERROR is generated if param is of a non-numeric type.
History
cgGetParameterValuefc was introduced in Cg 1.4.
See Also
cgGetParameterDefaultValuefc,
cgGetParameterValue,
cgSetParameterValue,
cgGetParameterRows,
cgGetParameterColumns,
cgGetArrayTotalSize
|