A parameter is a logical entity defined behind an Input.
- About the Parameter:
- it is listening to a pre-defined message and notifies the application code when a new value is received.
- its definition contains all information needed to make the application self-describing to a remote controller or universal editor like the CopperLan Manager. It implies that a remote application can discover the complete parameter set without needing any interaction with the application code holding the parameter.
- it is checking the incoming value, and do pre-processing on relative offset and Selector's proportional value in order to always notify the application code with a directly usable absolute value.
- the application code only needs notifying the Parameter on current value changes. A bandwidth limiter restricts sending too many current value feedback per second in case of permanent parameter changes (modulation).
- The Input is handling the connected sources list. This is used to send feedback messages to each connected Controller automatically.
During the Parameter<:i> creation, the application provides information such as:
- the Parameter's identity
- the related message description (type, number, index or selector item lists, labels...)
- the preferred controller type (slider, knob, push-button, absolute, relative, with return-to-zero,...)