亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jpegint.h

?? 《精通 vc++ 圖像編程》的源代碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
/*
 * jpegint.h
 *
 * Copyright (C) 1991-1996, Thomas G. Lane.
 * This file is part of the Independent JPEG Group's software.
 * For conditions of distribution and use, see the accompanying README file.
 *
 * This file provides common declarations for the various JPEG modules.
 * These declarations are considered internal to the JPEG library; most
 * applications using the library shouldn't need to include this file.
 */


/* Declarations for both compression & decompression */

typedef enum {			/* Operating modes for buffer controllers */
	JBUF_PASS_THRU,		/* Plain stripwise operation */
	/* Remaining modes require a full-image buffer to have been created */
	JBUF_SAVE_SOURCE,	/* Run source subobject only, save output */
	JBUF_CRANK_DEST,	/* Run dest subobject only, using saved data */
	JBUF_SAVE_AND_PASS	/* Run both subobjects, save output */
} J_BUF_MODE;

/* Values of global_state field (jdapi.c has some dependencies on ordering!) */
#define CSTATE_START	100	/* after create_compress */
#define CSTATE_SCANNING	101	/* start_compress done, write_scanlines OK */
#define CSTATE_RAW_OK	102	/* start_compress done, write_raw_data OK */
#define CSTATE_WRCOEFS	103	/* jpeg_write_coefficients done */
#define DSTATE_START	200	/* after create_decompress */
#define DSTATE_INHEADER	201	/* reading header markers, no SOS yet */
#define DSTATE_READY	202	/* found SOS, ready for start_decompress */
#define DSTATE_PRELOAD	203	/* reading multiscan file in start_decompress*/
#define DSTATE_PRESCAN	204	/* performing dummy pass for 2-pass quant */
#define DSTATE_SCANNING	205	/* start_decompress done, read_scanlines OK */
#define DSTATE_RAW_OK	206	/* start_decompress done, read_raw_data OK */
#define DSTATE_BUFIMAGE	207	/* expecting jpeg_start_output */
#define DSTATE_BUFPOST	208	/* looking for SOS/EOI in jpeg_finish_output */
#define DSTATE_RDCOEFS	209	/* reading file in jpeg_read_coefficients */
#define DSTATE_STOPPING	210	/* looking for EOI in jpeg_finish_decompress */


/* Declarations for compression modules */

/* Master control module */
struct jpeg_comp_master {
  JMETHOD(void, prepare_for_pass, (j_compress_ptr cinfo));
  JMETHOD(void, pass_startup, (j_compress_ptr cinfo));
  JMETHOD(void, finish_pass, (j_compress_ptr cinfo));

  /* State variables made visible to other modules */
  boolean call_pass_startup;	/* True if pass_startup must be called */
  boolean is_last_pass;		/* True during last pass */
};

/* Main buffer control (downsampled-data buffer) */
struct jpeg_c_main_controller {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo, J_BUF_MODE pass_mode));
  JMETHOD(void, process_data, (j_compress_ptr cinfo,
			       JSAMPARRAY input_buf, JDIMENSION *in_row_ctr,
			       JDIMENSION in_rows_avail));
};

/* Compression preprocessing (downsampling input buffer control) */
struct jpeg_c_prep_controller {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo, J_BUF_MODE pass_mode));
  JMETHOD(void, pre_process_data, (j_compress_ptr cinfo,
				   JSAMPARRAY input_buf,
				   JDIMENSION *in_row_ctr,
				   JDIMENSION in_rows_avail,
				   JSAMPIMAGE output_buf,
				   JDIMENSION *out_row_group_ctr,
				   JDIMENSION out_row_groups_avail));
};

/* Coefficient buffer control */
struct jpeg_c_coef_controller {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo, J_BUF_MODE pass_mode));
  JMETHOD(boolean, compress_data, (j_compress_ptr cinfo,
				   JSAMPIMAGE input_buf));
};

/* Colorspace conversion */
struct jpeg_color_converter {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo));
  JMETHOD(void, color_convert, (j_compress_ptr cinfo,
				JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
				JDIMENSION output_row, int num_rows));
};

/* Downsampling */
struct jpeg_downsampler {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo));
  JMETHOD(void, downsample, (j_compress_ptr cinfo,
			     JSAMPIMAGE input_buf, JDIMENSION in_row_index,
			     JSAMPIMAGE output_buf,
			     JDIMENSION out_row_group_index));

  boolean need_context_rows;	/* TRUE if need rows above & below */
};

/* Forward DCT (also controls coefficient quantization) */
struct jpeg_forward_dct {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo));
  /* perhaps this should be an array??? */
  JMETHOD(void, forward_DCT, (j_compress_ptr cinfo,
			      jpeg_component_info * compptr,
			      JSAMPARRAY sample_data, JBLOCKROW coef_blocks,
			      JDIMENSION start_row, JDIMENSION start_col,
			      JDIMENSION num_blocks));
};

/* Entropy encoding */
struct jpeg_entropy_encoder {
  JMETHOD(void, start_pass, (j_compress_ptr cinfo, boolean gather_statistics));
  JMETHOD(boolean, encode_mcu, (j_compress_ptr cinfo, JBLOCKROW *MCU_data));
  JMETHOD(void, finish_pass, (j_compress_ptr cinfo));
};

