NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
log_sink.hpp
浏览该文件的文档.
1#ifndef NEFORCE_LOGGING_LOG_SINK_HPP__
2#define NEFORCE_LOGGING_LOG_SINK_HPP__
3
11
12#include "log_event.hpp"
13#include "log_formatter.hpp"
14NEFORCE_BEGIN_NAMESPACE__
15
21
29class NEFORCE_API log_sink {
30protected:
32
33public:
34 virtual ~log_sink() = default;
35
42 virtual void log(const log_event& event) = 0;
43
49 virtual void flush() = 0;
50
58};
59
60
68class NEFORCE_API console_sink final : public log_sink {
69private:
77 static string default_format(const log_event& ev);
78
79public:
86 void log(const log_event& event) override;
87
91 void flush() override;
92};
93 // Logging
95
96NEFORCE_END_NAMESPACE__
97#endif // NEFORCE_LOGGING_LOG_SINK_HPP__
控制台输出目标
void flush() override
刷新控制台缓冲区
void log(const log_event &event) override
输出日志到控制台
日志输出目标基类
virtual void log(const log_event &event)=0
输出日志事件
void set_formatter(unique_ptr< log_formatter > formatter)
设置格式化器
unique_ptr< log_formatter > formatter_
日志格式化器
virtual void flush()=0
刷新缓冲区
独占智能指针
日志事件定义
日志格式化器
格式化器主模板
日志事件结构体