CondGateIf the value on the "control" input is nonzero, the input particle is copied to output. Otherwise, no input is consumed (except the control particle) and no output is produced. This is effectively one half of a
Fork(Two icons.) Copy the input particle to each output. The SDF fork is not used here because the BDF domain requires some extra steps to assert that each output of a fork is logically equivalent if the input is a Boolean signal.
NotOutput the logical inverse of the Boolean input. Again, the equivalent SDF logic block is not adequate because extra steps are needed to assert the logical relationship between the input and the output.
SelectIf the value on the "control" porthole is nonzero, N tokens (from the parameter N) from "trueInput" are copied to the output; otherwise, N tokens from "falseInput" are copied to the output.
SwitchSwitch input particles to one of two outputs, depending on the value of the control input. The parameter N gives the number of particles read in one firing. If the particle read from the control input is
TRUE, then the values are written to "trueOutput"; otherwise they are written to "falseOutput".