Files
FeatherLog/src/featherlog/log_outputter.hpp
T
2026-08-17 09:28:06 +08:00

27 lines
572 B
C++

#ifndef FEATHERLOG_LOG_OUTPUTER_HPP
#define FEATHERLOG_LOG_OUTPUTER_HPP
#include <memory>
#include <string>
#include "log_formatter.hpp"
#include "log_message.hpp"
namespace flog
{
class LogOutputter
{
public:
virtual ~LogOutputter() = default;
std::unique_ptr<LogFormatter> set_formatter(const std::unique_ptr<LogFormatter>& formatter);
std::unique_ptr<LogFormatter>& get_formatter();
virtual void write(const LogMessage& message) = 0;
protected:
std::unique_ptr<LogFormatter> m_logFormatter;
};
}
#endif