QSAS_2_4/QSAS_dist/src/Utilities/qcdf/cdfhuff.c File Reference

#include "cdflib.h"

Classes

struct  tree_node
struct  code
struct  bit_file
struct  tree
struct  tree::node

Defines

#define END_OF_STREAM   256
#define END_OF_STREAM   256
#define ESCAPE   257
#define SYMBOL_COUNT   258
#define NODE_TABLE_COUNT   ((SYMBOL_COUNT*2)-1)
#define ROOT_NODE   0
#define MAX_WEIGHT   0x8000

Typedefs

typedef uByte BYTE
typedef uInt16 WORD
typedef uInt32 DWORD
typedef uInt INT
typedef struct tree_node NODE
typedef struct code CODE
typedef struct bit_file BIT_FILE
typedef struct tree TREE

Functions

static BIT_FILE *StartBitFile PROTOARGs ((vFILE *fp))
static Logical EndOutputBitFile PROTOARGs ((BIT_FILE *bit_file))
static Logical OutputBits PROTOARGs ((BIT_FILE *bit_file, DWORD code, int count))
static Logical output_counts PROTOARGs ((BIT_FILE *output, NODE *nodes))
static Logical count_bytes PROTOARGs ((vFILE *input, DWORD *counts, Int32 iSize))
static void scale_counts PROTOARGs ((DWORD *counts, NODE *nodes))
static int build_tree PROTOARGs ((NODE *nodes))
static void convert_tree_to_code PROTOARGs ((NODE *nodes, CODE *codes, INT code_so_far, int bits, int node))
static CDFstatus compress_data PROTOARGs ((vFILE *input, BIT_FILE *output, CODE *codes, Int32 iSize, CDFstatus iError, CDFstatus oError))
static Logical input_counts PROTOARGs ((BIT_FILE *input, NODE *nodes))
static CDFstatus expand_data PROTOARGs ((BIT_FILE *input, vFILE *output, NODE *nodes, int root_node, CDFstatus iError, CDFstatus oError))
static void InitializeTree PROTOARGs ((TREE *tree))
static Logical EncodeSymbol PROTOARGs ((TREE *tree, INT c, BIT_FILE *output))
static int DecodeSymbol PROTOARGs ((TREE *tree, BIT_FILE *input))
static void UpdateModel PROTOARGs ((TREE *tree, int c))
static void swap_nodes PROTOARGs ((TREE *tree, int i, int j))
static DWORD InputBits PROTOARGs ((BIT_FILE *bit_file, int bit_count))
STATICforIDL CDFstatus CompressHUFF0 (vFILE *input, Int32 iOffset, Int32 iSize, CDFstatus iError, vFILE *oFp, Int32 oOffset, Int32 *oSize, CDFstatus oError)
STATICforIDL CDFstatus DecompressHUFF0 (vFILE *iFp, Int32 iOffset, CDFstatus iError, vFILE *output, Int32 oOffset, CDFstatus oError)
STATICforIDL CDFstatus CompressAHUFF0 (vFILE *input, Int32 iOffset, Int32 iSize, CDFstatus iError, vFILE *oFp, Int32 oOffset, Int32 *oSize, CDFstatus oError)
STATICforIDL CDFstatus DecompressAHUFF0 (vFILE *iFp, Int32 iOffset, CDFstatus iError, vFILE *output, Int32 oOffset, CDFstatus oError)
static Logical output_counts (BIT_FILE *output, NODE *nodes)
static Logical count_bytes (vFILE *input, DWORD *counts, Int32 iSize)
static void scale_counts (DWORD *counts, NODE *nodes)
static int build_tree (NODE *nodes)
static void convert_tree_to_code (NODE *nodes, CODE *codes, INT code_so_far, int bits, int node)
static CDFstatus compress_data (vFILE *input, BIT_FILE *output, CODE *codes, Int32 iSize, CDFstatus iError, CDFstatus oError)
static BIT_FILEStartBitFile (vFILE *fp)
static Logical EndOutputBitFile (BIT_FILE *bit_file)
static Logical EndInputBitFile (BIT_FILE *bit_file)
static Logical OutputBits (BIT_FILE *bit_file, DWORD code, int count)
static int InputBit (BIT_FILE *bit_file)
static DWORD InputBits (BIT_FILE *bit_file, int bit_count)
static Logical input_counts (BIT_FILE *input, NODE *nodes)
static CDFstatus expand_data (BIT_FILE *input, vFILE *output, NODE *nodes, int root_node, CDFstatus iError, CDFstatus oError)
static void InitializeTree (TREE *tree)
static Logical EncodeSymbol (TREE *tree, INT c, BIT_FILE *output)
static int DecodeSymbol (TREE *tree, BIT_FILE *input)
static void UpdateModel (TREE *tree, int c)
static void RebuildTree (TREE *tree)
static void swap_nodes (TREE *tree, int i, int j)
static void add_new_node (TREE *tree, int c)

Define Documentation

#define END_OF_STREAM   256

#define END_OF_STREAM   256

#define ESCAPE   257

#define MAX_WEIGHT   0x8000

#define NODE_TABLE_COUNT   ((SYMBOL_COUNT*2)-1)

#define ROOT_NODE   0

