Parolin 0.7.9 6796
Console (soon DLLs) to do a tar like job
Loading...
Searching...
No Matches
huffman.c File Reference
#include "bzlib_private.h"

Macros

#define WEIGHTOF(zz0)
 
#define DEPTHOF(zz1)
 
#define MYMAX(zz2, zz3)
 
#define ADDWEIGHTS(zw1, zw2)
 
#define UPHEAP(z)
 
#define DOWNHEAP(z)
 

Functions

void BZ2_hbMakeCodeLengths (UChar *len, Int32 *freq, Int32 alphaSize, Int32 maxLen)
 
void BZ2_hbAssignCodes (Int32 *code, UChar *length, Int32 minLen, Int32 maxLen, Int32 alphaSize)
 
void BZ2_hbCreateDecodeTables (Int32 *limit, Int32 *base, Int32 *perm, UChar *length, Int32 minLen, Int32 maxLen, Int32 alphaSize)
 

Macro Definition Documentation

◆ ADDWEIGHTS

#define ADDWEIGHTS ( zw1,
zw2 )
Value:
(WEIGHTOF(zw1)+WEIGHTOF(zw2)) | \
(1 + MYMAX(DEPTHOF(zw1),DEPTHOF(zw2)))
#define WEIGHTOF(zz0)
Definition huffman.c:25
#define DEPTHOF(zz1)
Definition huffman.c:26
#define MYMAX(zz2, zz3)
Definition huffman.c:27

◆ DEPTHOF

#define DEPTHOF ( zz1)
Value:
((zz1) & 0x000000ff)

◆ DOWNHEAP

#define DOWNHEAP ( z)
Value:
{ \
Int32 zz, yy, tmp; \
zz = z; tmp = heap[zz]; \
while (True) { \
yy = zz << 1; \
if (yy > nHeap) break; \
if (yy < nHeap && \
weight[heap[yy+1]] < weight[heap[yy]]) \
yy++; \
if (weight[tmp] < weight[heap[yy]]) break; \
heap[zz] = heap[yy]; \
zz = yy; \
} \
heap[zz] = tmp; \
}
#define True
Definition bzlib_private.h:49
int Int32
Definition bzlib_private.h:44

◆ MYMAX

#define MYMAX ( zz2,
zz3 )
Value:
((zz2) > (zz3) ? (zz2) : (zz3))

◆ UPHEAP

#define UPHEAP ( z)
Value:
{ \
Int32 zz, tmp; \
zz = z; tmp = heap[zz]; \
while (weight[tmp] < weight[heap[zz >> 1]]) { \
heap[zz] = heap[zz >> 1]; \
zz >>= 1; \
} \
heap[zz] = tmp; \
}

◆ WEIGHTOF

#define WEIGHTOF ( zz0)
Value:
((zz0) & 0xffffff00)

Function Documentation

◆ BZ2_hbAssignCodes()

void BZ2_hbAssignCodes ( Int32 * code,
UChar * length,
Int32 minLen,
Int32 maxLen,
Int32 alphaSize )

◆ BZ2_hbCreateDecodeTables()

void BZ2_hbCreateDecodeTables ( Int32 * limit,
Int32 * base,
Int32 * perm,
UChar * length,
Int32 minLen,
Int32 maxLen,
Int32 alphaSize )

◆ BZ2_hbMakeCodeLengths()

void BZ2_hbMakeCodeLengths ( UChar * len,
Int32 * freq,
Int32 alphaSize,
Int32 maxLen )