rlm@1: /* HuffEnc.h -- functions for Huffman encoding rlm@1: 2008-03-26 rlm@1: Igor Pavlov rlm@1: Public domain */ rlm@1: rlm@1: #ifndef __HUFFENC_H rlm@1: #define __HUFFENC_H rlm@1: rlm@1: #include "Types.h" rlm@1: rlm@1: /* rlm@1: Conditions: rlm@1: num <= 1024 = 2 ^ NUM_BITS rlm@1: Sum(freqs) < 4M = 2 ^ (32 - NUM_BITS) rlm@1: maxLen <= 16 = kMaxLen rlm@1: Num_Items(p) >= HUFFMAN_TEMP_SIZE(num) rlm@1: */ rlm@1: rlm@1: void Huffman_Generate(const UInt32 *freqs, UInt32 *p, Byte *lens, UInt32 num, UInt32 maxLen); rlm@1: rlm@1: #endif