diff --git a/LogManager.cpp b/LogManager.cpp index 7c547015..3181e510 100644 --- a/LogManager.cpp +++ b/LogManager.cpp @@ -3,7 +3,7 @@ #include #include #include -#include +#include #include "ResourceManager.h" @@ -13,7 +13,7 @@ static const char* log_codes[] = {"FATAL:", "ERROR:", "Warning:", "Info:", "[ver LogManager::LogManager() { - base_clock = clock(); + base_clock = std::chrono::steady_clock::now(); } LogManager* LogManager::get() @@ -136,8 +136,8 @@ void LogManager::_flush() if(temp_messages[msg]->level <= loglevel) { // Put the timestamp here - clock_t counter = temp_messages[msg]->counted_second; - log_stream << std::left << std::setw(6) << counter/ ( CLOCKS_PER_SEC / 1000 ) << "|"; + std::chrono::milliseconds counter = std::chrono::duration_cast(temp_messages[msg]->counted_second); + log_stream << std::left << std::setw(6) << counter.count() << "|"; log_stream << std::left << std::setw(9) << log_codes[temp_messages[msg]->level]; log_stream << temp_messages[msg]->buffer; @@ -202,7 +202,7 @@ void LogManager::_append(const char* filename, int line, unsigned int level, con mes->level = level; mes->filename = filename; mes->line = line; - mes->counted_second = clock() - base_clock; + mes->counted_second = std::chrono::steady_clock::now() - base_clock; /*-------------------------------------------------*\ | If the message is within the current verbosity, | diff --git a/LogManager.h b/LogManager.h index 55d73d79..6d42c7fc 100644 --- a/LogManager.h +++ b/LogManager.h @@ -27,7 +27,7 @@ struct LogMessage unsigned int level; const char* filename; int line; - clock_t counted_second; + std::chrono::duration counted_second; // int timestamp or float time_offset? TBD }; typedef std::shared_ptr PLogMessage; @@ -60,7 +60,7 @@ private: unsigned int verbosity = LL_WARNING; //Clock from LogManager creation - clock_t base_clock; + std::chrono::time_point base_clock; // A non-guarded append() void _append(const char* filename, int line, unsigned int level, const char* fmt, va_list va);