javax.imageio.plugins.jpeg
Class JPEGHuffmanTable

java.lang.Object
  extended by javax.imageio.plugins.jpeg.JPEGHuffmanTable

public class JPEGHuffmanTable
extends Object

The JPEGHuffmanTable class represents a Huffman table read from a JPEG image file. The standard JPEG AC and DC chrominance and luminance values are provided as static fields.


Field Summary
static JPEGHuffmanTable StdACChrominance
          The standard JPEG AC chrominance Huffman table.
static JPEGHuffmanTable StdACLuminance
          The standard JPEG AC luminance Huffman table.
static JPEGHuffmanTable StdDCChrominance
          The standard JPEG DC chrominance Huffman table.
static JPEGHuffmanTable StdDCLuminance
          The standard JPEG DC luminance Huffman table.
 
Constructor Summary
JPEGHuffmanTable(short[] lengths, short[] values)
          Construct and initialize a Huffman table.
 
Method Summary
 short[] getLengths()
          Retrieve a copy of the array of Huffman code lengths.
 short[] getValues()
          Retrieve a copy of the array of Huffman values, sorted in order of increasing code length.
 String toString()
          Create a string representation of this JPEG Huffman table.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

StdACChrominance

public static final JPEGHuffmanTable StdACChrominance
The standard JPEG AC chrominance Huffman table.


StdACLuminance

public static final JPEGHuffmanTable StdACLuminance
The standard JPEG AC luminance Huffman table.


StdDCChrominance

public static final JPEGHuffmanTable StdDCChrominance
The standard JPEG DC chrominance Huffman table.


StdDCLuminance

public static final JPEGHuffmanTable StdDCLuminance
The standard JPEG DC luminance Huffman table.

Constructor Detail

JPEGHuffmanTable

public JPEGHuffmanTable(short[] lengths,
                        short[] values)
Construct and initialize a Huffman table. Copies are created of the array arguments. lengths[index] stores the number of Huffman values with Huffman codes of length index + 1. The values array stores the Huffman values in order of increasing code length.

Parameters:
lengths - an array of Huffman code lengths
values - a sorted array of Huffman values
Throws:
IllegalArgumentException - if either parameter is null, if lengths.length > 16 or values.length > 256, if any value in length or values is negative, or if the parameters do not describe a valid Huffman table
Method Detail

getLengths

public short[] getLengths()
Retrieve a copy of the array of Huffman code lengths. If the returned array is called lengthcount, there are lengthcount[index] codes of length index + 1.

Returns:
a copy of the array of Huffman code lengths

getValues

public short[] getValues()
Retrieve a copy of the array of Huffman values, sorted in order of increasing code length.

Returns:
a copy of the array of Huffman values

toString

public String toString()
Create a string representation of this JPEG Huffman table.

Overrides:
toString in class Object
Returns:
a string representation of this JPEG Huffman table.
See Also:
Object.getClass(), Object.hashCode(), Class.getName(), Integer.toHexString(int)