appender.h 437 B

1234567891011121314151617181920
  1. #pragma once
  2. #include "logger/logger_fwd.h"
  3. namespace logging {
  4. class layout;
  5. struct appender {
  6. appender(level min = level::debug) : min_log_level(min) {}
  7. virtual ~appender() = default;
  8. virtual void write(logpacket const & pkt) = 0;
  9. virtual void flush() = 0;
  10. bool should_log(level ll) const {
  11. return ll >= min_log_level;
  12. }
  13. std::shared_ptr<layout> layout;
  14. level min_log_level;
  15. };
  16. }