DiamondLightSource / cs-web-lib

Library form of control system web UI prototype
Apache License 2.0
1 stars 1 forks source link

Improve BOB parsing and precision handling #55

Closed rjwills28 closed 6 months ago

rjwills28 commented 6 months ago

This PR addresses 2 points:

  1. By default Phoebus sets the precision to -1 (to signal from PV) and show units to true. In this case Phoebus will not write these properties to the BOB file and they will not exist. If these properties are missing then Phoebus assumes the above. These properties are only written to the the BOB file when the precision is set to something other than -1 or show units is false. The lib parser needs updating to reflect the case when these properties are missing so that the behaviour resembles that of Phoebus. In addition the format enumerations in Phoebus are different so these need to be parsed separately.
  2. Elements in an array (from a waveform PV) do not respect the precision rules. Logic has been added to format array elements to the specified precision.