Lhaz
マクロ定義 | 関数 | 変数
huf.cpp ファイル
#include <stdlib.h>
#include "chuf.h"
#include "lhazerr.h"
#include "lhazif.h"

マクロ定義

#define NPT   0x80
 
#define NP   (MAX_DICBIT + 1)
 
#define USHRT_BIT   16 /* (CHAR_BIT * sizeof(ushort)) */
 
#define NT   (USHRT_BIT + 3)
 
#define PBIT   5 /* smallest integer such that (1 << PBIT) > * NP */
 
#define TBIT   5 /* smallest integer such that (1 << TBIT) > * NT */
 

関数

void init_putbits ()
 
void make_table (short, uchar[], short, ushort[], int)
 
short make_tree (int, ushort[], uchar[], ushort[])
 
unsigned char * alloc_buf (void)
 
void free_buf (void)
 

変数

ushort bitbuf
 
ushort left [2 *NC-1]
 
ushort right [2 *NC-1]
 
uchar c_len [NC]
 
uchar pt_len [NPT]
 
ushort c_freq [2 *NC-1]
 
ushort c_table [4096]
 
ushort c_code [NC]
 
ushort p_freq [2 *NP-1]
 
ushort pt_table [256]
 
ushort pt_code [NPT]
 
ushort t_freq [2 *NT-1]
 

マクロ定義詳解

#define NP   (MAX_DICBIT + 1)
#define NPT   0x80
#define NT   (USHRT_BIT + 3)
#define PBIT   5 /* smallest integer such that (1 << PBIT) > * NP */
#define TBIT   5 /* smallest integer such that (1 << TBIT) > * NT */
#define USHRT_BIT   16 /* (CHAR_BIT * sizeof(ushort)) */

関数詳解

unsigned char* alloc_buf ( void  )
void free_buf ( void  )
void init_putbits ( )
void make_table ( short  ,
uchar  [],
short  ,
ushort  [],
int   
)
short make_tree ( int  ,
ushort  [],
uchar  [],
ushort  [] 
)

変数詳解

ushort bitbuf
ushort c_code[NC]
ushort c_freq[2 *NC-1]
uchar c_len[NC]
ushort c_table[4096]
ushort left[2 *NC-1]
ushort p_freq[2 *NP-1]
ushort pt_code[NPT]
uchar pt_len[NPT]
ushort pt_table[256]
ushort right[2 *NC-1]
ushort t_freq[2 *NT-1]