diff options
-rw-r--r-- | parameter/FixedPointParameterType.cpp | 7 |
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(); |