18 #ifdef NEED_SHORT_EXTERNAL_NAMES 19 #define jpeg_make_d_derived_tbl jMkDDerived 20 #define jpeg_fill_bit_buffer jFilBitBuf 21 #define jpeg_huff_decode jHufDecode 27 #define HUFF_LOOKAHEAD 8 76 #define BIT_BUF_SIZE 32 105 #define BITREAD_STATE_VARS \ 106 register bit_buf_type get_buffer; \ 107 register int bits_left; \ 108 bitread_working_state br_state 110 #define BITREAD_LOAD_STATE(cinfop,permstate) \ 111 br_state.cinfo = cinfop; \ 112 br_state.next_input_byte = cinfop->src->next_input_byte; \ 113 br_state.bytes_in_buffer = cinfop->src->bytes_in_buffer; \ 114 get_buffer = permstate.get_buffer; \ 115 bits_left = permstate.bits_left; 117 #define BITREAD_SAVE_STATE(cinfop,permstate) \ 118 cinfop->src->next_input_byte = br_state.next_input_byte; \ 119 cinfop->src->bytes_in_buffer = br_state.bytes_in_buffer; \ 120 permstate.get_buffer = get_buffer; \ 121 permstate.bits_left = bits_left 141 #define CHECK_BIT_BUFFER(state,nbits,action) \ 142 { if (bits_left < (nbits)) { \ 143 if (! jpeg_fill_bit_buffer(&(state),get_buffer,bits_left,nbits)) \ 145 get_buffer = (state).get_buffer; bits_left = (state).bits_left; } } 147 #define GET_BITS(nbits) \ 148 (((int) (get_buffer >> (bits_left -= (nbits)))) & ((1<<(nbits))-1)) 150 #define PEEK_BITS(nbits) \ 151 (((int) (get_buffer >> (bits_left - (nbits)))) & ((1<<(nbits))-1)) 153 #define DROP_BITS(nbits) \ 154 (bits_left -= (nbits)) 179 #define HUFF_DECODE(result,state,htbl,failaction,slowlabel) \ 180 { register int nb, look; \ 181 if (bits_left < HUFF_LOOKAHEAD) { \ 182 if (! jpeg_fill_bit_buffer(&state,get_buffer,bits_left, 0)) {failaction;} \ 183 get_buffer = state.get_buffer; bits_left = state.bits_left; \ 184 if (bits_left < HUFF_LOOKAHEAD) { \ 185 nb = 1; goto slowlabel; \ 188 look = PEEK_BITS(HUFF_LOOKAHEAD); \ 189 if ((nb = htbl->look_nbits[look]) != 0) { \ 191 result = htbl->look_sym[look]; \ 193 nb = HUFF_LOOKAHEAD+1; \ 195 if ((result=jpeg_huff_decode(&state,get_buffer,bits_left,htbl,nb)) < 0) \ 197 get_buffer = state.get_buffer; bits_left = state.bits_left; \
bit_buf_type get_buffer
Definition: jdhuff.h:98
jpeg_huff_decode(bitread_working_state *state, register bit_buf_type get_buffer, register int bits_left, d_derived_tbl *htbl, int min_bits)
Definition: jdhuff.c:398
boolean int d_derived_tbl ** pdtbl
Definition: jdhuff.h:53
int bits_left
Definition: jdhuff.h:99
const JOCTET * next_input_byte
Definition: jdhuff.h:93
register bit_buf_type register int d_derived_tbl * htbl
Definition: jdhuff.h:203
size_t bytes_in_buffer
Definition: jdhuff.h:94
long INT32
Definition: jmorecfg.h:161
j_decompress_ptr cinfo
Definition: jdhuff.h:101
EXTERN(void) jpeg_make_d_derived_tbl JPP((j_decompress_ptr cinfo
boolean isDC
Definition: jdhuff.h:53
register bit_buf_type register int d_derived_tbl int min_bits
Definition: jdhuff.h:203
bit_buf_type get_buffer
Definition: jdhuff.h:86
jpeg_make_d_derived_tbl(j_decompress_ptr cinfo, boolean isDC, int tblno, d_derived_tbl **pdtbl)
Definition: jdhuff.c:149
short UINT8
Definition: jmorecfg.h:140
boolean int tblno
Definition: jdhuff.h:53
register bit_buf_type register int int nbits
Definition: jdhuff.h:158
#define JPP(arglist)
Definition: juce_JPEGLoader.cpp:818
INT32 bit_buf_type
Definition: jdhuff.h:75
#define HUFF_LOOKAHEAD
Definition: juce_JPEGLoader.cpp:28
jpeg_fill_bit_buffer(bitread_working_state *state, register bit_buf_type get_buffer, register int bits_left, int nbits)
Definition: jdhuff.c:292
Definition: jpeglib.h:411
char JOCTET
Definition: jmorecfg.h:115
register bit_buf_type get_buffer
Definition: jdhuff.h:158
JHUFF_TBL * pub
Definition: jdhuff.h:40
register bit_buf_type register int bits_left
Definition: jdhuff.h:158
int bits_left
Definition: jdhuff.h:87
Definition: jpeglib.h:100