/* Marker writing */
struct jpeg_marker_writer {
  /* write_any_marker is exported for use by applications */
  /* Probably only COM and APPn markers should be written */
  JMETHOD(void, write_any_marker, (j_compress_ptr cinfo, int marker,
				   const JOCTET *dataptr, unsigned int datalen));
  JMETHOD(void, write_file_header, (j_compress_ptr cinfo));
  JMETHOD(void, write_frame_header, (j_compress_ptr cinfo));
  JMETHOD(void, write_scan_header, (j_compress_ptr cinfo));
  JMETHOD(void, write_file_trailer, (j_compress_ptr cinfo));
  JMETHOD(void, write_tables_only, (j_compress_ptr cinfo));
};


/* Declarations for decompression modules */

/* Master control module */
struct jpeg_decomp_master {
  JMETHOD(void, prepare_for_output_pass, (j_decompress_ptr cinfo));
  JMETHOD(void, finish_output_pass, (j_decompress_ptr cinfo));

  /* State variables made visible to other modules */
  boolean is_dummy_pass;	/* True during 1st pass for 2-pass quant */
};

/* Input control module */
struct jpeg_input_controller {
  JMETHOD(int, consume_input, (j_decompress_ptr cinfo));
  JMETHOD(void, reset_input_controller, (j_decompress_ptr cinfo));
  JMETHOD(void, start_input_pass, (j_decompress_ptr cinfo));
  JMETHOD(void, finish_input_pass, (j_decompress_ptr cinfo));

  /* State variables made visible to other modules */
  boolean has_multiple_scans;	/* True if file has multiple scans */
  boolean eoi_reached;		/* True when EOI has been consumed */
};

/* Main buffer control (downsampled-data buffer) */
struct jpeg_d_main_controller {
  JMETHOD(void, start_pass, (j_decompress_ptr cinfo, J_BUF_MODE pass_mode));
  JMETHOD(void, process_data, (j_decompress_ptr cinfo,
			       JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
			       JDIMENSION out_rows_avail));
};

/* Coefficient buffer control */
struct jpeg_d_coef_controller {
  JMETHOD(void, start_input_pass, (j_decompress_ptr cinfo));
  JMETHOD(int, consume_data, (j_decompress_ptr cinfo));
  JMETHOD(void, start_output_pass, (j_decompress_ptr cinfo));
  JMETHOD(int, decompress_data, (j_decompress_ptr cinfo,
				 JSAMPIMAGE output_buf));
  /* Pointer to array of coefficient virtual arrays, or NULL if none */
  jvirt_barray_ptr *coef_arrays;
};

/* Decompression postprocessing (color quantization buffer control) */
struct jpeg_d_post_controller {
  JMETHOD(void, start_pass, (j_decompress_ptr cinfo, J_BUF_MODE pass_mode));
  JMETHOD(void, post_process_data, (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));
};

