<html> <head> <title>Global Functions in Namespace math in Sourcefile math.hxx</title> <link rel="stylesheet" type="text/css" href="../../../cpp.css"> </head> <body> <div id="adc-cppref"> <a name="_top_"> </a><table class="navimain" border="0" cellpadding="1" cellspacing="0"> <tr align="center" valign="top"> <td class="navimain"> <a href="../../../index.html">Overview</a> </td> <td class="navimain"> <a href="index.html">Namespace</a> </td> <td class="navimainnone"> Class </td> <td class="navimain"> <a href="../../../index-files/index-1.html">Index</a> </td> <td class="navimain"> <a href="../../../help.html">Help</a> </td> </tr> </table> <table class="navisub" cellpadding="0" cellspacing="3"></table> <hr> <div class="title"><h2>Global Functions in Namespace math<br> in Sourcefile math.hxx</h2> </div><hr> <dl class="member"> <dt class="member"><a name="approxAdd-1210"> </a>approxAdd</dt> <dd class="member"><dl> <dt class="simple">double <strong>approxAdd</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> a,</td> </tr> <tr> <td>double</td> <td>b );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Add two values. </dd> <dt>Description</dt> <dd> If signs differ and the absolute values are equal according to approxEqual() the method returns 0.0 instead of calculating the sum. If you wanted to sum up multiple values it would be convenient not to call approxAdd() for each value but instead remember the first value not equal to 0.0, add all other values using normal + operator, and with the result and the remembered value call approxAdd(). </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="approxCeil-1213"> </a>approxCeil</dt> <dd class="member"><dl> <dt class="simple">double <strong>approxCeil</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> a );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>ceil()method taking approxEqual() into account. </dd> <dt>Description</dt> <dd> Use for expected integer values being calculated by double functions. </dd> <dt class="attention">ATTENTION!</dt> <dd> The threshhold value is 3.55271e-015 </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="approxEqual-1209"> </a>approxEqual</dt> <dd class="member"><dl> <dt class="simple">bool <strong>approxEqual</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> a,</td> </tr> <tr> <td>double</td> <td>b );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Test equality of two values with an accuracy of the magnitude of the given values scaled by 2^-48 (4 bits roundoff stripped). </dd> <dt class="attention">ATTENTION!</dt> <dd> approxEqual( value!=0.0, 0.0 ) _never_ yields true. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="approxFloor-1212"> </a>approxFloor</dt> <dd class="member"><dl> <dt class="simple">double <strong>approxFloor</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> a );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>floor()method taking approxEqual() into account. </dd> <dt>Description</dt> <dd> Use for expected integer values being calculated by double functions. </dd> <dt class="attention">ATTENTION!</dt> <dd> The threshhold value is 3.55271e-015 </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="approxSub-1211"> </a>approxSub</dt> <dd class="member"><dl> <dt class="simple">double <strong>approxSub</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> a,</td> </tr> <tr> <td>double</td> <td>b );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Substract two values (a-b). </dd> <dt>Description</dt> <dd> If signs are identical and the values are equal according to approxEqual() the method returns 0.0 instead of calculating the substraction. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="cos-1222"> </a>cos</dt> <dd class="member"><dl> <dt class="simple">double <strong>cos</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Safe cos(), returns NAN if not valid. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="doubleToString-1199"> </a>doubleToString</dt> <dd class="member"><dl> <dt class="simple">rtl::<a href="../../rtl/c-OString.html">OString</a> <strong>doubleToString</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> fValue,</td> </tr> <tr> <td><a href="../../e-rtl_math_StringFormat.html">rtl_math_StringFormat</a></td> <td>eFormat,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nDecPlaces,</td> </tr> <tr> <td><a href="../../t-sal_Char.html">sal_Char</a></td> <td>cDecSeparator,</td> </tr> <tr> <td>const <a href="../../t-sal_Int32.html">sal_Int32</a> *</td> <td>pGroups,</td> </tr> <tr> <td><a href="../../t-sal_Char.html">sal_Char</a></td> <td>cGroupSeparator,</td> </tr> <tr> <td>bool</td> <td>bEraseTrailingDecZeros = false );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_doubleToString. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="doubleToString-1200"> </a>doubleToString</dt> <dd class="member"><dl> <dt class="simple">rtl::<a href="../../rtl/c-OString.html">OString</a> <strong>doubleToString</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> fValue,</td> </tr> <tr> <td><a href="../../e-rtl_math_StringFormat.html">rtl_math_StringFormat</a></td> <td>eFormat,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nDecPlaces,</td> </tr> <tr> <td><a href="../../t-sal_Char.html">sal_Char</a></td> <td>cDecSeparator,</td> </tr> <tr> <td>bool</td> <td>bEraseTrailingDecZeros = false );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_doubleToString, with no grouping. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="doubleToUString-1201"> </a>doubleToUString</dt> <dd class="member"><dl> <dt class="simple">rtl::<a href="../../rtl/c-OUString.html">OUString</a> <strong>doubleToUString</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> fValue,</td> </tr> <tr> <td><a href="../../e-rtl_math_StringFormat.html">rtl_math_StringFormat</a></td> <td>eFormat,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nDecPlaces,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cDecSeparator,</td> </tr> <tr> <td>const <a href="../../t-sal_Int32.html">sal_Int32</a> *</td> <td>pGroups,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cGroupSeparator,</td> </tr> <tr> <td>bool</td> <td>bEraseTrailingDecZeros = false );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_doubleToUString. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="doubleToUString-1202"> </a>doubleToUString</dt> <dd class="member"><dl> <dt class="simple">rtl::<a href="../../rtl/c-OUString.html">OUString</a> <strong>doubleToUString</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> fValue,</td> </tr> <tr> <td><a href="../../e-rtl_math_StringFormat.html">rtl_math_StringFormat</a></td> <td>eFormat,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nDecPlaces,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cDecSeparator,</td> </tr> <tr> <td>bool</td> <td>bEraseTrailingDecZeros = false );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_doubleToUString, with no grouping. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="doubleToUStringBuffer-1203"> </a>doubleToUStringBuffer</dt> <dd class="member"><dl> <dt class="simple">void <strong>doubleToUStringBuffer</strong>(</dt> <dd><table class="param-table"> <tr> <td>rtl::<a href="../../rtl/c-OUStringBuffer.html">OUStringBuffer</a> & </td> <td> rBuffer,</td> </tr> <tr> <td>double</td> <td>fValue,</td> </tr> <tr> <td><a href="../../e-rtl_math_StringFormat.html">rtl_math_StringFormat</a></td> <td>eFormat,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nDecPlaces,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cDecSeparator,</td> </tr> <tr> <td>const <a href="../../t-sal_Int32.html">sal_Int32</a> *</td> <td>pGroups,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cGroupSeparator,</td> </tr> <tr> <td>bool</td> <td>bEraseTrailingDecZeros = false );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_doubleToUString that appends to an rtl::OUStringBuffer. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="doubleToUStringBuffer-1204"> </a>doubleToUStringBuffer</dt> <dd class="member"><dl> <dt class="simple">void <strong>doubleToUStringBuffer</strong>(</dt> <dd><table class="param-table"> <tr> <td>rtl::<a href="../../rtl/c-OUStringBuffer.html">OUStringBuffer</a> & </td> <td> rBuffer,</td> </tr> <tr> <td>double</td> <td>fValue,</td> </tr> <tr> <td><a href="../../e-rtl_math_StringFormat.html">rtl_math_StringFormat</a></td> <td>eFormat,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nDecPlaces,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cDecSeparator,</td> </tr> <tr> <td>bool</td> <td>bEraseTrailingDecZeros = false );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_doubleToUString that appends to an rtl::OUStringBuffer, with no grouping. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isFinite-1214"> </a>isFinite</dt> <dd class="member"><dl> <dt class="simple">bool <strong>isFinite</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Tests whether a value is neither INF nor NAN. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isInf-1215"> </a>isInf</dt> <dd class="member"><dl> <dt class="simple">bool <strong>isInf</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>If a value represents +INF or -INF. </dd> <dt>Description</dt> <dd> The sign bit may be queried with isSignBitSet(). If isFinite(d)==false and isInf(d)==false then NAN. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isNan-1216"> </a>isNan</dt> <dd class="member"><dl> <dt class="simple">bool <strong>isNan</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Test on any QNAN or SNAN. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isSignBitSet-1217"> </a>isSignBitSet</dt> <dd class="member"><dl> <dt class="simple">bool <strong>isSignBitSet</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>If the sign bit is set. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isValidArcArg-1220"> </a>isValidArcArg</dt> <dd class="member"><dl> <dt class="simple">bool <strong>isValidArcArg</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>If a value is a valid argument for sin(), cos(), tan(). </dd> <dt>Description</dt> <dd> IEEE 754 specifies that absolute values up to 2^64 (=1.844e19) for the radian must be supported by trigonometric functions. Unfortunately, at least on x86 architectures, the FPU doesn't generate an error pattern for values >2^64 but produces erroneous results instead and sets only the "invalid operation" (IM) flag in the status word :-( Thus the application has to handle it itself. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="pow10Exp-1208"> </a>pow10Exp</dt> <dd class="member"><dl> <dt class="simple">double <strong>pow10Exp</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> fValue,</td> </tr> <tr> <td>int</td> <td>nExp );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_pow10Exp. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="round-1207"> </a>round</dt> <dd class="member"><dl> <dt class="simple">double <strong>round</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> fValue,</td> </tr> <tr> <td>int</td> <td>nDecPlaces = 0,</td> </tr> <tr> <td><a href="../../e-rtl_math_RoundingMode.html">rtl_math_RoundingMode</a></td> <td>eMode = rtl_math_RoundingMode_Corrected );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_round. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="setInf-1218"> </a>setInf</dt> <dd class="member"><dl> <dt class="simple">void <strong>setInf</strong>(</dt> <dd><table class="param-table"> <tr> <td>double * </td> <td> pd,</td> </tr> <tr> <td>bool</td> <td>bNegative );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Set to +INF if bNegative==false or -INF if bNegative==true. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="setNan-1219"> </a>setNan</dt> <dd class="member"><dl> <dt class="simple">void <strong>setNan</strong>(</dt> <dd><table class="param-table"> <tr> <td>double * </td> <td> pd );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Set a QNAN. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="sin-1221"> </a>sin</dt> <dd class="member"><dl> <dt class="simple">double <strong>sin</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Safe sin(), returns NAN if not valid. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="stringToDouble-1205"> </a>stringToDouble</dt> <dd class="member"><dl> <dt class="simple">double <strong>stringToDouble</strong>(</dt> <dd><table class="param-table"> <tr> <td>const rtl::<a href="../../rtl/c-OString.html">OString</a> & </td> <td> rString,</td> </tr> <tr> <td><a href="../../t-sal_Char.html">sal_Char</a></td> <td>cDecSeparator,</td> </tr> <tr> <td><a href="../../t-sal_Char.html">sal_Char</a></td> <td>cGroupSeparator,</td> </tr> <tr> <td><a href="../../e-rtl_math_ConversionStatus.html">rtl_math_ConversionStatus</a> *</td> <td>pStatus,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a> *</td> <td>pParsedEnd );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_stringToDouble. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="stringToDouble-1206"> </a>stringToDouble</dt> <dd class="member"><dl> <dt class="simple">double <strong>stringToDouble</strong>(</dt> <dd><table class="param-table"> <tr> <td>const rtl::<a href="../../rtl/c-OUString.html">OUString</a> & </td> <td> rString,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cDecSeparator,</td> </tr> <tr> <td><a href="../../t-sal_Unicode.html">sal_Unicode</a></td> <td>cGroupSeparator,</td> </tr> <tr> <td><a href="../../e-rtl_math_ConversionStatus.html">rtl_math_ConversionStatus</a> *</td> <td>pStatus,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a> *</td> <td>pParsedEnd );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>A wrapper around rtl_math_uStringToDouble. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="tan-1223"> </a>tan</dt> <dd class="member"><dl> <dt class="simple">double <strong>tan</strong>(</dt> <dd><table class="param-table"> <tr> <td>double </td> <td> d );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Safe tan(), returns NAN if not valid. </dd> </dl> </dd> </dl> <hr> <a href="#_top_" class="objchapter">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright © 2008 Sun Microsystems, Inc.</p> </div> <!-- id="adc-cppref" --> </body> </html>