DO instruction

This instruction allows an object to trigger actions on other object (target object) or even on itself. It simply places a command to execute the action in the target's action queue. This then gets executed by Scheduler in due course.

Syntax:

do action-name [( parameters-declaration )] target-object-spec

where

action-name
is a name of one of the actions to be executed in target object
parameters-declaration
the action in target object may expect parameters as specified in its declaration. The values of these parameters are given here. They are then delivered with the command to the target object. For more details see Parameters in SMI
target-object-spec
is one of the following
    either
  • name of a SMI Object
  • or
  • ALL_IN name of SMI Object Set
    this will send the command to all objects in the set.

NB: For more advanced use for experts see Variable Elements in SMI

Example 1

Action : START_RUN (new_run_number)
...
do START (run_number=new_run_number) RUN_CONTROL

Example 2

Action : START
...
do SWITCH_ON (run_number=78) all_in POWER_SUPPLIES