crc16 function

int crc16(
  1. List<int> data
)

Calculate CRC16 checksum

Implementation

int crc16(List<int> data) {
  _crcTable ??= (() {
    _initCrcTable();
    return _crcTable;
  })()!;

  int val = 0xFFFF;
  for (final v in data) {
    val = (val >> 8) ^ _crcTable![(val ^ v) & 0x00FF];
  }
  return val & 0xFFFF;
}