Main buffer control (downsampled-data buffer)
        /// <summary>
        /// Initialize main buffer controller.
        /// </summary>
        private void jinit_c_main_controller(bool need_full_buffer)
        {
            /* We don't need to create a buffer in raw-data mode. */
            if (m_raw_data_in)
                return;

            /* Create the buffer.  It holds downsampled data, so each component
            * may be of a different size.
            */
            if (need_full_buffer)
                ERREXIT(J_MESSAGE_CODE.JERR_BAD_BUFFER_MODE);
            else
                m_main = new jpeg_c_main_controller(this);
        }