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

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

?? tif_open.c

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? C
?? 第 1 頁 / 共 2 頁
字號:
		 */		TIFFInitOrder(tif, tif->tif_header.tiff_magic);		/*		 * Setup default directory.		 */		if (!TIFFDefaultDirectory(tif))			goto bad;		tif->tif_diroff = 0;		tif->tif_dirlist = NULL;		tif->tif_dirlistsize = 0;		tif->tif_dirnumber = 0;		return (tif);	}	/*	 * Setup the byte order handling.	 */	if (tif->tif_header.tiff_magic != TIFF_BIGENDIAN &&	    tif->tif_header.tiff_magic != TIFF_LITTLEENDIAN#if MDI_SUPPORT	    &&#if HOST_BIGENDIAN	    tif->tif_header.tiff_magic != MDI_BIGENDIAN#else	    tif->tif_header.tiff_magic != MDI_LITTLEENDIAN#endif	    ) {		TIFFErrorExt(tif->tif_clientdata, name,			"Not a TIFF or MDI file, bad magic number %d (0x%x)",#else	    ) {		TIFFErrorExt(tif->tif_clientdata, name,			     "Not a TIFF file, bad magic number %d (0x%x)",#endif		    tif->tif_header.tiff_magic,		    tif->tif_header.tiff_magic);		goto bad;	}	TIFFInitOrder(tif, tif->tif_header.tiff_magic);	/*	 * Swap header if required.	 */	if (tif->tif_flags & TIFF_SWAB) {		TIFFSwabShort(&tif->tif_header.tiff_version);		TIFFSwabLong(&tif->tif_header.tiff_diroff);	}	/*	 * Now check version (if needed, it's been byte-swapped).	 * Note that this isn't actually a version number, it's a	 * magic number that doesn't change (stupid).	 */	if (tif->tif_header.tiff_version == TIFF_BIGTIFF_VERSION) {		TIFFErrorExt(tif->tif_clientdata, name,                          "This is a BigTIFF file.  This format not supported\n"                          "by this version of libtiff." );		goto bad;	}	if (tif->tif_header.tiff_version != TIFF_VERSION) {		TIFFErrorExt(tif->tif_clientdata, name,		    "Not a TIFF file, bad version number %d (0x%x)",		    tif->tif_header.tiff_version,		    tif->tif_header.tiff_version);		goto bad;	}	tif->tif_flags |= TIFF_MYBUFFER;	tif->tif_rawcp = tif->tif_rawdata = 0;	tif->tif_rawdatasize = 0;	/*	 * Sometimes we do not want to read the first directory (for example,	 * it may be broken) and want to proceed to other directories. I this	 * case we use the TIFF_HEADERONLY flag to open file and return	 * immediately after reading TIFF header.	 */	if (tif->tif_flags & TIFF_HEADERONLY)		return (tif);	/*	 * Setup initial directory.	 */	switch (mode[0]) {	case 'r':		tif->tif_nextdiroff = tif->tif_header.tiff_diroff;		/*		 * Try to use a memory-mapped file if the client		 * has not explicitly suppressed usage with the		 * 'm' flag in the open mode (see above).		 */		if ((tif->tif_flags & TIFF_MAPPED) &&	!TIFFMapFileContents(tif, (tdata_t*) &tif->tif_base, &tif->tif_size))			tif->tif_flags &= ~TIFF_MAPPED;		if (TIFFReadDirectory(tif)) {			tif->tif_rawcc = -1;			tif->tif_flags |= TIFF_BUFFERSETUP;			return (tif);		}		break;	case 'a':		/*		 * New directories are automatically append		 * to the end of the directory chain when they		 * are written out (see TIFFWriteDirectory).		 */		if (!TIFFDefaultDirectory(tif))			goto bad;		return (tif);	}bad:	tif->tif_mode = O_RDONLY;	/* XXX avoid flush */        TIFFCleanup(tif);bad2:	return ((TIFF*)0);}/* * Query functions to access private data. *//* * Return open file's name. */const char *TIFFFileName(TIFF* tif){	return (tif->tif_name);}/* * Set the file name. */const char *TIFFSetFileName(TIFF* tif, const char *name){	const char* old_name = tif->tif_name;	tif->tif_name = (char *)name;	return (old_name);}/* * Return open file's I/O descriptor. */intTIFFFileno(TIFF* tif){	return (tif->tif_fd);}/* * Set open file's I/O descriptor, and return previous value. */intTIFFSetFileno(TIFF* tif, int fd){        int old_fd = tif->tif_fd;	tif->tif_fd = fd;	return old_fd;}/* * Return open file's clientdata. */thandle_tTIFFClientdata(TIFF* tif){	return (tif->tif_clientdata);}/* * Set open file's clientdata, and return previous value. */thandle_tTIFFSetClientdata(TIFF* tif, thandle_t newvalue){	thandle_t m = tif->tif_clientdata;	tif->tif_clientdata = newvalue;	return m;}/* * Return read/write mode. */intTIFFGetMode(TIFF* tif){	return (tif->tif_mode);}/* * Return read/write mode. */intTIFFSetMode(TIFF* tif, int mode){	int old_mode = tif->tif_mode;	tif->tif_mode = mode;	return (old_mode);}/* * Return nonzero if file is organized in * tiles; zero if organized as strips. */intTIFFIsTiled(TIFF* tif){	return (isTiled(tif));}/* * Return current row being read/written. */uint32TIFFCurrentRow(TIFF* tif){	return (tif->tif_row);}/* * Return index of the current directory. */tdir_tTIFFCurrentDirectory(TIFF* tif){	return (tif->tif_curdir);}/* * Return current strip. */tstrip_tTIFFCurrentStrip(TIFF* tif){	return (tif->tif_curstrip);}/* * Return current tile. */ttile_tTIFFCurrentTile(TIFF* tif){	return (tif->tif_curtile);}/* * Return nonzero if the file has byte-swapped data. */intTIFFIsByteSwapped(TIFF* tif){	return ((tif->tif_flags & TIFF_SWAB) != 0);}/* * Return nonzero if the data is returned up-sampled. */intTIFFIsUpSampled(TIFF* tif){	return (isUpSampled(tif));}/* * Return nonzero if the data is returned in MSB-to-LSB bit order. */intTIFFIsMSB2LSB(TIFF* tif){	return (isFillOrder(tif, FILLORDER_MSB2LSB));}/* * Return nonzero if given file was written in big-endian order. */intTIFFIsBigEndian(TIFF* tif){	return (tif->tif_header.tiff_magic == TIFF_BIGENDIAN);}/* * Return pointer to file read method. */TIFFReadWriteProcTIFFGetReadProc(TIFF* tif){	return (tif->tif_readproc);}/* * Return pointer to file write method. */TIFFReadWriteProcTIFFGetWriteProc(TIFF* tif){	return (tif->tif_writeproc);}/* * Return pointer to file seek method. */TIFFSeekProcTIFFGetSeekProc(TIFF* tif){	return (tif->tif_seekproc);}/* * Return pointer to file close method. */TIFFCloseProcTIFFGetCloseProc(TIFF* tif){	return (tif->tif_closeproc);}/* * Return pointer to file size requesting method. */TIFFSizeProcTIFFGetSizeProc(TIFF* tif){	return (tif->tif_sizeproc);}/* * Return pointer to memory mapping method. */TIFFMapFileProcTIFFGetMapFileProc(TIFF* tif){	return (tif->tif_mapproc);}/* * Return pointer to memory unmapping method. */TIFFUnmapFileProcTIFFGetUnmapFileProc(TIFF* tif){	return (tif->tif_unmapproc);}/* vim: set ts=8 sts=8 sw=8 noet: */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
proumb性欧美在线观看| 成人深夜视频在线观看| 亚洲人成网站在线| 国产亲近乱来精品视频| 欧美久久久久免费| 日本道精品一区二区三区| 国产精品88888| 国产高清精品网站| 极品销魂美女一区二区三区| 天天综合天天综合色| 亚洲综合一区二区精品导航| 亚洲婷婷国产精品电影人久久| 欧美精品一区二区三区很污很色的| 欧美在线一区二区| 欧美日韩综合一区| 欧美片在线播放| 69精品人人人人| 精品久久人人做人人爰| 日韩一级二级三级| 精品日韩在线观看| 日韩欧美在线网站| 久久久久久久综合日本| 国产精品毛片a∨一区二区三区| 中文字幕一区二区在线观看 | 欧美日本在线播放| 欧美日韩另类国产亚洲欧美一级| 欧美日韩国产精品成人| 欧美一区二区三区在线视频| 日韩一区二区电影在线| 中文av字幕一区| 亚洲国产精品久久一线不卡| 久久精品国产秦先生| 国产成人亚洲综合a∨婷婷图片| 大尺度一区二区| 91精品国产入口在线| 国产欧美精品区一区二区三区 | 风间由美一区二区三区在线观看| 国产成人av影院| 亚洲国产欧美在线人成| 美女视频网站久久| 91丝袜高跟美女视频| 欧美日韩中文精品| 欧美国产日韩a欧美在线观看| 亚洲高清免费在线| 成人av电影免费观看| 精品日本一线二线三线不卡| 成人欧美一区二区三区视频网页| 日本中文在线一区| 色先锋久久av资源部| 中文成人av在线| 精彩视频一区二区三区| 欧美日韩免费在线视频| 亚洲欧洲av另类| 成人手机电影网| 国产亚洲成av人在线观看导航| 日韩电影在线免费| 91久久精品网| 一区二区三区产品免费精品久久75 | 国产人久久人人人人爽| 奇米精品一区二区三区在线观看 | 91精品国产色综合久久久蜜香臀| 亚洲欧美日韩国产综合在线| 国产精品主播直播| 久久久久久黄色| 免费日本视频一区| 日韩欧美一区二区久久婷婷| 午夜国产精品影院在线观看| 精品视频999| 偷窥国产亚洲免费视频| 欧美日韩夫妻久久| 蜜桃在线一区二区三区| www国产成人| 成人深夜福利app| 亚洲欧美日韩人成在线播放| 成人福利在线看| 亚洲色图在线看| 欧美日韩一区二区欧美激情| 亚洲1区2区3区视频| 欧美情侣在线播放| 国内不卡的二区三区中文字幕| 久久九九久久九九| 91精品1区2区| 极品美女销魂一区二区三区| 国产精品视频观看| 欧美日韩国产一级片| 国产在线日韩欧美| 一区二区三区欧美视频| 精品久久一二三区| 日本韩国欧美三级| 黄页网站大全一区二区| 一区二区三区日韩| 国产三级精品三级| 91精品国产综合久久久久久| 国产成人激情av| 毛片基地黄久久久久久天堂| 日韩欧美卡一卡二| 日日夜夜一区二区| 在线成人av网站| 成人一道本在线| 久久99国产精品久久99| 一级中文字幕一区二区| 中文欧美字幕免费| 日韩视频一区二区| 欧美少妇一区二区| 99久久精品国产导航| 国产麻豆日韩欧美久久| 天天爽夜夜爽夜夜爽精品视频| 亚洲人成影院在线观看| 欧美成人vr18sexvr| 欧美精品aⅴ在线视频| 色综合天天在线| 国产一区二区三区在线观看精品 | 亚洲v中文字幕| 亚洲成精国产精品女| 一区二区三区四区视频精品免费 | 久久成人综合网| 久热成人在线视频| 麻豆精品一区二区综合av| 免费的国产精品| 激情综合网天天干| 国产乱人伦精品一区二区在线观看| 蜜桃av噜噜一区| 国产伦理精品不卡| 成人国产免费视频| 91原创在线视频| 欧美日韩大陆在线| 亚洲精品一区二区在线观看| 久久影院视频免费| 国产精品国产馆在线真实露脸| 国产精品每日更新| 亚洲电影视频在线| 日本欧美一区二区在线观看| 日韩av成人高清| 国产宾馆实践打屁股91| 欧美最猛性xxxxx直播| 日韩欧美在线网站| 中文字幕制服丝袜成人av| 亚洲福中文字幕伊人影院| 日本中文字幕一区二区有限公司| 国产精品白丝av| 在线免费av一区| 精品播放一区二区| 一区二区三区在线免费| 精品中文字幕一区二区| 在线视频一区二区免费| 亚洲国产精品精华液2区45| 亚洲丝袜精品丝袜在线| 蜜臀av一区二区在线观看| 91小视频免费观看| 久久色.com| 日日摸夜夜添夜夜添精品视频| 国产精品一区在线观看你懂的| 色综合天天综合在线视频| 欧美精品一区二区高清在线观看| 国产精品欧美经典| 国产精品一区二区久久不卡 | 国产一区二区三区电影在线观看| 在线观看日韩毛片| 亚洲欧洲一区二区在线播放| 老司机精品视频线观看86 | 国产精品美女久久福利网站| 老司机免费视频一区二区三区| 欧美日韩在线观看一区二区| 亚洲欧美一区二区三区极速播放| 久久国产精品99久久人人澡| 日韩久久久久久| 美国毛片一区二区| 日韩欧美一区二区三区在线| 丝袜亚洲精品中文字幕一区| 欧美三级蜜桃2在线观看| 亚洲午夜国产一区99re久久| 91视频.com| 亚洲欧美区自拍先锋| 91蜜桃在线免费视频| 中文字幕一区二区三区在线不卡 | 欧美成人一区二区| 国内精品久久久久影院色| 国产欧美日韩综合| 91在线视频免费91| 一区二区三区不卡视频在线观看| 欧美图区在线视频| 日韩影院免费视频| 精品999在线播放| 99精品1区2区| 全国精品久久少妇| 欧美国产欧美综合| 91福利在线导航| 久久国产综合精品| 中文字幕欧美区| 欧美优质美女网站| 国产精品自拍在线| 中文av一区特黄| 日韩欧美一区在线观看| 国产成人综合自拍| 亚洲h在线观看| 国产精品久久久久久一区二区三区| 色拍拍在线精品视频8848| 麻豆精品一区二区综合av| 亚洲日本在线视频观看| 91精品欧美综合在线观看最新|