eoTopology.h

00001 // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
00002 
00003 //-----------------------------------------------------------------------------
00004 // eoTopology.h
00005 // (c) OPAC 2007
00006 /*
00007 
00008 
00009     Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr
00010  */
00011 //-----------------------------------------------------------------------------
00012 
00013 #ifndef EOTOPOLOGY_H_
00014 #define EOTOPOLOGY_H_
00015 
00016 //-----------------------------------------------------------------------------
00017 #include <eoNeighborhood.h>
00018 //-----------------------------------------------------------------------------
00019 
00020 
00024 template < class POT > class eoTopology:public eoPop < POT >
00025 {
00026 public:
00027 
00031     virtual void setup(const eoPop<POT> &)=0;
00032 
00036     virtual void updateNeighborhood(POT & ,unsigned)=0;
00037 
00038 
00042     virtual void updateNeighborhood(eoPop < POT > &_pop)
00043     {
00044         for (unsigned i = 0; i < _pop.size (); i++)
00045         {
00046             updateNeighborhood(_pop[i],i);
00047         }
00048     }
00049 
00053     virtual POT & best (unsigned ) = 0;
00054 
00059     virtual void printOn(){}
00060 };
00061 
00062 
00063 #endif /*EOTOPOLOGY_H_ */
00064 
00065 
00066 
00067 
00068 
00069 
00070 
00071 

Generated on Fri Jun 22 10:17:02 2007 for EO-PSO by  doxygen 1.4.7