Workflows can be designed and executed in the workbench area on the right of the main window. It allows for instantiating multiple workflows in parallel where each workflow is linked to an individual tab of the workbench panel.
The context menu of the workbench is displayed upon right-click on an empty location of the workbench area:
New: add a new workflow tab
Rename: rename the currently active tab, default name is ’Untitled’
Close: close the currently active tab, unsaved changes are lost!
Load: load a workflow from disk
Save: save a workflow to disk
Run: execute all nodes in the current tab
Stop: stop workflow execution
The context menu for a node can be opened by a right-click on the node:
Configure: open the configuration window
Run...: run the workflow or several nodes
Workflow: execute the whole workflow, i.e., all nodes in the current tab
Nodes from here: run only the current node and successors
Node: run only the current node
Show Results: only active after node execution terminated, opens result frame
View Mode: select operator parameters to display
Standard: display only standard parameters
Advanced: display also parameters for expert usage
Remove: delete the node
For each operator selected via the operator node selection menu a node in terms of a rectangle is added to the currently active workflow. Above the rectangle the name of the operator is displayed, while on its left and right side the operator’s input and output ports are shown as circles and squares. Circles are associated with operator parameters of directions IN or OUT, while squares refer to parameters with direction INOUT. The latter ports are duplicated on both sides of the node. The colors of the circles indicate their type. Blue circles refer to required parameters, yellow circles are associated with optional parameters, and red circles are linked to supplemental parameters. To the left and right of the ports, respectively, the name of the corresponding parameters are written. Once operator nodes have been added to a workflow, they can easily be dragged and repositioned as well as resized via intuitive mouse actions.
On selecting the item for configuration, a window is displayed which allows to enter parameter values. Parameters values can specified by either of the three ways:
directly by entering values via the configuration window
loading values from a proper parameter file in XML format
dragging edges between ports of different nodes to propagate output data from one node as input data to another
To add an edge, move the mouse over an output port of a node until the port is surrounded by a green square, then press the left mouse button. Subsequently, while keeping the button pressed, move the mouse to the desired input port of another node. Once a green rectangle shows up around the target input port, release the button.
Note that on dragging edges Grappa performs type and validity checks. Only ports being associated with compatible parameter data types can be linked to each other. Two parameter data types are compatible if they are either equal, the target data type is a super class of the source data type, or if Alida has access to a converter allowing to transform the source data type into the target type. Also edges are forbidden that would induce cycles into the workflow graph.
Nodes in a workflow can have different states indicated by the color of their border. Red framed nodes are not ready for execution, i.e., their configuration is not complete. If a node is readily configured and can directly be executed, its border has a yellow color, while nodes that are configured, however, require additional input data from preceeding operator nodes have an orange color. Prior to executing these orange nodes it is, thus, necessary to execute the preceeding nodes first. Note that Grappa takes care of such dependencies, i.e., automatically executes nodes first from which result data is required for proper workflow or node execution. Note that the execution of a workflow will fail if one of the nodes is still colored red, or if a node does not produce proper output data required by others.
The state of a node is updated by Grappa in real-time, i.e., each change in its configuration directly invokes internal checkings and may result in a change of the node’s color.
After successful execution of the workflow or a subset of nodes, the colors of the corresponding nodes change to green indicating that result data are available. For all terminal nodes having no successor the result frames are automatically opened. For all other nodes the result data can graphically be examined via the nodes’ context menus from which the result windows can manually be opened. Once a node has been executed and is colored in green, it is not possible to re-execute the node until its configuration, or at least the configuration of one of its preceeding nodes, was changed.