diff Core/Logging.h @ 3489:e7723a39adf8

Fixed alignment issue in Toolbox::DetectEndianness() + made the internal logger use an std::stringstream so that manipulators like "std::hex" are supported (when using ORTHANC_ENABLE_LOGGING_PLUGIN or ORTHANC_ENABLE_LOGGING_STDIO)
author Benjamin Golinvaux <bgo@osimis.io>
date Sat, 10 Aug 2019 13:40:08 +0200
parents 815b81142ff7
children 94f4a18a79cc
line wrap: on
line diff
--- a/Core/Logging.h	Mon Aug 05 13:57:54 2019 +0200
+++ b/Core/Logging.h	Sat Aug 10 13:40:08 2019 +0200
@@ -143,8 +143,8 @@
     class InternalLogger : public boost::noncopyable
     {
     private:
-      InternalLevel  level_;
-      std::string    message_;
+      InternalLevel       level_;
+      std::stringstream   messageStream_;
 
     public:
       InternalLogger(InternalLevel level,
@@ -156,7 +156,7 @@
       template <typename T>
       InternalLogger& operator<< (const T& message)
       {
-        message_ += boost::lexical_cast<std::string>(message);
+        messageStream_ << message;
         return *this;
       }
     };