KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jgap > distr > grid > IClientEvolveStrategy


1 /*
2  * This file is part of JGAP.
3  *
4  * JGAP offers a dual license model containing the LGPL as well as the MPL.
5  *
6  * For licencing information please see the file license.txt included with JGAP
7  * or have a look at the top of class org.jgap.Chromosome which representatively
8  * includes the JGAP license policy applicable for any file delivered with JGAP.
9  */

10 package org.jgap.distr.grid;
11
12 import java.io.*;
13 import org.jgap.*;
14 import org.homedns.dade.jcgrid.client.*;
15
16 /**
17  * Interface for defining a strategy that controls how a client evolves
18  * generations.
19  *
20  * @author Klaus Meffert
21  * @since 3.2
22  */

23 public interface IClientEvolveStrategy
24     extends Serializable {
25   /** String containing the CVS revision. Read out via reflection!*/
26   final static String JavaDoc CVS_REVISION = "$Revision: 1.2 $";
27
28   void initialize(GridClient a_gc, Configuration a_config,
29                   IClientFeedback a_clientFeedback)
30       throws Exception JavaDoc;
31
32   JGAPRequest[] generateWorkRequests(JGAPRequest m_workReq,
33                                      IRequestSplitStrategy m_splitStrategy,
34                                      Object JavaDoc a_genericData)
35       throws Exception JavaDoc;
36
37   void resultReceived(JGAPResult a_result)
38       throws Exception JavaDoc;
39
40   boolean isEvolutionFinished(int a_evolutionsDone);
41
42   void onFinished();
43
44   void afterWorkRequestsSent()
45       throws Exception JavaDoc;
46
47   void evolve()
48       throws Exception JavaDoc;
49 }
50
Popular Tags