package api;

/**
 * API Algorithm Super Class.
 * 
 * @author Gruppe14
 */
public abstract class AbstractAlgorithmSuperClass {
	private CpsAPI api;

	/**
	 * Constructor.
	 * 
	 * @param api
	 *            the API
	 */
	public AbstractAlgorithmSuperClass(CpsAPI api) {
		this.api = api;
	}

	/**
	 * Returns the API.
	 * 
	 * @return The API
	 */
	public CpsAPI getAPI() {
		return api;
	}

	/**
	 * Sets the API.
	 * 
	 * @param api
	 *            the API
	 */
	public void setAPI(CpsAPI api) {
		this.api = api;
	}

	/**
	 * This method will be called in each Iteration.
	 */
	abstract public void runAlgorithm();
}
