Initial revision
This commit is contained in:
31
doc/user/macro.htm
Normal file
31
doc/user/macro.htm
Normal file
@@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title> Macro Commands </title>
|
||||
</head>
|
||||
<body>
|
||||
<h2>Macro Commands</h2>
|
||||
<p>
|
||||
SICS has a built in macro facility. This macro facility is aimed at instrument managers and users alike. Instrument managers may provide customised measurement procedures in this language, users may write batch files in this language. The macro language is John Ousterhout's Tool Command Language (TCL). Tcl has control constructs, variables of its own, loop constructs, associative arrays and procedures. Tcl is well documented by several books and online tutorials, therefore no details on Tcl will be given here. All SICS commands are available in the macro language. Some potentially harmful Tcl commands have been deleted from the standard Tcl interpreter. These are: exec, source, puts, vwait, exit,gets and socket. The following commands allow access to the macro facility:</p>
|
||||
<p>
|
||||
<b> FileEval name </b> tries to open the file name and executes the script in this file. Please note that the server is configured via such a file.</p>
|
||||
<p>
|
||||
<b> ClientPut sometext1 ... </b> writes everything after ClientPut to the client which started the script. Useful for output to a client from macro scripts.</p>
|
||||
<p>
|
||||
<b> SICSType object </b> allows to query the type of the object specified by object. Possible return values are<ul>
|
||||
<li> <b> DRIV </b> if the object is a SICS drivable object such as a motor
|
||||
<li> <b> COUNT </b> if the object is some form of a counter.
|
||||
<li> <b> COM </b> if the object is a SICS command.
|
||||
<li> <b> NUM </b> if the object is a number.
|
||||
<li> <b> TEXT </b> if object is something meaningless to SICS.
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
<b> SICSbounds var newval </b> checks if the new value newval lies within the limits for varaible var. Returns an error or OK depending on the result of the test.</p>
|
||||
<p>
|
||||
<b> SICSStatus var </b> SICS devices such as counters or motor may be started and left running while the program is free to do something else. This command allows to enquire the status of such a running device. Return values are internal SICS integer codes. This command is only of use for SICS programmers.</p>
|
||||
<p>
|
||||
<b> SetStatus newval </b> allows to set the SICS status to one of: Eager, UserWait, Count, NoBeam, Driving, Running, Scanning, Batch Hatl or Dead. This command is only available in macros.</p>
|
||||
<p>
|
||||
<b> SetInt newval, GetInt </b> allow for the manipulation of interrupts from macro scripts. Not recommended! Possible return values or new values are: continue, abortop, abortscan, abortbatch, halt, free, end. This command is only permitted in macros. Should only be used by SICS programmers.</p>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user