Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: ts_middleware
-
Labels:
-
Story Points:0.5
-
Epic Link:
-
Sprint:TSSW Sprint - Apr 25 - May 09
-
Team:Telescope and Site
-
Urgent?:No
Description
The fix in DM-34005 does not work for me, in the one case I tried (the case that lead to filing that ticket).
If you look at DM-34557 and https://github.com/lsst-ts/ts_xml/pull/576 you can see that I used
<Enumeration type="unsigned int">
|
ChillerL22Alarms_EXTERNAL_RTD_SENSOR_OPEN = 0x1,
|
...
|
ChillerL22Alarms_FRONT_LEFT_FAN_OPEN = 0x40000000,
|
ChillerL22Alarms_FRONT_RIGHT_FAN_OPEN = 0x80000000
|
</Enumeration>
|
in ATWhiteLight_Events.xml. ts_sal builds this, but the resulting IDL file uses type "long" for all of the values for that enumeration, rather than "unsigned int". This is using ts_sal develop 5bd54f8b dated April 6, 2002.
Attachments
Issue Links
Activity
Team | Telescope and Site [ 13500 ] |
Description |
The fix in If you look at https://github.com/lsst-ts/ts_xml/pull/576 you can see that I used {code} <Enumeration type="unsigned int"> ChillerL22Alarms_EXTERNAL_RTD_SENSOR_OPEN = 0x1, ... ChillerL22Alarms_FRONT_LEFT_FAN_OPEN = 0x40000000, ChillerL22Alarms_FRONT_RIGHT_FAN_OPEN = 0x80000000 </Enumeration> {code} in ATWhiteLight_Events.xml. ts_sal builds this, but the resulting IDL file uses type "long" for all of the values for that enumeration, rather than "unsigned int". |
The fix in If you look at {code} <Enumeration type="unsigned int"> ChillerL22Alarms_EXTERNAL_RTD_SENSOR_OPEN = 0x1, ... ChillerL22Alarms_FRONT_LEFT_FAN_OPEN = 0x40000000, ChillerL22Alarms_FRONT_RIGHT_FAN_OPEN = 0x80000000 </Enumeration> {code} in ATWhiteLight_Events.xml. ts_sal builds this, but the resulting IDL file uses type "long" for all of the values for that enumeration, rather than "unsigned int". |
Description |
The fix in If you look at {code} <Enumeration type="unsigned int"> ChillerL22Alarms_EXTERNAL_RTD_SENSOR_OPEN = 0x1, ... ChillerL22Alarms_FRONT_LEFT_FAN_OPEN = 0x40000000, ChillerL22Alarms_FRONT_RIGHT_FAN_OPEN = 0x80000000 </Enumeration> {code} in ATWhiteLight_Events.xml. ts_sal builds this, but the resulting IDL file uses type "long" for all of the values for that enumeration, rather than "unsigned int". |
The fix in If you look at {code} <Enumeration type="unsigned int"> ChillerL22Alarms_EXTERNAL_RTD_SENSOR_OPEN = 0x1, ... ChillerL22Alarms_FRONT_LEFT_FAN_OPEN = 0x40000000, ChillerL22Alarms_FRONT_RIGHT_FAN_OPEN = 0x80000000 </Enumeration> {code} in ATWhiteLight_Events.xml. ts_sal builds this, but the resulting IDL file uses type "long" for all of the values for that enumeration, rather than "unsigned int". This is using ts_sal develop 5bd54f8b dated April 6, 2002. |
Sprint | TSSW Sprint - Apr 25 - May 09 [ 1163 ] |
Status | To Do [ 10001 ] | In Progress [ 3 ] |
Story Points | 0.5 |
Epic Link |
|
Reviewers | Rob Bovill [ rbovill ] | |
Status | In Progress [ 3 ] | In Review [ 10004 ] |
Status | In Review [ 10004 ] | Reviewed [ 10101 ] |
Resolution | Done [ 10000 ] | |
Status | Reviewed [ 10101 ] | Done [ 10002 ] |
We talked at standup and agreed that the simplest solution is to change all enum value types to "long long" and remove the "type" attribute from Enumeration.
This means bitmasks can be up to 63 bits. We have not even come close to needing that. Our largest current bitmask is 32 bits – the one that triggered
DM-34005and this ticket.