When a keyword is specified to be a read-only array (i.e., the IDL_KW_ARRAY flag is set), the value field of the IDL_KW_PAR struct should be set to point to an IDL_KW_ARR_DESC_R structure.
This structure is defined as:
typedef struct {
char *data
IDL_MEMINT nmin IDL_MEMINT nmax
IDL_MEMINT* n_offset
} IDL_KW_ARR_DESC_R
where:
data
The offset of the field within the user supplied KW_RESULT structure, of the C array to receive the data. This offset is computed using the IDL_KW_OFFSETOF() macro. This array must be of the C type specified by the type field of the IDL_KW_PAR struct. For example, IDL_TYP_LONG maps into a C IDL_LONG. There must be nmax elements in the array.
nmin
The minimum number of elements allowed.
nmax
The maximum number of elements allowed.
n_offset
The offset of the field within the user defined KW_RESULT structure into which IDL_KWProcessByOffset() will store the number of elements actually stored into the array field. This offset is computed using the IDL_KW_OFFSETOF() macro.