logger_impl.h 416 B

1234567891011121314151617181920
  1. #pragma once
  2. #include "logger_fwd.h"
  3. namespace logging {
  4. class logger_impl {
  5. public:
  6. virtual ~logger_impl() = default;
  7. virtual void write(logpacket const & pkt) = 0;
  8. virtual void write(log_level level, std::string const& msg) = 0;
  9. virtual void flush() = 0;
  10. bool should_log(log_level ll) const {
  11. return ll >= min_log_level;
  12. }
  13. protected:
  14. log_level min_log_level;
  15. };
  16. }