| 
Use these routines...
 | 
To access these subobjects...
 | 
  
    | 
 
 | 
group Node_Data { /* data at nodes */
 | 
  
    | 
int FLDget_nnodes (OMobj_id field,
 int *nnodes);
 int FLDset_nnodes (
 OMobj_id field,
 int nnodes);
 | 
int nnodes; /* number of nodes */
 | 
  
    | 
int FLDget_node_data_ncomp (
 OMobj_id field,
 int *nnode_comp);
 int FLDset_node_data_
 ncomp (
 OMobj_id field,
 int nnode_comp);
 | 
int nnode_data; /* number of data components */
 | 
  
    | 
int FLDset_node_data_comp (
 OMobj_id field,
 int comp, int veclen,
 char *label,
 char *units);
 | 
Data_Array node_data[nnode_data] { /* data component_______descriptions*/
 | 
  
    | 
(Use FLDget_nnodes)
 | 
int nvals => nnodes;
 | 
  
  
    | 
Use these routines...
 | 
To access these subobjects...
 | 
  
    | 
 
 | 
group Data_Array { /* general representation of data array */
 | 
  
    | 
(Use FLDget_nnodes)
 | 
int nvals; /*number of objects */
 | 
  
    | 
int FLDget_node_data_veclen (
 OMobj_id field,
 int comp,
 int *veclen);
 int FLDset_node_data_
 veclen (
 OMobj_id field,
 int comp,
 int veclen);
 | 
int veclen; /* vector length of each object */
 | 
  
    | 
int FLDget_node_data_id (OMobj_id field,
 int comp,
 int *id);
 int FLDset_node_data_id (
 OMobj_id field,
 int comp,
 int id);
 | 
int id; /* normals, pressure, coordinates, color, etc.*/
 | 
  
    | 
int FLDget_node_data_type (OMobj_id field,
 int comp,
 int *type);
 int FLDget_node_data (
 OMobj_id field,
 int comp,
 int *type,
 char **node_data,
 int *size, int mode);
 int FLDset_node_data (
 OMobj_id field,
 int comp,
 float *node_data,
 int type,
 int size, int mode);
 int FLDget_sub_node_data (
 OMobj_id field,
 int comp, int *type,
 int ndim, int *dims,
 int *min_rng,
 int *max_rng,
 char *node_data);
 | 
prim values[nvals][veclen]; /* the actual data array */
 | 
  
    | 
int FLDset_node_null_flag (OMobj_id field,
 int comp,
 int null_flag);
 | 
int+opt null_flag = 0; /* indicates presence of NULL data */
 | 
  
    | 
int FLDget_node_null_data (OMobj_id field,
 int comp,
 int *null_flag,
 char *null_value);
 int FLDset_node_null_data (
 OMobj_id field,
 int comp,
 char *null_value,
 int type);
 | 
prim+opt null_value; /* value assumed to be NULL data */
 | 
  
    | 
int FLDget_node_data_minmax (
 OMobj_id field,
 int comp,
 char *min,
 char *max);
 int FLDset_node_data_
 minmax (
 OMobj_id field,
 int comp,
 char *min,
 char *max,
 int dtype);
 int FLDcopy_node_minmax (
 OMobj_id in_field,
 OMobj_id out_field,
 int in_comp,
 int out_comp);
 int FLDreset_node_minmax (
 OMobj_id in_field,
 int comp);
 | 
prim min => cache(min_array(magnitude(values), null_flag,null_value));
 /* min value of the data in each array */
 prim max => cache(max_array(magnitude(values), null_flag,
 null_value));
 /* max value of the data in each array */
 | 
  
    | 
int FLDget_node_data_minmax_vec (
 OMobj_id field,
 int comp,
 char **min,
 char **max,
 int *type, int mode);
 int FLDcopy_node_minmax_
 vec (
 OMobj_id in_field,
 OMobj_id out_field
 int in_comp,
 int out_comp);
 
 | 
prim min_vec[veclen] => cache(min_array(values, null_flag,null_value));
 /* min extent of the data in each array */
 prim max_vec[veclen] => cache(max_array(values, null_flag,
 null_value));
 /* max extent of the data in each array */
 | 
  
    | 
int FLDget_node_data_label (
 OMobj_id field,
 int comp,
 char *label,
 int size);
 (Use FLDset_node_
 data_comp to set)
 
 | 
string+nonotify labels; /* ascii strings for the labels */
 | 
  
    | 
int FLDget_node_data_units (
 OMobj_id field,
 int comp,
 char *label,
 int size);
 int FLDget_coord_units (
 OMobj_id field,
 char *units,
 int size);
 int FLDset_coord_units (
 OMobj_id field,
 char *units);
 To set Use
 FLDset_node_data_comp
 | 
string+nonotify units; /* ascii strings for the labels */
 |