Viewing contents of file '../idllib/ghrs/pro/chooser.pro'
;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
;+
;
;*NAME: CHOOSER
;
;*CLASS:
;
;*CATEGORY:
;
;*PURPOSE: Prompts for record number of star of interest from given database.
;
;*CALLING SEQUENCE:
; CHOOSER, rec, dbase
;
;*PARAMETERS:
; INPUT:
; rec - (REQ) - (0) - (I,L) - Record number in given database.
; dbase - (REQ) - (0) - (S) - Name of database to be searched.
;
;*INTERACTIVE INPUT:
; rec - (REQ) - (0) - (I,L) - Spectrum entry number.
;*SUBROUTINES CALLED:
; NONE
;*FILES USED:
; ZAUX:calobs.prt
; ZAUX:gtocat.prt
; ZAUX:svlocat.prt
; ZAUX:svhicat.prt
;
;*EXAMPLES:
;
;*NOTES:
; This procedure is designed to work with TARATES.PRO.
;
;*MODIFICATION HISTORY:
; Ver 1.0 - 12/05/90 - B. Altner - GSFC
; Ver 2.0 - 12/16/90 - J. Blackwel - GSFC - Modified to conform with
; GHRS DAF standards.
; Mar 11 1991 JKF/ACC - moved to GHRS DAF (IDL Version 2)
;-
;-------------------------------------------------------------------------------
pro chooser,rec,dbase
if n_params(0) eq 0 then begin
print,' Calling Sequence: CHOOSER, rec, dbase'
retall
end else begin
zparcheck,'CHOOSER',rec,1,[2,3],0,"rec invalid"
zparcheck,'CHOOSER',dbase,2,7,0,"dbase invalid"
end
dbase=strupcase(dbase)
;
case dbase of
'CALOBS': begin
l1=' ST standard star flux tables (15 FEB 90)
l2='-------------------------------------------------------------------------------
l3='ENTRY TARGETID OBSMODE UNITS WMIN WMAX SOURCE
file='zaux:calobs.prt'
end
'GTOCAT': begin
L1=' DATA FROM WALTER & WOOD GTO CATALOG
L2='------------------------------------------------------------------------------
L3=' ENTRY CAM SP STAR COMMENTS
file='zaux:gtocat.prt'
end
'SVLOCAT': begin
L1=' DATA FROM WALTER & WOOD SV_LO CATALOG
L2='------------------------------------------------------------------------------
L3=' ENTRY CAM SP STAR COMMENTS
file='zaux:svlocat.prt'
end
'SVHICAT': begin
L1=' DATA FROM WALTER & WOOD SV_HI CATALOG
L2='------------------------------------------------------------------------------
L3=' ENTRY CAM SP STAR COMMENTS
file='zaux:svhicat.prt'
end
endcase
;
get_lun,lunr
openr,lunr,file
a=''
on_ioerror, skip1
if rec lt 0 then begin
if rec lt -11 then for j=1,abs(rec)-10 do readf,lunr,a ;skip this many records
rec=0
end
while rec eq 0 do begin
on_ioerror, skip2
print,l1
print,l2
print,l3
print,l2
for j=1,19 do begin & readf,lunr,a & print,a & end
skip2:read,'Choose entry number of your spectrum. '$
+'Enter 0 to continue, -1 to abort:',rec
if rec eq -1 then begin ;normal abort
free_lun,lunr
retall
end
if rec lt -1 then begin ;error condition
print,'No such record. Action: RETALL!'
free_lun,lunr
retall
end
if ( eof(lunr) and (rec eq 0) ) then begin ;record not found
print,'No record chosen. Action: RETALL!
free_lun,lunr
retall
end
endwhile
free_lun,lunr
return
;
skip1:
print,'Not that many records in the '+dbase+' database. Action: RETALL!'
free_lun,lunr
retall
end