dio_scaled_to_primary_data_c

	status.i4.v = dio_scaled_to_primary_data_c(device_indices.i4a.r,
						   properties.i2a.r,
						   input_values.g.v,
						   output_values.g.v,
						   errors.i2a.r,
						   num_devices.i4.v,
						   units_text.i1a.r,
						   convert_type.i4.v,
						   num_values.i4a.r)

	Ths routine converts scaled reading or setting values to their
	corresponding primary values.

	device_indices	device index or array of device indices
			(If the first value is less than zero, all entries
			 will use a device index which is equal to the
			 absolute value of this argument.  This must be
			 accompanied by a negative property value as
			 described below.)
	properties	property index or array of property indices
			(PRREAD -> reading property,
			 PRSET -> setting property)
			(If the first value is less than zero, all devices
			 use a property index which is equal to the absolute
			 value of this argument.)
	input_values	input reading or setting data
	output_values	returned scaled floating point value or array of values
	errors		returned ACNET status value or array of returned
			status values
	num_devices	number of devices in list
	units_text	returned units text (A value of NULL can be passed
			for this argument if units text is not desired.)
			(LEN_DEV_UNITS characters per device)
	convert_type	type of scaling conversion desired
			(DIO_PRIMARY -> return primary units as single
					precision floats, input must be single
					precision common scaled values,
			 DIO_PRIMARY_DOUBLE -> return primary units as double
					       precision floats, input must be
					       double precision common scaled
					       values)
	num_values	number of values to convert or array of number of values
			per device for support of array devices  (If the first
			value is less than zero, all devices will use a number
			of values which is equal to the absolute value of this
			argument.) (Passing a value of NULL for this argument
			will result in a value of 1 being used for all devices.)

	This function returns status values as follows:

	OK			success
	DIO_BADARG		invalid property index or conversion type passed
	DIO_MEMFAIL		memory allocation failure
	negative value		other ACNET format error
	positive value		number of devices in error

	This function requires the following include files:

	dbprops_h, diolib_h, acnet_errors_h

	Related functions:

	dio_primary_to_scaled_data_c, dio_primary_to_scaled_custom_c,
	dio_raw_to_scaled_data(_c), dio_scaled_to_raw_data(_c),
	dio_scaled_to_raw_custom_c, dio_get_dev(_c), dio_bld_get(_c),
	dio_get_lst, dio_get_raw(_c), dio_bld_get_raw(_c),
	dio_get_lst_raw(_c), dio_get_pdb, dio_raw_to_status_c,
	dio_raw_to_status_extended_c, dio_raw_to_status_text,
	dio_raw_to_status_text_extended_c, dio_raw_to_scaled_custom_c,
	error_in_list(_c)

	C/C++ usage:

	char	units_text[NUM_DEVICES][LEN_DEV_UNITS];
	short	errors[NUM_DEVICES];
	short	properties = -PRSET;
	int	status;
	static const int	device_indices[NUM_DEVICES] = {14430, 14431};
	int	num_devices = NUM_DEVICES;
	int	convert_type = DIO_PRIMARY;
	int	*num_values = (int *) NULL;
	float	input_values[NUM_DEVICES];
	float	output_values[NUM_DEVICES];

	status = dio_scaled_to_primary_data_c(device_indices,&properties,
					      (void *) input_values,
					      (void *) output_values,
					      errors,num_devices,
					      (char *) units_text,
					      convert_type,num_values);