00001 #include <mmxlight/base_evaluator.hpp> 00002 #include <basix/glue.hpp> 00003 #include <basix/system.hpp> 00004 00005 namespace mmx { 00006 void glue_automagix (); 00007 void glue_basix (); 00008 void glue_graphix (); 00009 void glue_mmancient (); 00010 void glue_mmcompiler (); 00011 void glue_mmxtools (); 00012 void glue_numerix (); 00013 void glue_algebramix (); 00014 void glue_analyziz (); 00015 void glue_finitefieldz (); 00016 void glue_holonomix (); 00017 void glue_lattiz (); 00018 void glue_linalg (); 00019 void glue_mgf2x (); 00020 void glue_mlinbox (); 00021 void glue_multimix (); 00022 void glue_continewz (); 00023 void glue_factorix (); 00024 void glue_gregorix (); 00025 void glue_mfgb (); 00026 void glue_quintix (); 00027 void glue_realroot (); 00028 void glue_mmps (); 00029 void glue_newmac (); 00030 void glue_polytopix (); 00031 void glue_shape (); 00032 void glue_symbolix (); 00033 void glue_asymptotix (); 00034 void glue_columbus (); 00035 void glue_jorix (); 00036 void glue_mmxlight (); 00037 00038 #ifdef BASIX_ENABLE_EMBEDDED 00039 void 00040 embedded_link_impl (const string& name) { 00041 00042 if (name == "mathemagix") return; 00043 ERROR ("library " * name * " has not been embedded"); 00044 } 00045 #endif 00046 00047 evaluator 00048 mmxlight_evaluator () { 00049 evaluator ev= base_evaluator (); 00050 select_evaluator (ev); 00051 define_prerequisites (); 00052 #ifdef BASIX_ENABLE_EMBEDDED 00053 embedded_link= embedded_link_impl; 00054 dl_link ("mmxlight"); 00055 dl_link ("basix"); 00056 dl_link ("mathemagix"); 00057 #else 00058 if (dl_exists ("mmxlight")) dl_link ("mmxlight"); 00059 else mmerr << "WARNING: mmxlight library could not be loaded\n"; 00060 if (dl_exists ("basix")) dl_link ("basix"); 00061 else mmerr << "WARNING: basix library could not be loaded\n"; 00062 if (dl_exists ("mathemagix")) dl_link ("mathemagix"); 00063 #endif 00064 restore_evaluator (); 00065 return ev; 00066 } 00067 00068 } // namespace mmx
1.7.2