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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? vjplistener.java

?? AStar算法
?? JAVA
字號:
/******************************************************************************* * Copyright ? 2008 Sandro Badame. All Rights Reserved. *  * This software and the accompanying materials is available under the  * Eclipse Public License 1.0 (EPL), which accompanies this distribution, and is * available at http://visualjpf.sourceforge.net/epl-v10.html ******************************************************************************/package com.javapathfinder.vjp.verify;import gov.nasa.jpf.ListenerAdapter;import gov.nasa.jpf.jvm.JVM;import gov.nasa.jpf.jvm.Transition;import gov.nasa.jpf.search.Search;import gov.nasa.jpf.Error;import org.eclipse.swt.events.SelectionEvent;import org.eclipse.swt.events.SelectionListener;import org.eclipse.swt.widgets.Display;import com.javapathfinder.vjp.VJP;import com.javapathfinder.vjp.verify.view.ControlPanel;import com.javapathfinder.vjp.verify.view.VJPView;/** * This class serves as the single link between VJP and JPF. (And between * Eclipse and JPF for that matter). It is a ListenerAdapater that keeps * track of JPF. It is also the thread the stalls a verification between * steps. * @author Sandro Badame * */public class VJPListener extends ListenerAdapter implements SelectionListener {   private VJPView view;    private boolean run,step;  private boolean cancel = false;    private int delay = 0;    //The lock used between the SWT Thread the JPF thread   private Object lock = new Object();    /**   * Creates a new instance of this listener   * @param view that view that this listener will events to.   * @param step whether the run should be stepped through   */  public VJPListener(VJPView view, boolean step){    if (step){      this.step = false;      this.run = false;    }else{      this.step = true;      this.run = true;    }    this.view = view;        handleView();  }    private void handleView(){    final SelectionListener sl = this;    Display.getDefault().syncExec(new Runnable(){      public void run(){        view.getControlPanel().getRunButton().addSelectionListener(sl);        view.getControlPanel().getStepButton().addSelectionListener(sl);        view.getControlPanel().getResetButton().addSelectionListener(sl);        view.getControlPanel().getResetButton().setEnabled(true);      }    });      }    public void choiceGeneratorAdvanced (JVM vm) {    String cg = vm.getChoiceGenerator().getClass().getCanonicalName();    cg.substring(cg.lastIndexOf('.')+1);    int choices = vm.getChoiceGenerator().getTotalNumberOfChoices();    view.getTraceTable().newChoiceSet(cg, choices);    view.getTraceTable().choiceAdvanced(vm.getChoiceGenerator().getProcessedNumberOfChoices());  }  //Search Methods  public void stateAdvanced(Search search) {    advanceStateTable(search);    view.getTransitionView().setTransitionInfo(view.getTraceTable().getCurrentTransitionInfo());    pauseRun();    if (cancel)      search.terminate();  }    private void advanceStateTable(Search search){    Transition t = search.getTransition();    int stateId = search.getStateNumber();    boolean isEndState = search.isEndState();    boolean isVisitedState = search.isVisitedState();    view.getTraceTable().stateAdvanced(t, stateId, isEndState, isVisitedState);      }    public void stateBacktracked(Search search){    view.getTraceTable().stateBacktrack();    pauseRun();    if (cancel)      search.terminate();  }    public void searchFinished(Search search){    removeListeners();    for (Error e : search.getErrors())      view.getErrorViewer().addError(e);  }      /**   * Blocks the thread and waits for either run or step to be clicked.   */  private void pauseRun(){    if (run)      runPause();    else      stepPause();  }    private void runPause(){    synchronized(lock){      long end_time = System.currentTimeMillis() + delay;      try {        while(!cancel && System.currentTimeMillis() < end_time )          lock.wait(delay);      } catch (InterruptedException e) {        VJP.logError("VJP listener run couldn't wait!!",e);      }    }  }    private void stepPause(){    synchronized(lock){      try {        while(!cancel && !step && !run)          lock.wait();      } catch (InterruptedException e) {        VJP.logError("VJP listener step couldn't wait!!",e);      }    }    step = false;  }    private void removeListeners(){    final VJPListener l = this;    Runnable r = new Runnable(){      public void run(){        view.getControlPanel().getRunButton().removeSelectionListener(l);        view.getControlPanel().getStepButton().removeSelectionListener(l);        view.getControlPanel().getResetButton().removeSelectionListener(l);      }    };    if (Thread.currentThread().equals(Display.getDefault()))      r.run();    else      Display.getDefault().syncExec(r);  }  public void widgetSelected(SelectionEvent e) {    ControlPanel cp = view.getControlPanel();    if (e.getSource().equals(cp.getRunButton())){      synchronized(lock){        run = true;        lock.notifyAll();      }    }else if(e.getSource().equals(cp.getStepButton())){      synchronized(lock){        step = true;        lock.notifyAll();      }    }else if (e.getSource().equals(cp.getResetButton())){      synchronized(lock){        cancel = true;        lock.notifyAll();      }    }  }    public void widgetDefaultSelected(SelectionEvent e) {    widgetSelected(e);   }  /**    * @return The view that is associated with this listener   */  public VJPView getView() {    return view;  }  /**   * How long to delay between each transition when runing in milliseconds   * @param delay the delay to set   */  public void setRunDelayMillis(int delay) {    this.delay = delay;  }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美一区二区精品久导航 | 99久久精品国产麻豆演员表| 国产91对白在线观看九色| 国产成人精品综合在线观看| 国内精品免费**视频| 成人av手机在线观看| 欧美日韩激情在线| 亚洲精品一区在线观看| 亚洲精品日韩一| 精品综合免费视频观看| aaa国产一区| 欧美xxxxx牲另类人与| 亚洲色图一区二区三区| 免费在线看一区| 色吧成人激情小说| 久久蜜桃av一区精品变态类天堂 | 亚洲国产中文字幕| 国内精品视频一区二区三区八戒| 99久久久精品免费观看国产蜜| 欧美日韩一卡二卡| 亚洲欧洲精品一区二区三区| 丝瓜av网站精品一区二区| 成人精品一区二区三区四区| 欧美一区二区三区在线| 亚洲精品国产成人久久av盗摄| 国产精品一区在线| 日韩精品一区二区三区视频播放| 亚洲精品成人在线| 成人h动漫精品| 国产亚洲福利社区一区| 蜜臀av一区二区在线免费观看| 色综合久久天天| 国产精品卡一卡二| 国产精品一卡二卡| 欧美成人一区二区三区片免费| 亚洲乱码国产乱码精品精小说| 国产成人亚洲精品青草天美 | av在线免费不卡| 精品国产自在久精品国产| 亚洲大片免费看| 色综合久久久网| 亚洲欧美区自拍先锋| 韩国三级在线一区| 欧美一区二区不卡视频| 五月天婷婷综合| 欧美在线观看视频一区二区三区| 国产精品不卡一区| 成人av网址在线| 亚洲国产精品精华液ab| 国产一本一道久久香蕉| 精品国产乱码久久久久久夜甘婷婷 | 综合色中文字幕| 国产乱码精品一区二区三区忘忧草| 日韩三级av在线播放| 日韩av电影天堂| 777久久久精品| 美女www一区二区| 精品处破学生在线二十三| 九九视频精品免费| 久久先锋影音av| 成人激情电影免费在线观看| 国产精品久久看| 色就色 综合激情| 五月天激情综合| 日韩西西人体444www| 美女视频第一区二区三区免费观看网站| 69堂精品视频| 另类中文字幕网| 欧美激情在线一区二区三区| 99视频超级精品| 亚洲综合在线电影| 欧美乱妇一区二区三区不卡视频| 三级亚洲高清视频| 久久这里都是精品| 96av麻豆蜜桃一区二区| 亚洲一区二区四区蜜桃| 日韩午夜三级在线| 国产91精品免费| 亚洲精品国产无天堂网2021| 欧美肥胖老妇做爰| 国产精品 欧美精品| 亚洲欧洲国产日韩| 欧美日本视频在线| 国产精品亚洲第一| 亚洲香蕉伊在人在线观| 欧美精品一区二区三区在线播放| 成人性生交大片免费看视频在线 | 91极品视觉盛宴| 男女男精品视频网| 中文字幕第一区二区| 色屁屁一区二区| 久久精品国产成人一区二区三区| 中文乱码免费一区二区| 7777精品伊人久久久大香线蕉经典版下载| 久99久精品视频免费观看| 综合在线观看色| 欧美精品一区二区三区在线播放 | 色综合久久综合中文综合网| 青青草国产成人av片免费| 欧美国产日本韩| 欧美人妇做爰xxxⅹ性高电影| 国产麻豆成人传媒免费观看| 亚洲一区二区三区视频在线| 久久日韩精品一区二区五区| 99re在线精品| 韩国成人福利片在线播放| 亚洲欧美日韩一区| 久久久综合视频| 91精品国产一区二区三区香蕉| caoporn国产精品| 国产精品综合一区二区三区| 日韩成人一级片| 亚洲激情图片qvod| 中文字幕成人网| 久久五月婷婷丁香社区| 欧美电影在哪看比较好| 色欧美乱欧美15图片| 成人免费观看视频| 经典三级视频一区| 日本在线不卡视频| 亚洲大型综合色站| 一区二区久久久| 亚洲私人黄色宅男| 国产精品美女久久久久aⅴ| 精品国产3级a| 日韩一区二区在线观看视频| 91蝌蚪porny九色| 国产超碰在线一区| 国产麻豆精品95视频| 日本视频一区二区| 五月天网站亚洲| 亚洲电影欧美电影有声小说| 亚洲人成网站精品片在线观看| 国产亚洲精品aa| 国产片一区二区| 国产精品免费久久久久| 久久亚洲一级片| 久久久久久久久伊人| 欧美成va人片在线观看| 在线播放视频一区| 91麻豆精品国产91久久久使用方法 | 欧美性猛交xxxx乱大交退制版| www.亚洲人| 99精品欧美一区二区三区小说| 国产suv精品一区二区6| 成人午夜看片网址| 不卡一卡二卡三乱码免费网站| 99天天综合性| 一本一本大道香蕉久在线精品 | 在线不卡免费av| 日韩三级中文字幕| 精品成人免费观看| 国产亚洲欧洲一区高清在线观看| 久久久久亚洲综合| 国产精品美女久久久久av爽李琼 | 依依成人精品视频| 性做久久久久久久免费看| 日韩制服丝袜先锋影音| 久久成人免费网| 成人污视频在线观看| 一本到三区不卡视频| 欧美日韩免费视频| 欧美一区二区三区在线视频| 久久人人97超碰com| 中文字幕一区二区三区不卡在线| 亚洲精选在线视频| 蜜臀av亚洲一区中文字幕| 国产黑丝在线一区二区三区| 99久久国产综合色|国产精品| 欧美偷拍一区二区| 精品久久国产老人久久综合| 久久久亚洲欧洲日产国码αv| 国产夜色精品一区二区av| 亚洲丝袜精品丝袜在线| 日本不卡一二三| 成人深夜福利app| 欧美日本视频在线| 国产欧美一区二区精品仙草咪 | 欧美私人免费视频| 久久天堂av综合合色蜜桃网| 亚洲欧美成人一区二区三区| 日本免费在线视频不卡一不卡二| 国产精品羞羞答答xxdd| 91黄色免费看| 国产日韩精品久久久| 五月天网站亚洲| 成人av在线看| 日韩一区二区三区观看| 亚洲欧美一区二区三区国产精品| 青青草国产精品97视觉盛宴| av爱爱亚洲一区| 5月丁香婷婷综合| 亚洲欧洲中文日韩久久av乱码| 久久国产精品99久久久久久老狼| 99精品视频一区| 久久综合色综合88| 亚洲国产综合91精品麻豆| 国产成人午夜片在线观看高清观看| 欧美日韩精品欧美日韩精品| 国产午夜精品福利|