10 #define JPEG_INTERNALS 131 #define CTX_PREPARE_FOR_IMCU 0 132 #define CTX_PROCESS_IMCU 1 133 #define CTX_POSTPONED_ROW 2 143 #ifdef QUANT_2PASS_SUPPORTED 158 int M = cinfo->min_DCT_scaled_size;
170 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
173 cinfo->min_DCT_scaled_size;
182 xbuf += rgroup * (M + 4);
199 int M = cinfo->min_DCT_scaled_size;
203 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
206 cinfo->min_DCT_scaled_size;
211 for (i = 0; i < rgroup * (M + 2); i++) {
212 xbuf0[i] = xbuf1[i] = buf[i];
215 for (i = 0; i < rgroup * 2; i++) {
216 xbuf1[rgroup*(M-2) + i] = buf[rgroup*M + i];
217 xbuf1[rgroup*M + i] = buf[rgroup*(M-2) + i];
224 for (i = 0; i < rgroup; i++) {
225 xbuf0[i - rgroup] = xbuf0[0];
239 int M = cinfo->min_DCT_scaled_size;
243 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
246 cinfo->min_DCT_scaled_size;
249 for (i = 0; i < rgroup; i++) {
250 xbuf0[i - rgroup] = xbuf0[rgroup*(M+1) + i];
251 xbuf1[i - rgroup] = xbuf1[rgroup*(M+1) + i];
252 xbuf0[rgroup*(M+2) + i] = xbuf0[i];
253 xbuf1[rgroup*(M+2) + i] = xbuf1[i];
267 int ci, i, rgroup, iMCUheight, rows_left;
271 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
275 rgroup = iMCUheight / cinfo->min_DCT_scaled_size;
278 if (rows_left == 0) rows_left = iMCUheight;
289 for (i = 0; i < rgroup * 2; i++) {
290 xbuf[rows_left + i] = xbuf[rows_left-1];
307 if (cinfo->upsample->need_context_rows) {
320 #ifdef QUANT_2PASS_SUPPORTED 327 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
348 if (! (*cinfo->coef->decompress_data) (cinfo, main->
buffer))
354 rowgroups_avail = (
JDIMENSION) cinfo->min_DCT_scaled_size;
361 (*cinfo->post->post_process_data) (cinfo, main->
buffer,
387 if (! (*cinfo->coef->decompress_data) (cinfo,
402 (*cinfo->post->post_process_data) (cinfo, main->
xbuffer[main->
whichptr],
424 (*cinfo->post->post_process_data) (cinfo, main->
xbuffer[main->
whichptr],
450 #ifdef QUANT_2PASS_SUPPORTED 457 (*cinfo->post->post_process_data) (cinfo, (
JSAMPIMAGE) NULL,
473 int ci, rgroup, ngroups;
483 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
488 if (cinfo->upsample->need_context_rows) {
489 if (cinfo->min_DCT_scaled_size < 2)
492 ngroups = cinfo->min_DCT_scaled_size + 2;
494 ngroups = cinfo->min_DCT_scaled_size;
497 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
500 cinfo->min_DCT_scaled_size;
501 main->
buffer[ci] = (*cinfo->mem->alloc_sarray)
process_data_simple_main(j_decompress_ptr cinfo, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)
struct jpeg_c_main_controller pub
process_data_crank_post(j_decompress_ptr cinfo, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)
METHODDEF(void) process_data_simple_main JPP((j_decompress_ptr cinfo
JDIMENSION rowgroups_avail
struct jpeg_common_struct * j_common_ptr
start_pass_main(j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
process_data_context_main(j_decompress_ptr cinfo, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)
JSAMPARRAY JDIMENSION * out_row_ctr
#define ERREXIT(cinfo, code)
jpeg_component_info * compptr
JDIMENSION width_in_blocks
my_main_controller * my_main_ptr
set_bottom_pointers(j_decompress_ptr cinfo)
JSAMPARRAY buffer[MAX_COMPONENTS]
alloc_funny_pointers(j_decompress_ptr cinfo)
jinit_d_main_controller(j_decompress_ptr cinfo, boolean need_full_buffer)
make_funny_pointers(j_decompress_ptr cinfo)
#define CTX_PREPARE_FOR_IMCU
#define CTX_POSTPONED_ROW
set_wraparound_pointers(j_decompress_ptr cinfo)
JDIMENSION downsampled_height
JSAMPARRAY JDIMENSION JDIMENSION out_rows_avail