Package htsjdk.samtools.cram.compression
Class ExternalCompressor
java.lang.Object
htsjdk.samtools.cram.compression.ExternalCompressor
- Direct Known Subclasses:
BZIP2ExternalCompressor,FQZCompExternalCompressor,GZIPExternalCompressor,LZMAExternalCompressor,NameTokeniserExternalCompressor,RangeExternalCompressor,RANS4x8ExternalCompressor,RANSNx16ExternalCompressor,RAWExternalCompressor
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract byte[]compress(byte[] data, CRAMCodecModelContext contextModel) Compress the data using the codec-specific context model.booleanstatic ExternalCompressorgetCompressorForMethod(BlockCompressionMethod compressionMethod, int compressorSpecificArg) Return an ExternalCompressor subclass based on the BlockCompressionMethod.inthashCode()toString()abstract byte[]uncompress(byte[] data)
-
Field Details
-
NO_COMPRESSION_ARG
public static final int NO_COMPRESSION_ARG- See Also:
-
-
Constructor Details
-
ExternalCompressor
-
-
Method Details
-
compress
Compress the data using the codec-specific context model.- Parameters:
data- the data to compresscontextModel- the context model to use for compression; may be null- Returns:
- the compressed data
-
uncompress
public abstract byte[] uncompress(byte[] data) -
getMethod
-
toString
-
equals
-
hashCode
public int hashCode() -
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
-