Lines Matching full:htbl
120 static void FixHuffTbl (HuffmanTable *htbl)
148 for (i = 1; i <= (int32) htbl->bits [l]; i++)
188 memset (htbl->ehufsi, 0, sizeof (htbl->ehufsi));
193 htbl->ehufco [htbl->huffval [p]] = huffcode [p];
194 htbl->ehufsi [htbl->huffval [p]] = huffsize [p];
205 if (htbl->bits [l])
208 htbl->valptr [l] = (int16) p;
209 htbl->mincode [l] = huffcode [p];
211 p += htbl->bits [l];
213 htbl->maxcode [l] = huffcode [p - 1];
219 htbl->maxcode [l] = -1;
226 htbl->maxcode[17] = 0xFFFFFL;
234 memset (htbl->numbits, 0, sizeof (htbl->numbits));
244 int32 value = htbl->huffval [p];
252 if (ul >= static_cast<int32>(sizeof(htbl->numbits) / sizeof(htbl->numbits[0])) ||
253 ul >= static_cast<int32>(sizeof(htbl->value) / sizeof(htbl->value[0])))
260 htbl->numbits [i] = size;
261 htbl->value [i] = value;
475 int32 HuffDecode (HuffmanTable *htbl);
1616 inline int32 dng_lossless_decoder::HuffDecode (HuffmanTable *htbl)
1625 if (htbl->numbits [code])
1628 flush_bits (htbl->numbits [code]);
1630 return htbl->value [code];
1641 while (code > htbl->maxcode [l])
1655 return htbl->huffval [htbl->valptr [l] +
1656 ((int32) (code - htbl->mincode [l]))];
2664 void GenHuffCoding (HuffmanTable *htbl, uint32 *freq);
3174 * htbl->bits and htbl->huffval are constructed.
3182 void dng_lossless_encoder::GenHuffCoding (HuffmanTable *htbl, uint32 *freq)
3360 memcpy (htbl->bits, bits, sizeof (htbl->bits));
3376 htbl->huffval [p] = (uint8) j;
3530 HuffmanTable *htbl = &huffTable [index];
3537 length += htbl->bits [i];
3544 EmitByte (htbl->bits [i]);
3547 EmitByte (htbl->huffval [i]);