The structure parameter_description has an
element flags that contains information about the status of the
parameter. Also the functions nni_init_parm* allow specifying some
of these flags when initializing a parameter. The individual flags can be
combined with a logical OR in the element flags. The
following flags are defined in the header file natni.h.
This file is contained in the directory <install-dir>\natural\samples\sysexnni.
| Return Code | Meaning |
|---|---|
NNI_FLG_PROTECTED |
Parameter is write protected. |
NNI_FLG_DYNAMIC (*) |
Parameter is dynamic (variable length or x-array). |
NNI_FLG_NOT_CONTIG (*) |
Array is not contiguous. |
NNI_FLG_AIV (*) |
Parameter is an AIV or INDEPENDENT variable. |
NNI_FLG_DYNVAR (*) |
Parameter has variable length. |
NNI_FLG_XARRAY (*) |
Parameter is an x-array. |
NNI_FLG_LBVAR_0 |
Lower bound of dimension 0 is variable. |
NNI_FLG_UBVAR_0 |
Upper bound of dimension 0 is variable. |
NNI_FLG_LBVAR_1 |
Lower bound of dimension 1 is variable. |
NNI_FLG_UBVAR_1 |
Upper bound of dimension 1 is variable. |
NNI_FLG_LBVAR_2 |
Lower bound of dimension 2 is variable. |
NNI_FLG_UBVAR_2 |
Upper bound of dimension 2 is variable. |
Only the flags marked with (*) can be explicitly set in
the functions nni_init_parm*. The other flags are automatically
set by the interface according to the type of the parameter.
If one of the NNI_FLG_*VAR* flags is set, the array is an
x-array. In each dimension of an x-array only the lower bound or the upper
bound, not both, can be variable. Therefore for instance the flag
NNI_FLG_LBVAR_0 may not be combined with
NNI_FLG_UBVAR_0.
If NNI_FLG_DYNAMIC is on, also
NNI_FLG_DYNVAR, NNI_FLG_XARRAY or both are on. If
both are on, the parameter is an x-array with elements of variable length.