Input modifying tools
An input modifying tool is a tool that manipulates its input objects (for example by adding annotations) without producing a new object. In a workflow, an input modifying tool is marked with the symbol () (figure 11.29).
Figure 11.29: Input modifying tools are marked with the letter M.
There are 2 cases where it is not possible to save the Output of such a tool:
- When the input modifying tool is used in a branch(see figure 11.30), it cannot be guaranteed which workflow branch will be executed first, which in turn means that different runs can result in production of different objects. A message in red letters will appear saying "Branching before a modifying tool can lead to non-deterministic behavior", and the Run and Create Installer buttons are disabled.
Figure 11.30: A branch containing an input modifying tool is not allowed in a workflow.The problem can be solved by adding elements (with respect to order of execution) so that the branch disappears. This is shown in figure 11.31.
Figure 11.31: A branch containing an input modifying tool has been resolved and the workflow can now be run or installed. - When a workflow is made of only one of these tools. To be able to save the output of such a tool, simply add an element before or after the first one (see figure 11.32).
Figure 11.32: A workflow output element can be added to an input modifying element when adding an element before or after the input modifying tool.The output arrow is marked with "copy" to indicate that this is a copy of the result that is used as input at the next level in the chain (see figure 11.33).
Figure 11.33: This output is marked with "copy" to indicate that this is a copy of the result that is used as input at the next level in the chain.