The Pipe suboperator lets you output one of several data inputs based on values in a "valve" stream. It provides at least two inputs: one valve (always the first input) and one or more data inputs. For example, the default Pipe suboperator has a Boolean valve and two Real data inputs, and outputs data from one or the other data input depending on the data coming into the Boolean input.
With other types of valves, you can set up ranges for the valve stream; the range in which the valve input value lies determines which data input is "piped" through. For example, you could have one Integer valve input (I1) and three Real data inputs (R2, R3, R4), and output R2 if I1 <= 0; R3 if I1 > 0 and <=50; or R4 if I1 > 50.
In the case of Valve, the incoming values V1.x, V1.y, V1.z (components of the vector) become the valve controllers. The drop-down list lets you choose how the vector components are used for piping: Maximal Component, Maximal Absolute Component, Minimal Component, or Minimal Absolute Component. With the Vector valve type, the Add and Remove buttons become unavailable because the number of input data channels is fixed at three, similarly to the Boolean valve type, where the number of input data channels is fixed at two.
In the case of Integer, the drop-down list shows two choices: Intervals, which is the standard mode for most valve types, and Exact Match, which tests for equality of the specified values only.
The list box in the Pipe Conditions group displays the conditions used to determine which data input gets piped through. For all valve types except Boolean, these are ranges based on values you specify. By default, if the valve type is not Boolean, a single condition (and input) exists, and is set to All, meaning that the input data is simply piped through. By adding conditions with the Add button, more
The Pipe suboperator supports a maximum of seven "<=" conditions; after the seventh is added, the Add button becomes available. Also, conditions are automatically sorted in numeric, ascending order.