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
"
14
NEFORCE_BEGIN_NAMESPACE__
15
21
29
class
NEFORCE_API
log_sink
{
30
protected
:
31
unique_ptr<log_formatter>
formatter_
;
32
33
public
:
34
virtual
~log_sink
() =
default
;
35
42
virtual
void
log
(
const
log_event
& event) = 0;
43
49
virtual
void
flush
() = 0;
50
57
void
set_formatter
(
unique_ptr<log_formatter>
formatter
);
58
};
59
60
68
class
NEFORCE_API
console_sink
final :
public
log_sink
{
69
private
:
77
static
string
default_format(
const
log_event
& ev);
78
79
public
:
86
void
log
(
const
log_event
& event)
override
;
87
91
void
flush
()
override
;
92
};
93
// Logging
95
96
NEFORCE_END_NAMESPACE__
97
#endif
// NEFORCE_LOGGING_LOG_SINK_HPP__
console_sink
控制台输出目标
定义
log_sink.hpp:68
console_sink::flush
void flush() override
刷新控制台缓冲区
console_sink::log
void log(const log_event &event) override
输出日志到控制台
log_sink
日志输出目标基类
定义
log_sink.hpp:29
log_sink::log
virtual void log(const log_event &event)=0
输出日志事件
log_sink::set_formatter
void set_formatter(unique_ptr< log_formatter > formatter)
设置格式化器
log_sink::formatter_
unique_ptr< log_formatter > formatter_
日志格式化器
定义
log_sink.hpp:31
log_sink::flush
virtual void flush()=0
刷新缓冲区
unique_ptr
独占智能指针
定义
unique_ptr.hpp:212
log_event.hpp
日志事件定义
log_formatter.hpp
日志格式化器
formatter
格式化器主模板
定义
format.hpp:368
log_event
日志事件结构体
定义
log_event.hpp:70
include
NeForce
logging
log_sink.hpp
制作者
1.16.0