Class AbstractLongCrc

All Implemented Interfaces:
Hash, IncrementalLongHash, StatelessHash, StatelessLongHash
Direct Known Subclasses:
NormalLongCrc, ReflectedLongCrc

abstract class AbstractLongCrc extends AbstractIncrementalLongHash
Base implementation of long-width CRC functions.
  • Field Details

    • bitWidth

      protected final int bitWidth
  • Constructor Details

    • AbstractLongCrc

      AbstractLongCrc(String algorithm, int bitWidth, long initial, long xorOut)
  • Method Details

    • algorithm

      public String algorithm()
      Description copied from interface: Hash
      Returns the canonical name of this hash algorithm.
      Returns:
      the name of this hash algorithm
    • length

      public int length()
      Description copied from interface: Hash
      Returns the length in bytes of the output of this hash function.
      Returns:
      the hash length in bytes
    • initial

      protected long initial()
      Description copied from class: AbstractIncrementalLongHash
      The initial state of the hash function, which is the same as the output value for an empty input sequence.
      Specified by:
      initial in class AbstractIncrementalLongHash
      Returns:
      the initial hash state/output
    • resumeUnchecked

      protected long resumeUnchecked(long current, byte[] input, int index, int length)
      Description copied from class: AbstractIncrementalLongHash
      Evaluates this hash function as if the given range of the given input array were appended to the previously hashed input. The index and length parameters have already been validated.
      Specified by:
      resumeUnchecked in class AbstractIncrementalLongHash
      Parameters:
      current - the hash output for input hashed so far
      input - the input array
      index - the starting index of the first input byte
      length - the length of the input range
      Returns:
      the output of the hash function for the concatenated input
    • resumeRaw

      protected abstract long resumeRaw(long crc, byte[] input, int index, int length)
    • reflect

      protected final long reflect(long value)