#define SYMBOL_COUNT   258


Typedef Documentation

typedef struct bit_file BIT_FILE

typedef uByte BYTE

typedef struct code CODE

typedef uInt32 DWORD

typedef uInt INT

typedef struct tree_node NODE

typedef struct tree TREE

typedef uInt16 WORD


Function Documentation

static void add_new_node ( TREE tree,
int  c 
) [static]

static int build_tree ( NODE nodes  )  [static]

static CDFstatus compress_data ( vFILE input,
BIT_FILE output,
CODE codes,
Int32  iSize,
CDFstatus  iError,
CDFstatus  oError 
) [static]

STATICforIDL CDFstatus CompressAHUFF0 ( vFILE input,
Int32  iOffset,
Int32  iSize,
CDFstatus  iError,
vFILE oFp,
Int32  oOffset,
Int32 oSize,
CDFstatus  oError 
)

STATICforIDL CDFstatus CompressHUFF0 ( vFILE input,
Int32  iOffset,
Int32  iSize,
CDFstatus  iError,
vFILE oFp,
Int32  oOffset,
Int32 oSize,
CDFstatus  oError 
)

static void convert_tree_to_code ( NODE nodes,
CODE codes,
INT  code_so_far,
int  bits,
int  node 
) [static]

static Logical count_bytes ( vFILE input,
DWORD counts,
Int32  iSize 
) [static]

static int DecodeSymbol ( TREE tree,
BIT_FILE input 
) [static]

STATICforIDL CDFstatus DecompressAHUFF0 ( vFILE iFp,
Int32  iOffset,
CDFstatus  iError,
vFILE output,
Int32  oOffset,
CDFstatus  oError 
)

STATICforIDL CDFstatus DecompressHUFF0 ( vFILE iFp,
Int32  iOffset,
CDFstatus  iError,
vFILE output,
Int32  oOffset,
CDFstatus  oError 
)

static Logical EncodeSymbol ( TREE tree,
INT  c,
BIT_FILE output 
) [static]

static Logical EndInputBitFile ( BIT_FILE bit_file  )  [static]

static Logical EndOutputBitFile ( BIT_FILE bit_file  )  [static]

static CDFstatus expand_data ( BIT_FILE input,
vFILE output,
NODE nodes,
int  root_node,
CDFstatus  iError,
CDFstatus  oError 
) [static]

static void InitializeTree ( TREE tree  )  [static]

static Logical input_counts ( BIT_FILE input,
NODE nodes 
) [static]

static int InputBit ( BIT_FILE bit_file  )  [static]

static DWORD InputBits ( BIT_FILE bit_file,
int  bit_count 
) [static]

static Logical output_counts ( BIT_FILE output,
NODE nodes 
) [static]

static Logical OutputBits ( BIT_FILE bit_file,
DWORD  code,
int  count 
) [static]

static DWORD InputBits PROTOARGs ( (BIT_FILE *bit_file, int bit_count)   )  [static]

static void swap_nodes PROTOARGs ( (TREE *tree, int i, int j)   )  [static]

static void add_new_node PROTOARGs ( (TREE *tree, int c)   )  [static]

static int DecodeSymbol PROTOARGs ( (TREE *tree, BIT_FILE *input)   )  [static]

static Logical EncodeSymbol PROTOARGs ( (TREE *tree, INT c, BIT_FILE *output)   )  [static]

static void RebuildTree PROTOARGs ( (TREE *tree  )  [static]

static CDFstatus expand_data PROTOARGs ( (BIT_FILE *input, vFILE *output, NODE *nodes, int root_node, CDFstatus iError, CDFstatus oError)   )  [static]

static Logical input_counts PROTOARGs ( (BIT_FILE *input, NODE *nodes)   )  [static]

static CDFstatus compress_data PROTOARGs ( (vFILE *input, BIT_FILE *output, CODE *codes, Int32 iSize, CDFstatus iError, CDFstatus oError)   )  [static]

static void convert_tree_to_code PROTOARGs ( (NODE *nodes, CODE *codes, INT code_so_far, int bits, int node)   )  [static]

static int build_tree PROTOARGs ( (NODE *nodes)   )  [static]

static void scale_counts PROTOARGs ( (DWORD *counts, NODE *nodes)   )  [static]

static Logical count_bytes PROTOARGs ( (vFILE *input, DWORD *counts, Int32 iSize)   )  [static]

static Logical output_counts PROTOARGs ( (BIT_FILE *output, NODE *nodes)   )  [static]

static Logical OutputBits PROTOARGs ( (BIT_FILE *bit_file, DWORD code, int count)   )  [static]

static int InputBit PROTOARGs ( (BIT_FILE *bit_file  )  [static]

static BIT_FILE* StartBitFile PROTOARGs ( (vFILE *fp)   )  [static]

static void RebuildTree ( TREE tree  )  [static]

static void scale_counts ( DWORD counts,
NODE nodes 
) [static]

static BIT_FILE* StartBitFile ( vFILE fp  )  [static]

static void swap_nodes ( TREE tree,
int  i,
int  j 
) [static]

static void UpdateModel ( TREE tree,
int  c 
) [static]


Generated on Fri Jan 8 12:51:24 2010 for QSAS by  doxygen 1.5.7