algebramix_doc 0.3
/Users/mourrain/Devel/mmx/algebramix/include/algebramix/base.hpp
Go to the documentation of this file.
00001 
00002 /******************************************************************************
00003 * MODULE     : base.hpp
00004 * DESCRIPTION: Implementation dispatcher for base expansion
00005 * COPYRIGHT  : (C) 2009  Gregoire Lecerf
00006 *******************************************************************************
00007 * This software falls under the GNU general public license and comes WITHOUT
00008 * ANY WARRANTY WHATSOEVER. See the file $TEXMACS_PATH/LICENSE for more details.
00009 * If you don't have this file, write to the Free Software Foundation, Inc.,
00010 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00011 ******************************************************************************/
00012 
00013 #ifndef __MMX__BASE__HPP
00014 #define __MMX__BASE__HPP
00015 #include <algebramix/base_naive.hpp>
00016 
00017 namespace mmx {
00018 #define Base_transformer(C,I) base_transformer_helper<C,I>::Baser
00019 #define Base_transformer_unsigned(C,I) \
00020   base_transformer_helper_unsigned<C,I>::Baser
00021 
00022 template<typename C, typename I>
00023 struct base_transformer_helper {
00024   typedef base_naive_transformer<C, std_base_naive<C,I> > Baser;
00025 };
00026   
00027 template<typename C, typename I>
00028 struct base_transformer_helper_unsigned {
00029   typedef typename Base_transformer(C,I) Baser;
00030 };
00031   
00032 } // namespace mmx
00033 #endif //__MMX__BASE__HPP
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines