[Libreoffice-commits] core.git: basctl/source basic/source binaryurp/source canvas/workben chart2/source comphelper/source connectivity/source cppcanvas/source cppuhelper/qa cppuhelper/source cui/sour
basctl/source/dlged/propbrw.cxx |2 basic/source/comp/token.cxx |2 basic/source/sbx/sbxscan.cxx |2 binaryurp/source/bridge.cxx |2 canvas/workben/canvasdemo.cxx |2 chart2/source/tools/ConfigColorScheme.cxx |2 comphelper/source/misc/base64.cxx |4 comphelper/source/misc/graphicmimetype.cxx|2 comphelper/source/misc/syntaxhighlight.cxx|4 connectivity/source/commontools/TDatabaseMetaDataBase.cxx |2 connectivity/source/drivers/ado/Awrapado.cxx | 24 +-- connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx |2 connectivity/source/drivers/jdbc/DatabaseMetaData.cxx |2 connectivity/source/drivers/postgresql/pq_statics.cxx | 32 ++-- connectivity/source/parse/sqlnode.cxx |2 cppcanvas/source/mtfrenderer/implrenderer.cxx |2 cppuhelper/qa/unourl/cppu_unourl.cxx | 18 +- cppuhelper/source/bootstrap.cxx |4 cui/source/customize/acccfg.cxx |2 cui/source/options/optcolor.cxx |2 cui/source/options/optgenrl.cxx |2 cui/source/options/treeopt.cxx| 24 +-- cui/source/tabpages/border.cxx|4 cui/source/tabpages/chardlg.cxx |4 cui/source/tabpages/numfmt.cxx|2 cui/source/tabpages/page.cxx |4 cui/source/tabpages/swpossizetabpage.cxx | 96 +++--- 27 files changed, 125 insertions(+), 125 deletions(-) New commits: commit 6abc09926c9b55a445b906303f56c6ec7fdeabf9 Author: Pragat Pandya AuthorDate: Sun May 8 23:56:45 2022 +0530 Commit: Bartosz Kosiorek CommitDate: Mon May 9 20:42:03 2022 +0200 tdf#147021 Use std::size() instead of SAL_N_ELEMENTS() macro Change-Id: I54257e87da0cd66da59d820c7960c3e4b020fda3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134027 Reviewed-by: Bartosz Kosiorek Tested-by: Jenkins diff --git a/basctl/source/dlged/propbrw.cxx b/basctl/source/dlged/propbrw.cxx index 4a8481249640..d7ab2ee633ef 100644 --- a/basctl/source/dlged/propbrw.cxx +++ b/basctl/source/dlged/propbrw.cxx @@ -137,7 +137,7 @@ void PropBrw::ImplReCreateController() ::cppu::ContextEntry_Init( "ContextDocument", Any( m_xContextDocument ) ) }; Reference< XComponentContext > xInspectorContext( -::cppu::createComponentContext( aHandlerContextInfo, SAL_N_ELEMENTS( aHandlerContextInfo ), xOwnContext ) ); +::cppu::createComponentContext( aHandlerContextInfo, std::size( aHandlerContextInfo ), xOwnContext ) ); // create a property browser controller Reference< XMultiComponentFactory > xFactory( xInspectorContext->getServiceManager(), UNO_SET_THROW ); diff --git a/basic/source/comp/token.cxx b/basic/source/comp/token.cxx index 9be47bf41ba1..a060b3fd9318 100644 --- a/basic/source/comp/token.cxx +++ b/basic/source/comp/token.cxx @@ -377,7 +377,7 @@ SbiToken SbiTokenizer::Next() } // valid token? short lb = 0; -short ub = SAL_N_ELEMENTS(aTokTable_Basic)-1; +short ub = std::size(aTokTable_Basic)-1; short delta; do { diff --git a/basic/source/sbx/sbxscan.cxx b/basic/source/sbx/sbxscan.cxx index 82080df4a62a..ec2783b1b837 100644 --- a/basic/source/sbx/sbxscan.cxx +++ b/basic/source/sbx/sbxscan.cxx @@ -600,7 +600,7 @@ void SbxValue::Format( OUString& rRes, const OUString* pFmt ) const sal_Unicode aBuf[2]; aBuf[0] = '0'; aBuf[1] = '0' + nMin; - rRes = OUString(aBuf, SAL_N_ELEMENTS(aBuf)); + rRes = OUString(aBuf, std::size(aBuf)); } else { diff --git a/binaryurp/source/bridge.cxx b/binaryurp/source/bridge.cxx index 050ebec7403c..d06e7d29f31a 100644 --- a/binaryurp/source/bridge.cxx +++ b/binaryurp/source/bridge.cxx @@ -991,7 +991,7 @@ void Bridge::makeReleaseCall( // its own: static auto const tid = [] { static sal_Int8 const id[] = {'r', 'e', 'l', 'e', 'a', 's', 'e', 'h', 'a', 'c', 'k'}; -return rtl::ByteSequence(id, SAL_N_ELEMENTS(id)); +return rtl::ByteSequence(id, std::size(id)); }(); sendRequest( tid, oid, type, diff --git a/canvas/workben/canvasdemo.cxx b/canvas/workben/canvasdemo.cxx index 031068adf9e9..431f9cee04a1 100644 --- a/canvas/workben/canvasdemo.cxx +++ b/canvas/workben/canvasdemo.cxx @@ -208,7 +208,7 @@ class DemoRenderer { const
[Libreoffice-commits] core.git: dbaccess/source filter/source vcl/workben
dbaccess/source/ui/querydesign/ConnectionLine.cxx |2 - filter/source/graphicfilter/icgm/bitmap.cxx |4 +-- filter/source/graphicfilter/icgm/class4.cxx | 24 +++--- filter/source/svg/svgwriter.cxx |3 -- vcl/workben/svptest.cxx |6 ++--- 5 files changed, 19 insertions(+), 20 deletions(-) New commits: commit a31aadb1ef7dfdd4ae76a15707ab51a82c95d868 Author: pragat-pandya AuthorDate: Tue Mar 29 16:25:15 2022 +0530 Commit: Hossein CommitDate: Thu Mar 31 13:51:34 2022 +0200 tdf#147906 Use std::hypot for Pythagorean addition Change-Id: I38166d36e9e8518ab86ded7ab630a35f3a0c39d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132268 Tested-by: Jenkins Reviewed-by: Hossein diff --git a/dbaccess/source/ui/querydesign/ConnectionLine.cxx b/dbaccess/source/ui/querydesign/ConnectionLine.cxx index 96086d60b682..77a67004e995 100644 --- a/dbaccess/source/ui/querydesign/ConnectionLine.cxx +++ b/dbaccess/source/ui/querydesign/ConnectionLine.cxx @@ -307,7 +307,7 @@ static double dist_Euklid(const Point &p1, const Point& p2,const Point& pM, Poin { Point v(p2 - p1); Point w(pM - p1); -double a = sqrt(static_cast(v.X()*v.X() + v.Y()*v.Y())); +double a = std::hypot(v.X(), v.Y()); double l = (v.X() * w.Y() - v.Y() * w.X()) / a; double a2 = w.X()*v.X()+w.Y()*v.Y(); a = a2 / (a * a); diff --git a/filter/source/graphicfilter/icgm/bitmap.cxx b/filter/source/graphicfilter/icgm/bitmap.cxx index 2dc6ff370757..67652d9eccd6 100644 --- a/filter/source/graphicfilter/icgm/bitmap.cxx +++ b/filter/source/graphicfilter/icgm/bitmap.cxx @@ -216,12 +216,12 @@ void CGMBitmap::ImplGetBitmap( CGMBitmapDescriptor& rDesc ) double nX = rDesc.mnR.X - rDesc.mnQ.X; double nY = rDesc.mnR.Y - rDesc.mnQ.Y; -rDesc.mndy = sqrt( nX * nX + nY * nY ); +rDesc.mndy = std::hypot(nX, nY); nX = rDesc.mnR.X - rDesc.mnP.X; nY = rDesc.mnR.Y - rDesc.mnP.Y; -rDesc.mndx = sqrt( nX * nX + nY * nY ); +rDesc.mndx = std::hypot(nX, nY); nX = rDesc.mnR.X - rDesc.mnP.X; nY = rDesc.mnR.Y - rDesc.mnP.Y; diff --git a/filter/source/graphicfilter/icgm/class4.cxx b/filter/source/graphicfilter/icgm/class4.cxx index c915576c2bdb..4ef817844570 100644 --- a/filter/source/graphicfilter/icgm/class4.cxx +++ b/filter/source/graphicfilter/icgm/class4.cxx @@ -89,10 +89,10 @@ bool CGM::ImplGetEllipse( FloatPoint& rCenter, FloatPoint& rRadius, double& rAng rAngle = ImplGetOrientation( rCenter, aPoint1 ); aPoint1.X -= rCenter.X; aPoint1.Y -= rCenter.Y; -rRadius.X = sqrt( aPoint1.X * aPoint1.X + aPoint1.Y * aPoint1.Y ); +rRadius.X = std::hypot(aPoint1.X, aPoint1.Y); aPoint2.X -= rCenter.X; aPoint2.Y -= rCenter.Y; -rRadius.Y = sqrt( aPoint2.X * aPoint2.X + aPoint2.Y * aPoint2.Y ); +rRadius.Y = std::hypot(aPoint2.X, aPoint2.Y); if ( fRot1 > fRot2 ) { @@ -418,7 +418,7 @@ void CGM::ImplDoClass4() fStartAngle = fEndAngle; fEndAngle = fG; } -double fRadius = sqrt( pow( ( aStartingPoint.X - aCenterPoint.X ), 2 ) + pow( ( aStartingPoint.Y - aCenterPoint.Y ), 2 ) ) ; +double fRadius = std::hypot(aStartingPoint.X - aCenterPoint.X, aStartingPoint.Y - aCenterPoint.Y); if ( mbFigure ) { @@ -508,7 +508,7 @@ void CGM::ImplDoClass4() fEndAngle = fG; } FloatPoint fRadius; -fRadius.Y = fRadius.X = sqrt( pow( ( aStartingPoint.X - aCenterPoint.X ), 2 ) + pow( ( aStartingPoint.Y - aCenterPoint.Y ), 2 ) ) ; +fRadius.Y = fRadius.X = std::hypot(aStartingPoint.X - aCenterPoint.X, aStartingPoint.Y - aCenterPoint.Y); sal_uInt32 nType = ImplGetUI16(); if ( nType == 0 ) @@ -548,9 +548,9 @@ void CGM::ImplDoClass4() bool bUseless = useless(vector[0]) || useless(vector[1]) || useless(vector[2]) || useless(vector[3]); if (!bUseless) { -const double fStartSqrt = sqrt(vector[0] * vector[ 0 ] + vector[1] * vector[1]); +const double fStartSqrt = std::hypot(vector[0], vector[1]); fStartAngle = fStartSqrt != 0.0 ? basegfx::rad2deg(acos(vector[0] / fStartSqrt)) : 0.0; -const double fEndSqrt = sqrt(vector[2] * vector[ 2 ] + vector[3] * vector[3]); +const double fEndSqrt = std::hypot(vector[2], vector[3]); fEndAngle = fEndSqrt != 0.0 ? basegfx::rad2deg(acos(vector[ 2 ] / fEndSqrt)) : 0.0; if ( vector[ 1 ] > 0 ) @@ -626,9 +626,9 @@ void CGM::ImplDoClass4() bool bUseless = useless(vector[0]) || useless(vector[1]
[Libreoffice-commits] core.git: bridges/source include/sal
bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx |7 ++- include/sal/log-areas.dox|1 + 2 files changed, 3 insertions(+), 5 deletions(-) New commits: commit 6f121860d0537060084278da11842732a748d6b7 Author: pragat-pandya AuthorDate: Tue Mar 1 16:56:06 2022 +0530 Commit: Luboš Luňák CommitDate: Sat Mar 5 08:35:23 2022 +0100 tdf#130924 replace debugging printf calls with SAL_INFO/SAL_WARN Change-Id: Iaef5eec6508d031ab711a71c0d8ecebb18112ef6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130764 Tested-by: Luboš Luňák Reviewed-by: Luboš Luňák diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx index de393582f99a..48d8d174fb6a 100644 --- a/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx +++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx @@ -442,11 +442,8 @@ static unsigned char * codeSnippet( unsigned char * code, // jmpq *%r11 *reinterpret_cast( code + 20 ) = 0x00e3ff49; -#if OSL_DEBUG_LEVEL > 1 -fprintf(stderr, -"==> codeSnippet, functionIndex=%d%s, vtableOffset=%d\n", -nFunctionIndex, (bHasHiddenParam ? "|0x8000":""), nVtableOffset); -#endif +SAL_INFO("bridges.debug", "==> codeSnippet, functionIndex=" << nFunctionIndex +<< (bHasHiddenParam ? "|0x8000":"") << ", vtableOffset=" << nVtableOffset); return code + codeSnippetSize; } diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox index 7d61cfd3d3cd..b0e10c48fa2d 100644 --- a/include/sal/log-areas.dox +++ b/include/sal/log-areas.dox @@ -47,6 +47,7 @@ certain functionality. @li @c bridges @li @c bridges.ios @li @c bridges.osx +@li @c bridges.debug @section canvas
[Libreoffice-commits] core.git: dbaccess/qa sccomp/qa
dbaccess/qa/extras/rowsetclones.cxx |3 +-- dbaccess/qa/unit/dbtest_base.cxx|4 +--- sccomp/qa/unit/SwarmSolverTest.cxx | 10 -- 3 files changed, 2 insertions(+), 15 deletions(-) New commits: commit 73ef2f6f615b88ef25366f9073c5fb3db5e76687 Author: pragat-pandya AuthorDate: Sun Feb 6 16:50:05 2022 +0530 Commit: Mike Kaganski CommitDate: Mon Feb 28 22:21:28 2022 +0100 tdf#139734 removing redundant asserts after MacrosTest::loadFromDesktop Change-Id: I89ffa387464ce7cc43c1884b031d6fade5b85078 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129581 Tested-by: Jenkins Reviewed-by: Mike Kaganski diff --git a/dbaccess/qa/extras/rowsetclones.cxx b/dbaccess/qa/extras/rowsetclones.cxx index 21a30636961b..d83d160ca132 100644 --- a/dbaccess/qa/extras/rowsetclones.cxx +++ b/dbaccess/qa/extras/rowsetclones.cxx @@ -51,8 +51,7 @@ void RowSetClones::test() const OUString sFilePath(m_directories.getURLFromWorkdir(u"CppunitTest/RowSetClones.odb")); uno::Reference< lang::XComponent > xComponent (loadFromDesktop(sFilePath)); -uno::Reference< XOfficeDatabaseDocument > xDocument(xComponent, UNO_QUERY); -CPPUNIT_ASSERT(xDocument.is()); +uno::Reference< XOfficeDatabaseDocument > xDocument(xComponent, UNO_QUERY_THROW); uno::Reference< XDataSource > xDataSource = xDocument->getDataSource(); CPPUNIT_ASSERT(xDataSource.is()); diff --git a/dbaccess/qa/unit/dbtest_base.cxx b/dbaccess/qa/unit/dbtest_base.cxx index c7992288cdbd..b5a3bd31cf90 100644 --- a/dbaccess/qa/unit/dbtest_base.cxx +++ b/dbaccess/qa/unit/dbtest_base.cxx @@ -67,9 +67,7 @@ uno::Reference< XOfficeDatabaseDocument > uno::Reference DBTestBase::getDocumentForUrl(OUString const & url) { uno::Reference< lang::XComponent > xComponent (loadFromDesktop(url)); -uno::Reference< XOfficeDatabaseDocument > xDocument(xComponent, UNO_QUERY); -CPPUNIT_ASSERT(xDocument.is()); - +uno::Reference< XOfficeDatabaseDocument > xDocument(xComponent, UNO_QUERY_THROW); return xDocument; } diff --git a/sccomp/qa/unit/SwarmSolverTest.cxx b/sccomp/qa/unit/SwarmSolverTest.cxx index 030822b9cdb4..966f9c673fc5 100644 --- a/sccomp/qa/unit/SwarmSolverTest.cxx +++ b/sccomp/qa/unit/SwarmSolverTest.cxx @@ -60,8 +60,6 @@ void SwarmSolverTest::testUnconstrained() createFileURL(u"Simple.ods", aFileURL); mxComponent = loadFromDesktop(aFileURL); -CPPUNIT_ASSERT_MESSAGE("Component not loaded", mxComponent.is()); - uno::Reference xDocument(mxComponent, uno::UNO_QUERY_THROW); uno::Reference xIndex(xDocument->getSheets(), uno::UNO_QUERY_THROW); uno::Reference xSheet(xIndex->getByIndex(0), uno::UNO_QUERY_THROW); @@ -109,8 +107,6 @@ void SwarmSolverTest::testVariableBounded() createFileURL(u"Simple.ods", aFileURL); mxComponent = loadFromDesktop(aFileURL); -CPPUNIT_ASSERT_MESSAGE("Component not loaded", mxComponent.is()); - uno::Reference xDocument(mxComponent, uno::UNO_QUERY_THROW); uno::Reference xIndex(xDocument->getSheets(), uno::UNO_QUERY_THROW); uno::Reference xSheet(xIndex->getByIndex(0), uno::UNO_QUERY_THROW); @@ -160,8 +156,6 @@ void SwarmSolverTest::testVariableConstrained() createFileURL(u"Simple.ods", aFileURL); mxComponent = loadFromDesktop(aFileURL); -CPPUNIT_ASSERT_MESSAGE("Component not loaded", mxComponent.is()); - uno::Reference xDocument(mxComponent, uno::UNO_QUERY_THROW); uno::Reference xIndex(xDocument->getSheets(), uno::UNO_QUERY_THROW); uno::Reference xSheet(xIndex->getByIndex(0), uno::UNO_QUERY_THROW); @@ -214,8 +208,6 @@ void SwarmSolverTest::testTwoVariables() createFileURL(u"TwoVariables.ods", aFileURL); mxComponent = loadFromDesktop(aFileURL); -CPPUNIT_ASSERT_MESSAGE("Component not loaded", mxComponent.is()); - uno::Reference xDocument(mxComponent, uno::UNO_QUERY_THROW); uno::Reference xIndex(xDocument->getSheets(), uno::UNO_QUERY_THROW); uno::Reference xSheet(xIndex->getByIndex(0), uno::UNO_QUERY_THROW); @@ -272,8 +264,6 @@ void SwarmSolverTest::testMultipleVariables() createFileURL(u"MultiVariable.ods", aFileURL); mxComponent = loadFromDesktop(aFileURL); -CPPUNIT_ASSERT_MESSAGE("Component not loaded", mxComponent.is()); - uno::Reference xDocument(mxComponent, uno::UNO_QUERY_THROW); uno::Reference xIndex(xDocument->getSheets(), uno::UNO_QUERY_THROW); uno::Reference xSheet(xIndex->getByIndex(0), uno::UNO_QUERY_THROW);
[Libreoffice-commits] core.git: connectivity/source odk/examples scaddins/source slideshow/source starmath/source vcl/source
connectivity/source/drivers/file/FNumericFunctions.cxx |9 ++--- odk/examples/DevelopersGuide/ProfUNO/CppBinding/string_samples.cxx |7 +-- scaddins/source/analysis/bessel.cxx| 18 +++--- slideshow/source/engine/opengl/TransitionImpl.cxx |6 +-- starmath/source/node.cxx |5 +- vcl/source/filter/imet/ios2met.cxx |9 ++--- 6 files changed, 23 insertions(+), 31 deletions(-) New commits: commit 5f21eaa0e6b68926cacc949b9a55d545088f Author: pragat-pandya AuthorDate: Tue Feb 1 05:59:42 2022 +0530 Commit: Hossein CommitDate: Tue Feb 15 12:17:50 2022 +0100 tdf#145759 Using M_PI from cmath instead of magic constants. Replace the instances of Pi's value as magic number by M_PI Use M_PI_2 and 2_M_PI instead of calculating these values in code. Use basegfx functions to convert angle units. Change-Id: I6cca7cc93704a70ccf3a0571a56a789bc9df51ef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129479 Reviewed-by: Arkadiy Illarionov Reviewed-by: Hossein Tested-by: Jenkins diff --git a/connectivity/source/drivers/file/FNumericFunctions.cxx b/connectivity/source/drivers/file/FNumericFunctions.cxx index 7de058dee06c..7c7fdc75425f 100644 --- a/connectivity/source/drivers/file/FNumericFunctions.cxx +++ b/connectivity/source/drivers/file/FNumericFunctions.cxx @@ -19,14 +19,13 @@ #include +#include #include #include using namespace connectivity; using namespace connectivity::file; -const double fPi = 3.14159265358979323846; - ORowSetValue OOp_Abs::operate(const ORowSetValue& lhs) const { if ( lhs.isNull() ) @@ -162,7 +161,7 @@ ORowSetValue OOp_Sqrt::operate(const ORowSetValue& lhs) const ORowSetValue OOp_Pi::operate(const std::vector& /*lhs*/) const { -return fPi; +return M_PI; } ORowSetValue OOp_Cos::operate(const ORowSetValue& lhs) const @@ -227,7 +226,7 @@ ORowSetValue OOp_Degrees::operate(const ORowSetValue& lhs) const return lhs; double nLhs = lhs.getDouble(); -return nLhs*180*(1.0/fPi); +return basegfx::rad2deg(nLhs); } ORowSetValue OOp_Radians::operate(const ORowSetValue& lhs) const @@ -236,7 +235,7 @@ ORowSetValue OOp_Radians::operate(const ORowSetValue& lhs) const return lhs; double nLhs = lhs.getDouble(); -return nLhs*fPi*(1.0/180.0); +return basegfx::deg2rad(nLhs); } diff --git a/odk/examples/DevelopersGuide/ProfUNO/CppBinding/string_samples.cxx b/odk/examples/DevelopersGuide/ProfUNO/CppBinding/string_samples.cxx index 26162eeb3617..f8bb34f97cd4 100644 --- a/odk/examples/DevelopersGuide/ProfUNO/CppBinding/string_samples.cxx +++ b/odk/examples/DevelopersGuide/ProfUNO/CppBinding/string_samples.cxx @@ -34,7 +34,7 @@ */ #include - +#include #include #include @@ -49,7 +49,6 @@ SAL_IMPLEMENT_MAIN() // string concatenation sal_Int32 n = 42; -double pi = 3.14159; // give it an initial size, should be a good guess. // stringbuffer extends if necessary @@ -59,7 +58,7 @@ SAL_IMPLEMENT_MAIN() buf.append("pi ( here "); // numbers can be simply appended -buf.append(pi); +buf.append(M_PI); // lets the compiler count the stringlength, so this is more efficient than // the above appendAscii call, where length of the string must be calculated at @@ -67,7 +66,7 @@ SAL_IMPLEMENT_MAIN() buf.append(" ) multiplied with "); buf.append(n); buf.append(" gives "); -buf.append((double)(n * pi)); +buf.append((double)(n * M_PI)); buf.append("."); // now transfer the buffer into the string. diff --git a/scaddins/source/analysis/bessel.cxx b/scaddins/source/analysis/bessel.cxx index 623415e18dfe..44b79e798f85 100644 --- a/scaddins/source/analysis/bessel.cxx +++ b/scaddins/source/analysis/bessel.cxx @@ -18,7 +18,7 @@ */ #include "bessel.hxx" - +#include #include #include @@ -29,12 +29,6 @@ using ::com::sun::star::sheet::NoConvergenceException; namespace sca::analysis { -const double f_PI = 3.1415926535897932385; -const double f_PI_DIV_2 = f_PI / 2.0; -const double f_PI_DIV_4 = f_PI / 4.0; -const double f_2_DIV_PI = 2.0 / f_PI; - - // BESSEL J @@ -77,7 +71,7 @@ double BesselJ( double x, sal_Int32 N ) { if (!bAsymptoticPossible) throw NoConvergenceException(); -return fSign * sqrt(f_2_DIV_PI/fX)* cos(fX-N*f_PI_DIV_2-f_PI_DIV_4); +return fSign * sqrt(M_2_PI/fX)* cos(fX-N*M_PI_2-M_PI_4); } double const epsilon = 1.0e-15; // relative error @@ -330,7 +324,7 @@ static double Bessely0( double fX ) throw IllegalArgumentException(); const double fMaxIteration = 900.0; // should not be reached if (fX > 5.0e+6) // iteration is not considerable better the