103 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
125 out_rows_avail -= *out_row_ctr;
129 (*cinfo->cconvert->color_convert) (cinfo, upsample->
color_buf,
140 (*in_row_group_ctr)++;
161 *output_data_ptr = input_data;
174 *output_data_ptr =
NULL;
199 int h_expand, v_expand;
206 while (outrow < cinfo->max_v_samp_factor) {
208 inptr = input_data[inrow];
209 outptr = output_data[outrow];
210 outend = outptr + cinfo->output_width;
211 while (outptr < outend) {
213 for (
h = h_expand;
h > 0;
h--) {
220 v_expand-1, cinfo->output_width);
243 for (outrow = 0; outrow < cinfo->max_v_samp_factor; outrow++) {
244 inptr = input_data[outrow];
245 outptr = output_data[outrow];
246 outend = outptr + cinfo->output_width;
247 while (outptr < outend) {
272 while (outrow < cinfo->max_v_samp_factor) {
273 inptr = input_data[inrow];
274 outptr = output_data[outrow];
275 outend = outptr + cinfo->output_width;
276 while (outptr < outend) {
282 1, cinfo->output_width);
299 int h_in_group, v_in_group, h_out_group, v_out_group;
304 cinfo->upsample = &upsample->
pub;
307 upsample->
pub.need_context_rows =
FALSE;
309 if (cinfo->CCIR601_sampling)
310 ERREXIT(cinfo, JERR_CCIR601_NOTIMPL);
315 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
321 cinfo->min_DCT_h_scaled_size;
323 cinfo->min_DCT_v_scaled_size;
324 h_out_group = cinfo->max_h_samp_factor;
325 v_out_group = cinfo->max_v_samp_factor;
332 if (h_in_group == h_out_group && v_in_group == v_out_group) {
337 if (h_in_group * 2 == h_out_group && v_in_group == v_out_group) {
340 }
else if (h_in_group * 2 == h_out_group &&
341 v_in_group * 2 == v_out_group) {
344 }
else if ((h_out_group % h_in_group) == 0 &&
345 (v_out_group % v_in_group) == 0) {
351 ERREXIT(cinfo, JERR_FRACT_SAMPLE_NOTIMPL);
352 upsample->
color_buf[ci] = (*cinfo->mem->alloc_sarray)
355 (
long) cinfo->max_h_samp_factor),
while(CdLookupNextInitialFileDirent(IrpContext, Fcb, FileContext))
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLfloat GLfloat GLfloat GLfloat h
jpeg_component_info * compptr
jpeg_component_info JCOEFPTR JSAMPARRAY output_buf
my_upsampler * my_upsample_ptr
h2v1_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr, JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
h2v2_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr, JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
int_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr, JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
start_pass_upsample(j_decompress_ptr cinfo)
fullsize_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr, JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
jinit_upsampler(j_decompress_ptr cinfo)
noop_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr, JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
sep_upsample(j_decompress_ptr cinfo, JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr, JDIMENSION in_row_groups_avail, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)
#define JMETHOD(type, methodname, arglist)
int JSAMPARRAY int int num_rows
struct jpeg_common_struct * j_common_ptr
jround_up(long a, long b)
jcopy_sample_rows(JSAMPARRAY input_array, int source_row, JSAMPARRAY output_array, int dest_row, int num_rows, JDIMENSION num_cols)
int rowgroup_height[MAX_COMPONENTS]
struct jpeg_upsampler pub
upsample1_ptr methods[MAX_COMPONENTS]
UINT8 v_expand[MAX_COMPONENTS]
UINT8 h_expand[MAX_COMPONENTS]
JSAMPARRAY color_buf[MAX_COMPONENTS]