uk.ac.bristol.star.cdf.record
Class Compression

java.lang.Object
  extended by uk.ac.bristol.star.cdf.record.Compression

public abstract class Compression
extends java.lang.Object

Defines a data compression type supported for compressing CDF data.

Since:
19 Jun 2013

Field Summary
static Compression AHUFF
          Adaptive Huffman encoding.
static Compression GZIP
          Gzip compression.
static Compression HUFF
          Huffman encoding.
static Compression NONE
          No compression.
static Compression RLE
          Run length encoding.
 
Constructor Summary
protected Compression(java.lang.String name)
          Constructor.
 
Method Summary
static Compression getCompression(int cType)
          Returns a Compression object corresponding to a given compression code.
 java.lang.String getName()
          Returns this compression format's name.
abstract  java.io.InputStream uncompressStream(java.io.InputStream in)
          Turns a stream containing compressed data into a stream containing uncompressed data.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NONE

public static final Compression NONE
No compression.


RLE

public static final Compression RLE
Run length encoding.


HUFF

public static final Compression HUFF
Huffman encoding.


AHUFF

public static final Compression AHUFF
Adaptive Huffman encoding.


GZIP

public static final Compression GZIP
Gzip compression.

Constructor Detail

Compression

protected Compression(java.lang.String name)
Constructor.

Parameters:
name - compression format name
Method Detail

uncompressStream

public abstract java.io.InputStream uncompressStream(java.io.InputStream in)
                                              throws java.io.IOException
Turns a stream containing compressed data into a stream containing uncompressed data.

Parameters:
in - compressed input stream
Returns:
uncompressed input stream
Throws:
java.io.IOException

getName

public java.lang.String getName()
Returns this compression format's name.

Returns:
name

getCompression

public static Compression getCompression(int cType)
                                  throws CdfFormatException
Returns a Compression object corresponding to a given compression code.

Parameters:
cType - compression code, as taken from the CPR cType field
Returns:
compression object
Throws:
CdfFormatException - if the compression type is unknown