/* Process some data. This handles the simple case where no context is required.  */
process_data_simple_main(j_decompress_ptr cinfo, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)
/* Process some data. This handles the simple case where no context is required.  */
process_data_simple_main(j_decompress_ptr cinfo, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)
{
    my_main_ptr main1 = (my_main_ptr)cinfo->main;
    JDIMENSION rowgroups_avail;
    if (!main1->buffer_full) {
        if (!(*cinfo->coef->decompress_data) (cinfo, main1->buffer))
            return;
        main1->buffer_full = TRUE;
    }
    rowgroups_avail = (JDIMENSION)cinfo->min_DCT_scaled_size;
    (*cinfo->post->post_process_data) (cinfo, main1->buffer,
        &main1->rowgroup_ctr, rowgroups_avail,
        output_buf, out_row_ctr, out_rows_avail);
    if (main1->rowgroup_ctr >= rowgroups_avail) {
        main1->buffer_full = FALSE;
        main1->rowgroup_ctr = 0;
    }
}