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

logger.cpp 851 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include "svl/util/logger.h"
  2. #include <mutex> /**< std::mutex */
  3. namespace svl {
  4. namespace util {
  5. static const char *_getLogLevelString(Logger::LogLevel level)
  6. {
  7. switch (level)
  8. {
  9. case Logger::LogLevel::Verbose:
  10. return "[V]";
  11. case Logger::LogLevel::Info:
  12. return "[I]";
  13. case Logger::LogLevel::Debug:
  14. return "[D]";
  15. case Logger::LogLevel::Warning:
  16. return "[W]";
  17. case Logger::LogLevel::Error:
  18. return "[E]";
  19. default:
  20. return "";
  21. }
  22. }
  23. static std::mutex gMutex;
  24. LogStream::LogStream(svl::util::Logger::LogLevel level)
  25. {
  26. gMutex.lock();
  27. std::cout << _getLogLevelString(level) << " ";
  28. }
  29. LogStream::~LogStream()
  30. {
  31. std::cout << std::endl;
  32. gMutex.unlock();
  33. }
  34. std::ostream &LogStream::stream()
  35. {
  36. return std::cout;
  37. }
  38. } // namespace util
  39. } // namespace svl