00001 00002 #include <basix/system.hpp> 00003 #include <basix/glue.hpp> 00004 00005 namespace mmx { 00006 extern void glue_algebraic_generic (); 00007 extern void glue_algebraic_number (); 00008 extern void glue_matrix_generic (); 00009 extern void glue_matrix_integer (); 00010 extern void glue_matrix_modular_integer (); 00011 extern void glue_matrix_rational (); 00012 extern void glue_p_adic_modular_integer (); 00013 extern void glue_p_expansion_modular_integer (); 00014 extern void glue_permutation (); 00015 extern void glue_polynomial_generic (); 00016 extern void glue_polynomial_integer (); 00017 extern void glue_polynomial_modular_integer (); 00018 extern void glue_polynomial_p_adic_modular_integer (); 00019 extern void glue_polynomial_rational (); 00020 extern void glue_quotient_generic (); 00021 extern void glue_quotient_polynomial_rational (); 00022 extern void glue_series_generic (); 00023 extern void glue_series_integer (); 00024 extern void glue_series_modular_integer (); 00025 extern void glue_series_rational (); 00026 extern void glue_table_generic (); 00027 extern void glue_vector_generic (); 00028 extern void glue_vector_int (); 00029 extern void glue_vector_integer (); 00030 extern void glue_vector_modular_integer (); 00031 extern void glue_vector_rational (); 00032 00033 void 00034 glue_algebramix () { 00035 static bool done = false; 00036 if (done) return; 00037 done = true; 00038 register_glue (string ("glue_algebraic_generic"), (& (glue_algebraic_generic))); 00039 register_glue (string ("glue_algebraic_number"), (& (glue_algebraic_number))); 00040 register_glue (string ("glue_matrix_generic"), (& (glue_matrix_generic))); 00041 register_glue (string ("glue_matrix_integer"), (& (glue_matrix_integer))); 00042 register_glue (string ("glue_matrix_modular_integer"), (& (glue_matrix_modular_integer))); 00043 register_glue (string ("glue_matrix_rational"), (& (glue_matrix_rational))); 00044 register_glue (string ("glue_p_adic_modular_integer"), (& (glue_p_adic_modular_integer))); 00045 register_glue (string ("glue_p_expansion_modular_integer"), (& (glue_p_expansion_modular_integer))); 00046 register_glue (string ("glue_permutation"), (& (glue_permutation))); 00047 register_glue (string ("glue_polynomial_generic"), (& (glue_polynomial_generic))); 00048 register_glue (string ("glue_polynomial_integer"), (& (glue_polynomial_integer))); 00049 register_glue (string ("glue_polynomial_modular_integer"), (& (glue_polynomial_modular_integer))); 00050 register_glue (string ("glue_polynomial_p_adic_modular_integer"), (& (glue_polynomial_p_adic_modular_integer))); 00051 register_glue (string ("glue_polynomial_rational"), (& (glue_polynomial_rational))); 00052 register_glue (string ("glue_quotient_generic"), (& (glue_quotient_generic))); 00053 register_glue (string ("glue_quotient_polynomial_rational"), (& (glue_quotient_polynomial_rational))); 00054 register_glue (string ("glue_series_generic"), (& (glue_series_generic))); 00055 register_glue (string ("glue_series_integer"), (& (glue_series_integer))); 00056 register_glue (string ("glue_series_modular_integer"), (& (glue_series_modular_integer))); 00057 register_glue (string ("glue_series_rational"), (& (glue_series_rational))); 00058 register_glue (string ("glue_table_generic"), (& (glue_table_generic))); 00059 register_glue (string ("glue_vector_generic"), (& (glue_vector_generic))); 00060 register_glue (string ("glue_vector_int"), (& (glue_vector_int))); 00061 register_glue (string ("glue_vector_integer"), (& (glue_vector_integer))); 00062 register_glue (string ("glue_vector_modular_integer"), (& (glue_vector_modular_integer))); 00063 register_glue (string ("glue_vector_rational"), (& (glue_vector_rational))); 00064 register_glue (string ("glue_algebramix"), (& (glue_algebramix))); 00065 dl_link ("numerix"); 00066 glue_algebraic_generic (); 00067 glue_algebraic_number (); 00068 glue_matrix_generic (); 00069 glue_matrix_integer (); 00070 glue_matrix_modular_integer (); 00071 glue_matrix_rational (); 00072 glue_p_adic_modular_integer (); 00073 glue_p_expansion_modular_integer (); 00074 glue_permutation (); 00075 glue_polynomial_generic (); 00076 glue_polynomial_integer (); 00077 glue_polynomial_modular_integer (); 00078 glue_polynomial_p_adic_modular_integer (); 00079 glue_polynomial_rational (); 00080 glue_quotient_generic (); 00081 glue_quotient_polynomial_rational (); 00082 glue_series_generic (); 00083 glue_series_integer (); 00084 glue_series_modular_integer (); 00085 glue_series_rational (); 00086 glue_table_generic (); 00087 glue_vector_generic (); 00088 glue_vector_int (); 00089 glue_vector_integer (); 00090 glue_vector_modular_integer (); 00091 glue_vector_rational (); 00092 } 00093 } 00094 00095 void (*define_algebramix) () = mmx::glue_algebramix;