Package me.lemire.longcompression
Interface LongCODEC
- All Known Subinterfaces:
IntegratedLongCODEC
- All Known Implementing Classes:
LongAs2IntsCodec,LongBinaryPacking,LongComposition,LongJustCopy,LongVariableByte
public interface LongCODEC
Interface describing a standard CODEC to compress longs.
- Author:
- Benoit Lacelle
-
Method Summary
Modifier and TypeMethodDescriptionvoidcompress(long[] in, IntWrapper inpos, int inlength, long[] out, IntWrapper outpos) Compress data from an array to another array.voiduncompress(long[] in, IntWrapper inpos, int inlength, long[] out, IntWrapper outpos) Uncompress data from an array to another array.
-
Method Details
-
compress
Compress data from an array to another array. Both inpos and outpos are modified to represent how much data was read and written to. If 12 longs (inlength = 12) are compressed to 3 longs, then inpos will be incremented by 12 while outpos will be incremented by 3. We use IntWrapper to pass the values by reference.- Parameters:
in- input arrayinpos- where to start reading in the arrayinlength- how many longs to compressout- output arrayoutpos- where to write in the output array
-
uncompress
Uncompress data from an array to another array. Both inpos and outpos parameters are modified to indicate new positions after read/write.- Parameters:
in- array containing data in compressed forminpos- where to start reading in the arrayinlength- length of the compressed data (ignored by some schemes)out- array where to write the uncompressed outputoutpos- where to start writing the uncompressed output in out
-