29 #if !defined INCLUDED_RTL_MATH_HXX
30 #define INCLUDED_RTL_MATH_HXX
50 sal_Int32
const * pGroups,
52 bool bEraseTrailingDecZeros =
false)
56 cDecSeparator, pGroups, cGroupSeparator,
57 bEraseTrailingDecZeros);
66 bool bEraseTrailingDecZeros =
false)
70 cDecSeparator, 0, 0, bEraseTrailingDecZeros);
80 sal_Int32
const * pGroups,
82 bool bEraseTrailingDecZeros =
false)
86 cDecSeparator, pGroups, cGroupSeparator,
87 bEraseTrailingDecZeros);
97 bool bEraseTrailingDecZeros =
false)
101 cDecSeparator, 0, 0, bEraseTrailingDecZeros);
110 sal_Int32 nDecPlaces,
112 sal_Int32
const * pGroups,
114 bool bEraseTrailingDecZeros =
false)
116 rtl_uString ** pData;
117 sal_Int32 * pCapacity;
120 eFormat, nDecPlaces, cDecSeparator, pGroups,
121 cGroupSeparator, bEraseTrailingDecZeros);
129 sal_Int32 nDecPlaces,
131 bool bEraseTrailingDecZeros =
false)
133 rtl_uString ** pData;
134 sal_Int32 * pCapacity;
137 eFormat, nDecPlaces, cDecSeparator, 0, 0,
138 bEraseTrailingDecZeros);
146 sal_Int32 * pParsedEnd = 0)
152 cDecSeparator, cGroupSeparator,
155 *pParsedEnd = (sal_Int32)(pEnd - pBegin);
165 sal_Int32 * pParsedEnd = 0)
171 cDecSeparator, cGroupSeparator,
174 *pParsedEnd = (sal_Int32)(pEnd - pBegin);
181 double fValue,
int nDecPlaces = 0,
224 inline double erf(
double fValue)
231 inline double erfc(
double fValue)
262 return (x < 0.0 ? -x : x)
263 < ((a < 0.0 ? -a : a) * (1.0 / (16777216.0 * 16777216.0)));
276 return (x < 0.0 ? -x : x)
277 < ((a < 0.0 ? -a : a) * (1.0 / (pow(static_cast<double>(2.0), nPrec))));
291 if ( ((a < 0.0 && b > 0.0) || (b < 0.0 && a > 0.0))
304 if ( ((a < 0.0 && b < 0.0) || (a > 0.0 && b > 0.0)) &&
approxEqual( a, b ) )
331 return SAL_MATH_FINITE(d) != 0;
343 return (SAL_MATH_FINITE(d) == 0) &&
344 (
reinterpret_cast< sal_math_Double *
>(&d)->inf_parts.fraction_hi == 0)
345 && (
reinterpret_cast< sal_math_Double *
>(&d)->inf_parts.fraction_lo
354 return (SAL_MATH_FINITE(d) == 0) && (
355 (
reinterpret_cast< sal_math_Double *
>(&d)->inf_parts.fraction_hi != 0)
356 || (
reinterpret_cast< sal_math_Double *
>(&d)->inf_parts.fraction_lo
364 return reinterpret_cast< sal_math_Double *
>(&d)->inf_parts.sign != 0;
369 inline void setInf(
double * pd,
bool bNegative)
376 md.w32_parts.msw = bNegative ? 0xFFF00000 : 0x7FF00000;
377 md.w32_parts.lsw = 0;
390 md.w32_parts.msw = 0x7FFFFFFF;
391 md.w32_parts.lsw = 0xFFFFFFFF;
407 <= (
static_cast< double >(
static_cast< unsigned long >(0x80000000))
408 *
static_cast< double >(
static_cast< unsigned long >(0x80000000))
414 inline double sin(
double d)
424 inline double cos(
double d)
434 inline double tan(
double d)
446 #endif // INCLUDED_RTL_MATH_HXX