3 package com.pixelmed.codec.jpeg;
14 private static final String identString =
"@(#) $Header: /userland/cvs/codec/com/pixelmed/codec/jpeg/MarkerSegmentDQT.java,v 1.2 2014/03/21 21:46:20 dclunie Exp $";
18 private int[] QuantizationTableElementPrecision;
19 private int[] QuantizationTableIdentifier;
20 private int[][] QuantizationTableElement;
23 QuantizationTableElementPrecision =
new int [4];
24 QuantizationTableIdentifier =
new int [4];
25 QuantizationTableElement =
new int [4][];
31 throw new Exception(
"Only 4 tables are permitted");
36 QuantizationTableElement[nTables] =
new int[64];
39 for (
int i=0; i<64; ++i) {
40 if (QuantizationTableElementPrecision[nTables] > 0) {
54 for (
int t=0; t<nTables; ++t) {
55 int id = QuantizationTableIdentifier[t];
56 String key = Integer.toString(
id);
57 qtByIdentifer.put(key,
new QuantizationTable(
id,QuantizationTableElementPrecision[t],QuantizationTableElement[t]));
62 StringBuffer buf =
new StringBuffer();
63 buf.append(
"\n\tDQT:\n");
64 for (
int t=0; t<nTables; ++t) {
65 buf.append(
"\t\t QuantizationTableElementPrecision = "+QuantizationTableElementPrecision[t]+
"\n");
66 buf.append(
"\t\t QuantizationTableIdentifier = " +QuantizationTableIdentifier[t]+
"\n");
67 for (
int i=0; i<64; ++i) {
68 buf.append(
"\t\t\t QuantizationTableElement "+i+
" = "+QuantizationTableElement[t][i]+
"\n");
71 return buf.toString();