public class ShutterStatusPLC extends MsgToCCS
| Modifier and Type | Class and Description |
|---|---|
static class |
ShutterStatusPLC.AxisStatusPLC
Holds the status report for a single axis in a
ShutterStatusPLC message. |
MESSAGE_SET_VERSION| Constructor and Description |
|---|
ShutterStatusPLC(ByteBuffer data)
Reads and converts the PLC form of the message.
|
ShutterStatusPLC(int sequence,
int motionProfile,
boolean isCalibrated,
int smState,
Map<ShutterSide,ShutterStatusPLC.AxisStatusPLC> axstatus,
boolean isSafetyOn,
List<Integer> temperature,
long when,
int ptpState,
int leapSeconds,
boolean leapIsValid)
Constructs from a sequence number and field values.
|
| Modifier and Type | Method and Description |
|---|---|
void |
encode(ByteBuffer data)
Puts the sequence number into a data buffer.
|
ShutterStatusPLC.AxisStatusPLC |
getAxisStatus(ShutterSide side)
Gets the
AxisStatusPLC value for the given side. |
int |
getLeapSeconds()
Get the current number of leap seconds derived from PTP packets received by the EL6688.
|
int |
getMotionProfile()
Gets the motion profile number.
|
int |
getPtpState()
Gets the integer PTP state value that was read from the PTP slave of the EL6688.
|
long |
getRawCreationTime()
Gets the absolute TAI message creation time in TwinCAT T_DCTIME64 format.
|
int |
getSmState()
Returns the state of the PLC state machine.
|
List<Integer> |
getTemperature()
Gets the RTD readouts.
|
boolean |
isCalibrated()
Is the shutter calibrated?
|
boolean |
isLeapValid()
Is the count of leap seconds valid? It won't be if the EL6688 has received no PTP packets, for example.
|
boolean |
isSafetyOn()
Are the safety checks on?
|
String |
toString()
Converts the message to a readable string.
|
getVersion, messageVersionIsBadpublic ShutterStatusPLC(int sequence,
int motionProfile,
boolean isCalibrated,
int smState,
Map<ShutterSide,ShutterStatusPLC.AxisStatusPLC> axstatus,
boolean isSafetyOn,
List<Integer> temperature,
long when,
int ptpState,
int leapSeconds,
boolean leapIsValid)
sequence - A message sequence number.motionProfile - the motion profile number.isCalibrated - Is the shutter calibrated?smState - the state of the PLC state machine.axstatus - the two axis status objects, one per side.isSafetyOn - Are the safety checks in effect?temperature - the RTD readout values.when - the absolute TAI time at which this message was created, in TwinCAT T_DCTIME64 format.ptpState - the state of the PTP slave on the EL6688 device.leapSeconds - the current number of leap seconds obtained from PTP packets.leapIsValid - true if and only if the leapSecond count is deemed valid by the EL6688.public ShutterStatusPLC(ByteBuffer data)
data - Holds the PLC message data.public void encode(ByteBuffer data)
MsgToCCSpublic int getMotionProfile()
public boolean isCalibrated()
public int getSmState()
public ShutterStatusPLC.AxisStatusPLC getAxisStatus(ShutterSide side)
AxisStatusPLC value for the given side.public boolean isSafetyOn()
public List<Integer> getTemperature()
public long getRawCreationTime()
public int getPtpState()
org.lsst..ccs.subsystem.shutter.status.PtpSlaveStatepublic int getLeapSeconds()
public boolean isLeapValid()
public String toString()
PLCMsgtoString in class MsgToCCSCopyright © 2024 LSST. All rights reserved.