Overview and Key Concepts
The Open or close flow blocks or unblocks all flow. It is similar to the discrete commands
Note that, in addition to opening or closing the input / output, the activity requests a recalculation
of the network from the Flow Control. If you were to call, say,
the flow control would not register this change and would continue to send flow through the blocked
input until the next event in the flow network.
The Open or close flow activity only allows one connector out. See Adding and Connecting Activities for more information.
The following image shows properties for the Open or close flow activity:
Each of these properties will be explained in the following sections.
Used to change the name of the activity. See Name for more information about this property.
The Font button opens a window to edit the activity's background color and font properties. See Font for more information about this property.
The Statistics button opens the activity's statistics window. See Statistics for more information about this property.
Object(s)/ Group / Array
Use the Object(s) / Group / Array box to specify the object(s) you want
the activity to affect. You can specify a single object (using the eyedropper tool or a
command), an object group (flat or nested) or an array of objects and/or groups. When a token
enters the activity, the expression will be parsed recursively such that arrays of groups or groups will
be properly handled.
Specify if the flow for the selected objects should be opened, or closed.
Specify if you want the activity to affect the input side, or the output side of the specified object(s).
If the condition is not set to "Always", the activity will only perform its functionality when the
true. If the Object(s) / Group / Array
field evaluates to multiple objects, the condition will be checked for each object separately (and
passed in as the
The dropdown suggests a few common conditions, such as only working on objects that currently have
inflow, or are below their maximum content. You can use it to implement logical conditions (e.g. only open
output if a tank is full), but also for model constraints (e.g. only do something with output port 2
involved object has at least two output objects).