Download VERY LARGE TELESCOPE

Transcript
HOS/Sequencer User Manual - 3
VLT-MAN-ESO-17220-0737
17
of these applications, and the list of global Tcl variables set by them can be found in the
respective manpages of these extensions.
2. It initializes the Sequencer extensions:
• it sets the version number and makes it available via the infox appversion command
• it sets the global Tcl variable seq_ccsProcName to the string sequencer. This variable is used
as the default process name for the seq_ccsInit command.
• the global Tcl variable tcl_precision is initialized to a default value set at compilation time
(see Makefile). This variable is used whenever a real is converted to a string, e.g. using
the expr command or seq_dbReadSymbolic
• it defines the global Tcl variable seq_library, by looking first if there is an environment
variable named SEQ_LIBRARY; if not, it looks for the shell libraries relative to the
working directory, the integration directory $INTROOT and finally the VLT root
directory $VLTROOT.
• it sets the global Tcl variable seq_ccsType, which reflects for what environment the
Sequencer was built: full for CCS+RTAP, light for CCS-light, none if without CCS.
• it defines the global Tcl variable seq_moduleId, and sets up the proper callbacks to ensure
this is never modified to a too long or too short string. This variable is used as the
module identifier in all errAdd calls
• it sets the global Tcl variable seq_ccsCmdCheck to NO_CHECK
• the Sequencer shell atomic commands are declared
• the script file seqInit.tcl is evaluated. It is searched for on the path given by the global Tcl
variable seq_library (see higher). The main task of this script is to insert $seq_library at the
top of the list of paths searched automatically when an unknown command is given.
This list is kept in the global Tcl variable auto_path.
seqInit.tcl also determines your application window’s icon (appearing when you press
your window manager’s iconify button on the application window), as follows: based
on the the application name (e.g. seqWish or panel) a pixmap icon is searched for, with
name <applicationName>Icon.xpm. If such colour icon exists, it will be used for the
application (image name seqIcon, widget name .seqIcon). If not, a black and white bitmap
with name <applicationName>Icon.xbm is searched for, which will end up as the
application’s icon if found. If none of the two icons are found, no icon will be defined,
and the default window manager’s icon will be used. This leaves the path open for easy
definition of custom icons within the application’s initialization code. Remark that
overloading an explicitly given icon with another one may require to give the
instructions
wm withdraw .;
# unmap the window from the screen
wm deiconify .;
# or anything else which forces a re-mapping
in order for the window manager to notify the change. The title for the icon window is
anyway set by seqWish to <applicationName>@<hostName>.
If during any of these activities an error occurs, the Sequencer shell will inform you and quit.
3. If the Sequencer shell is run interactively, a file named .seqShRc resp .seqWishRc in the user’s
home directory will be sourced if it exists. This is intended as a facility to load development
scripts, not as a means to support final applications, which should not rely like this on the
user’s environment.
From that point on, if there were no errors, user input is taken and evaluated.