Class JPEGHuffmanTable
- java.lang.Object
-
- javax.imageio.plugins.jpeg.JPEGHuffmanTable
public class JPEGHuffmanTable extends Object
A class encapsulating a single JPEG Huffman table. Fields are provided for the "standard" tables taken from Annex K of the JPEG specification. These are the tables used as defaults.
For more information about the operation of the standard JPEG plug-in, see the JPEG metadata format specification and usage notes
Field Summary
Modifier and Type | Field | Description |
---|---|---|
static JPEGHuffmanTable | StdACChrominance | The standard AC chrominance Huffman table. |
static JPEGHuffmanTable | StdACLuminance | The standard AC luminance Huffman table. |
static JPEGHuffmanTable | StdDCChrominance | The standard DC chrominance Huffman table. |
static JPEGHuffmanTable | StdDCLuminance | The standard DC luminance Huffman table. |
Constructor Summary
Constructor | Description |
---|---|
JPEGHuffmanTable(short[] lengths,
short[] values) | Creates a Huffman table and initializes it. |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
short[] | getLengths() | Returns an array of |
short[] | getValues() | Returns an array of |
String | toString() | Returns a |
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Field Detail
StdDCLuminance
public static final JPEGHuffmanTable StdDCLuminance
The standard DC luminance Huffman table.
StdDCChrominance
public static final JPEGHuffmanTable StdDCChrominance
The standard DC chrominance Huffman table.
StdACLuminance
public static final JPEGHuffmanTable StdACLuminance
The standard AC luminance Huffman table.
StdACChrominance
public static final JPEGHuffmanTable StdACChrominance
The standard AC chrominance Huffman table.
Constructor Detail
JPEGHuffmanTable
public JPEGHuffmanTable(short[] lengths, short[] values)
Creates a Huffman table and initializes it. The input arrays are copied. The arrays must describe a possible Huffman table. For example, 3 codes cannot be expressed with a single bit.
- Parameters:
-
lengths
- an array ofshort
s wherelengths[k]
is equal to the number of values with corresponding codes of lengthk + 1
bits. -
values
- an array of shorts containing the values in order of increasing code length. - Throws:
-
IllegalArgumentException
- iflengths
orvalues
are null, the length oflengths
is greater than 16, the length ofvalues
is greater than 256, if any value inlengths
orvalues
is less than zero, or if the arrays do not describe a valid Huffman table.
Method Detail
getLengths
public short[] getLengths()
Returns an array of short
s containing the number of values for each length in the Huffman table. The returned array is a copy.
- Returns:
- a
short
array wherearray[k-1]
is equal to the number of values in the table of lengthk
. - See Also:
getValues()
getValues
public short[] getValues()
Returns an array of short
s containing the values arranged by increasing length of their corresponding codes. The interpretation of the array is dependent on the values returned from getLengths
. The returned array is a copy.
- Returns:
- a
short
array of values. - See Also:
getLengths()
toString
public String toString()
Returns a String
representing this Huffman table.