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

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

?? progressionspec.java

?? jpeg2000算法實現
?? JAVA
字號:
/* * CVS identifier: * * $Id: ProgressionSpec.java,v 1.15 2001/02/19 11:17:25 grosbois Exp $ * * Class:                   ProgressionSpec * * Description:             Specification of the progression(s) type(s) and *                          changes of progression. * * COPYRIGHT: *  * This software module was originally developed by Rapha雔 Grosbois and * Diego Santa Cruz (Swiss Federal Institute of Technology-EPFL); Joel * Askel鰂 (Ericsson Radio Systems AB); and Bertrand Berthelot, David * Bouchard, F閘ix Henry, Gerard Mozelle and Patrice Onno (Canon Research * Centre France S.A) in the course of development of the JPEG2000 * standard as specified by ISO/IEC 15444 (JPEG 2000 Standard). This * software module is an implementation of a part of the JPEG 2000 * Standard. Swiss Federal Institute of Technology-EPFL, Ericsson Radio * Systems AB and Canon Research Centre France S.A (collectively JJ2000 * Partners) agree not to assert against ISO/IEC and users of the JPEG * 2000 Standard (Users) any of their rights under the copyright, not * including other intellectual property rights, for this software module * with respect to the usage by ISO/IEC and Users of this software module * or modifications thereof for use in hardware or software products * claiming conformance to the JPEG 2000 Standard. Those intending to use * this software module in hardware or software products are advised that * their use may infringe existing patents. The original developers of * this software module, JJ2000 Partners and ISO/IEC assume no liability * for use of this software module or modifications thereof. No license * or right to this software module is granted for non JPEG 2000 Standard * conforming products. JJ2000 Partners have full right to use this * software module for his/her own purpose, assign or donate this * software module to any third party and to inhibit third parties from * using this software module for non JPEG 2000 Standard conforming * products. This copyright notice must be included in all copies or * derivative works of this software module. *  * Copyright (c) 1999/2000 JJ2000 Partners. *  */package jj2000.j2k.entropy;import java.util.*;import jj2000.j2k.codestream.*;import jj2000.j2k.wavelet.*;import jj2000.j2k.image.*;import jj2000.j2k.util.*;import jj2000.j2k.*;/** * This class extends ModuleSpec class for progression type(s) and progression * order changes holding purposes. *  * <P>It stores the progression type(s) used in the codestream. There can be * only one progression type or several ones if progression order changes are * used (POC markers). * */public class ProgressionSpec extends ModuleSpec {    /**     * Creates a new ProgressionSpec object for the specified number of tiles     * and components.     *     * @param nt The number of tiles     *     * @param nc The number of components     *     * @param type the type of the specification module i.e. tile specific,     * component specific or both. The ProgressionSpec class should only be     * used only with the type ModuleSpec.SPEC_TYPE_TILE.     * */    public ProgressionSpec(int nt, int nc, byte type) {        super(nt, nc, type);        if ( type !=  ModuleSpec.SPEC_TYPE_TILE ) {            throw new Error("Illegal use of class ProgressionSpec !");        }    }        /**     * Creates a new ProgressionSpec object for the specified number of     * tiles, components and the ParameterList instance.     *     * @param nt The number of tiles     *     * @param nc The number of components     *     * @param nl The number of layer     *     * @param dls The number of decomposition levels specifications     *     * @param type the type of the specification module. The ProgressionSpec     * class should only be used only with the type ModuleSpec.SPEC_TYPE_TILE.     *     * @param pl The ParameterList instance     * */    public ProgressionSpec(int nt,int nc,int nl,IntegerSpec dls,byte type,			   ParameterList pl){        super(nt,nc,type);        String param  = pl.getParameter("Aptype");	Progression[] prog;	int mode=-1;        if(param == null){ // No parameter specified            if(pl.getParameter("Rroi") == null) {                mode = checkProgMode("res");            }            else {                mode = checkProgMode("layer");            }	    if(mode==-1){		String errMsg = "Unknown progression type : '"+param+"'";		throw new IllegalArgumentException(errMsg);  	    }	    prog = new Progression[1];	    prog[0] = new Progression(mode,0,nc,0,dls.getMax()+1,nl);            setDefault(prog);            return;        }        StringTokenizer stk = new StringTokenizer(param);        byte curSpecType = SPEC_DEF; // Specification type of the                                     // current parameter        boolean[] tileSpec = null; // Tiles concerned by the specification        String word   = null; // current word        String errMsg = null; // Error message	boolean needInteger = false; // True if an integer value is expected	int intType = 0; // Type of read integer value (0=index of first	// component, 1= index of first resolution level, 2=index of last 	// layer, 3= index of last component, 4= index of last resolution        // level) 	Vector progression = new Vector();	int tmp = 0;	Progression curProg = null;        while(stk.hasMoreTokens()){	    word = stk.nextToken();            switch(word.charAt(0)){            case 't': 		// If progression were previously found, store them		if(progression.size()>0){		    // Ensure that all information has been taken		    curProg.ce = nc;		    curProg.lye = nl;		    curProg.re = dls.getMax()+1;		    prog = new Progression[progression.size()];		    progression.copyInto(prog);		    if(curSpecType==SPEC_DEF){			setDefault(prog);		    }		    else if(curSpecType==SPEC_TILE_DEF){			for(int i=tileSpec.length-1; i>=0; i--)			    if(tileSpec[i]){				setTileDef(i,prog);			    }		    }		}		progression.removeAllElements();		intType=0;		needInteger = false;                // Tiles specification                tileSpec = parseIdx(word,nTiles);		curSpecType = SPEC_TILE_DEF;  		break;            default:		// Here, words is either a Integer (progression bound		// index) or a String (progression order type). This		// is determined by the value of needInteger.		if(needInteger){ // Progression bound info		    try{			tmp = (new Integer(word)).intValue();		    }		    catch(NumberFormatException e){			// Progression has missing parameters			throw new IllegalArgumentException("Progression "+							   "order"+							   " specification "+							   "has missing "+							   "parameters: "+							   param);		    }		    switch(intType){		    case 0: // cs			if(tmp<0 || tmp>nc)			    throw new 				IllegalArgumentException("Invalid comp_start "+							 "in '-Aptype' option");			curProg.cs = tmp; break;		    case 1: // rs			if(tmp<0 || 			   tmp>(dls.getMax()+1))			    throw new 				IllegalArgumentException("Invalid res_start "+							 "in '-Aptype' option");			curProg.rs = tmp; break;		    case 2: // lye			if(tmp<0 || tmp>nl)			    throw new 				IllegalArgumentException("Invalid layer_end "+							 "in '-Aptype' option");			curProg.lye = tmp; break;		    case 3: // ce			if(tmp<0 || tmp>nc)			    throw new 				IllegalArgumentException("Invalid comp_end "+							 "in '-Aptype' option");			curProg.ce = tmp; break;		    case 4: // re			if(tmp<0 || 			   tmp>(dls.getMax()+1))			    throw new 				IllegalArgumentException("Invalid res_end "+							 "in '-Aptype' option");			curProg.re = tmp; break;		    }		    		    if(intType<4){			intType++;			needInteger = true;			break;		    }		    else if(intType==4){			intType = 0;			needInteger = false;			break;		    }		    else{			throw new Error("Error in usage of 'Aptype' "+					"option: "+param);		    }		}				if(!needInteger){ // Progression type info		    mode = checkProgMode(word);		    if(mode==-1 ){			errMsg = "Unknown progression type : '"+word+"'";			throw new IllegalArgumentException(errMsg);  		    }		    needInteger = true;		    intType = 0;		    if(progression.size()==0)			curProg = new Progression(mode,0,nc,0,dls.getMax()+1,                                                  nl);		    else{			curProg = new Progression(mode,0,nc,0,dls.getMax()+1,                                                  nl);		    }		    progression.addElement(curProg);		}            } // switch        } // while 	if(progression.size()==0){ // No progression defined            // Set it arbitrarily to layer progressive            param = "layer";	    mode = checkProgMode(param);	    if(mode==-1){		errMsg = "Unknown progression type : '"+param+"'";		throw new IllegalArgumentException(errMsg);  	    }	    prog = new Progression[1];	    prog[0] = new Progression(mode,0,nc,0,dls.getMax()+1,nl);            setDefault(prog);            return; 	}	// Ensure that all information has been taken	curProg.ce = nc;	curProg.lye = nl;	curProg.re = dls.getMax()+1;	// Store found progression	prog = new Progression[progression.size()];	progression.copyInto(prog);	if(curSpecType==SPEC_DEF){	    setDefault(prog);	}	else if(curSpecType==SPEC_TILE_DEF){	    for(int i=tileSpec.length-1; i>=0; i--)		if(tileSpec[i]){		    setTileDef(i,prog);		}	}        // Check that default value has been specified        if(getDefault()==null){            int ndefspec = 0;            for(int t=nt-1; t>=0; t--){                for(int c=nc-1; c>=0 ; c--){                    if(specValType[t][c] == SPEC_DEF){                        ndefspec++;                    }                }            }                        // If some tile-component have received no specification, they are            // arbitrarily set to 'layer' progressive.            if(ndefspec!=0){                param = "layer";                mode = checkProgMode(param);                if(mode==-1){                    errMsg = "Unknown progression type : '"+param+"'";                    throw new IllegalArgumentException(errMsg);                  }                prog = new Progression[1];                prog[0] = new Progression(mode,0,nc,0,dls.getMax()+1,nl);                setDefault(prog);                           }            else{                // All tile-component have been specified, takes the first                // tile-component value as default.                setDefault(getTileCompVal(0,0));                switch(specValType[0][0]){                case SPEC_TILE_DEF:                    for(int c=nc-1; c>=0; c--){                        if(specValType[0][c]==SPEC_TILE_DEF)                            specValType[0][c] = SPEC_DEF;                    }                    tileDef[0] = null;                    break;                case SPEC_COMP_DEF:                    for(int t=nt-1; t>=0; t--){                        if(specValType[t][0]==SPEC_COMP_DEF)                            specValType[t][0] = SPEC_DEF;                    }                    compDef[0] = null;                    break;                case SPEC_TILE_COMP:                    specValType[0][0] = SPEC_DEF;                    tileCompVal.put("t0c0",null);                    break;                }            }        }           }    /**      * Check if the progression mode exists and if so, return its integer     * value. It returns -1 otherwise.     *     * @param mode The progression mode stored in a string     *     * @return The integer value of the progression mode or -1 if the     * progression mode does not exist.     *     * @see ProgressionType     * */    private int checkProgMode(String mode) {        if(mode.equals("res")){            return ProgressionType.RES_LY_COMP_POS_PROG;        }        else if( mode.equals("layer") ) {            return ProgressionType.LY_RES_COMP_POS_PROG;        }        else if( mode.equals("pos-comp") ) {            return ProgressionType.POS_COMP_RES_LY_PROG;        }        else if ( mode.equals("comp-pos") ) {            return ProgressionType.COMP_POS_RES_LY_PROG;        }        else if ( mode.equals("res-pos") ) {            return ProgressionType.RES_POS_COMP_LY_PROG;        }        else {            // No corresponding progression mode, we return -1.            return -1;        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产sm最大网站| 毛片av一区二区| 日本在线不卡视频一二三区| 国内精品视频666| 色噜噜狠狠成人网p站| 精品区一区二区| 亚洲免费电影在线| 国产98色在线|日韩| 欧美va天堂va视频va在线| 亚洲精品国产一区二区精华液 | 成人福利视频网站| 欧美成人三级在线| 亚洲高清免费视频| 一本久久精品一区二区| 国产偷国产偷精品高清尤物 | 欧美videos中文字幕| 午夜av区久久| 欧美在线三级电影| 一区二区欧美在线观看| 成人av网站在线观看免费| 精品噜噜噜噜久久久久久久久试看 | 欧美三电影在线| 中文字幕一区三区| 99这里都是精品| 亚洲欧洲三级电影| 91在线观看免费视频| 成人欧美一区二区三区黑人麻豆| 从欧美一区二区三区| 久久久99免费| 国产精品18久久久久久久网站| 精品剧情在线观看| 久久电影网站中文字幕 | 日韩美女精品在线| 99精品国产99久久久久久白柏| 国产日韩av一区| 成人免费视频播放| 中文字幕在线不卡| 在线看日韩精品电影| 麻豆精品精品国产自在97香蕉| 91精品久久久久久蜜臀| 免费人成在线不卡| 欧美tk—视频vk| 成人精品国产一区二区4080| 国产欧美日本一区二区三区| k8久久久一区二区三区| 最新热久久免费视频| 欧美在线free| 美女一区二区久久| 国产人伦精品一区二区| av亚洲产国偷v产偷v自拍| 亚洲欧洲成人精品av97| 在线免费不卡视频| 美女网站色91| 国产精品久久久久影视| 欧美在线视频你懂得| 久久99国产精品尤物| 国产精品久久久久三级| 91在线云播放| 免费在线成人网| 中日韩av电影| 欧美男女性生活在线直播观看| 韩日精品视频一区| 成人欧美一区二区三区黑人麻豆 | 精品一区二区三区av| 国产人妖乱国产精品人妖| 99亚偷拍自图区亚洲| 免费观看在线综合| 成人欧美一区二区三区白人| 884aa四虎影成人精品一区| 国产成人免费视频 | 自拍偷拍亚洲激情| 欧美一区二区三区免费在线看 | 欧美专区在线观看一区| 六月丁香婷婷色狠狠久久| 亚洲欧美在线观看| 精品久久久久久综合日本欧美| 91片黄在线观看| 久热成人在线视频| 亚洲制服丝袜在线| 国产精品美女久久久久av爽李琼| 欧美日韩一区在线观看| 成人免费毛片嘿嘿连载视频| 日韩精品电影在线观看| 亚洲素人一区二区| 国产午夜精品久久| 欧美一区二区视频在线观看2020| 波多野结衣亚洲| 国产在线视频精品一区| 亚洲尤物在线视频观看| 国产精品久久久久久福利一牛影视| 亚洲欧洲精品天堂一级| 欧美一级高清大全免费观看| 在线观看日韩一区| 91婷婷韩国欧美一区二区| 国产精品亚洲成人| 激情综合色综合久久综合| 亚洲成av人片一区二区三区| 最新日韩av在线| 亚洲欧洲国产日韩| 国产精品网友自拍| 中文在线免费一区三区高中清不卡| 欧美一级免费大片| 欧美日韩精品免费观看视频| 91福利视频久久久久| 99在线精品视频| 成人高清免费观看| www.综合网.com| 福利一区二区在线| 高潮精品一区videoshd| 国产精品99久久久| 高清在线不卡av| 国产福利视频一区二区三区| 国产毛片一区二区| 国产成人av一区二区| 国产传媒欧美日韩成人| 国产精品综合二区| 国产精品主播直播| 国产成人免费视频网站高清观看视频 | 国产日产欧产精品推荐色| 久久综合色8888| 国产午夜亚洲精品羞羞网站| 久久久美女毛片| 中文一区在线播放| 亚洲日本韩国一区| 亚洲一区二区3| 视频一区二区三区在线| 蜜桃免费网站一区二区三区| 免费在线看一区| 国产精品一区久久久久| 丁香桃色午夜亚洲一区二区三区| 成人自拍视频在线| 99麻豆久久久国产精品免费| 在线视频国内一区二区| 欧美日韩1234| 国产丝袜在线精品| 夜夜夜精品看看| 美女视频一区二区三区| 高清视频一区二区| 在线视频欧美精品| 亚洲精品一区在线观看| 中文字幕人成不卡一区| 一二三区精品视频| 紧缚捆绑精品一区二区| 91在线你懂得| 日韩一区二区免费电影| 国产精品欧美一级免费| 亚洲一区二区四区蜜桃| 久久99精品久久久久| 成人国产精品免费观看视频| 欧美日韩精品一区二区三区蜜桃| 精品成人一区二区三区四区| 亚洲三级电影网站| 青青草国产成人av片免费| 成人av网址在线观看| 91精品国产一区二区三区香蕉| 久久精品欧美日韩| 午夜私人影院久久久久| 国产成人综合亚洲网站| 欧美日韩国产免费| 国产精品情趣视频| 色老汉一区二区三区| 欧美成人午夜电影| 亚洲一区二区三区精品在线| 国产精品综合av一区二区国产馆| 欧美日韩在线播放一区| 国产精品久久久久久久久免费桃花| 天堂久久久久va久久久久| 成人精品免费看| 精品久久久久久久一区二区蜜臀| 亚洲免费资源在线播放| 精久久久久久久久久久| 欧美日韩一本到| 亚洲视频一区在线观看| 国产一区二区三区四区在线观看| 欧美日韩一级二级| 一区二区三区在线观看欧美 | 国产精品日韩成人| 国内成人自拍视频| 制服视频三区第一页精品| 亚洲欧美日本韩国| 白白色 亚洲乱淫| 欧美高清在线一区| 国产自产v一区二区三区c| 91精品欧美综合在线观看最新| 亚洲精品中文字幕在线观看| 成人污污视频在线观看| 久久蜜桃av一区二区天堂| 蜜桃久久av一区| 日韩写真欧美这视频| 免费一级片91| 日韩欧美卡一卡二| 麻豆精品视频在线| 日韩精品在线网站| 青青草国产精品97视觉盛宴| 91精品欧美综合在线观看最新 | 欧美日韩dvd在线观看| 亚洲已满18点击进入久久| 在线免费精品视频| 一区二区三区成人| 欧美无砖砖区免费|