aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--parameter/FixedPointParameterType.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/parameter/FixedPointParameterType.cpp b/parameter/FixedPointParameterType.cpp
index 3f57d77..436ff31 100644
--- a/parameter/FixedPointParameterType.cpp
+++ b/parameter/FixedPointParameterType.cpp
@@ -33,6 +33,7 @@
#include <sstream>
#include <iomanip>
#include <assert.h>
+#include <math.h>
#include "Parameter.h"
#include "ParameterAccessContext.h"
#include "ConfigurationAccessContext.h"
@@ -181,10 +182,14 @@ bool CFixedPointParameterType::fromBlackboard(string& strValue, const uint32_t&
}
} else {
+ // Sign extend
+ signExtend(iData);
+
// Conversion
double dData = asDouble(iData);
- strStream << dData;
+ // Set up the precision of the display and notation type
+ strStream << fixed << setprecision((_uiFractional + 1) * log10(2.0)) << dData;
}
strValue = strStream.str();