moeoConvertPopToObjectiveVectors.h

00001 // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
00002 
00003 //-----------------------------------------------------------------------------
00004 // moeoConvertPopToObjectiveVectors.h
00005 // (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2007
00006 /*
00007     This library...
00008 
00009     Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr
00010  */
00011 //-----------------------------------------------------------------------------
00012 
00013 #ifndef MOEOPOPTOOBJECTIVEVECTORS_H_
00014 #define MOEOPOPTOOBJECTIVEVECTORS_H_
00015 
00016 #include <eoFunctor.h>
00017 
00021 template < class MOEOT, class ObjectiveVector = typename MOEOT::ObjectiveVector >
00022 class moeoConvertPopToObjectiveVectors : public eoUF < const eoPop < MOEOT >, const std::vector < ObjectiveVector > >
00023 {
00024 public:
00025 
00030     const std::vector < ObjectiveVector > operator()(const eoPop < MOEOT > _pop)
00031     {
00032         std::vector < ObjectiveVector > result;
00033         result.resize(_pop.size());
00034         for (unsigned i=0; i<_pop.size(); i++)
00035         {
00036             result.push_back(_pop[i].objectiveVector());
00037         }
00038         return result;
00039     }
00040 };
00041 
00042 #endif /*MOEOPOPTOOBJECTIVEVECTORS_H_*/

Generated on Tue Apr 17 16:53:21 2007 for ParadisEO-MOEO by  doxygen 1.5.1