29 void HuffmanDecoder::printTable_(std::string prefix,
unsigned int pos)
const
31 const HuffmanNode &cur = m_p[pos];
33 std::cerr << prefix <<
" " << cur.data <<
"\n";
35 printTable_(prefix +
"0", pos + 1);
36 printTable_(prefix +
"1", cur.data);
40 HuffmanDecoder::HuffmanDecoder(
const HuffmanNode*
const p) : m_p(p)
44 void HuffmanDecoder::printTable()
const
49 unsigned int HuffmanDecoder::decode(BitIterator& i)
52 while (!m_p[cur].isLeaf) {
53 unsigned int bit = i.get(1);
CIFF is the container for CRW files. It is an attempt from Canon to make this a standard. I guess it failed.