algebramix_doc 0.3
base_integer_transformer< I > Struct Template Reference

#include <base_integer.hpp>

List of all members.

Classes

Public Types

Public Member Functions

Public Attributes

Static Public Attributes


Detailed Description

template<typename I>
struct mmx::base_integer_transformer< I >

Definition at line 72 of file base_integer.hpp.


Member Typedef Documentation

typedef C base

Definition at line 88 of file base_integer.hpp.

Definition at line 109 of file base_integer.hpp.

typedef base_dicho_transformer<integer, std_base_dicho<integer> > Baser_high

Definition at line 108 of file base_integer.hpp.

Definition at line 96 of file base_integer.hpp.

typedef integer C

Definition at line 73 of file base_integer.hpp.

typedef signed_of_helper<uJ>::type J

Definition at line 80 of file base_integer.hpp.

typedef modulus<I, modulus_base_variant> M

Definition at line 83 of file base_integer.hpp.

typedef I modulus_base

Definition at line 89 of file base_integer.hpp.

typedef modulus<J, modulus_middle_variant> N

Definition at line 86 of file base_integer.hpp.

typedef unsigned_int_with_size_at_least_helper< internal_size>::type uJ

Definition at line 79 of file base_integer.hpp.


Constructor & Destructor Documentation

base_integer_transformer ( const K &  _p) [inline]

Definition at line 115 of file base_integer.hpp.

References base_integer_transformer< I >::p.

                                                : p (_p) {
    J p_s= * p; nat s= 1;
    while ((p_s * * p) / * p == p_s) { p_s *= * p; s++; }
    baser= mmx_new<Baser> (1, mmx_new<Baser_low> (1, p, s));
  }
~base_integer_transformer ( ) [inline]

Definition at line 121 of file base_integer.hpp.

References base_integer_transformer< I >::baser.

                                      {
    mmx_delete<Baser> (baser, 1); }

Member Function Documentation

nat direct_transform ( I *  c,
nat  n,
const C a 
) [inline]

Definition at line 124 of file base_integer.hpp.

References mmx::direct_base().

                                                        {
    return direct_base (c, n, a, * baser); }
void inverse_transform ( C a,
const I *  c,
nat  n 
) [inline]

Definition at line 127 of file base_integer.hpp.

References mmx::inverse_base().

                                                          {
    return inverse_base (a, c, n, * baser); }
typedef Modulus_variant ( )
typedef Modulus_variant ( J  )

Member Data Documentation

const nat internal_size [static]
Initial value:
    sizeof(I) > sizeof(int) ? sizeof(I) : sizeof(int)

Definition at line 76 of file base_integer.hpp.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines