Class CRC64Checksum

java.lang.Object
org.biojava.nbio.core.util.CRC64Checksum
All Implemented Interfaces:
Checksum

public class CRC64Checksum extends Object implements Checksum
Utility class that calculates a CRC64 checksum on a stream of bytes. Code was based on some from BioPerl. Note that we use longs then cast them to avoid the lack of an unsigned int in Java. Longs are 64-bit but we are only using the bottom 32 bits. An int is 32-bit but encodes sign so we can get amusing results if we don't allow for this.
Author:
Unknown. Copied from Expasy4J for convenience. See http://dev.isb-sib.ch/projects/expasy4j/
  • Constructor Details

  • Method Details

    • update

      public void update(int b)
      Specified by:
      update in interface Checksum
    • update

      public void update(byte[] b, int offset, int length)
      Updates the CRC-64 checksum with the specified array of bytes.
      Note that BioJava before version 6.0 implemented this method incorrectly, using length as an index.
      Specified by:
      update in interface Checksum
      Throws:
      IllegalArgumentException - if offset is negative, or length is negative, or offset+length is negative or greater than the length of the array b.
    • update

      public void update(String s)
    • getValue

      public long getValue()
      Specified by:
      getValue in interface Checksum
    • toString

      public String toString()
      Returns a zero-padded 16 character wide string containing the current value of this checksum in uppercase hexadecimal format.
      Overrides:
      toString in class Object
    • reset

      public void reset()
      Specified by:
      reset in interface Checksum