Commands For Supporting SICS Status Displays

The implementation of many status displays is greatly simplified by letting the SICS server do some of the hard work. The operation of these commands is usually invisible to users. Some even do not generate output accessible to the user because they send uuencoded information. This section documents these commands for completeness and as a reference for status display client writers.

The Reflectometer AMOR

The reflectometer AMOR probably has the most extensive of such modules. It does a lot of things. It is configured into SICS with the MakeAmorStatus command. Let us assume that it is configured into the system as amorstatus. This object supports the following commands:

amorstatus interest
This registers this connection for receiving automatic notifications. Automatic notifications send are:
SCANSTART
At scan start a message ScanClear is sent followed by the uuencoded new x-axis for the plot.
SCANPOINT
At each scan point the arrays of counts in both detector are sent in uuencoded form labelled arrow_spinupup and arrow_spinuplo.
COUNTSTART
The start of counting on the histogram memory. Send a message TOFClear and then the uuencoded time binning labelled arrow_time.
FILELOADED
activated each time user defined model data is loaded into the SICS server. This data gets send as arrow_name in uuencoded form. Both x- and y-axis are sent in floating point.
Please note that floating point data is transformed to fixed point by multiplication of 65653 before transfer. The first number in each uuencoded message is an integer describing the length of the data. In case of double data such as fileloaded the y-data follows immediatetly after the x-data. Also the approriate data is automatically sent after the interest command.
amorstatus collapse
sums all counts in all detectors in time and sends the data back as an uuencoded image. The first two numbers in the message define the dimensions of the data.
amorstatus sample name x1 x2 y1 y2
Sums the detector counts on an area defined by the rectangle x1, x2, y1, y2. The length of this is the time binning. The data is sent back in uuencoded form labelled arrow_name.
amorstatus clear
Clears all user loaded data.
amorstatus load filename scale
loads user defined data for distribution to the status display clients. The y data is scaled according to the scale factor provided.