!------------------------------------------------------------------------------ ! This file holds a list of Self Message Command File requests ! Comments start with an exclamation mark ("!") anywhere on a line. ! See end of file for more syntax information. !------------------------------------------------------------------------------ ! Revision: 03-Apr-02 ! This file is a template ! and a list of the syntax rules for Self Message Command Files Send_Msg_To_Self: "L1FW_Spec_Trig 0 Coor_Enable" Call_File: \users\default\another.msg !------------------------------------------------------------------------------ ! 03-Apr-02 ! * Recommended file extension is ".MSG" (but not required). ! ! Syntax rules: ! ! - Blank lines are ignored. ! ! - Comments start after an exclamation mark ("!") anywhere on a line. ! ! * Recognized Keywords are (with colon required) ! Send_Msg_To_Self: (Send TRICS the specified COOR->L1FW command) ! Call_File: (Recursive call to another Self Message Command File) ! MilliSecond_Sleep: (Suspend execution of the command file) ! ! - Keywords are NOT case-sensitive. ! ! - Each Keyword must be followed by one and only one character string. ! ! - a Keyword and its matching Value may be separated by any number of spaces, ! and/or Tabs, but must appear on the same line. ! ! - Successive Keyword/Value pairs may be separated by any number of spaces, ! Tabs and/or Carriage_Returns (blank lines), or comments. ! ! * The "Send_Msg_To_Self:" keyword causes the specified COOR to L1FW Command ! Message to be send to TRICS_II on the dedicated ITC port. ! ! * The L1FW Command Message must be a string enclosed in double quotes. ! ! * The syntax for these coor commands is defined in ! d0server1.fnal.gov/www/online_computing/documents/Coor/coorover.ps (p18) ! and http://www.pa.msu.edu/hep/d0/ftp/tcc/coor/coor_resources.txt ! ! * The command string must NOT include the leading command ID field specified ! in the COOR document. The fixed string "FromMsgFile_" will be pre-pended ! as a command ID by the command file parser. ! ! - The "MilliSecond_Sleep:" Keyword causes the execution of the command file ! to be suspended for the number of milliseconds specified in the associated ! value (integer values only). ! ! - The "Call_File" Keyword causes a recursive call to read the specified ! Self Message Command File. ! ! - Full local Keyword/Value context present before the Call_File Keyword ! is still valid after. i.e. Context changes made in the Called file are ! NOT propagated back to the Calling file. ! ! - The syntax rules within a called file are the same as described here. ! The local Keyword/Value context present before the Call_File Keyword ! is imported into the Called File. i.e. You can define some Keyword Values ! in the Calling File which will be valid inside the Called File. ! !------------------------------------------------------------------------------ ! - Symbol usage in command files: ! ! Symbols may be defined and used in command files. ! A symbol name must start with a dollar sign "$". ! ! A symbol is defined by giving it a numeric value. ! A symbol is defined using a Keyword/Value syntax where the Keyword is ! the symbol's name, starting with its own dollar sign but with an additional ! equal character appended to the end of the symbol name, while the value ! is the desired symbol value. ! e.g. To define a symbol named "$Slot_AONM" and give it a value "5" ! enter the following: ! $Slot_AONM= 5 ! The equal sign "=" is required and must appear directly after the last ! character of the symbol name, with no space or tab in-between. ! Any number of spaces, or tabs may appear between the symbol definition and ! its value, but the symbol and its value must appear on the same line. ! Previously defined symbols can be re-defined to change their value. ! Previously defined symbols cannot be un-defined. ! ! A symbol may be used anywhere a value is required, i.e. in any Keyword/Value ! pair and the symbol value will be substituted. e.g. ! Slot: $Slot_AONM ! A symbol must have been defined before it can be used. ! There are no predefined symbols. ! Symbols are NOT case sensitive. ! Symbol names may include any alpha numeric characters (e.g. _[(}./$< ), ! (but no space, tabs, or end of line). For clarity one should avoid ! using embedded quotation marks, equal signs, colon. ! A symbol value may be used to define another new symbol. ! ! All symbols defined before a "Call_File" Keyword are propagated into ! the Called File. i.e. You can define symbols in the Calling File ! and use those symbols (or modify them) inside the Called File. ! Symbols created or modified inside a Called File are NOT propagated ! back to the Calling file. !------------------------------------------------------------------------------