acl_read_symbol_c

	status.i4.v = acl_read_symbol_c(symbol_name.i1a.r, value.g.v,
					value_type.i4.r, value_length.i4.r,
					desired_type.i4.v, max_length.i4.v
					[,options.u4.v] [,array_index.i4.v]
					[,num_indices.i4.v]
					[,array_indices.i4.r])

	This routine reads the value of a symbol created by an Accelerator
	Command Language (ACL) command.  These symbol values still
	exist after the ACL file has finished executing to determine
	reading or status values resulting from the execution.

	symbol_name	null terminated symbol name
			(The name can contain array notation ([n]) to specify
			 array indices.)
	value		returned value (type of data returned depends
			upon "desired_type")
	value_type	returned type of the stored value
			(ACL_BYTE_VALUE -> byte integer value,
			 ACL_UNSIGNED_BYTE_VALUE -> unsigned byte integer value,
			 ACL_SHORT_INT_VALUE -> short integer value,
			 ACL_UNSIGNED_SHORT_VALUE -> unsigned short integer
						     value,
			 ACL_INTEGER_VALUE -> long integer value,
			 ACL_UNSIGNED_INT_VALUE -> unsigned long integer value,
			 ACL_FLOAT_VALUE -> single precision floating
					    point value,
			 ACL_DOUBLE_VALUE -> double precision floating
					     point value,
			 ACL_STRING_VALUE -> null terminated string value,
			 ACL_LOGICAL_VALUE -> logical value (integer value),
			 ACL_DATE_VALUE -> date value in clinks
					   (unsigned integer value),
			 ACL_ERROR_VALUE -> ACNET error value (integer value),
			 ACL_SYSTEM_ERROR_VALUE -> system error value
						   (integer value),
			 ACL_RTL_ERROR_VALUE -> RTL error value (integer value),
			 ACL_NODE_VALUE -> ACNET node value (integer value),
			 ACL_EVENT_VALUE -> clock event value (integer value),
			 ACL_DEVICE_INDEX_VALUE -> device index value
						   (integer value))
	value_length	returned length of the stored value
	desired_type	desired data type for returned value
			(ACL_DEFAULT_TYPE -> return data in the same form
					     as it is stored in the symbol,
			 ACL_BYTE_VALUE -> byte integer value,
			 ACL_UNSIGNED_BYTE_VALUE -> unsigned byte integer value,
			 ACL_SHORT_INT_VALUE -> short integer value,
			 ACL_UNSIGNED_SHORT_VALUE -> unsigned short integer
						     value,
			 ACL_INTEGER_VALUE -> return long integer value,
			 ACL_UNSIGNED_INT_VALUE -> unsigned long integer value,
			 ACL_FLOAT_VALUE -> single precision floating
					    point value,
			 ACL_DOUBLE_VALUE -> double precision floating
					     point value,
			 ACL_STRING_VALUE -> null terminated string value,
			 ACL_LOGICAL_VALUE -> logical value (integer value),
			 ACL_DATE_VALUE -> date value in clinks
					   (unsigned integer value),
			 ACL_ERROR_VALUE -> ACNET error value (integer value),
			 ACL_SYSTEM_ERROR_VALUE -> system error value
						   (integer value),
			 ACL_RTL_ERROR_VALUE -> RTL error value (integer value),
			 ACL_NODE_VALUE -> ACNET node value (integer value),
			 ACL_EVENT_VALUE -> clock event value (integer value),
			 ACL_DEVICE_INDEX_VALUE -> device index value,
						   (integer value))
	max_length	maximum number of bytes to return for the value
			(only used for ACL_STRING_VALUE)
	[options]	read symbol name options
			(ACL_OPT_NONE -> no options selected (default),
			 ACL_OPT_READ_VARIABLE -> return variable names  (This
						  should only be used during
						  an execution callback.))
	[array_index]	array index (default is 0)
	[num_indices]	number of array indices in 'array_indices'
			for multidimensional arrays
			(default is 0)
	[array_indices]	array of array indices for multidimensional arrays
			(default is NULL)

	This function returns ACNET status values as follows:

	OK			success
	CLIB_NO_SUCH		symbol doesn't exist
	CLIB_DELETED		symbol has been deleted
	CLIB_NOINIT		symbol has not been set
	otherwise		other ACNET format error code

	This function requires the following include files:

	ul_acl_h:acl_h, acnet_errors_h

	Related functions:

	intro_acl, acl_read_symbol_as_string_c, acl_read_symbol_info_c,
	acl_read_symbol_dynamic_info_c, acl_set_symbol_c,
	acl_parse_symbol_name, acl_execute_c, acl_file_execute_c,
	acl_file_read_c, acl_file_write_c, acl_file_exists_c,
	acl_db_file_exists_c, acl_compile_c, acl_free_c, acl_free_arg_info_c,
	acl_read_symbol_names, acl_read_intrinsic_symbol_names,
	acl_script_argument_info_c, acl_script_has_symbol_list_c,
	acl_script_has_setting_c, acl_delete_symbol, acl_reinit_symbol,
	acl_info_c, acl_cancel_requests_c, acl_default_data_source_c,
	acl_log_file_c, acl_default_script_path_c, acl_script_is_executing,
	acl_register_host_request_func, acl_unregister_host_request_func,
	acl_translate_command_string, acl_file_read_description_c,
	acl_file_read_author_c, acl_file_read_title_c, acl_search_db_files_c,
	acl_file_is_in_repository_c, acl_parse_script_argument_string_c,
	acl_expand_file_name_c, acl_get_user_execution_privilege,
	acl_get_user_db_edit_permission

	C/C++ usage:

	static const char	symbol_name[] = "my_symbol";
	int	status;
	int	value_type;
	int	value_length;
	int	desired_type = ACL_FLOAT_VALUE;
	int	max_length = sizeof(float);
	int	array_index = 0;
	int	num_indices = 0;
	int	*array_indices = (int *) NULL;
	unsigned int	options = ACL_OPT_NONE;
	float	value;

	status = acl_read_symbol_c(symbol_name,(void *) &value,&value_type,
				   &value_length,desired_type,max_length,
				   options,array_index,num_indices,
				   array_indices);