rts-sim-testing-service/third_party/axle_device/beijing12/msg/sse.go

31 lines
792 B
Go

package msg
import (
"bytes"
"encoding/binary"
"joylink.club/bj-rtsts-server/third_party/message"
)
type SseMsg struct {
MsgHeader
SeqNum uint32 // 序列号
SeqEnq1 uint32 //时序校正请求通道1 SID_1^T_1(NE)
SeqEnq2 uint32 // 时序校正请求通道2 SID_2^T_2(NE)
Tail uint16 //报文位 CRC16
}
func (s *SseMsg) Encode() []byte {
data := s.MsgHeader.encode()
data = binary.LittleEndian.AppendUint32(data, s.SeqNum)
data = binary.LittleEndian.AppendUint32(data, s.SeqEnq1)
data = binary.LittleEndian.AppendUint32(data, s.SeqEnq2)
s.Tail = message.Rssp_I_Crc16(data)
data = binary.LittleEndian.AppendUint16(data, s.Tail)
return data
}
func (s *SseMsg) Decode(data []byte) error {
buf := bytes.NewBuffer(data)
return binary.Read(buf, binary.LittleEndian, s)
}