// ============================================================ // // compatibility.h // // Copyright 2002, Dennis Meilicke and Rene Peralta // // ============================================================ // // Description: // // Functions to convert between ln2 and ln3 objects. // // ============================================================ #ifndef __ln3_compatibility__ #define __ln3_compatibility__ void Convert( ln &dest, const LargeNumber &source ) { if( source.IsZero( ) ) { dest.SetSize( 0 ); return; } for( size_t i=0 ; i<=source.ln_index ; i++ ) dest.SetDigit( i, source.ln_point[ i ] ); dest.SetSize( source.ln_index + 1 ); ( source.ln_sign ) ? dest.SetSign( positive ) : dest.SetSign( negative ); } void Convert( LargeNumber &dest, const ln &source ) { if( source.IsZero( ) ) { dest = 0; return; } for( size_t i=0 ; i