/* Marker reading & parsing */
struct jpeg_marker_reader {
  JMETHOD(void, reset_marker_reader, (j_decompress_ptr cinfo));
  /* Read markers until SOS or EOI.
   * Returns same codes as are defined for jpeg_consume_input:
   * JPEG_SUSPENDED, JPEG_REACHED_SOS, or JPEG_REACHED_EOI.
   */
  JMETHOD(int, read_markers, (j_decompress_ptr cinfo));
  /* Read a restart marker --- exported for use by entropy decoder only */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区国产盗摄色噜噜| 欧美中文字幕一区二区三区亚洲| 日本最新不卡在线| 日本韩国欧美一区二区三区| 欧美视频在线观看一区二区| 日韩精品一区二区三区视频| 久久久精品免费免费| 日韩毛片一二三区| 国产欧美日韩在线看| 亚洲欧洲精品一区二区三区不卡| 亚洲国产精品成人综合| 亚洲乱码国产乱码精品精可以看| 日韩伦理免费电影| 欧美激情一区二区三区四区| 一区二区三区四区亚洲| 亚洲一区二区欧美日韩| 一区二区三区在线看| 高清av一区二区| 国产精品人成在线观看免费| 成人黄色免费短视频| thepron国产精品| 欧美一区二区三区精品| 国产精品色呦呦| 中文字幕在线视频一区| 午夜视频久久久久久| 免费在线一区观看| 成人免费视频国产在线观看| 欧美日韩另类一区| 国产色91在线| 亚洲18色成人| 成人免费黄色在线| 色综合色狠狠天天综合色| 日韩精品在线看片z| 亚洲免费av高清| 国内精品久久久久影院色| 色哟哟国产精品| 精品人在线二区三区| 亚洲精品亚洲人成人网在线播放| 美女诱惑一区二区| 色综合久久综合网| 久久久精品tv| 日韩专区欧美专区| va亚洲va日韩不卡在线观看| 日韩美一区二区三区| 亚洲日本乱码在线观看| 91传媒视频在线播放| 亚洲黄色免费网站| 在线电影欧美成精品| 中文字幕巨乱亚洲| 国产酒店精品激情| 精品乱码亚洲一区二区不卡| 午夜激情一区二区| 久久久久国产精品人| 秋霞电影一区二区| 欧美日韩精品一区二区三区四区 | 国产女人aaa级久久久级| 亚洲黄色av一区| 国产999精品久久久久久绿帽| 欧美人妖巨大在线| 亚洲欧美日韩在线播放| 欧美色综合影院| 欧美国产一区二区| 国产成人免费网站| 久久久精品国产99久久精品芒果 | 成人av高清在线| 欧美精品日日鲁夜夜添| 亚洲成人av福利| 欧美日韩综合在线免费观看| 香蕉av福利精品导航| 欧美人与z0zoxxxx视频| 日本欧美一区二区| 精品国产成人系列| 久久精品国产一区二区三| 91麻豆精品久久久久蜜臀| 亚洲女性喷水在线观看一区| 亚洲成va人在线观看| 日韩欧美国产一区二区在线播放| 久久国产三级精品| 56国语精品自产拍在线观看| 久久免费午夜影院| 成人高清在线视频| 亚洲免费视频成人| 精品美女一区二区| 久久一区二区三区国产精品| 精品久久久久一区| 国产精品青草久久| 91一区二区在线观看| 国产一级精品在线| 亚洲精品一区二区三区精华液| 亚洲午夜私人影院| 欧美日韩大陆在线| 毛片一区二区三区| 久久中文娱乐网| 成人自拍视频在线观看| 亚洲一区二区三区美女| 欧美群妇大交群中文字幕| 国产**成人网毛片九色| 婷婷国产v国产偷v亚洲高清| 久久麻豆一区二区| 在线亚洲欧美专区二区| 狠狠色狠狠色综合系列| 亚洲精品国产视频| 国产欧美中文在线| 欧美大胆一级视频| 成人欧美一区二区三区视频网页| 国产日韩综合av| 中文字幕一区二区不卡| 91国偷自产一区二区三区成为亚洲经典| 亚洲欧洲日产国码二区| 91福利在线观看| 五月激情综合婷婷| 久久综合久久鬼色中文字| 国产91精品露脸国语对白| **网站欧美大片在线观看| 欧美亚洲日本国产| 美国欧美日韩国产在线播放| 久久久青草青青国产亚洲免观| 狠狠色狠狠色综合| 中文字幕永久在线不卡| 国产精品18久久久久| 亚洲色图一区二区三区| 91精品国产综合久久精品图片 | 99久久99久久久精品齐齐| 亚洲国产视频直播| 久久免费美女视频| 欧美日韩中文另类| 成人午夜在线免费| 日本成人在线不卡视频| 中文字幕一区二区三区不卡在线 | 欧美日韩一区不卡| 欧美日本一道本在线视频| 日韩欧美色电影| 亚洲国产精华液网站w| 亚洲成年人网站在线观看| 欧美日韩在线电影| 欧美浪妇xxxx高跟鞋交| 精品成人在线观看| 一区二区三区在线视频免费 | 99久久婷婷国产精品综合| 国产亚洲一二三区| 欧美日本在线观看| 91女厕偷拍女厕偷拍高清| 国产精品99久| 免费在线观看不卡| 亚洲国产精品久久久久秋霞影院| 欧美综合在线视频| 国产精品久久久久久福利一牛影视| 一区二区三区在线影院| 国产一区二区在线影院| 欧美男男青年gay1069videost| 亚洲欧洲精品一区二区三区| 蜜桃久久精品一区二区| 欧美日韩在线一区二区| 中文字幕的久久| 国产一区二区三区香蕉| 欧美日韩国产精选| 亚洲精品国产精品乱码不99| 国产精品资源站在线| 日韩三级高清在线| 日韩va欧美va亚洲va久久| 在线欧美日韩精品| 亚洲免费观看视频| 色综合色综合色综合色综合色综合| 精品国产乱码久久久久久免费| 伦理电影国产精品| 欧美在线影院一区二区| 天天色天天爱天天射综合| 欧美精品精品一区| 日本午夜一本久久久综合| 色妞www精品视频| 欧美成人官网二区| 亚洲福利视频导航| 欧美性色综合网| 日韩综合小视频| 久久久精品免费观看| 欧美成人激情免费网| 日韩无一区二区| 91麻豆精品国产自产在线观看一区| 国产suv精品一区二区6| 国产一区二区三区久久久| 尤物在线观看一区| 久久精品免费在线观看| 久久久亚洲国产美女国产盗摄| 欧美tickling挠脚心丨vk| 精品伦理精品一区| 久久久欧美精品sm网站| 久久免费视频一区| 日本一区二区三区国色天香| 国产亲近乱来精品视频| 国产精品久久久久久久久快鸭| 成人av资源下载| 夜夜嗨av一区二区三区网页 | 精品亚洲国内自在自线福利| 欧美哺乳videos| 成人h动漫精品一区二区| 亚洲国产人成综合网站| 久久亚洲综合色| 色综合久久久久综合体| 欧美日韩一区二区在线观看| 日韩一级高清毛片|