The ESI Spectrograph Online Documentation

For ease of programming KTL applications using William Lupton's "Ktcl" extension, I wrote a set of Tcl procedures at a slightly higher level of abstraction. These procedures are shared between several applications such as Dashboard, the "ktest" suite, etc.

Most of these procedures assume not only the Ktcl extension commands, but also the existence of the UCO/Lick "memes" data cache files (service.kwd). Some of the procs are fairly powerful, capable of returning keyword attributes such as limits, tolerance, or legitimate values, in a single command.

The procedures have been packaged into the library ktcl.tlib (using the TclX packaging convention), which can be loaded by and used by any tcl script. Other similar procedures which were specially designed for writing tests have been put in the "Ktest" tlib.

All test scripts written using ktauth can use the procs in the Ktcl procedure library as well as those in the Ktest library (both libraries will be found in /opt/kroot/lib/tcl).

NOTE that those procs which rely on "memes" cache files will not be functional with KTL services that have not been "assimilated" into the Memes database so that a cache file can be generated. At this writing (7/28/99), the only fully documented instruments are PFCAM, ESI, and DEIMOS (in progress). However, other instruments such as LRIS and HIRES are partially documented and we have the intention to support them in future.

NOTE that EPICS-based services such as DCS which do not offer asynchronous notification on move complete (aka second stage notification) will not be able to use certain features of the Ktcl and Ktest procedure libraries. The KTL ioctl NOTIFY is vigorously exploited by Dashboard and the Ktest applications. However, the memes database documents which keywords do not support this feature, and it is quite possible to write scripts using such keywords.

The Observer documents are hand-written. The Technical Documents are produced from plain text files in the CVS source tree by some Tcl scripts written at UCO/Lick Observatory. The Reference Documents are mostly generated by software from data in a relational database. Individual authors are responsible for the content of the Observer and Technical Documentation. The Lick SPG as a whole is responsible for the content of the Reference doco. Send mail to de@ucolick.org to report inconsistencies or errors in the documentation.