Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

clip::clip_internal::jpeg_decoder Class Reference

#include <picture.h>

List of all members.

Public Member Functions

 jpeg_decoder (Pjpeg_decoder_stream Pstream, bool use_mmx)
int begin (void)
int decode (void **Pscan_line_ofs, unsigned int *Pscan_line_len)
 ~jpeg_decoder ()
int get_error_code (void)
int get_width (void)
int get_height (void)
int get_num_components (void)
int get_bytes_per_pixel (void)
int get_bytes_per_scan_line (void)
int get_total_bytes_read (void)

Private Member Functions

void free_all_blocks (void)
void terminate (int status)
void * alloc (int n)
void word_clear (void *p, unsigned short c, unsigned int n)
void prep_in_buffer (void)
void read_dht_marker (void)
void read_dqt_marker (void)
void read_sof_marker (void)
void skip_variable_marker (void)
void read_dri_marker (void)
void read_sos_marker (void)
int next_marker (void)
int process_markers (void)
void locate_soi_marker (void)
void locate_sof_marker (void)
int locate_sos_marker (void)
void init (Pjpeg_decoder_stream Pstream, bool use_mmx)
void create_look_ups (void)
void fix_in_buffer (void)
void transform_row (void)
Pcoeff_buf_t coeff_buf_open (int block_num_x, int block_num_y, int block_len_x, int block_len_y)
void coeff_buf_read (Pcoeff_buf_t cb, int block_x, int block_y, BLOCK_TYPE *buffer)
void coeff_buf_write (Pcoeff_buf_t cb, int block_x, int block_y, BLOCK_TYPE *buffer)
BLOCK_TYPE * coeff_buf_getp (Pcoeff_buf_t cb, int block_x, int block_y)
void load_next_row (void)
void decode_next_row (void)
void make_huff_table (int index, Phuff_tables_t hs)
void check_quant_tables (void)
void check_huff_tables (void)
void calc_mcu_block_order (void)
int init_scan (void)
void init_frame (void)
void process_restart (void)
void decode_scan (Pdecode_block_func decode_block_func)
void init_progressive (void)
void init_sequential (void)
void decode_start (void)
void decode_init (Pjpeg_decoder_stream Pstream, bool use_mmx)
void H2V2Convert (void)
void H2V1Convert (void)
void H1V2Convert (void)
void H1V1Convert (void)
void GrayConvert (void)
void find_eoi (void)
unsigned int jpeg_decoder::rol (unsigned int i, unsigned char j)
unsigned int jpeg_decoder::get_char (void)
unsigned int jpeg_decoder::get_char (bool *Ppadding_flag)
void jpeg_decoder::stuff_char (unsigned char q)
unsigned char jpeg_decoder::get_octet (void)
unsigned int jpeg_decoder::get_bits_1 (int num_bits)
unsigned int jpeg_decoder::get_bits_2 (int numbits)
int jpeg_decoder::huff_decode (Phuff_tables_t Ph)
unsigned char jpeg_decoder::clamp (int i)

Private Attributes

int image_x_size
int image_y_size
Pjpeg_decoder_stream Pstream
int progressive_flag
unsigned char * huff_num [JPGD_MAXHUFFTABLES]
unsigned char * huff_val [JPGD_MAXHUFFTABLES]
QUANT_TYPE * quant [JPGD_MAXQUANTTABLES]
int scan_type
int comps_in_frame
int comp_h_samp [JPGD_MAXCOMPONENTS]
int comp_v_samp [JPGD_MAXCOMPONENTS]
int comp_quant [JPGD_MAXCOMPONENTS]
int comp_ident [JPGD_MAXCOMPONENTS]
int comp_h_blocks [JPGD_MAXCOMPONENTS]
int comp_v_blocks [JPGD_MAXCOMPONENTS]
int comps_in_scan
int comp_list [JPGD_MAXCOMPSINSCAN]
int comp_dc_tab [JPGD_MAXCOMPONENTS]
int comp_ac_tab [JPGD_MAXCOMPONENTS]
int spectral_start
int spectral_end
int successive_low
int successive_high
int max_mcu_x_size
int max_mcu_y_size
int blocks_per_mcu
int max_blocks_per_row
int mcus_per_row
int mcus_per_col
int mcu_org [JPGD_MAXBLOCKSPERMCU]
int total_lines_left
int mcu_lines_left
int real_dest_bytes_per_scan_line
int dest_bytes_per_scan_line
int dest_bytes_per_pixel
void * blocks [JPGD_MAXBLOCKS]
Phuff_tables_t h [JPGD_MAXHUFFTABLES]
Pcoeff_buf_t dc_coeffs [JPGD_MAXCOMPONENTS]
Pcoeff_buf_t ac_coeffs [JPGD_MAXCOMPONENTS]
int eob_run
int block_y_mcu [JPGD_MAXCOMPONENTS]
unsigned char * Pin_buf_ofs
int in_buf_left
int tem_flag
bool eof_flag
unsigned char padd_1 [128]
unsigned char in_buf [JPGD_INBUFSIZE+128]
unsigned char padd_2 [128]
int bits_left
unsigned int saved_mm1 [2]
bool use_mmx_getbits
int restart_interval
int restarts_left
int next_restart_num
int max_mcus_per_row
int max_blocks_per_mcu
int max_mcus_per_col
unsigned int * component [JPGD_MAXBLOCKSPERMCU]
unsigned int last_dc_val [JPGD_MAXCOMPONENTS]
Phuff_tables_t dc_huff_seg [JPGD_MAXBLOCKSPERMCU]
Phuff_tables_t ac_huff_seg [JPGD_MAXBLOCKSPERMCU]
BLOCK_TYPE * block_seg [JPGD_MAXBLOCKSPERROW]
int block_max_zag_set [JPGD_MAXBLOCKSPERROW]
unsigned char * Psample_buf
int crr [256]
int cbb [256]
int padd
long crg [256]
long cbg [256]
unsigned char * scan_line_0
unsigned char * scan_line_1
BLOCK_TYPE temp_block [64]
bool use_mmx
bool use_mmx_idct
bool mmx_active
int error_code
bool ready_flag
jmp_buf jmp_state
int total_bytes_read


Constructor & Destructor Documentation

clip::clip_internal::jpeg_decoder::jpeg_decoder Pjpeg_decoder_stream  Pstream,
bool  use_mmx
 

clip::clip_internal::jpeg_decoder::~jpeg_decoder  ) 
 


Member Function Documentation

void * clip::clip_internal::jpeg_decoder::alloc int  n  )  [private]
 

int clip::clip_internal::jpeg_decoder::begin void   ) 
 

void clip::clip_internal::jpeg_decoder::calc_mcu_block_order void   )  [private]
 

void clip::clip_internal::jpeg_decoder::check_huff_tables void   )  [private]
 

void clip::clip_internal::jpeg_decoder::check_quant_tables void   )  [private]
 

BLOCK_TYPE * clip::clip_internal::jpeg_decoder::coeff_buf_getp Pcoeff_buf_t  cb,
int  block_x,
int  block_y
[private]
 

Pcoeff_buf_t clip::clip_internal::jpeg_decoder::coeff_buf_open int  block_num_x,
int  block_num_y,
int  block_len_x,
int  block_len_y
[private]
 

void clip::clip_internal::jpeg_decoder::coeff_buf_read Pcoeff_buf_t  cb,
int  block_x,
int  block_y,
BLOCK_TYPE *  buffer
[private]
 

void clip::clip_internal::jpeg_decoder::coeff_buf_write Pcoeff_buf_t  cb,
int  block_x,
int  block_y,
BLOCK_TYPE *  buffer
[private]
 

void clip::clip_internal::jpeg_decoder::create_look_ups void   )  [private]
 

int clip::clip_internal::jpeg_decoder::decode void **  Pscan_line_ofs,
unsigned int *  Pscan_line_len
 

void clip::clip_internal::jpeg_decoder::decode_init Pjpeg_decoder_stream  Pstream,
bool  use_mmx
[private]
 

void clip::clip_internal::jpeg_decoder::decode_next_row void   )  [private]
 

void clip::clip_internal::jpeg_decoder::decode_scan Pdecode_block_func  decode_block_func  )  [private]
 

void clip::clip_internal::jpeg_decoder::decode_start void   )  [private]
 

void clip::clip_internal::jpeg_decoder::find_eoi void   )  [private]
 

void clip::clip_internal::jpeg_decoder::fix_in_buffer void   )  [private]
 

void clip::clip_internal::jpeg_decoder::free_all_blocks void   )  [private]
 

int clip::clip_internal::jpeg_decoder::get_bytes_per_pixel void   )  [inline]
 

int clip::clip_internal::jpeg_decoder::get_bytes_per_scan_line void   )  [inline]
 

int clip::clip_internal::jpeg_decoder::get_error_code void   )  [inline]
 

int clip::clip_internal::jpeg_decoder::get_height void   )  [inline]
 

int clip::clip_internal::jpeg_decoder::get_num_components void   )  [inline]
 

int clip::clip_internal::jpeg_decoder::get_total_bytes_read void   )  [inline]
 

int clip::clip_internal::jpeg_decoder::get_width void   )  [inline]
 

void clip::clip_internal::jpeg_decoder::GrayConvert void   )  [private]
 

void clip::clip_internal::jpeg_decoder::H1V1Convert void   )  [private]
 

void clip::clip_internal::jpeg_decoder::H1V2Convert void   )  [private]
 

void clip::clip_internal::jpeg_decoder::H2V1Convert void   )  [private]
 

void clip::clip_internal::jpeg_decoder::H2V2Convert void   )  [private]
 

void clip::clip_internal::jpeg_decoder::init Pjpeg_decoder_stream  Pstream,
bool  use_mmx
[private]
 

void clip::clip_internal::jpeg_decoder::init_frame void   )  [private]
 

void clip::clip_internal::jpeg_decoder::init_progressive void   )  [private]
 

int clip::clip_internal::jpeg_decoder::init_scan void   )  [private]
 

void clip::clip_internal::jpeg_decoder::init_sequential void   )  [private]
 

unsigned char clip::clip_internal::jpeg_decoder::jpeg_decoder::clamp int  i  )  [inline, private]
 

unsigned int clip::clip_internal::jpeg_decoder::jpeg_decoder::get_bits_1 int  num_bits  )  [inline, private]
 

unsigned int clip::clip_internal::jpeg_decoder::jpeg_decoder::get_bits_2 int  numbits  )  [inline, private]
 

unsigned int clip::clip_internal::jpeg_decoder::jpeg_decoder::get_char bool *  Ppadding_flag  )  [inline, private]
 

unsigned int clip::clip_internal::jpeg_decoder::jpeg_decoder::get_char void   )  [inline, private]
 

unsigned char clip::clip_internal::jpeg_decoder::jpeg_decoder::get_octet void   )  [inline, private]
 

int clip::clip_internal::jpeg_decoder::jpeg_decoder::huff_decode Phuff_tables_t  Ph  )  [inline, private]
 

unsigned int clip::clip_internal::jpeg_decoder::jpeg_decoder::rol unsigned int  i,
unsigned char  j
[inline, private]
 

void clip::clip_internal::jpeg_decoder::jpeg_decoder::stuff_char unsigned char  q  )  [inline, private]
 

void clip::clip_internal::jpeg_decoder::load_next_row void   )  [private]
 

void clip::clip_internal::jpeg_decoder::locate_sof_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::locate_soi_marker void   )  [private]
 

int clip::clip_internal::jpeg_decoder::locate_sos_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::make_huff_table int  index,
Phuff_tables_t  hs
[private]
 

int clip::clip_internal::jpeg_decoder::next_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::prep_in_buffer void   )  [private]
 

int clip::clip_internal::jpeg_decoder::process_markers void   )  [private]
 

void clip::clip_internal::jpeg_decoder::process_restart void   )  [private]
 

void clip::clip_internal::jpeg_decoder::read_dht_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::read_dqt_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::read_dri_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::read_sof_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::read_sos_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::skip_variable_marker void   )  [private]
 

void clip::clip_internal::jpeg_decoder::terminate int  status  )  [private]
 

void clip::clip_internal::jpeg_decoder::transform_row void   )  [private]
 

void clip::clip_internal::jpeg_decoder::word_clear void *  p,
unsigned short  c,
unsigned int  n
[private]
 


Member Data Documentation

Pcoeff_buf_t clip::clip_internal::jpeg_decoder::ac_coeffs[JPGD_MAXCOMPONENTS] [private]
 

Phuff_tables_t clip::clip_internal::jpeg_decoder::ac_huff_seg[JPGD_MAXBLOCKSPERMCU] [private]
 

unsigned int clip::clip_internal::jpeg_decoder::bit_buf [private]
 

unsigned int clip::clip_internal::jpeg_decoder::bit_buf_64[2] [private]
 

int clip::clip_internal::jpeg_decoder::bits_left [private]
 

int clip::clip_internal::jpeg_decoder::block_max_zag_set[JPGD_MAXBLOCKSPERROW] [private]
 

BLOCK_TYPE* clip::clip_internal::jpeg_decoder::block_seg[JPGD_MAXBLOCKSPERROW] [private]
 

int clip::clip_internal::jpeg_decoder::block_y_mcu[JPGD_MAXCOMPONENTS] [private]
 

void* clip::clip_internal::jpeg_decoder::blocks[JPGD_MAXBLOCKS] [private]
 

int clip::clip_internal::jpeg_decoder::blocks_per_mcu [private]
 

int clip::clip_internal::jpeg_decoder::cbb[256] [private]
 

long clip::clip_internal::jpeg_decoder::cbg[256] [private]
 

int clip::clip_internal::jpeg_decoder::comp_ac_tab[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_dc_tab[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_h_blocks[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_h_samp[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_ident[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_list[JPGD_MAXCOMPSINSCAN] [private]
 

int clip::clip_internal::jpeg_decoder::comp_quant[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_v_blocks[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::comp_v_samp[JPGD_MAXCOMPONENTS] [private]
 

unsigned int* clip::clip_internal::jpeg_decoder::component[JPGD_MAXBLOCKSPERMCU] [private]
 

int clip::clip_internal::jpeg_decoder::comps_in_frame [private]
 

int clip::clip_internal::jpeg_decoder::comps_in_scan [private]
 

long clip::clip_internal::jpeg_decoder::crg[256] [private]
 

int clip::clip_internal::jpeg_decoder::crr[256] [private]
 

Pcoeff_buf_t clip::clip_internal::jpeg_decoder::dc_coeffs[JPGD_MAXCOMPONENTS] [private]
 

Phuff_tables_t clip::clip_internal::jpeg_decoder::dc_huff_seg[JPGD_MAXBLOCKSPERMCU] [private]
 

int clip::clip_internal::jpeg_decoder::dest_bytes_per_pixel [private]
 

int clip::clip_internal::jpeg_decoder::dest_bytes_per_scan_line [private]
 

int clip::clip_internal::jpeg_decoder::eob_run [private]
 

bool clip::clip_internal::jpeg_decoder::eof_flag [private]
 

int clip::clip_internal::jpeg_decoder::error_code [private]
 

Phuff_tables_t clip::clip_internal::jpeg_decoder::h[JPGD_MAXHUFFTABLES] [private]
 

unsigned char* clip::clip_internal::jpeg_decoder::huff_num[JPGD_MAXHUFFTABLES] [private]
 

unsigned char* clip::clip_internal::jpeg_decoder::huff_val[JPGD_MAXHUFFTABLES] [private]
 

int clip::clip_internal::jpeg_decoder::image_x_size [private]
 

int clip::clip_internal::jpeg_decoder::image_y_size [private]
 

unsigned char clip::clip_internal::jpeg_decoder::in_buf[JPGD_INBUFSIZE+128] [private]
 

int clip::clip_internal::jpeg_decoder::in_buf_left [private]
 

jmp_buf clip::clip_internal::jpeg_decoder::jmp_state [private]
 

unsigned int clip::clip_internal::jpeg_decoder::last_dc_val[JPGD_MAXCOMPONENTS] [private]
 

int clip::clip_internal::jpeg_decoder::max_blocks_per_mcu [private]
 

int clip::clip_internal::jpeg_decoder::max_blocks_per_row [private]
 

int clip::clip_internal::jpeg_decoder::max_mcu_x_size [private]
 

int clip::clip_internal::jpeg_decoder::max_mcu_y_size [private]
 

int clip::clip_internal::jpeg_decoder::max_mcus_per_col [private]
 

int clip::clip_internal::jpeg_decoder::max_mcus_per_row [private]
 

int clip::clip_internal::jpeg_decoder::mcu_lines_left [private]
 

int clip::clip_internal::jpeg_decoder::mcu_org[JPGD_MAXBLOCKSPERMCU] [private]
 

int clip::clip_internal::jpeg_decoder::mcus_per_col [private]
 

int clip::clip_internal::jpeg_decoder::mcus_per_row [private]
 

bool clip::clip_internal::jpeg_decoder::mmx_active [private]
 

int clip::clip_internal::jpeg_decoder::next_restart_num [private]
 

int clip::clip_internal::jpeg_decoder::padd [private]
 

unsigned char clip::clip_internal::jpeg_decoder::padd_1[128] [private]
 

unsigned char clip::clip_internal::jpeg_decoder::padd_2[128] [private]
 

unsigned char* clip::clip_internal::jpeg_decoder::Pin_buf_ofs [private]
 

int clip::clip_internal::jpeg_decoder::progressive_flag [private]
 

unsigned char* clip::clip_internal::jpeg_decoder::Psample_buf [private]
 

Pjpeg_decoder_stream clip::clip_internal::jpeg_decoder::Pstream [private]
 

QUANT_TYPE* clip::clip_internal::jpeg_decoder::quant[JPGD_MAXQUANTTABLES] [private]
 

bool clip::clip_internal::jpeg_decoder::ready_flag [private]
 

int clip::clip_internal::jpeg_decoder::real_dest_bytes_per_scan_line [private]
 

int clip::clip_internal::jpeg_decoder::restart_interval [private]
 

int clip::clip_internal::jpeg_decoder::restarts_left [private]
 

unsigned int clip::clip_internal::jpeg_decoder::saved_mm1[2] [private]
 

unsigned char* clip::clip_internal::jpeg_decoder::scan_line_0 [private]
 

unsigned char* clip::clip_internal::jpeg_decoder::scan_line_1 [private]
 

int clip::clip_internal::jpeg_decoder::scan_type [private]
 

int clip::clip_internal::jpeg_decoder::spectral_end [private]
 

int clip::clip_internal::jpeg_decoder::spectral_start [private]
 

int clip::clip_internal::jpeg_decoder::successive_high [private]
 

int clip::clip_internal::jpeg_decoder::successive_low [private]
 

int clip::clip_internal::jpeg_decoder::tem_flag [private]
 

BLOCK_TYPE clip::clip_internal::jpeg_decoder::temp_block[64] [private]
 

int clip::clip_internal::jpeg_decoder::total_bytes_read [private]
 

int clip::clip_internal::jpeg_decoder::total_lines_left [private]
 

bool clip::clip_internal::jpeg_decoder::use_mmx [private]
 

bool clip::clip_internal::jpeg_decoder::use_mmx_getbits [private]
 

bool clip::clip_internal::jpeg_decoder::use_mmx_idct [private]
 


The documentation for this class was generated from the following file:
Generated on Sat Mar 5 17:34:36 2005 for clip by doxygen 1.3.8