18.10.2014 Views

SIMSCRIPT II.5 Programming Language

SIMSCRIPT II.5 Programming Language

SIMSCRIPT II.5 Programming Language

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>SIMSCRIPT</strong> <strong>II.5</strong> <strong>Programming</strong> <strong>Language</strong><br />

or<br />

external processes are process name list<br />

external processes are event name list<br />

When an event name appears in an external process statement in the preamble, provision is made<br />

to create a new event notice each time an input data record containing the event name is read from<br />

the external data. This event notice is identical in form with those already described.<br />

One of the predefined attributes in a process or event notice, eunit.a, records the unit number of<br />

the input device on which information about this event is input. For events and processes not triggered<br />

externally, this attribute remains zero. The logical unit numbers of devices on which external<br />

event data are to be input are declared in a statement of the form:<br />

or<br />

external process units are device list<br />

external event units are device list<br />

The words process and event are synonymous in this case. Devices may be specified as integer<br />

constants or as variables. If variables are used, they must be initialized to valid unit numbers before<br />

the start of simulation. If external events have been declared but no external units statement<br />

appears, the standard input unit is assumed to be a source of external event data. If such a statement<br />

does appear, and the standard input unit is also to be used for event data, it must be included in the<br />

list of external units.<br />

A simulation program having the processes TASK and REPORT might contain the following statements<br />

in its preamble:<br />

external processes are TASK and REPORT<br />

external process units are DAILY.TASKS, WEEKLY.TASKS and 5<br />

These statements indicate that the <strong>SIMSCRIPT</strong> <strong>II.5</strong> system must be prepared to trigger the processes<br />

TASK and REPORT from external data, and that three input devices are to be used to input these<br />

data. These may be indicated mnemonically as being associated with information about particular<br />

events. However, the <strong>SIMSCRIPT</strong> <strong>II.5</strong> system attaches no significance to these names. Any external<br />

event may be triggered by data read from any of the declared external units.<br />

External events and processes may be included in priority statements, declaring their priority<br />

over other events and processes, whether internally scheduled or externally triggered. Note that the<br />

priorities are associated with the events or processes, and not in any way with the external units.<br />

Events or processes that are declared to be external can be given priority over other classes of<br />

events but cannot be ranked among themselves by a break ties statement. No ranking attributes<br />

are assigned values by external triggering, as may be done by giving arguments in a schedule statement.<br />

Even if some instances of the event class are internally scheduled and have attributes initial-<br />

208

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!