From 4d211ddcc150d92d6b4292afe523019cd9455ff5 Mon Sep 17 00:00:00 2001 From: Suter Andreas Date: Fri, 4 Sep 2015 17:36:57 +0200 Subject: [PATCH] updated to the previous incomplete fix. FOURIER range is not truncated anymore. --- src/classes/PMsrHandler.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/classes/PMsrHandler.cpp b/src/classes/PMsrHandler.cpp index 7601309d..afac766b 100644 --- a/src/classes/PMsrHandler.cpp +++ b/src/classes/PMsrHandler.cpp @@ -1090,6 +1090,10 @@ Int_t PMsrHandler::WriteMsrLogFile(const Bool_t messages) fout << "range_for_phase_correction " << fFourier.fRangeForPhaseCorrection[0] << " " << fFourier.fRangeForPhaseCorrection[1] << endl; } else if (sstr.BeginsWith("range ")) { fout.unsetf(ios::floatfield); + neededPrec = LastSignificant(fFourier.fPlotRange[0]); + if (LastSignificant(fFourier.fPlotRange[1]) > neededPrec) + neededPrec = LastSignificant(fFourier.fPlotRange[1]); + fout.precision(neededPrec+1); fout << "range " << fFourier.fPlotRange[0] << " " << fFourier.fPlotRange[1] << endl; } else { fout << str.Data() << endl; @@ -1973,6 +1977,10 @@ Int_t PMsrHandler::WriteMsrFile(const Char_t *filename, map *co // range if ((fFourier.fPlotRange[0] != -1.0) || (fFourier.fPlotRange[1] != -1.0)) { fout.unsetf(ios::floatfield); + UInt_t neededPrec = LastSignificant(fFourier.fPlotRange[0]); + if (LastSignificant(fFourier.fPlotRange[1]) > neededPrec) + neededPrec = LastSignificant(fFourier.fPlotRange[1]); + fout.precision(neededPrec+1); fout << "range " << fFourier.fPlotRange[0] << " " << fFourier.fPlotRange[1] << endl; }