# RSL_select_fields

### Synopsis

#include "rsl.h"
void RSL_select_fields(char *field_type, [char *field_type...], NULL);

### Description

Call this routine prior to any ingest routine and only the field types specified will be ingested. The drastically reduces memory requirements, especially if you're only interesed in one field type. Lassen, for instance, can have more than 5 field types which collectively can occupy an enormous amount of memory. By default, all field types are ingested. field_type is not case sensitive. Specify NULL as the last argument. This signals this routine when to stop parsing the field types.

The list of possible field types is: "all", "none", "dz", "vr" "cz", "zt", "dr", "lr", "zd", "dm", "rh", "ph", "xz", "cd", "mz", "md", "ze", "ve", "kd", "ti".

Action or side-effects: A second call to this function over-rides any previous settings. In other words, multiple calls are not additive. So, to get both DZ and VR volumes, use:
RSL_select_fields("dz", "vr", NULL); -- Read both DZ and VR.
and not:
RSL_select_fields("dz", NULL); -- Read only DZ.
RSL_select_fields("vr", NULL); -- Read only VR, no DZ.

### Return value

Upon successful completion, RSL_select_fields silently sets a hidden array that RSL_anyformat_to_radar accesses for memory allocation.

### See also

RSL_anyformat_to_radar.

Author: John H. Merritt.