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

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

?? jas_icc.c

?? JPEG2000是以小波變換為基礎
?? C
?? 第 1 頁 / 共 4 頁
字號:
jas_iccattrval_t *jas_iccattrval_clone(jas_iccattrval_t *attrval){	++attrval->refcnt;	return attrval;}void jas_iccattrval_destroy(jas_iccattrval_t *attrval){#if 0jas_eprintf("refcnt=%d\n", attrval->refcnt);#endif	if (--attrval->refcnt <= 0) {		if (attrval->ops->destroy)			(*attrval->ops->destroy)(attrval);		jas_free(attrval);	}}void jas_iccattrval_dump(jas_iccattrval_t *attrval, FILE *out){	char buf[8];	jas_iccsigtostr(attrval->type, buf);	fprintf(out, "refcnt = %d; type = 0x%08x %s\n", attrval->refcnt,	  attrval->type, jas_iccsigtostr(attrval->type, &buf[0]));	if (attrval->ops->dump) {		(*attrval->ops->dump)(attrval, out);	}}int jas_iccattrval_allowmodify(jas_iccattrval_t **attrvalx){	jas_iccattrval_t *newattrval;	jas_iccattrval_t *attrval = *attrvalx;	newattrval = 0;	if (attrval->refcnt > 1) {		if (!(newattrval = jas_iccattrval_create0()))			goto error;		newattrval->ops = attrval->ops;		newattrval->type = attrval->type;		++newattrval->refcnt;		if (newattrval->ops->copy) {			if ((*newattrval->ops->copy)(newattrval, attrval))				goto error;		} else {			memcpy(&newattrval->data, &attrval->data,			  sizeof(newattrval->data));		}		*attrvalx = newattrval;	}	return 0;error:	if (newattrval) {		jas_free(newattrval);	}	return -1;}static jas_iccattrval_t *jas_iccattrval_create0(){	jas_iccattrval_t *attrval;	if (!(attrval = jas_malloc(sizeof(jas_iccattrval_t))))		return 0;	memset(attrval, 0, sizeof(jas_iccattrval_t));	attrval->refcnt = 0;	attrval->ops = 0;	attrval->type = 0;	return attrval;}/******************************************************************************\*\******************************************************************************/static int jas_iccxyz_input(jas_iccattrval_t *attrval, jas_stream_t *in,  int len){	if (len != 4 * 3) abort();	return jas_iccgetxyz(in, &attrval->data.xyz);}static int jas_iccxyz_output(jas_iccattrval_t *attrval, jas_stream_t *out){	jas_iccxyz_t *xyz = &attrval->data.xyz;	if (jas_iccputuint32(out, xyz->x) ||	  jas_iccputuint32(out, xyz->y) ||	  jas_iccputuint32(out, xyz->z))		return -1;	return 0;}static int jas_iccxyz_getsize(jas_iccattrval_t *attrval){	/* Avoid compiler warnings about unused parameters. */	attrval = 0;	return 12;}static void jas_iccxyz_dump(jas_iccattrval_t *attrval, FILE *out){	jas_iccxyz_t *xyz = &attrval->data.xyz;	fprintf(out, "(%f, %f, %f)\n", xyz->x / 65536.0, xyz->y / 65536.0, xyz->z / 65536.0);}/******************************************************************************\* attribute table class\******************************************************************************/static void jas_icccurv_destroy(jas_iccattrval_t *attrval){	jas_icccurv_t *curv = &attrval->data.curv;	if (curv->ents)		jas_free(curv->ents);}static int jas_icccurv_copy(jas_iccattrval_t *attrval,  jas_iccattrval_t *othattrval){	/* Avoid compiler warnings about unused parameters. */	attrval = 0;	othattrval = 0;	/* Not yet implemented. */	abort();	return -1;}static int jas_icccurv_input(jas_iccattrval_t *attrval, jas_stream_t *in,  int cnt){	jas_icccurv_t *curv = &attrval->data.curv;	unsigned int i;	curv->numents = 0;	curv->ents = 0;	if (jas_iccgetuint32(in, &curv->numents))		goto error;	if (!(curv->ents = jas_malloc(curv->numents * sizeof(jas_iccuint16_t))))		goto error;	for (i = 0; i < curv->numents; ++i) {		if (jas_iccgetuint16(in, &curv->ents[i]))			goto error;	}	if (JAS_CAST(int, 4 + 2 * curv->numents) != cnt)		goto error;	return 0;error:	jas_icccurv_destroy(attrval);	return -1;}static int jas_icccurv_getsize(jas_iccattrval_t *attrval){	jas_icccurv_t *curv = &attrval->data.curv;	return 4 + 2 * curv->numents;}static int jas_icccurv_output(jas_iccattrval_t *attrval, jas_stream_t *out){	jas_icccurv_t *curv = &attrval->data.curv;	unsigned int i;	if (jas_iccputuint32(out, curv->numents))		goto error;	for (i = 0; i < curv->numents; ++i) {		if (jas_iccputuint16(out, curv->ents[i]))			goto error;	}	return 0;error:	return -1;}static void jas_icccurv_dump(jas_iccattrval_t *attrval, FILE *out){	int i;	jas_icccurv_t *curv = &attrval->data.curv;	fprintf(out, "number of entires = %d\n", curv->numents);	if (curv->numents == 1) {		fprintf(out, "gamma = %f\n", curv->ents[0] / 256.0);	} else {		for (i = 0; i < JAS_CAST(int, curv->numents); ++i) {			if (i < 3 || i >= JAS_CAST(int, curv->numents) - 3) {				fprintf(out, "entry[%d] = %f\n", i, curv->ents[i] / 65535.0);			}		}	}}/******************************************************************************\*\******************************************************************************/static void jas_icctxtdesc_destroy(jas_iccattrval_t *attrval){	jas_icctxtdesc_t *txtdesc = &attrval->data.txtdesc;	if (txtdesc->ascdata)		jas_free(txtdesc->ascdata);	if (txtdesc->ucdata)		jas_free(txtdesc->ucdata);}static int jas_icctxtdesc_copy(jas_iccattrval_t *attrval,  jas_iccattrval_t *othattrval){	jas_icctxtdesc_t *txtdesc = &attrval->data.txtdesc;	/* Avoid compiler warnings about unused parameters. */	attrval = 0;	othattrval = 0;	txtdesc = 0;	/* Not yet implemented. */	abort();	return -1;}static int jas_icctxtdesc_input(jas_iccattrval_t *attrval, jas_stream_t *in,  int cnt){	int n;	int c;	jas_icctxtdesc_t *txtdesc = &attrval->data.txtdesc;	txtdesc->ascdata = 0;	txtdesc->ucdata = 0;	if (jas_iccgetuint32(in, &txtdesc->asclen))		goto error;	if (!(txtdesc->ascdata = jas_malloc(txtdesc->asclen)))		goto error;	if (jas_stream_read(in, txtdesc->ascdata, txtdesc->asclen) !=	  JAS_CAST(int, txtdesc->asclen))		goto error;	txtdesc->ascdata[txtdesc->asclen - 1] = '\0';	if (jas_iccgetuint32(in, &txtdesc->uclangcode) ||	  jas_iccgetuint32(in, &txtdesc->uclen))		goto error;	if (!(txtdesc->ucdata = jas_malloc(txtdesc->uclen * 2)))		goto error;	if (jas_stream_read(in, txtdesc->ucdata, txtdesc->uclen * 2) !=	  JAS_CAST(int, txtdesc->uclen * 2))		goto error;	if (jas_iccgetuint16(in, &txtdesc->sccode))		goto error;	if ((c = jas_stream_getc(in)) == EOF)		goto error;	txtdesc->maclen = c;	if (jas_stream_read(in, txtdesc->macdata, 67) != 67)		goto error;	txtdesc->asclen = strlen(txtdesc->ascdata) + 1;#define WORKAROUND_BAD_PROFILES#ifdef WORKAROUND_BAD_PROFILES	n = txtdesc->asclen + txtdesc->uclen * 2 + 15 + 67;	if (n > cnt) {		return -1;	}	if (n < cnt) {		if (jas_stream_gobble(in, cnt - n) != cnt - n)			goto error;	}#else	if (txtdesc->asclen + txtdesc->uclen * 2 + 15 + 67 != cnt)		return -1;#endif	return 0;error:	jas_icctxtdesc_destroy(attrval);	return -1;}static int jas_icctxtdesc_getsize(jas_iccattrval_t *attrval){	jas_icctxtdesc_t *txtdesc = &attrval->data.txtdesc;	return strlen(txtdesc->ascdata) + 1 + txtdesc->uclen * 2 + 15 + 67;}static int jas_icctxtdesc_output(jas_iccattrval_t *attrval, jas_stream_t *out){	jas_icctxtdesc_t *txtdesc = &attrval->data.txtdesc;	if (jas_iccputuint32(out, txtdesc->asclen) ||	  jas_stream_puts(out, txtdesc->ascdata) ||	  jas_stream_putc(out, 0) == EOF ||	  jas_iccputuint32(out, txtdesc->uclangcode) ||	  jas_iccputuint32(out, txtdesc->uclen) ||	  jas_stream_write(out, txtdesc->ucdata, txtdesc->uclen * 2) != JAS_CAST(int, txtdesc->uclen * 2) ||	  jas_iccputuint16(out, txtdesc->sccode) ||	  jas_stream_putc(out, txtdesc->maclen) == EOF)		goto error;	if (txtdesc->maclen > 0) {		if (jas_stream_write(out, txtdesc->macdata, 67) != 67)			goto error;	} else {		if (jas_stream_pad(out, 67, 0) != 67)			goto error;	}	return 0;error:	return -1;}static void jas_icctxtdesc_dump(jas_iccattrval_t *attrval, FILE *out){	jas_icctxtdesc_t *txtdesc = &attrval->data.txtdesc;	fprintf(out, "ascii = \"%s\"\n", txtdesc->ascdata);	fprintf(out, "uclangcode = %d; uclen = %d\n", txtdesc->uclangcode,	  txtdesc->uclen);	fprintf(out, "sccode = %d\n", txtdesc->sccode);	fprintf(out, "maclen = %d\n", txtdesc->maclen);}/******************************************************************************\*\******************************************************************************/static void jas_icctxt_destroy(jas_iccattrval_t *attrval){	jas_icctxt_t *txt = &attrval->data.txt;	if (txt->string)		jas_free(txt->string);}static int jas_icctxt_copy(jas_iccattrval_t *attrval,  jas_iccattrval_t *othattrval){	jas_icctxt_t *txt = &attrval->data.txt;	jas_icctxt_t *othtxt = &othattrval->data.txt;	if (!(txt->string = jas_strdup(othtxt->string)))		return -1;	return 0;}static int jas_icctxt_input(jas_iccattrval_t *attrval, jas_stream_t *in,  int cnt){	jas_icctxt_t *txt = &attrval->data.txt;	txt->string = 0;	if (!(txt->string = jas_malloc(cnt)))		goto error;	if (jas_stream_read(in, txt->string, cnt) != cnt)		goto error;	txt->string[cnt - 1] = '\0';	if (JAS_CAST(int, strlen(txt->string)) + 1 != cnt)		goto error;	return 0;error:	if (txt->string)		jas_free(txt->string);	return -1;}static int jas_icctxt_getsize(jas_iccattrval_t *attrval){	jas_icctxt_t *txt = &attrval->data.txt;	return strlen(txt->string) + 1;}static int jas_icctxt_output(jas_iccattrval_t *attrval, jas_stream_t *out){	jas_icctxt_t *txt = &attrval->data.txt;	if (jas_stream_puts(out, txt->string) ||	  jas_stream_putc(out, 0) == EOF)		return -1;	return 0;}static void jas_icctxt_dump(jas_iccattrval_t *attrval, FILE *out){	jas_icctxt_t *txt = &attrval->data.txt;	fprintf(out, "string = \"%s\"\n", txt->string);}/******************************************************************************\*\******************************************************************************/static void jas_icclut8_destroy(jas_iccattrval_t *attrval){	jas_icclut8_t *lut8 = &attrval->data.lut8;	if (lut8->clut)		jas_free(lut8->clut);	if (lut8->intabs)		jas_free(lut8->intabs);	if (lut8->intabsbuf)		jas_free(lut8->intabsbuf);	if (lut8->outtabs)		jas_free(lut8->outtabs);	if (lut8->outtabsbuf)		jas_free(lut8->outtabsbuf);}static int jas_icclut8_copy(jas_iccattrval_t *attrval,  jas_iccattrval_t *othattrval){	jas_icclut8_t *lut8 = &attrval->data.lut8;	/* Avoid compiler warnings about unused parameters. */	attrval = 0;	othattrval = 0;	lut8 = 0;	abort();	return -1;}static int jas_icclut8_input(jas_iccattrval_t *attrval, jas_stream_t *in,  int cnt){	int i;	int j;	int clutsize;	jas_icclut8_t *lut8 = &attrval->data.lut8;	lut8->clut = 0;	lut8->intabs = 0;	lut8->intabsbuf = 0;	lut8->outtabs = 0;	lut8->outtabsbuf = 0;	if (jas_iccgetuint8(in, &lut8->numinchans) ||	  jas_iccgetuint8(in, &lut8->numoutchans) ||	  jas_iccgetuint8(in, &lut8->clutlen) ||	  jas_stream_getc(in) == EOF)		goto error;	for (i = 0; i < 3; ++i) {		for (j = 0; j < 3; ++j) {			if (jas_iccgetsint32(in, &lut8->e[i][j]))				goto error;		}	}	if (jas_iccgetuint16(in, &lut8->numintabents) ||	  jas_iccgetuint16(in, &lut8->numouttabents))		goto error;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产69精品一区二区亚洲孕妇| 丝袜a∨在线一区二区三区不卡| 欧美日韩在线电影| 国产东北露脸精品视频| 日韩在线播放一区二区| 亚洲另类在线一区| 亚洲人xxxx| 国产亚洲人成网站| 精品美女在线观看| 欧美一区午夜视频在线观看| 欧美自拍丝袜亚洲| 91久久精品一区二区二区| 99这里只有久久精品视频| 国产91高潮流白浆在线麻豆| 蜜臀91精品一区二区三区| 五月综合激情日本mⅴ| 一区二区成人在线| 亚洲欧洲日韩在线| 亚洲视频中文字幕| 国产亚洲精品aa午夜观看| 日韩欧美一区电影| 91精品国产免费| 欧美精品在欧美一区二区少妇| 一本色道a无线码一区v| 国产一本一道久久香蕉| 床上的激情91.| 成人一级视频在线观看| 国产99久久久国产精品潘金网站| 国产一区二区三区电影在线观看| 久久国产精品免费| 精品在线一区二区三区| 国产剧情在线观看一区二区 | 欧美一区二区三区的| 911国产精品| 精品国产免费一区二区三区四区| 精品久久久久av影院| 欧美国产欧美亚州国产日韩mv天天看完整| 欧美精品一区二区久久久 | 在线成人免费观看| 日韩欧美国产一区在线观看| 欧美mv日韩mv国产| 国产拍欧美日韩视频二区| 国产精品福利一区| 亚洲成人资源网| 欧美日韩视频专区在线播放| 欧美成人精品1314www| 国产精品久久三| 日本亚洲一区二区| 波多野结衣91| 91在线观看下载| 日韩精品一区二区三区四区视频 | 欧美日韩成人在线一区| 精品久久久久香蕉网| 亚洲资源中文字幕| 国产精品2024| 91网站在线播放| 51午夜精品国产| 一区二区三区不卡视频| 日本美女视频一区二区| 色88888久久久久久影院按摩| 久久美女高清视频| 天堂蜜桃一区二区三区| 欧美性生交片4| 中文字幕亚洲不卡| 国产大片一区二区| 欧美成人激情免费网| 亚洲h在线观看| 91精品中文字幕一区二区三区| 亚洲素人一区二区| kk眼镜猥琐国模调教系列一区二区| 日韩精品一区二区三区老鸭窝| 日韩精品每日更新| 91精品久久久久久蜜臀| 日韩av一区二区三区| 制服丝袜中文字幕亚洲| 天天操天天综合网| 精品少妇一区二区三区在线视频| 国产美女在线观看一区| 久久久久久久久久久久久久久99 | 久久99久久99精品免视看婷婷| 91精品一区二区三区久久久久久 | 91麻豆精品国产91久久久久| 亚洲午夜久久久久久久久电影院| 91麻豆精品在线观看| 亚洲精品久久7777| 欧美一区二区三区在线| 美女视频网站黄色亚洲| 久久一留热品黄| 成人黄页在线观看| 亚洲精品免费在线| 欧美吞精做爰啪啪高潮| 亚洲影院久久精品| 精品久久免费看| 91女人视频在线观看| 午夜精品视频在线观看| 久久精品视频在线看| 成人激情小说乱人伦| 国产精品国产自产拍在线| 国产美女在线观看一区| 成人欧美一区二区三区黑人麻豆| 欧美高清精品3d| 97aⅴ精品视频一二三区| 日韩精品一级中文字幕精品视频免费观看| 日韩一区二区三区四区| 成人小视频在线| 日本特黄久久久高潮| 亚洲美女电影在线| 日韩欧美中文字幕制服| 99天天综合性| 国产米奇在线777精品观看| 一区二区三区欧美日| 国产日本欧美一区二区| 欧美私人免费视频| 国产乱码精品一区二区三区av | 亚洲美女屁股眼交3| 成人国产视频在线观看| 精品一区二区日韩| 日本sm残虐另类| 91亚洲精品久久久蜜桃网站| 国产成人亚洲综合色影视| 久久精品国产免费| 伦理电影国产精品| 久久精品免费观看| 亚洲午夜国产一区99re久久| 亚洲精品美腿丝袜| 自拍视频在线观看一区二区| 精品久久国产97色综合| 欧美变态tickle挠乳网站| 久久这里都是精品| 国产欧美一区在线| 国产精品理伦片| 国产精品国产三级国产普通话99 | 美女免费视频一区二区| 免费不卡在线视频| 另类小说综合欧美亚洲| 精品在线免费视频| 国产精品一区二区黑丝| 大桥未久av一区二区三区中文| 国产精品一区在线观看你懂的| 国产美女av一区二区三区| 大胆亚洲人体视频| 在线一区二区视频| 91精品国产一区二区人妖| 精品日韩一区二区三区| 欧美韩日一区二区三区四区| 国产女主播在线一区二区| 日韩一级精品视频在线观看| 精品国产免费视频| 中文一区二区完整视频在线观看| 欧美成人伊人久久综合网| 国产日本欧美一区二区| 亚洲综合在线视频| 国产综合色视频| 成人久久18免费网站麻豆| 欧美日韩一区二区三区在线| 久久精品欧美一区二区三区麻豆| 136国产福利精品导航| 免费在线观看不卡| 久久97超碰色| 日本二三区不卡| 国产女人aaa级久久久级 | 久久女同互慰一区二区三区| 亚洲欧洲成人自拍| 久久精品理论片| av成人免费在线| 久久麻豆一区二区| 亚洲欧美影音先锋| 免费成人在线观看| 精品视频一区三区九区| 国产精品狼人久久影院观看方式| 国产制服丝袜一区| 欧美va在线播放| 日本欧美一区二区| 99国产精品99久久久久久| 久久中文娱乐网| 国产suv一区二区三区88区| 欧美成人猛片aaaaaaa| 美女视频黄频大全不卡视频在线播放| 色综合久久中文综合久久97| 17c精品麻豆一区二区免费| 成人夜色视频网站在线观看| 欧美韩日一区二区三区| 成人免费毛片aaaaa**| 国产精品欧美久久久久无广告 | 欧洲视频一区二区| 亚洲最新在线观看| 欧美中文字幕亚洲一区二区va在线| 亚洲午夜久久久久久久久久久 | 亚洲精品视频在线观看免费| 成人三级在线视频| 欧美激情在线看| 成人国产精品免费观看| 国产欧美日韩另类视频免费观看| 国产美女精品一区二区三区| 国产欧美日韩视频在线观看| 国产成人av福利| 亚洲一区二区在线免费看| 欧美日韩精品电影| 日韩不卡免费视频| 久久久三级国产网站|