- Main Page
- Classes
- Files

- Search for |

# moLSCheckPoint.h

    00001 // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
    00002
    00003 // "moLSCheckPoint.h"
    00004
    00005 // (c) OPAC Team, LIFL, 2003
    00006
    00007 /* TEXT LICENCE
    00008
    00009    Contact: paradiseo-help@lists.gforge.inria.fr
    00010 */
    00011
    00012 #ifndef __moSolUpdater_h
    00013 #define __moSolUpdater_h
    00014
    00015 #include <eoFunctor.h>
    00016
    00018
    00021 template < class M > class moLSCheckPoint:public eoBF < const M &, const typename
    00022   M::EOType &, void >
    00023 {
    00024
    00025 public:
    00027
    00033   void
    00034   operator   () (const M & __move, const typename M::EOType & __sol)
    00035   {
    00036
    00037     for (unsigned i = 0; i < func.size (); i++)
    00038       {
    00039         func[i]->operator   ()(__move, __sol);
    00040       }
    00041   }
    00042
    00044
    00048   void
    00049   add (eoBF < const M &, const typename M::EOType &, void >&__f)
    00050   {
    00051
    00052     func.push_back (&__f);
    00053   }
    00054
    00055 private:
    00056
    00058   std::vector < eoBF < const
    00059     M &, const
    00060     typename
    00061   M::EOType &, void >*>
    00062     func;
    00063
    00064 };
    00065
    00066 #endif