- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# /home/coin/svn-release/Smi-0.93.1/FlopCpp/src/flopc.hpp

Go to the documentation of this file.

    00001 // ******************** FlopCpp **********************************************
    00002 // File: flopc.hpp
    00003 // $Id$
    00004 // Author: Tim Helge Hultberg (thh@mat.ua.pt)
    00005 // Copyright (C) 2003 Tim Helge Hultberg
    00006 // All Rights Reserved.
    00007 // ****************************************************************************
    00008
    00009 #ifndef _flopc_hpp_
    00010 #define _flopc_hpp_
    00011
    00012 #include "MP_variable.hpp"
    00013 #include "MP_set.hpp"
    00014 #include "MP_index.hpp"
    00015 #include "MP_constant.hpp"
    00016 #include "MP_data.hpp"
    00017 #include "MP_constraint.hpp"
    00018 #include "MP_expression.hpp"
    00019 #include "MP_boolean.hpp"
    00020 #include "MP_model.hpp"
    00021
    00049 namespace flopc {
    00050
    00055   inline void forall(const MP_domain& d, const Functor& f) {
    00056     d.Forall(&f);
    00057   }
    00058
    00064   inline void forall(const Functor& f) {
    00065   forall(MP_domain::getEmpty(), f);
    00066   }
    00067
    00072   inline void operator<<=(const MP_domain& s, const MP_domain& d) {
    00073     d.Forall( s->makeInsertFunctor());
    00074   }
    00075
    00083   inline void minimize(const MP_expression &obj) {
    00084     MP_model::getDefaultModel().minimize(obj);
    00085   }
    00086
    00096   inline void minimize_max(MP_set& d, const MP_expression &obj) {
    00097     MP_model::getDefaultModel().minimize_max(d,obj);
    00098   }
    00099
    00107   inline void maximize(const MP_expression &obj) {
    00108     MP_model::getDefaultModel().maximize(obj);
    00109   }
    00110
    00111 } // End of namespace flopc
    00112 #endif