/*
Copyright 2006 by Sean Luke
Licensed under the Academic Free License version 3.0
See the file "LICENSE" for more information
*/
package ec;
import ec.util.Parameter;
import java.io.Serializable;
/*
* Setup.java
*
* Created: Mon Oct 4 17:15:44 1999
* By: Sean Luke
*/
/**
* Setup classes are classes which get set up once from user-supplied parameters
* prior to being used.
*
* Defines a single method, setup(...), which is called at least once for the
* object, or for some object from which it was cloned. This method
* allows the object to set itself up by reading from parameter lists and
* files on-disk. You may assume that this method is called in a non-threaded
* environment, hence your thread number is 0 (so you can determine which
* random number generator to use).
*
* @author Sean Luke
* @version 1.0
*/
public strictfp interface Setup extends Serializable
{
/** Sets up the object by reading it from the parameters stored
in state, built off of the parameter base base.
If an ancestor implements this method, be sure to call
super.setup(state,base); before you do anything else. */
public void setup(final EvolutionState state, final Parameter base);
}