diff --git a/echrono/Clock.hpp b/echrono/Clock.hpp index e34f55b..ac4a263 100644 --- a/echrono/Clock.hpp +++ b/echrono/Clock.hpp @@ -52,3 +52,5 @@ namespace echrono { std::ostream& operator <<(std::ostream& _os, const echrono::Clock& _obj); } + +#include diff --git a/echrono/Duration.cpp b/echrono/Duration.cpp index 74efeaa..a6f534d 100644 --- a/echrono/Duration.cpp +++ b/echrono/Duration.cpp @@ -74,8 +74,8 @@ bool echrono::Duration::operator>= (const echrono::Duration& _obj) const { return m_data >= _obj.m_data; } -float echrono::Duration::toSeconds() const { - return float(double(m_data.count()) * 0.000000001); +double echrono::Duration::toSeconds() const { + return double(m_data.count()) * 0.000000001; } const echrono::Duration& echrono::Duration::operator/= (float _value) { diff --git a/echrono/Duration.hpp b/echrono/Duration.hpp index 63d1316..e4629a3 100644 --- a/echrono/Duration.hpp +++ b/echrono/Duration.hpp @@ -51,7 +51,7 @@ namespace echrono { Duration operator++(int _unused); Duration& operator--(); Duration operator--(int _unused); - float toSeconds() const; + double toSeconds() const; void reset(); }; std::ostream& operator <<(std::ostream& _os, const echrono::Duration& _obj); diff --git a/echrono/Steady.hpp b/echrono/Steady.hpp index d7c9e07..352b73e 100644 --- a/echrono/Steady.hpp +++ b/echrono/Steady.hpp @@ -50,3 +50,6 @@ namespace echrono { std::ostream& operator <<(std::ostream& _os, const echrono::Steady& _obj); } + +#include + diff --git a/echrono/Time.cpp b/echrono/Time.cpp index fcd3971..4f81261 100644 --- a/echrono/Time.cpp +++ b/echrono/Time.cpp @@ -125,6 +125,7 @@ int64_t echrono::Time::count() { } std::ostream& echrono::operator <<(std::ostream& _os, const echrono::Time& _obj) { + /* std::chrono::nanoseconds ns = std::chrono::duration_cast(_obj.get().time_since_epoch()); int64_t totalSecond = ns.count()/1000000000; int64_t millisecond = (ns.count()%1000000000)/1000000; @@ -135,7 +136,7 @@ std::ostream& echrono::operator <<(std::ostream& _os, const echrono::Time& _obj) int32_t minute = (totalSecond/60)%60; int32_t hour = (totalSecond/3600)%24; int32_t day = (totalSecond/(24*3600))%365; - int32_t year = totalSecond/(24*3600*365); + int32_t year = totalSecond/(24*3600*365) + 1970; bool start = false; if (year != 0) { start = true; @@ -166,6 +167,9 @@ std::ostream& echrono::operator <<(std::ostream& _os, const echrono::Time& _obj) _os << microsecond << "us "; } _os << nanosecond << "ns "; + */ + std::time_t now_c = std::chrono::system_clock::to_time_t(_obj.get()); + _os << std::put_time(std::localtime(&now_c), "%F %T"); return _os; } diff --git a/echrono/Time.hpp b/echrono/Time.hpp index 763d910..43ccbbd 100644 --- a/echrono/Time.hpp +++ b/echrono/Time.hpp @@ -53,3 +53,4 @@ namespace echrono { std::ostream& operator <<(std::ostream& _os, const echrono::Time& _obj); } +#include