package org.drugis.common.threading;
/**
* Defines an iterative computation.
*/
public interface IterativeComputation {
/**
* Perform initialization.
*/
public void initialize();
/**
* Do one iteration. Should increase getIteration() by one.
*/
public void step();
/**
* Perform finalization.
*/
public void finish();
/**
* Return the current iteration.
*/
public int getIteration();
/**
* Return the desired number of iterations.
*/
public int getTotalIterations();
}