shift and mask

unstable
Tom Early 4 years ago
parent e80ccad5b6
commit 83ff411a12

@ -146,9 +146,9 @@ void CDvFramePacket::EncodeInterlinkPacket(CBuffer &buf) const
buf.resize(GetNetworkSize()); buf.resize(GetNetworkSize());
auto data = buf.data(); auto data = buf.data();
auto off = CPacket::GetNetworkSize(); auto off = CPacket::GetNetworkSize();
data[off++] = (m_TCPack.sequence / 0x1000000u) & 0xffu; data[off++] = (m_TCPack.sequence >> 24) & 0xffu;
data[off++] = (m_TCPack.sequence / 0x10000u) & 0xffu; data[off++] = (m_TCPack.sequence >> 16) & 0xffu;
data[off++] = (m_TCPack.sequence / 0x100u) & 0xffu; data[off++] = (m_TCPack.sequence >> 8) & 0xffu;
data[off++] = m_TCPack.sequence & 0xffu; data[off++] = m_TCPack.sequence & 0xffu;
memcpy(data+off, m_uiDvData, 3); off += 3; memcpy(data+off, m_uiDvData, 3); off += 3;
memcpy(data+off, m_uiDvSync, 7); off += 7; memcpy(data+off, m_uiDvSync, 7); off += 7;

@ -75,10 +75,10 @@ void CPacket::EncodeInterlinkPacket(const char *magic, CBuffer &buf) const
data[7] = m_cModule; data[7] = m_cModule;
data[8] = m_uiStreamId / 0x100u; data[8] = m_uiStreamId / 0x100u;
data[9] = m_uiStreamId % 0x100u; data[9] = m_uiStreamId % 0x100u;
data[10] = (m_uiM17FrameNumber / 0x1000000u) % 0x100u; data[10] = (m_uiM17FrameNumber >> 24) & 0xffu;
data[11] = (m_uiM17FrameNumber / 0x10000u) % 0x100u; data[11] = (m_uiM17FrameNumber >> 16) & 0xffu;
data[12] = (m_uiM17FrameNumber / 0x100u) % 0x100u; data[12] = (m_uiM17FrameNumber >> 8) & 0xffu;
data[13] = m_uiM17FrameNumber % 100u; data[13] = m_uiM17FrameNumber & 0xffu;
data[14] = m_uiDstarPacketId; data[14] = m_uiDstarPacketId;
data[15] = m_uiDmrPacketId; data[15] = m_uiDmrPacketId;
data[16] = m_uiDmrPacketSubid; data[16] = m_uiDmrPacketSubid;

Loading…
Cancel
Save

Powered by TurnKey Linux.