In Enif, the configurable objects are divided into system objects and user objects. User objects correspond to those that are loaded by the user from corresponding configuration files, whereas all configurable objects that are generated and maintained directly by the Enif program are referred to as system objects.
Parameters associated with system objects are called system parameters. Their name always starts with a dollar sign and their group specification (which, of course, is system defined as well) usually corresponds to the parameter name.
Many of the basic tasks that one would like to automate,
are controlled by system parameters, such as e.g.
Thus, it is useful to look at some of available system parameters that are of particular practical importance. In the following, we briefly explain those system parameters which allow performing the above tasks and which will be used in the examples later on:
$LoadScenario (Type Integer, write-only, owned by Network control)
|This write-only parameter allows manipulating the network stack. Writing an integer value into index 0 will load (``push'') the corresponding scenario as an additional network onto the network stack. Writing an integer value into index will replace the network at position in the network stack by the corresponding scenario. After the operation has been executed, the values will always be reset to zero, in order to be ready for the next operation.|
$ScenarioNumber (Type Integer, read-only, owned by Network)
$ScenarioTitle (Type String, read-only, owned by Network)
|These two system parameters contain the scenario number and the scenario title of the network which is currently loaded at position 1 of the network stack.|
$LoadPlotConfiguration (Type String, write-only, owned by Plot control)
|If a file name is written into this write-only system parameter, the file is opened and the corresponding plot configuration is loaded and displayed.|
$CurrentView (Type Box, read-write, owned by View control)
|This parameter always contains the coordinates of the current view. Since it is a read-write parameter (i.e. both its send and receive group is defined as $CurrentView), it can be used for retrieving the coordinates of the current view (by receiving its value) as well as imposing a new view (by sending the new coordinates to $CurrentView.|
$PrintCurrentViewNoSetup (Type Click, write-only, owned by Network plane)
|If this parameter is activated by a receive or update group signal, it will cause the current view to be printed using the current default printer and printer settings.|
$ExportEnlargementFactor (Type String, read-write, owned by Network plane)
|This parameter contains a small integer factor (1,2,3,...) which is used to enlarge the resolution of exported image files by the corresponding factor. Using enlargement factors larger than one allows the generation of bitmapped image files that exceed the current screen resolution. Note, however, that the file size of the exported image, as well as the time needed to generate the image, increases with the square of the enlargement factor - so don't exaggerate!|
$ExportScreenViewToFile (Type String, write-only, owned by Network plane)
|If a file name is sent to this system parameter, an image file is generated containing the current screen view, using the image format which by default corresponds to the specified file extension (such as .jpg, .png, .bmp, etc.).|
$ExportPrintViewToFile (Type String, write-only, owned by Network plane)
|If a file name is sent to this system parameter, an image file is generated containing the current print view (i.e. the same information which would be sent to the printer), using the image format which by default corresponds to the specified file extension (such as .jpg, .png, .bmp, etc.).|