summaryrefslogtreecommitdiff
path: root/src/utilities
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2017-01-20 11:13:44 +0100
committerCedric Nugteren <web@cedricnugteren.nl>2017-01-20 11:13:44 +0100
commita2c0a9c5514e7cb9dbf9674843ba806b459d3544 (patch)
treeea6864980537b88be3efd1b51bd9c2f1062c9e3a /src/utilities
parentdf9a77d74d87fb8832264e9e9a37336001873151 (diff)
Set number of decimals for floating-point printing for error reporting
Diffstat (limited to 'src/utilities')
-rw-r--r--src/utilities/utilities.cpp24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/utilities/utilities.cpp b/src/utilities/utilities.cpp
index 663fdffa..fd198c0d 100644
--- a/src/utilities/utilities.cpp
+++ b/src/utilities/utilities.cpp
@@ -127,23 +127,27 @@ std::string ToString(T value) {
}
template std::string ToString<int>(int value);
template std::string ToString<size_t>(size_t value);
-template std::string ToString<float>(float value);
-template std::string ToString<double>(double value);
+template <>
+std::string ToString(float value) {
+ std::ostringstream result;
+ result << std::fixed << std::setprecision(2) << value;
+ return result.str();
+}
+template <>
+std::string ToString(double value) {
+ std::ostringstream result;
+ result << std::fixed << std::setprecision(2) << value;
+ return result.str();
+}
// If not possible directly: special cases for complex data-types
template <>
std::string ToString(float2 value) {
- std::ostringstream real, imag;
- real << std::setprecision(2) << value.real();
- imag << std::setprecision(2) << value.imag();
- return real.str()+"+"+imag.str()+"i";
+ return ToString(value.real())+"+"+ToString(value.imag())+"i";
}
template <>
std::string ToString(double2 value) {
- std::ostringstream real, imag;
- real << std::setprecision(2) << value.real();
- imag << std::setprecision(2) << value.imag();
- return real.str()+"+"+imag.str()+"i";
+ return ToString(value.real())+"+"+ToString(value.imag())+"i";
}
// If not possible directly: special case for half-precision