/// <summary>Calculates word length (16-bit) XOR-based check-sum on specified portion of a buffer.</summary> /// <param name="data">Data buffer to perform XOR check-sum on.</param> /// <param name="startIndex">Starts index in data buffer to begin XOR check-sum.</param> /// <param name="length">Total number of bytes from <paramref name="startIndex">startIndex</paramref> to /// perform XOR check-sum overs</param> /// <returns>Word length XOR check-sum.</returns> public static ushort Xor16CheckSum(this byte[] data, int startIndex, int length) { Xor16 checksum = new Xor16(); checksum.Update(data, startIndex, length); return(checksum.Value); }
/// <summary>Calculates word length (16-bit) XOR-based check-sum on specified portion of a buffer.</summary> /// <param name="data">Data buffer to perform XOR check-sum on.</param> /// <param name="startIndex">Starts index in data buffer to begin XOR check-sum.</param> /// <param name="length">Total number of bytes from <paramref name="startIndex">startIndex</paramref> to /// perform XOR check-sum overs</param> /// <returns>Word length XOR check-sum.</returns> public static ushort Xor16CheckSum(this byte[] data, int startIndex, int length) { Xor16 checksum = new Xor16(); checksum.Update(data, startIndex, length); return checksum.Value; }