shape_doc 0.1
/Users/mourrain/Devel/mmx/shape/include/shape/MGXK.hpp
Go to the documentation of this file.
00001 # ifndef shape_mgxk_hpp
00002 # define shape_mgxk_hpp
00003 # include <numerix/kernel.hpp>
00004 # include <shape/with_def.hpp>
00005 # define TMPL template<class K>
00006 # define TSPE template<>
00007 //====================================================================
00008 namespace mmx {
00009 namespace shape {
00010 
00011   struct MGXK;
00012   template<class FF> struct use<FF,MGXK> :public use<FF,default_env> {};
00013 
00014   TSPE DECLARE_REF_OF(MGXK,MGXK);
00015 
00016   struct MGXK: public with_def<double,MGXK> {};
00017 
00018   template<> struct use<cell3d_surface_algebraic_def,MGXK>
00019   {
00020     typedef Interval< double >                    Scalar;
00021     typedef polynomial< Scalar, with<Bernstein> > Polynomial;
00022   }; 
00023     
00024   template<> struct use<numeric_def,MGXK> 
00025   {  
00026     typedef ::mmx::integer    Integer;
00027     typedef ::mmx::rational   Rational;
00028     typedef ::mmx::floating<> Floating;
00029   };
00030 
00031   TSPE DECLARE_REF_OF(integer,MGXK);
00032   TSPE DECLARE_REF_OF(rational,MGXK);
00033   TSPE DECLARE_REF_OF(floating<>,MGXK);
00034 
00035  } // shape
00036 } // mmx
00037 //====================================================================
00038 #undef TMPL
00039 #undef TSPE
00040 #endif //shape_mgxk_hpp