realroot_doc 0.1.1
/Users/mourrain/Devel/mmx/realroot/include/realroot/solver_bernstein_binary.hpp
Go to the documentation of this file.
00001 /*******************************************************************
00002  *   This file is part of the source code of the realroot kernel.
00003  *   Author(s): B. Mourrain, GALAAD, INRIA
00004  ********************************************************************/
00005 #ifndef realroot_solver_bernstein_binary_hpp
00006 #define realroot_solver_bernstein_binary_hpp
00007 
00008 # include <realroot/Seq.hpp>
00009 # include <realroot/solver.hpp>
00010 # include <realroot/subdivisor_uv_binary.hpp>
00011 # include <realroot/cell_uv_bernstein.hpp>
00012 
00013 # include <realroot/subdivisor_mv_binary.hpp>
00014 # include <realroot/cell_mv_bernstein.hpp>
00015 //====================================================================
00016 namespace mmx {
00017 
00018   template<class C, class M> struct solver_of;
00019 
00020   struct UvBernsteinBinaryApproximate {};
00021 
00022   template<class C> 
00023   struct solver_of<C,UvBernsteinBinaryApproximate> {
00024     
00025     typedef cell_uv_bernstein<C> Cell;
00026     typedef uv_binary_approx     Strategy;
00027     typedef Seq<Cell*>           Solutions;
00028 
00029   };
00030 
00031   struct MvBernsteinBinaryApproximate {};
00032 
00033   template<class C> 
00034   struct solver_of<C,MvBernsteinBinaryApproximate> {
00035     
00036     typedef cell_mv_bernstein<C> Cell;
00037     typedef mv_binary_approx     Strategy;
00038     typedef Seq<Cell*>           Solutions;
00039 
00040   };
00041 
00042 }
00043 //====================================================================
00044 #endif  //realroot_solver_hpp