Fix Version/s: None
Sprint:TSSW Sprint - Apr 25 - May 09
Team:Telescope and Site
The level22 field of the ATWhiteLight chillerAlarms event represents a bitmask that has 32 bits. This caused a bit of trouble for ts_sal:
DM-34005, which Dave Mills has kindly fixed. I originally worked around it by omitting the last ChillerL22Alarms value. Update ts_xml to reinstate the value and specify the enum type as "unsigned int" or "unsigned long" (which are identical – both 32 bits).
At standup today we agreed to a different path forward: modify ts_sal so all enumeration values are of type "long long" and eliminate the new "type" attribute. That makes this ticket far simpler: there is no need to modify the schema for the XML; all I have to do is uncomment out the missing enum. Done. This work can be merged once Dave implements
ts_sal now has the necessary fix. Time to put this trivial change into review.
It turns out that the Event schema was not updated in ts_xml when implementing
DM-34005, so using this feature broke ts_xml unit tests. So as part of this ticket I updated the Event schema but only for global enumerations. I figure we discourage per-topic enumerations, the type attribute is rarely needed, and the feature needs a lot of extra boilerplate. We can expand it if we find a need, but I hope we will not.
I used develop of ts_sal to build the ATWhiteLight IDL file and compared it to the previous version and the new enumeration value is present but all of those enum values have type "long" (the usual) instead of "unsigned int", which I specified. I'll file a new ts_sal ticket.
Pull request: https://github.com/lsst-ts/ts_xml/pull/576