001 package net.sf.cpsolver.ifs.util; 002 003 /** 004 * Progress bar listener. 005 * 006 * @version 007 * IFS 1.1 (Iterative Forward Search)<br> 008 * Copyright (C) 2006 Tomáš Müller<br> 009 * <a href="mailto:muller@unitime.org">muller@unitime.org</a><br> 010 * Lazenska 391, 76314 Zlin, Czech Republic<br> 011 * <br> 012 * This library is free software; you can redistribute it and/or 013 * modify it under the terms of the GNU Lesser General Public 014 * License as published by the Free Software Foundation; either 015 * version 2.1 of the License, or (at your option) any later version. 016 * <br><br> 017 * This library is distributed in the hope that it will be useful, 018 * but WITHOUT ANY WARRANTY; without even the implied warranty of 019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 020 * Lesser General Public License for more details. 021 * <br><br> 022 * You should have received a copy of the GNU Lesser General Public 023 * License along with this library; if not, write to the Free Software 024 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 025 */ 026 public interface ProgressListener { 027 /** Progress status is changed 028 * @param status current status name 029 */ 030 public void statusChanged(String status); 031 /** Progress phase is changed 032 * @param phase current phase name 033 */ 034 public void phaseChanged(String phase); 035 /** Progress bar is changed 036 * @param currentProgress current progress 037 * @param maxProgress maximum progress in this phase 038 */ 039 public void progressChanged(long currentProgress, long maxProgress); 040 /** Progress is saved */ 041 public void progressSaved(); 042 /** Progress is restored */ 043 public void progressRestored(); 044 /** Progress message is printed */ 045 public void progressMessagePrinted(Progress.Message message); 046 }