dio_get_directed_list

	status.i4.v = dio_get_directed_list(list_id.i4.r, values.r4pa.r,
					    errors.i2a.r, units.i1a.r,
					    same_time.i4.r,
					    values_per_dev.i4a.r)

	This routine returns values (engineering units) for a list of devices
	previously setup with a call to dio_bld_get(_c).  Array device
	retrieval is possible.  To do so, you must have an array large enough
	to accept the returned values.  This routine differs from dio_get_lst
	in that the output is directed by an array of pointers to data buffers
	with one pointer per device in the list.  Do not use this routine for
	table devices (ramp cards, etc).  Use the routine td_read instead.
	The routine, dio_tuner(_c), can be used to adjust reading timeout
	values if necessary.

	list_id		list ID returned from a prior call to dio_bld_get(_c)
			(Note:  This value will be set to zero if the
			 list is deleted.)
	values		returned values  (This is an array of pointers to
			the floating point data buffers in which to place
			the returned data.  There is one pointer/data buffer
			per device.)
	errors		array of returned ACNET status values
			(one for each device in the list)
	units		returned units text
			(LEN_DEV_UNITS characters per device)
			(Pass a value of NULL for this argument if the
			 units text is not needed.)
	same_time	returned data information flag
			(TRUE -> all data came from the same front end
				 and at the same time (same DPM seqeunce
				 number),
			 FALSE -> data was taken at different times or
				  from different front ends)
			(Pass a value of NULL for this argument if this
			 value is not needed.)
	values_per_dev	returned number of values per device
			(A value of NULL can be passed for this argument if
			 this information is not needed.)
			(Pass a value of NULL for this argument if this
			 information is not needed.)

	This function returns status values as follows:

	OK			success
	DIO_MEMFAIL		memory allocation failure
	DIO_NOLIST		requested list does not exist
	DIO_INVLEN		invalid device length
	DIO_INVPROP		list contains properties which are not
				reading or setting
	DIO_NOSCALE		no scaling information available
	negative value		ACNET format error indicating overall failure
	positive value		number of devices in error indicating partial
				success

	This function requires the following include files:

	cnsparam_h, diolib_h, acnet_errors_h

	Related functions:

	dio_get_lst, dio_get_device_list_c, dio_bld_get(_c),
	dio_build_get_array_list_c, dio_can_get_lst,
	dio_get_directed_list_raw_c, dio_get_dev(_c),
	td_read, dio_get_lst_raw(_c), dio_get_array_device_c,
	dio_get_array_device_double_c, dio_get_dev(_c), dio_get_raw(_c),
	dio_set_lst, dio_set_device_list_c, dio_tuner(_c),
	dio_read_list_length_c, dio_read_list_single_entry_info_c,
	dio_extract_read_list_status_c, error_in_list(_c)

	C/C++ usage:

	char	units[NUM_DEVICES][LEN_DEV_UNITS];
	short	errors[NUM_DEVICES];
	int	status;
	int	list_id;
	int	same_time;
	int	values_per_dev[NUM_DEVICES];
	float	value_1;
	float	value_2;
	float	*values[NUM_DEVICES];

	values[0] = &value_1;
	values[1] = &value_2;

	status = dio_get_directed_list(&list_id,values,errors,(char *) units,
				       &same_time,values_per_dev);