1.1.1 Variables

Variables are the interface between the device driver and the other components of the software, specially the user interface. Each variable acts as an end point for a parameter message. It may receive messages -- which causes the driver to set this parameter at the physical device -- but also may send it's parameter message in order to tell the user interface about the actual setting of this parameter.

Inside, a variable separately stores two values:

By managing these values separately, the device driver is able to check if a value has properly been set by the device. If you see messages like Parameter some.name set to X but reads Y in the event log, then the parameter polling which followed a command returned a value different from the commanded one.