📄 tcq_quant_local.h
字号:
/*****************************************************************************/
/* Copyright 1999 Science Applications International Corporation (SAIC). */
/* Copyright 1999 University of Arizona, Arizona Board of Regents. */
/* All rights reserved */
/* File: "tcq_quant_local.h" */
/* Description: Trellis coded quantization */
/* Author: Joe Triscari/Tom Flohr */
/* Affiliation: SAIC */
/* Version: VM8.0 */
/* Last Revised: 20 July, 2000 */
/*****************************************************************************/
/*****************************************************************************/
/* Modified by David Taubman to support arbitrary reference points for the */
/* transform and the various regular partitions, so as to facilitate */
/* cropping and geometric transformations in the compressed domain and to */
/* enable full support for CRF's single-sample overlap Wavelet transform, */
/* as originally documented in Seoul. Changes are too numerous to flag */
/* individually within the code. Changes copyrighted by HP with all rights */
/* reserved for the modified parts. */
/*****************************************************************************/
/*****************************************************************************/
/* Modified for general wavelet decompositions. */
/* Copyright 2000 Science Applications International Corporation (SAIC). */
/* Copyright 1995 University of Arizona, Arizona Board of Regents. */
/* All Rights Reserved for modified parts. */
/*****************************************************************************/
#ifndef TCQ_QUANT_LOCAL_H
#define TCQ_QUANT_LOCAL_H
#include <stdio.h>
#define TCQ_MEM_KEY "TCQ QUANTIZATION OBJECT MEMORY"
/*****************************************************************************/
/* tcq_band_info */
/*****************************************************************************/
typedef
struct tcq_band_info {
float scale; /* Scaling factor for floating point data. */
int extra_lsbs;
float **line_buffer;
int num_lines;
int first_block_height, first_block_width;
int current_block_height, remaining_tile_height;
int block_width, block_height;
/* SAIC General Decomp. Begin */
int valid_band;
/* SAIC General Decomp. End */
} tcq_band_info, *tcq_band_info_ptr;
/*****************************************************************************/
/* tcq_level_info */
/*****************************************************************************/
typedef
struct tcq_level_info {
int min_band;
int max_band;
tcq_band_info_ptr bands;
} tcq_level_info, *tcq_level_info_ptr;
/*****************************************************************************/
/* tcq_component_info */
/*****************************************************************************/
typedef
struct tcq_component_info {
int num_levels;
tcq_level_info_ptr levels;
} tcq_component_info, *tcq_component_info_ptr;
/*****************************************************************************/
/* tcq_quantizer_obj */
/*****************************************************************************/
typedef
struct tcq_quantizer_obj {
quantizer_obj base;
int num_components;
tcq_component_info_ptr components;
encoder_ref encoder;
stream_out_ref stream;
forward_info_ref info;
int tnum;
/* SAIC General Decomp. Begin */
char *wt_output_file;
float **wt_output;
int *min_band;
int *max_band;
canvas_dims **band_dims;
int **current_band_line;
int **valid_band;
/* SAIC General Decomp. End */
} tcq_quantizer_obj, *tcq_quantizer_ref;
#endif /* TCQ_QUANT_LOCAL_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -