Back to index

lightning-sunbird  0.9+nobinonly
Classes | Defines | Typedefs | Functions | Variables
jdhuff.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  d_derived_tbl
struct  bitread_perm_state
struct  bitread_working_state

Defines

#define HUFF_LOOKAHEAD   8 /* # of bits of lookahead */
#define BIT_BUF_SIZE   32 /* size of buffer in bits */
#define BITREAD_STATE_VARS
#define BITREAD_LOAD_STATE(cinfop, permstate)
#define BITREAD_SAVE_STATE(cinfop, permstate)
#define CHECK_BIT_BUFFER(state, nbits, action)
#define GET_BITS(nbits)   (((int) (get_buffer >> (bits_left -= (nbits)))) & ((1<<(nbits))-1))
#define PEEK_BITS(nbits)   (((int) (get_buffer >> (bits_left - (nbits)))) & ((1<<(nbits))-1))
#define DROP_BITS(nbits)   (bits_left -= (nbits))
#define HUFF_DECODE(result, state, htbl, failaction, slowlabel)

Typedefs

typedef INT32 bit_buf_type

Functions

 EXTERN (void) jpeg_make_d_derived_tbl JPP((j_decompress_ptr cinfo
 EXTERN (boolean) jpeg_fill_bit_buffer JPP((bitread_working_state *state
 EXTERN (int) jpeg_huff_decode JPP((bitread_working_state *state

Variables

boolean isDC
boolean int tblno
boolean int d_derived_tbl ** pdtbl
register bit_buf_type get_buffer
register bit_buf_type register int bits_left
register bit_buf_type register
int int 
nbits
register bit_buf_type register
int d_derived_tbl
htbl
register bit_buf_type register
int d_derived_tbl int 
min_bits

Class Documentation

struct d_derived_tbl

Definition at line 26 of file jdhuff.h.

Collaboration diagram for d_derived_tbl:
Class Members
int look_nbits
UINT8 look_sym
INT32 maxcode
JHUFF_TBL * pub
INT32 valoffset
struct bitread_perm_state

Definition at line 82 of file jdhuff.h.

Collaboration diagram for bitread_perm_state:
Class Members
int bits_left
bit_buf_type get_buffer
struct bitread_working_state

Definition at line 87 of file jdhuff.h.

Collaboration diagram for bitread_working_state:
Class Members
int bits_left
size_t bytes_in_buffer
j_decompress_ptr cinfo
bit_buf_type get_buffer
const JOCTET * next_input_byte

Define Documentation

#define BIT_BUF_SIZE   32 /* size of buffer in bits */

Definition at line 73 of file jdhuff.h.

#define BITREAD_LOAD_STATE (   cinfop,
  permstate 
)
Value:
br_state.cinfo = cinfop; \
       br_state.next_input_byte = cinfop->src->next_input_byte; \
       br_state.bytes_in_buffer = cinfop->src->bytes_in_buffer; \
       get_buffer = permstate.get_buffer; \
       bits_left = permstate.bits_left;

Definition at line 107 of file jdhuff.h.

#define BITREAD_SAVE_STATE (   cinfop,
  permstate 
)
Value:
cinfop->src->next_input_byte = br_state.next_input_byte; \
       cinfop->src->bytes_in_buffer = br_state.bytes_in_buffer; \
       permstate.get_buffer = get_buffer; \
       permstate.bits_left = bits_left

Definition at line 114 of file jdhuff.h.

Value:
register bit_buf_type get_buffer;  \
       register int bits_left;  \
	bitread_working_state br_state

Definition at line 102 of file jdhuff.h.

#define CHECK_BIT_BUFFER (   state,
  nbits,
  action 
)
Value:
{ if (bits_left < (nbits)) {  \
           if (! jpeg_fill_bit_buffer(&(state),get_buffer,bits_left,nbits))  \
             { action; }  \
           get_buffer = (state).get_buffer; bits_left = (state).bits_left; } }

Definition at line 138 of file jdhuff.h.

#define DROP_BITS (   nbits)    (bits_left -= (nbits))

Definition at line 150 of file jdhuff.h.

#define GET_BITS (   nbits)    (((int) (get_buffer >> (bits_left -= (nbits)))) & ((1<<(nbits))-1))

Definition at line 144 of file jdhuff.h.

#define HUFF_DECODE (   result,
  state,
  htbl,
  failaction,
  slowlabel 
)
Value:
{ register int nb, look; \
  if (bits_left < HUFF_LOOKAHEAD) { \
    if (! jpeg_fill_bit_buffer(&state,get_buffer,bits_left, 0)) {failaction;} \
    get_buffer = state.get_buffer; bits_left = state.bits_left; \
    if (bits_left < HUFF_LOOKAHEAD) { \
      nb = 1; goto slowlabel; \
    } \
  } \
  look = PEEK_BITS(HUFF_LOOKAHEAD); \
  if ((nb = htbl->look_nbits[look]) != 0) { \
    DROP_BITS(nb); \
    result = htbl->look_sym[look]; \
  } else { \
    nb = HUFF_LOOKAHEAD+1; \
slowlabel: \
    if ((result=jpeg_huff_decode(&state,get_buffer,bits_left,htbl,nb)) < 0) \
       { failaction; } \
    get_buffer = state.get_buffer; bits_left = state.bits_left; \
  } \
}

Definition at line 176 of file jdhuff.h.

#define HUFF_LOOKAHEAD   8 /* # of bits of lookahead */

Definition at line 24 of file jdhuff.h.

#define PEEK_BITS (   nbits)    (((int) (get_buffer >> (bits_left - (nbits)))) & ((1<<(nbits))-1))

Definition at line 147 of file jdhuff.h.


Typedef Documentation

Definition at line 72 of file jdhuff.h.


Function Documentation

EXTERN ( void  )
EXTERN ( boolean  )
EXTERN ( int  )

Variable Documentation

register bit_buf_type register int bits_left

Definition at line 155 of file jdhuff.h.

Definition at line 155 of file jdhuff.h.

register bit_buf_type register int d_derived_tbl* htbl

Definition at line 200 of file jdhuff.h.

Definition at line 50 of file jdhuff.h.

Definition at line 200 of file jdhuff.h.

register bit_buf_type register int int nbits

Definition at line 155 of file jdhuff.h.

Definition at line 50 of file jdhuff.h.

Definition at line 50 of file jdhuff.h.