3#include <QtCore/QByteArray>
5#include <QtCore/QVector>
17 void setWhitelist(
const QVector<int>& ids) { _whitelist = QSet<int>(ids.begin(), ids.end()); }
19 bool isWhitelisted(uint16_t
id)
const {
return _whitelist.isEmpty() || _whitelist.contains(
id); }
29 const uint8_t*
crcBytes()
const {
return _crcBytes; }
35 static uint32_t
crc24q(
const uint8_t* data,
size_t len);
50 static constexpr uint16_t kMaxPayloadLength = 1023;
55 uint16_t _messageLength;
57 uint16_t _lengthBytesRead;
58 uint8_t _lengthBytes[2];
59 uint16_t _crcBytesRead;
void setWhitelist(const QVector< int > &ids)
static uint32_t crc24q(const uint8_t *data, size_t len)
static constexpr int kCrcSize
QByteArray currentFrame() const
bool isWhitelisted(uint16_t id) const
static constexpr int kHeaderSize
const uint8_t * crcBytes() const
uint16_t messageId() const
uint16_t messageLength() const
bool addByte(uint8_t byte)
static constexpr uint8_t kPreamble