Package org.biojava.nbio.core.util
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 Summary
Constructors Constructor Description CRC64Checksum()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longgetValue()voidreset()StringtoString()Returns a zero-padded 16 character wide string containing the current value of this checksum in uppercase hexadecimal format.voidupdate(byte[] b, int offset, int length)Updates the CRC-64 checksum with the specified array of bytes.voidupdate(int b)voidupdate(String s)
-
-
-
Constructor Detail
-
CRC64Checksum
public CRC64Checksum()
-
-
Method Detail
-
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, usinglengthas an index.- Specified by:
updatein interfaceChecksum- Throws:
IllegalArgumentException- ifoffsetis negative, orlengthis negative, oroffset+lengthis negative or greater than the length of the arrayb.
-
toString
public String toString()
Returns a zero-padded 16 character wide string containing the current value of this checksum in uppercase hexadecimal format.
-
-