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

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

?? tif_luv.c

?? 支持各種柵格圖像和矢量圖像讀取的庫
?? C
?? 第 1 頁 / 共 3 頁
字號:
{	uint32* luv = (uint32*) sp->tbuf;	int16* luv3 = (int16*) op;	while (n-- > 0) {		double u, v;		*luv3++ = (int16)(*luv >> 16);		u = 1./UVSCALE * ((*luv>>8 & 0xff) + .5);		v = 1./UVSCALE * ((*luv & 0xff) + .5);		*luv3++ = (int16)(u * (1L<<15));		*luv3++ = (int16)(v * (1L<<15));		luv++;	}}static voidLuv32toRGB(LogLuvState* sp, tidata_t op, int n){	uint32* luv = (uint32*) sp->tbuf;	uint8* rgb = (uint8*) op;	while (n-- > 0) {		float xyz[3];		LogLuv32toXYZ(*luv++, xyz);		XYZtoRGB24(xyz, rgb);		rgb += 3;	}}static voidLuv32fromXYZ(LogLuvState* sp, tidata_t op, int n){	uint32* luv = (uint32*) sp->tbuf;	float* xyz = (float*) op;	while (n-- > 0) {		*luv++ = LogLuv32fromXYZ(xyz, sp->encode_meth);		xyz += 3;	}}static voidLuv32fromLuv48(LogLuvState* sp, tidata_t op, int n){	uint32* luv = (uint32*) sp->tbuf;	int16* luv3 = (int16*) op;	if (sp->encode_meth == SGILOGENCODE_NODITHER) {		while (n-- > 0) {			*luv++ = (uint32)luv3[0] << 16 |				(luv3[1]*(uint32)(UVSCALE+.5) >> 7 & 0xff00) |				(luv3[2]*(uint32)(UVSCALE+.5) >> 15 & 0xff);			luv3 += 3;		}		return;	}	while (n-- > 0) {		*luv++ = (uint32)luv3[0] << 16 |	(itrunc(luv3[1]*(UVSCALE/(1<<15)), sp->encode_meth) << 8 & 0xff00) |		(itrunc(luv3[2]*(UVSCALE/(1<<15)), sp->encode_meth) & 0xff);		luv3 += 3;	}}static void_logLuvNop(LogLuvState* sp, tidata_t op, int n){	(void) sp; (void) op; (void) n;}static intLogL16GuessDataFmt(TIFFDirectory *td){#define	PACK(s,b,f)	(((b)<<6)|((s)<<3)|(f))	switch (PACK(td->td_samplesperpixel, td->td_bitspersample, td->td_sampleformat)) {	case PACK(1, 32, SAMPLEFORMAT_IEEEFP):		return (SGILOGDATAFMT_FLOAT);	case PACK(1, 16, SAMPLEFORMAT_VOID):	case PACK(1, 16, SAMPLEFORMAT_INT):	case PACK(1, 16, SAMPLEFORMAT_UINT):		return (SGILOGDATAFMT_16BIT);	case PACK(1,  8, SAMPLEFORMAT_VOID):	case PACK(1,  8, SAMPLEFORMAT_UINT):		return (SGILOGDATAFMT_8BIT);	}#undef PACK	return (SGILOGDATAFMT_UNKNOWN);}static uint32multiply(size_t m1, size_t m2){	uint32	bytes = m1 * m2;	if (m1 && bytes / m1 != m2)		bytes = 0;	return bytes;}static intLogL16InitState(TIFF* tif){	TIFFDirectory *td = &tif->tif_dir;	LogLuvState* sp = DecoderState(tif);	static const char module[] = "LogL16InitState";	assert(sp != NULL);	assert(td->td_photometric == PHOTOMETRIC_LOGL);	/* for some reason, we can't do this in TIFFInitLogL16 */	if (sp->user_datafmt == SGILOGDATAFMT_UNKNOWN)		sp->user_datafmt = LogL16GuessDataFmt(td);	switch (sp->user_datafmt) {	case SGILOGDATAFMT_FLOAT:		sp->pixel_size = sizeof (float);		break;	case SGILOGDATAFMT_16BIT:		sp->pixel_size = sizeof (int16);		break;	case SGILOGDATAFMT_8BIT:		sp->pixel_size = sizeof (uint8);		break;	default:		TIFFErrorExt(tif->tif_clientdata, tif->tif_name,		    "No support for converting user data format to LogL");		return (0);	}	sp->tbuflen = multiply(td->td_imagewidth, td->td_rowsperstrip);	if (multiply(sp->tbuflen, sizeof (int16)) == 0 ||	    (sp->tbuf = (tidata_t*) _TIFFmalloc(sp->tbuflen * sizeof (int16))) == NULL) {		TIFFErrorExt(tif->tif_clientdata, module, "%s: No space for SGILog translation buffer",		    tif->tif_name);		return (0);	}	return (1);}static intLogLuvGuessDataFmt(TIFFDirectory *td){	int guess;	/*	 * If the user didn't tell us their datafmt,	 * take our best guess from the bitspersample.	 */#define	PACK(a,b)	(((a)<<3)|(b))	switch (PACK(td->td_bitspersample, td->td_sampleformat)) {	case PACK(32, SAMPLEFORMAT_IEEEFP):		guess = SGILOGDATAFMT_FLOAT;		break;	case PACK(32, SAMPLEFORMAT_VOID):	case PACK(32, SAMPLEFORMAT_UINT):	case PACK(32, SAMPLEFORMAT_INT):		guess = SGILOGDATAFMT_RAW;		break;	case PACK(16, SAMPLEFORMAT_VOID):	case PACK(16, SAMPLEFORMAT_INT):	case PACK(16, SAMPLEFORMAT_UINT):		guess = SGILOGDATAFMT_16BIT;		break;	case PACK( 8, SAMPLEFORMAT_VOID):	case PACK( 8, SAMPLEFORMAT_UINT):		guess = SGILOGDATAFMT_8BIT;		break;	default:		guess = SGILOGDATAFMT_UNKNOWN;		break;#undef PACK	}	/*	 * Double-check samples per pixel.	 */	switch (td->td_samplesperpixel) {	case 1:		if (guess != SGILOGDATAFMT_RAW)			guess = SGILOGDATAFMT_UNKNOWN;		break;	case 3:		if (guess == SGILOGDATAFMT_RAW)			guess = SGILOGDATAFMT_UNKNOWN;		break;	default:		guess = SGILOGDATAFMT_UNKNOWN;		break;	}	return (guess);}static intLogLuvInitState(TIFF* tif){	TIFFDirectory* td = &tif->tif_dir;	LogLuvState* sp = DecoderState(tif);	static const char module[] = "LogLuvInitState";	assert(sp != NULL);	assert(td->td_photometric == PHOTOMETRIC_LOGLUV);	/* for some reason, we can't do this in TIFFInitLogLuv */	if (td->td_planarconfig != PLANARCONFIG_CONTIG) {		TIFFErrorExt(tif->tif_clientdata, module,		    "SGILog compression cannot handle non-contiguous data");		return (0);	}	if (sp->user_datafmt == SGILOGDATAFMT_UNKNOWN)		sp->user_datafmt = LogLuvGuessDataFmt(td);	switch (sp->user_datafmt) {	case SGILOGDATAFMT_FLOAT:		sp->pixel_size = 3*sizeof (float);		break;	case SGILOGDATAFMT_16BIT:		sp->pixel_size = 3*sizeof (int16);		break;	case SGILOGDATAFMT_RAW:		sp->pixel_size = sizeof (uint32);		break;	case SGILOGDATAFMT_8BIT:		sp->pixel_size = 3*sizeof (uint8);		break;	default:		TIFFErrorExt(tif->tif_clientdata, tif->tif_name,		    "No support for converting user data format to LogLuv");		return (0);	}	sp->tbuflen = multiply(td->td_imagewidth, td->td_rowsperstrip);	if (multiply(sp->tbuflen, sizeof (uint32)) == 0 ||	    (sp->tbuf = (tidata_t*) _TIFFmalloc(sp->tbuflen * sizeof (uint32))) == NULL) {		TIFFErrorExt(tif->tif_clientdata, module, "%s: No space for SGILog translation buffer",		    tif->tif_name);		return (0);	}	return (1);}static intLogLuvSetupDecode(TIFF* tif){	LogLuvState* sp = DecoderState(tif);	TIFFDirectory* td = &tif->tif_dir;	tif->tif_postdecode = _TIFFNoPostDecode;	switch (td->td_photometric) {	case PHOTOMETRIC_LOGLUV:		if (!LogLuvInitState(tif))			break;		if (td->td_compression == COMPRESSION_SGILOG24) {			tif->tif_decoderow = LogLuvDecode24;			switch (sp->user_datafmt) {			case SGILOGDATAFMT_FLOAT:				sp->tfunc = Luv24toXYZ;				break;			case SGILOGDATAFMT_16BIT:				sp->tfunc = Luv24toLuv48;				break;			case SGILOGDATAFMT_8BIT:				sp->tfunc = Luv24toRGB;				break;			}		} else {			tif->tif_decoderow = LogLuvDecode32;			switch (sp->user_datafmt) {			case SGILOGDATAFMT_FLOAT:				sp->tfunc = Luv32toXYZ;				break;			case SGILOGDATAFMT_16BIT:				sp->tfunc = Luv32toLuv48;				break;			case SGILOGDATAFMT_8BIT:				sp->tfunc = Luv32toRGB;				break;			}		}		return (1);	case PHOTOMETRIC_LOGL:		if (!LogL16InitState(tif))			break;		tif->tif_decoderow = LogL16Decode;		switch (sp->user_datafmt) {		case SGILOGDATAFMT_FLOAT:			sp->tfunc = L16toY;			break;		case SGILOGDATAFMT_8BIT:			sp->tfunc = L16toGry;			break;		}		return (1);	default:		TIFFErrorExt(tif->tif_clientdata, tif->tif_name,    "Inappropriate photometric interpretation %d for SGILog compression; %s",		    td->td_photometric, "must be either LogLUV or LogL");		break;	}	return (0);}static intLogLuvSetupEncode(TIFF* tif){	LogLuvState* sp = EncoderState(tif);	TIFFDirectory* td = &tif->tif_dir;	switch (td->td_photometric) {	case PHOTOMETRIC_LOGLUV:		if (!LogLuvInitState(tif))			break;		if (td->td_compression == COMPRESSION_SGILOG24) {			tif->tif_encoderow = LogLuvEncode24;			switch (sp->user_datafmt) {			case SGILOGDATAFMT_FLOAT:				sp->tfunc = Luv24fromXYZ;				break;			case SGILOGDATAFMT_16BIT:				sp->tfunc = Luv24fromLuv48;				break;			case SGILOGDATAFMT_RAW:				break;			default:				goto notsupported;			}		} else {			tif->tif_encoderow = LogLuvEncode32;			switch (sp->user_datafmt) {			case SGILOGDATAFMT_FLOAT:				sp->tfunc = Luv32fromXYZ;				break;			case SGILOGDATAFMT_16BIT:				sp->tfunc = Luv32fromLuv48;				break;			case SGILOGDATAFMT_RAW:				break;			default:				goto notsupported;			}		}		break;	case PHOTOMETRIC_LOGL:		if (!LogL16InitState(tif))			break;		tif->tif_encoderow = LogL16Encode;		switch (sp->user_datafmt) {		case SGILOGDATAFMT_FLOAT:			sp->tfunc = L16fromY;			break;		case SGILOGDATAFMT_16BIT:			break;		default:			goto notsupported;		}		break;	default:		TIFFErrorExt(tif->tif_clientdata, tif->tif_name,    "Inappropriate photometric interpretation %d for SGILog compression; %s",    		    td->td_photometric, "must be either LogLUV or LogL");		break;	}	return (1);notsupported:	TIFFErrorExt(tif->tif_clientdata, tif->tif_name,	    "SGILog compression supported only for %s, or raw data",	    td->td_photometric == PHOTOMETRIC_LOGL ? "Y, L" : "XYZ, Luv");	return (0);}static voidLogLuvClose(TIFF* tif){	TIFFDirectory *td = &tif->tif_dir;	/*	 * For consistency, we always want to write out the same	 * bitspersample and sampleformat for our TIFF file,	 * regardless of the data format being used by the application.	 * Since this routine is called after tags have been set but	 * before they have been recorded in the file, we reset them here.	 */	td->td_samplesperpixel =	    (td->td_photometric == PHOTOMETRIC_LOGL) ? 1 : 3;	td->td_bitspersample = 16;	td->td_sampleformat = SAMPLEFORMAT_INT;}static voidLogLuvCleanup(TIFF* tif){	LogLuvState* sp = (LogLuvState *)tif->tif_data;	assert(sp != 0);	tif->tif_tagmethods.vgetfield = sp->vgetparent;	tif->tif_tagmethods.vsetfield = sp->vsetparent;	if (sp->tbuf)		_TIFFfree(sp->tbuf);	_TIFFfree(sp);	tif->tif_data = NULL;	_TIFFSetDefaultCompressionState(tif);}static intLogLuvVSetField(TIFF* tif, ttag_t tag, va_list ap){	LogLuvState* sp = DecoderState(tif);	int bps, fmt;	switch (tag) {	case TIFFTAG_SGILOGDATAFMT:		sp->user_datafmt = va_arg(ap, int);		/*		 * Tweak the TIFF header so that the rest of libtiff knows what		 * size of data will be passed between app and library, and		 * assume that the app knows what it is doing and is not		 * confused by these header manipulations...		 */		switch (sp->user_datafmt) {		case SGILOGDATAFMT_FLOAT:			bps = 32, fmt = SAMPLEFORMAT_IEEEFP;			break;		case SGILOGDATAFMT_16BIT:			bps = 16, fmt = SAMPLEFORMAT_INT;			break;		case SGILOGDATAFMT_RAW:			bps = 32, fmt = SAMPLEFORMAT_UINT;			TIFFSetField(tif, TIFFTAG_SAMPLESPERPIXEL, 1);			break;		case SGILOGDATAFMT_8BIT:			bps = 8, fmt = SAMPLEFORMAT_UINT;			break;		default:			TIFFErrorExt(tif->tif_clientdata, tif->tif_name,			    "Unknown data format %d for LogLuv compression",			    sp->user_datafmt);			return (0);		}		TIFFSetField(tif, TIFFTAG_BITSPERSAMPLE, bps);		TIFFSetField(tif, TIFFTAG_SAMPLEFORMAT, fmt);		/*		 * Must recalculate sizes should bits/sample change.		 */		tif->tif_tilesize = isTiled(tif) ? TIFFTileSize(tif) : (tsize_t) -1;		tif->tif_scanlinesize = TIFFScanlineSize(tif);		return (1);	case TIFFTAG_SGILOGENCODE:		sp->encode_meth = va_arg(ap, int);		if (sp->encode_meth != SGILOGENCODE_NODITHER &&				sp->encode_meth != SGILOGENCODE_RANDITHER) {			TIFFErrorExt(tif->tif_clientdata, tif->tif_name,				"Unknown encoding %d for LogLuv compression",				sp->encode_meth);			return (0);		}		return (1);	default:		return (*sp->vsetparent)(tif, tag, ap);	}}static intLogLuvVGetField(TIFF* tif, ttag_t tag, va_list ap){	LogLuvState *sp = (LogLuvState *)tif->tif_data;	switch (tag) {	case TIFFTAG_SGILOGDATAFMT:		*va_arg(ap, int*) = sp->user_datafmt;		return (1);	default:		return (*sp->vgetparent)(tif, tag, ap);	}}static const TIFFFieldInfo LogLuvFieldInfo[] = {    { TIFFTAG_SGILOGDATAFMT,	  0, 0,	TIFF_SHORT,	FIELD_PSEUDO,      TRUE,	FALSE,	"SGILogDataFmt"},    { TIFFTAG_SGILOGENCODE,	  0, 0, TIFF_SHORT,	FIELD_PSEUDO,      TRUE,	FALSE,	"SGILogEncode"}};intTIFFInitSGILog(TIFF* tif, int scheme){	static const char module[] = "TIFFInitSGILog";	LogLuvState* sp;	assert(scheme == COMPRESSION_SGILOG24 || scheme == COMPRESSION_SGILOG);	/*	 * Allocate state block so tag methods have storage to record values.	 */	tif->tif_data = (tidata_t) _TIFFmalloc(sizeof (LogLuvState));	if (tif->tif_data == NULL)		goto bad;	sp = (LogLuvState*) tif->tif_data;	_TIFFmemset((tdata_t)sp, 0, sizeof (*sp));	sp->user_datafmt = SGILOGDATAFMT_UNKNOWN;	sp->encode_meth = (scheme == COMPRESSION_SGILOG24) ?				SGILOGENCODE_RANDITHER : SGILOGENCODE_NODITHER;	sp->tfunc = _logLuvNop;	/*	 * Install codec methods.	 * NB: tif_decoderow & tif_encoderow are filled	 *     in at setup time.	 */	tif->tif_setupdecode = LogLuvSetupDecode;	tif->tif_decodestrip = LogLuvDecodeStrip;	tif->tif_decodetile = LogLuvDecodeTile;	tif->tif_setupencode = LogLuvSetupEncode;	tif->tif_encodestrip = LogLuvEncodeStrip;	tif->tif_encodetile = LogLuvEncodeTile;	tif->tif_close = LogLuvClose;	tif->tif_cleanup = LogLuvCleanup;	/* override SetField so we can handle our private pseudo-tag */	_TIFFMergeFieldInfo(tif, LogLuvFieldInfo,			    TIFFArrayCount(LogLuvFieldInfo));	sp->vgetparent = tif->tif_tagmethods.vgetfield;	tif->tif_tagmethods.vgetfield = LogLuvVGetField;   /* hook for codec tags */	sp->vsetparent = tif->tif_tagmethods.vsetfield;	tif->tif_tagmethods.vsetfield = LogLuvVSetField;   /* hook for codec tags */	return (1);bad:	TIFFErrorExt(tif->tif_clientdata, module,		     "%s: No space for LogLuv state block", tif->tif_name);	return (0);}#endif /* LOGLUV_SUPPORT *//* vim: set ts=8 sts=8 sw=8 noet: */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www.欧美日韩国产在线| 日韩一区在线免费观看| 国产日韩精品视频一区| 亚洲三级在线免费观看| 日韩av网站在线观看| 色域天天综合网| 久久久久久久久久看片| 久久er精品视频| 制服丝袜成人动漫| 一区二区三区电影在线播| 国产成+人+日韩+欧美+亚洲| 国产亚洲精久久久久久| 国产一区二区三区在线看麻豆| 日韩一区二区免费在线观看| 国产久卡久卡久卡久卡视频精品| 日韩女优视频免费观看| 蜜桃视频一区二区| 欧美高清一级片在线观看| 国内精品伊人久久久久影院对白| 久久久久久**毛片大全| 天堂一区二区在线| 久久久久国产免费免费| 日韩美女视频一区| 成人性生交大片免费看视频在线 | 亚洲日本一区二区| 正在播放一区二区| 色偷偷久久人人79超碰人人澡| 国内一区二区视频| 麻豆中文一区二区| 亚洲国产综合人成综合网站| 国产精品卡一卡二| proumb性欧美在线观看| 亚洲中国最大av网站| 欧美午夜理伦三级在线观看| 三级欧美韩日大片在线看| 91精品国产综合久久精品图片| 日韩精品电影在线| 欧美日韩视频第一区| 三级成人在线视频| 日韩一区二区在线播放| 美日韩一区二区三区| 欧美一卡2卡三卡4卡5免费| 九九精品一区二区| 亚洲三级电影网站| 欧美一区二区精美| 成人小视频免费观看| 三级久久三级久久| 中文字幕一区二区三区在线播放| 欧美综合在线视频| youjizz久久| 麻豆成人在线观看| 国产精品久久久久天堂| 91精品国产综合久久久蜜臀图片 | av中文字幕不卡| eeuss鲁一区二区三区| 国产精品丝袜久久久久久app| 国产拍欧美日韩视频二区| 亚洲欧洲日韩一区二区三区| 99r精品视频| 波多野结衣在线aⅴ中文字幕不卡| 国产经典欧美精品| 国产成人亚洲综合a∨婷婷图片| 亚洲国产综合人成综合网站| 免费不卡在线视频| 久久99国产精品尤物| 波波电影院一区二区三区| 成人蜜臀av电影| 亚洲人成小说网站色在线| 欧美一区二区三区视频| 欧美日韩一区二区在线视频| 国产91综合网| 国产成人精品亚洲777人妖| 精品粉嫩aⅴ一区二区三区四区| 91国偷自产一区二区三区观看| 国产美女视频一区| 日本成人在线不卡视频| 天天av天天翘天天综合网色鬼国产| 亚洲视频精选在线| 国产人久久人人人人爽| 国产精品丝袜91| 国产精品久久午夜夜伦鲁鲁| 日韩免费观看高清完整版| 精品久久久网站| 色94色欧美sute亚洲线路一久| 国产精品1区二区.| 精品久久久久久久一区二区蜜臀| 成人欧美一区二区三区白人| 日韩三级免费观看| 日韩欧美色电影| 国产精品久久免费看| 亚洲色图制服诱惑| 国产精品视频一区二区三区不卡| 日韩精品一区在线观看| 中文字幕精品在线不卡| 亚洲欧美一区二区三区极速播放 | 国产成人av一区二区三区在线| 91在线观看视频| 在线成人免费观看| 精品成人一区二区三区| 一区二区三区电影在线播| 麻豆视频观看网址久久| 色悠悠久久综合| 亚洲特级片在线| 亚洲成人av电影在线| 国产999精品久久| 欧美一区二区三区四区视频| 亚洲永久精品大片| 亚洲色图在线看| 蜜桃视频免费观看一区| 国产一区二区在线视频| 欧美三级日韩在线| 国产精品久久久久永久免费观看| 91在线视频播放| 九九国产精品视频| 亚洲国产日韩a在线播放性色| 欧美成人r级一区二区三区| 欧美无人高清视频在线观看| 日韩欧美一区二区免费| 亚洲人成网站色在线观看| 欧洲国内综合视频| 亚洲欧美日韩一区二区| 91色婷婷久久久久合中文| 亚洲精品伦理在线| 久久综合成人精品亚洲另类欧美 | 亚洲欧美经典视频| 国产午夜精品美女毛片视频| 在线不卡欧美精品一区二区三区| 成人黄色国产精品网站大全在线免费观看 | 国产白丝精品91爽爽久久| 在线播放国产精品二区一二区四区| 久久国内精品视频| 91精品欧美综合在线观看最新| 久国产精品韩国三级视频| 亚洲国产精华液网站w| 久久久亚洲精华液精华液精华液| 亚洲一区二区三区四区在线| 一本久道中文字幕精品亚洲嫩| 亚洲精品一区二区三区福利 | 在线看一区二区| 亚洲欧洲一区二区三区| 国产成人在线视频免费播放| 国产亚洲制服色| 九九视频精品免费| 久久免费偷拍视频| 国产做a爰片久久毛片| 26uuu国产在线精品一区二区| 日本成人在线网站| 4438x成人网最大色成网站| 裸体在线国模精品偷拍| 欧美一区二区美女| 欧美电影免费观看高清完整版| 一区二区三区四区在线| 91免费精品国自产拍在线不卡| 亚洲欧洲制服丝袜| 色婷婷激情综合| 国产精品每日更新| www.亚洲色图| 一区二区在线看| 欧美精选午夜久久久乱码6080| 五月综合激情日本mⅴ| 精品国产sm最大网站免费看| 激情文学综合网| 欧美韩国一区二区| av激情成人网| 欧美极品美女视频| 在线观看免费亚洲| 日韩精品久久久久久| 日本一区二区三区久久久久久久久不 | 欧美日韩日日骚| 午夜久久久久久电影| 91麻豆精品久久久久蜜臀| 国产露脸91国语对白| 国产欧美日韩麻豆91| 欧美日韩在线免费视频| 日韩电影免费在线观看网站| 久久久国际精品| 国产激情精品久久久第一区二区| 中文字幕一区二区三区在线观看| 欧美日韩色一区| 韩国精品免费视频| 欧美一卡二卡三卡四卡| 精品国产3级a| 国产一区二区精品久久99| 国产欧美一区二区三区在线老狼 | 另类小说色综合网站| 久久色在线观看| 欧美视频一区二区三区四区| 韩国精品主播一区二区在线观看 | 久久伊人蜜桃av一区二区| 成人黄色国产精品网站大全在线免费观看 | 一本大道久久a久久精品综合| 亚洲妇熟xx妇色黄| 国产日韩欧美精品电影三级在线 | 色狠狠桃花综合| 蜜臂av日日欢夜夜爽一区| 国产日韩欧美电影| 欧美日韩成人高清| 91丝袜美腿高跟国产极品老师| 男女男精品网站| 欧美亚洲动漫精品|