aboutsummaryrefslogtreecommitdiff
path: root/noao/imred/ccdred/setinstrument.cl
diff options
context:
space:
mode:
Diffstat (limited to 'noao/imred/ccdred/setinstrument.cl')
-rw-r--r--noao/imred/ccdred/setinstrument.cl57
1 files changed, 57 insertions, 0 deletions
diff --git a/noao/imred/ccdred/setinstrument.cl b/noao/imred/ccdred/setinstrument.cl
new file mode 100644
index 00000000..c10a7427
--- /dev/null
+++ b/noao/imred/ccdred/setinstrument.cl
@@ -0,0 +1,57 @@
+# SETINSTRUMENT -- Set up instrument parameters for the CCD reduction tasks.
+#
+# This task sets default parameters based on an instrument ID.
+
+procedure setinstrument (instrument)
+
+char instrument {prompt="Instrument ID (type ? for a list)"}
+char site="kpno" {prompt="Site ID"}
+char directory="ccddb$" {prompt="Instrument directory"}
+bool review=yes {prompt="Review instrument parameters?"}
+char query {prompt="Instrument ID (type q to quit)",
+ mode="q"}
+
+begin
+ string inst, instdir, instmen, instfile
+
+ # Define instrument directory, menu, and file
+ instdir = directory
+ if (site != "")
+ instdir = instdir // site // "/"
+ instmen = instdir // "instruments.men"
+ inst = instrument
+ instfile = instdir // inst // ".dat"
+
+ # Loop until a valid instrument file is given.
+ while (inst != "" && !access (instfile)) {
+ if (access (instmen))
+ page (instmen)
+ else if (inst == "?")
+ print ("Instrument list ", instmen, " not found")
+ else
+ print ("Instrument file ", instfile, " not found")
+ print ("")
+ inst = query
+ if (inst == "q")
+ return
+ instrument = inst
+ instfile = instdir // inst // ".dat"
+ }
+
+ # Set instrument parameter.
+ if (access (instfile))
+ ccdred.instrument = instfile
+ else
+ ccdred.instrument = ""
+
+ # Run instrument setup script.
+ instfile = instdir // inst // ".cl"
+ if (access (instfile))
+ cl (< instfile)
+
+ # Review parameters if desired.
+ if (review) {
+ eparam ("ccdred")
+ eparam ("ccdproc")
+ }
+end