The file config.H defines certain global concepts which may be used by
any of the files in CoCoALib; in particular, this will include any
definitions needed to ensure platform independence. Consequently, every
header file in the CoCoA library should include the header file
CoCoA/config.H
.
The file config.H
contains the following:
SmallFpElem_t
and SmallFpLogElem_t
which are used
in RingFpImpl
and SmallFpImpl
(and their Log
counterparts)
SmallExponent_t
which is used internally in some
PPMonoid
implementations.
The typedef for SmallFpElem_t
fixes the choice of representing type for
elements in a SmallFpImpl
which are used to implement a RingFpImpl
; the
type SmallFpLogElem_t
does the same for SmallFpLogImpl
and
RingFpLogImpl
. These types should be some size of unsigned integer; the
best choices are probably platform dependent. If you want to try different
choices, you will probably have to recompile the whole CoCoA library.
The typedef for SmallExponent_t
should be an unsigned integer type.
It is used in the PPMonoid
s which use an "order vector".
Putting SmallFpElem_t
and SmallFpLog_t
here is ugly. How can
I do it better?
Shouldn't these typedefs be moved to the corresponding *.H files? What is the point of putting them here???