#ifndef morpheo_Tostring #define morpheo_Tostring /* * $Id$ * * [ Description ] * */ #include #include #include #include #include using std::setprecision ; using std::ostringstream ; using std::boolalpha ; namespace morpheo { template inline std::string toString(const T& x) { ostringstream out; out << x; return out.str(); } template<> inline std::string toString (const bool& x) { ostringstream out; //out << boolalpha << x; out << x; return out.str(); } template<> inline std::string toString (const float& x) { const int sigdigits = std::numeric_limits::digits10; ostringstream out; out << setprecision(sigdigits) << x; return out.str(); } template<> inline std::string toString (const double& x) { const int sigdigits = std::numeric_limits::digits10; ostringstream out; out << setprecision(sigdigits) << x; return out.str(); } template<> inline std::string toString(const long double& x) { const int sigdigits = std::numeric_limits::digits10; ostringstream out; out << setprecision(sigdigits) << x; return out.str(); } }; // end namespace morpheo #endif