// Compression module initialization routines /// <summary> /// Initialization of a JPEG compression object /// </summary> private void initialize() { /* Zero out pointers to permanent structures. */ m_progress = null; m_dest = null; m_comp_info = null; for (int i = 0; i < JpegConstants.NUM_QUANT_TBLS; i++) m_quant_tbl_ptrs[i] = null; for (int i = 0; i < JpegConstants.NUM_HUFF_TBLS; i++) { m_dc_huff_tbl_ptrs[i] = null; m_ac_huff_tbl_ptrs[i] = null; } m_script_space = null; /* OK, I'm ready */ m_global_state = JpegState.CSTATE_START; }
/// <summary> /// Sets output stream. /// </summary> /// <param name="outfile">The output stream.</param> /// <remarks>The caller must have already opened the stream, and is responsible /// for closing it after finishing compression.</remarks> /// <seealso href="07136fd7-d482-48de-b88c-1a4b9658c69e.htm" target="_self">Compression details</seealso> public void jpeg_stdio_dest(Stream outfile) { m_dest = new my_destination_mgr(this, outfile); }
/// <summary> /// Initialization of a JPEG compression object /// </summary> private void initialize() { /* Zero out pointers to permanent structures. */ m_progress = null; m_dest = null; m_comp_info = null; for (int i = 0; i < JpegConstants.NUM_QUANT_TBLS; i++) { m_quant_tbl_ptrs[i] = null; q_scale_factor[i] = 100; } for (int i = 0; i < JpegConstants.NUM_HUFF_TBLS; i++) { m_dc_huff_tbl_ptrs[i] = null; m_ac_huff_tbl_ptrs[i] = null; } /* Must do it here for emit_dqt in case jpeg_write_tables is used */ block_size = JpegConstants.DCTSIZE; natural_order = JpegUtils.jpeg_natural_order; lim_Se = JpegConstants.DCTSIZE2 - 1; m_script_space = null; /* OK, I'm ready */ m_global_state = JpegState.CSTATE_START; }