Package htsjdk.samtools.cram.compression
Class ExternalCompressor
- java.lang.Object
-
- htsjdk.samtools.cram.compression.ExternalCompressor
-
- Direct Known Subclasses:
BZIP2ExternalCompressor,GZIPExternalCompressor,LZMAExternalCompressor,RANSExternalCompressor,RAWExternalCompressor
public abstract class ExternalCompressor extends Object
-
-
Field Summary
Fields Modifier and Type Field Description static intNO_COMPRESSION_ARG
-
Constructor Summary
Constructors Modifier Constructor Description protectedExternalCompressor(BlockCompressionMethod method)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract byte[]compress(byte[] data)booleanequals(Object o)static ExternalCompressorgetCompressorForMethod(BlockCompressionMethod compressionMethod, int compressorSpecificArg)Return an ExternalCompressor subclass based on the BlockCompressionMethod.BlockCompressionMethodgetMethod()inthashCode()StringtoString()abstract byte[]uncompress(byte[] data)
-
-
-
Field Detail
-
NO_COMPRESSION_ARG
public static final int NO_COMPRESSION_ARG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExternalCompressor
protected ExternalCompressor(BlockCompressionMethod method)
-
-
Method Detail
-
compress
public abstract byte[] compress(byte[] data)
-
uncompress
public abstract byte[] uncompress(byte[] data)
-
getMethod
public BlockCompressionMethod getMethod()
-
getCompressorForMethod
public static ExternalCompressor getCompressorForMethod(BlockCompressionMethod compressionMethod, int compressorSpecificArg)
Return an ExternalCompressor subclass based on the BlockCompressionMethod. Compressor-specific arguments must be populated by the caller.- Parameters:
compressionMethod- the type of compressor required (BlockCompressionMethod)compressorSpecificArg- the required order for RANS compressors; or the desired write compression level for GZIP- Returns:
- an ExternalCompressor of the requested type, populated with an compressor-specific args
-
-