Build tool
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

logger.cc 653B

12345678910111213141516171819202122232425262728293031323334353637
  1. #include "logger.h"
  2. #include <chrono>
  3. namespace logger {
  4. std::mutex mut;
  5. Timer::Timer() {
  6. restart();
  7. }
  8. void Timer::restart() {
  9. std::chrono::duration<double>(std::chrono::steady_clock::now()
  10. .time_since_epoch()).count();
  11. }
  12. void Timer::print(std::ostream &os) const {
  13. double now = std::chrono::duration<double>(std::chrono::steady_clock::now()
  14. .time_since_epoch()).count();
  15. int deltaMs = (int)((now - start_) * 1000);
  16. int delta = deltaMs;
  17. if (deltaMs > 60 * 1000) {
  18. os << (deltaMs / (60 * 1000)) << "m ";
  19. delta %= 60 * 1000;
  20. }
  21. if (deltaMs > 1000) {
  22. os << (deltaMs / 1000) << "s ";
  23. delta %= 1000;
  24. }
  25. os << delta << "ms";
  26. }
  27. }