shape_doc 0.1
|
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