Some filters have optional inputs. An optional input can receive some value, but can also be left not set at all. Such an input is then said to have an automatic value. Optional inputs are marked with a star at the end of the type name and are controlled with an additional check-box in the Properties control.
- Most image processing filters have an optional inRoi input of the Region* type – an optional (or automatic) region of interest. If we do not use this input, then the entire input image will be processed.
- The Pylon_GrabImage filter has an optional inExposureTime input of the Real* type. If we do not use this input, then the value previously written to the camera register will be used.
Optional Inputs vs Conditional Outputs
Besides optional inputs, there are also conditional outputs in some filters. These should not be confused. Optional inputs are designed for additional features of filters that can be turned on or off. Conditional outputs on the other hand create conditional connections, which result in conditional execution. The most important consequence of this model is that connections T? → T* are conditional, whereas T? → T? are not (where T is a type). The special value of an optional type is called Auto, whereas for conditional types it is Nil.