epoc32/include/e32math.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
     1.1 --- a/epoc32/include/e32math.h	Wed Mar 31 12:27:01 2010 +0100
     1.2 +++ b/epoc32/include/e32math.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -1,9 +1,9 @@
     1.4  // Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5  // All rights reserved.
     1.6  // This component and the accompanying materials are made available
     1.7 -// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     1.8 +// under the terms of the License "Eclipse Public License v1.0"
     1.9  // which accompanies this distribution, and is available
    1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.12  //
    1.13  // Initial Contributors:
    1.14  // Nokia Corporation - initial contribution.
    1.15 @@ -25,11 +25,31 @@
    1.16  @released
    1.17  */
    1.18  const TInt KMaxPrecision=15;
    1.19 +
    1.20  /**
    1.21  @publishedAll
    1.22  @released
    1.23 +
    1.24 +This constant specifies the maximum number of significant digits available with floating 
    1.25 +point computations. Rounding and string formatting methods will not use more digits than this.
    1.26  */
    1.27  const TInt KPrecisionLimit=12;
    1.28 +
    1.29 +/**
    1.30 +@publishedAll
    1.31 +@released
    1.32 +
    1.33 +Let D be the set of real numbers exactly representable by an IEEE-754 'double'
    1.34 +For any positive integer n let X_n be the set of real numbers with an exact
    1.35 +decimal representation using n significant digits.
    1.36 +Let r_n : D -> X_n be defined by r_n(x)=y such that
    1.37 +|y-x| = inf { |z-x| : z in X_n }
    1.38 +and (in the case where two such y exist) that the last significant digit in the
    1.39 +decimal representation of y is even.
    1.40 +This constant is the least n such that r_n is injective.
    1.41 +*/
    1.42 +const TInt KIEEEDoubleInjectivePrecision=17;
    1.43 +
    1.44  /**
    1.45  @publishedAll
    1.46  @released
    1.47 @@ -455,6 +475,9 @@
    1.48  	IMPORT_C static TInt Rand(TInt64 &aSeed);
    1.49  	IMPORT_C static TReal FRand(TInt64 &aSeed) __SOFTFP;
    1.50  	IMPORT_C static TUint32 Random();
    1.51 +	IMPORT_C static void Random(TDes8& aRandomValue);
    1.52 +	IMPORT_C static void RandomL(TDes8& aRandomValue);
    1.53 +	IMPORT_C static TUint32 RandomL();
    1.54  	IMPORT_C static TInt Round(TReal &aTrg,const TReal &aSrc,TInt aDecimalPlaces);
    1.55  	IMPORT_C static TInt Sin(TReal &aTrg,const TReal &aSrc); 
    1.56  	IMPORT_C static TInt Sqrt(TReal &aTrg,const TReal &aSrc);