Жуть, меня тоже культяпки выбешивают. Но вот в файле
packet.cpp явно есть функция:
Код:
|
void Packet::sendPacket(const QByteArray &data)
{
QByteArray to_send;
unsigned int len_tot = data.size();
if (len_tot ‹= 256) {
to_send.append((char)2);
to_send.append((char)len_tot);
} else {
to_send.append((char)3);
to_send.append((char)(len_tot ›› 8));
to_send.append((char)(len_tot & 0xFF));
}
unsigned short crc = crc16((const unsigned char*)data.data(), len_tot);
to_send.append(data);
to_send.append((char)(crc ›› 8));
to_send.append((char)(crc & 0xFF));
to_send.append((char)3);
emit dataToSend(to_send);
} |
Т.е. к "пакету" данных добавляется 2 или 3, дальше - длина пакета, дальше - CRC. ХЗ, как они это расшифровывают потом (хотя, возможно, функция "append" добавляет в голову, а не хвост, здесь тоже не понять, как отличают 2/3 от тех же 2/3 в качестве длины). Но похоже, что у них - свой убогий бинарный протокол.
А вот и
функция обработки принятых данных. Какая-то адова жесть. Непонятно, почему нельзя было элементарным языком объяснить этот убогий протокол. А еще лучше - пользовались бы нормальным текстовым и не выпендривались!