eoVelocity.h

00001 // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
00002 
00003 //-----------------------------------------------------------------------------
00004 // eoVelocity.h
00005 // (c) OPAC 2007
00006 /*
00007     Contact: paradiseo-help@lists.gforge.inria.fr
00008  */
00009 //-----------------------------------------------------------------------------
00010 
00011 #ifndef EOVELOCITY_H
00012 #define EOVELOCITY_H
00013 
00014 //-----------------------------------------------------------------------------
00015 #include <eoFunctor.h>
00016 #include <utils/eoRNG.h>
00017 #include <eoPop.h>
00018 //-----------------------------------------------------------------------------
00019 
00024 template < class POT > class eoVelocity:public eoBF < POT &,unsigned , void >
00025 {
00026 public:
00027 
00032     virtual void apply (eoPop < POT > &_pop)
00033     {
00034         for (unsigned i = 0; i < _pop.size (); i++)
00035         {
00036             operator  ()(_pop[i],i);
00037         }
00038 
00039     }
00040 
00044     virtual void updateNeighborhood(POT & ,unsigned _indice){}
00045 
00046 
00050     virtual void updateNeighborhood (eoPop < POT > &_pop)
00051     {
00052         for (unsigned i = 0; i < _pop.size (); i++)
00053         {
00054             updateNeighborhood(_pop[i],i);
00055         }
00056 
00057     }
00058 };
00059 
00060 #endif /*EOVELOCITY_H_H */
00061 

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