BitMiracle.LibJpeg.Classic.Internal.jpeg_d_main_controller.jpeg_d_main_controller C# (CSharp) 메소드

jpeg_d_main_controller() 공개 메소드

public jpeg_d_main_controller ( jpeg_decompress_struct cinfo )
cinfo jpeg_decompress_struct
        public jpeg_d_main_controller(jpeg_decompress_struct cinfo)
        {
            m_cinfo = cinfo;

            /* Allocate the workspace.
            * ngroups is the number of row groups we need.
            */
            int ngroups = cinfo.min_DCT_v_scaled_size;
            if (cinfo.m_upsample.NeedContextRows())
            {
                if (cinfo.min_DCT_v_scaled_size < 2) /* unsupported, see comments above */
                    cinfo.ERREXIT(J_MESSAGE_CODE.JERR_NOTIMPL);

                alloc_funny_pointers(); /* Alloc space for xbuffer[] lists */
                ngroups = cinfo.min_DCT_v_scaled_size + 2;
            }

            for (int ci = 0; ci < cinfo.m_num_components; ci++)
            {
                /* height of a row group of component */
                int rgroup = (cinfo.Comp_info[ci].V_samp_factor * cinfo.Comp_info[ci].DCT_v_scaled_size) / cinfo.min_DCT_v_scaled_size;

                m_buffer[ci] = jpeg_common_struct.AllocJpegSamples(
                    cinfo.Comp_info[ci].Width_in_blocks * cinfo.Comp_info[ci].DCT_h_scaled_size,
                    rgroup * ngroups);
            }
        }