Viewing contents of file '../idllib/astron/contrib/varosi/code/allpro/dev_setup_save.pro'
;+
; NAME:
;	dev_setup_save
;
; PURPOSE:
;	Save the positions and all info contained in structure variable
;	for a particular GPIB device, or devices, to a file.
;	Filename always of form: "dev_setup." + dev_name.* , so that
;	the last field identifies different setups for each device.
;
; CALLING:
;	dev_setup_save, dev_nums
;
; INPUT:
;	dev_nums = integer, or array, the indices of device(s) in
;			common gpib, devices array of structures.
; KEYWORDS:
;	NAME = optional string or string array of device names,
;		used if dev_nums is not given.
; EFFECTS:
;	The device structure variables are saved to a file.
;
; EXTERNAL CALLS
;	function N_struct
;	function get_dev_num
; COMMON BLOCKS:
;	common gpib, devices	;structured array of device names, handles, etc.
; HISTORY:
;	Written, Frank Varosi NASA/GSFC 1993.
;-

pro dev_setup_save, dev_nums, NAME=dev_names

   common gpib, devices

	if N_struct( devices ) LE 0 then begin
		message,"no devices, must call Find_Devices first",/INFO
		return
	   endif

	if N_elements( dev_nums ) LE 0 then begin
		dev_nums = get_dev_num( dev_names )
		w = where( dev_nums GE 0, ndev )
		if (ndev LE 0) then  return  else  dev_nums = dev_nums(w)
	   endif

	device = devices(dev_nums)
	setname = get_text_input( "name for " + device(0).name + " setup ?" )

	if strlen( setname ) LE 0 then begin
		print,"nothing saved"
		return
	   endif

	file = "dev_setup." + device(0).name + "." + setname
	print," saving device positions to file:  ",file
	save, device, FILE=file
END