crc

object crc

Provides support for calculating cyclic redundancy checks.

Provides support for calculating cyclic redundancy checks.

See also
class Object
trait Matchable
class Any

Value members

Concrete methods

def apply(poly: BitVector, initial: BitVector, reflectInput: Boolean, reflectOutput: Boolean, finalXor: BitVector): BitVector => BitVector

Constructs a table-based CRC function using the specified polynomial.

Constructs a table-based CRC function using the specified polynomial.

Each of the input vectors must be the same size.

Returns

function that calculates a n-bit CRC where n = poly.size

def bitwise(poly: BitVector, initial: BitVector, reflectInput: Boolean, reflectOutput: Boolean, finalXor: BitVector, value: BitVector): BitVector

Calculates a bitwise CRC of the specified value.

Calculates a bitwise CRC of the specified value.

If calculating a lot of CRCs, prefer the apply method, which precomputes a lookup table and uses it in each CRC calculation.

Returns

function that calculates a n-bit CRC where n = poly.size

def int32(poly: Int, initial: Int, reflectInput: Boolean, reflectOutput: Boolean, finalXor: Int): BitVector => Int

Constructs a 32-bit, table-based CRC function using the specified polynomial.

Constructs a 32-bit, table-based CRC function using the specified polynomial.

Returns

function that calculates a 32-bit CRC

Concrete fields

32-bit CRC using poly 0x04c11db7, initial 0xffffffff, reflected input/output, and final xor 0xffffffff.

32-bit CRC using poly 0x04c11db7, initial 0xffffffff, reflected input/output, and final xor 0xffffffff.

32-bit CRC using poly 0x1edc6f41, initial 0xffffffff, reflected input/output, and final xor 0xffffffff.

32-bit CRC using poly 0x1edc6f41, initial 0xffffffff, reflected input/output, and final xor 0xffffffff.