docs: update core and debug API docs

This commit is contained in:
2026-03-20 02:35:07 +08:00
parent 0c073db4e8
commit e165dbea1c
73 changed files with 743 additions and 391 deletions

View File

@@ -1,21 +1,50 @@
# ConsoleLogSink::ConsoleLogSink
# ConsoleLogSink
**命名空间**: `XCEngine::Debug`
**类型**: `class`
**头文件**: `XCEngine/Debug/ConsoleLogSink.h`
**描述**: 控制台日志输出目标,将日志输出到标准输出流。
## 概述
`ConsoleLogSink` 是日志系统的控制台输出实现。它将日志条目输出到标准输出流stdout支持彩色输出和日志级别过滤。该类继承自 `ILogSink` 接口,可通过 `Logger::AddSink` 添加到日志系统。
设计用于开发调试场景,默认启用彩色输出便于在终端中区分不同日志级别。
## 公共方法
| 方法 | 描述 |
|------|------|
| [`ConsoleLogSink()`](constructor.md) | 构造函数 |
| [`~ConsoleLogSink`](destructor.md) | 析构函数 |
| [`Log`](log.md) | 输出日志到控制台 |
| [`Flush`](flush.md) | 刷新输出流 |
| [`SetColorOutput`](setcoloroutput.md) | 设置彩色输出 |
| [`SetMinimumLevel`](setminimumlevel.md) | 设置最小日志级别 |
## 使用示例
```cpp
ConsoleLogSink()
```
#include <XCEngine/Debug/ConsoleLogSink.h>
默认构造函数。创建一个 `ConsoleLogSink` 实例,默认启用彩色输出,最小日志级别为 `Verbose`
**复杂度:** O(1)
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
sink->SetColorOutput(true);
sink->SetMinimumLevel(XCEngine::Debug::LogLevel::Warning);
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
```
## 构造函数详细
| 属性 | 值 |
|------|-----|
| 默认 `m_colorOutput` | `true` |
| 默认 `m_minimumLevel` | `LogLevel::Verbose` |
## 相关文档
- [ConsoleLogSink 总览](overview.md) - 返回类总览
- [Debug 模块总览](../debug.md) - 返回模块总览
- [Logger](../logger/logger.md) - 日志记录器
- [ILogSink](../ilogsink/ilogsink.md) - 日志输出接口

View File

@@ -0,0 +1,27 @@
# ConsoleLogSink::ConsoleLogSink
```cpp
ConsoleLogSink()
```
默认构造函数。创建一个 `ConsoleLogSink` 实例。
**线程安全:**
**复杂度:** O(1)
**返回值:**
**示例:**
```cpp
using namespace XCEngine::Debug;
auto sink = std::make_unique<ConsoleLogSink>();
Logger::Get().AddSink(std::move(sink));
```
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览
- [Debug 模块总览](../debug.md) - 返回模块总览

View File

@@ -6,8 +6,20 @@
析构函数。销毁 `ConsoleLogSink` 实例,释放相关资源。
**线程安全:** ✅
**复杂度:** O(1)
**返回值:** 无
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
// sink 自动销毁
```
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览
- [Debug 模块总览](../debug.md) - 返回模块总览

View File

@@ -6,8 +6,12 @@ void Flush() override
刷新标准输出流stdout调用 `fflush(stdout)` 确保所有待输出的日志内容立即显示在控制台上。
**线程安全:**
**复杂度:** O(1)
**返回值:**
**示例:**
```cpp

View File

@@ -4,13 +4,30 @@
void Log(const LogEntry& entry) override
```
将日志输出到控制台。根据 `LogEntry` 的级别和分类格式化输出内容,并根据 `m_colorOutput` 设置决定是否使用 Windows 控制台颜色 API。如果日志级别低于设置的最小级别则不输出
将日志输出到控制台。输出格式为 `[LEVEL] [CATEGORY] message\n`
根据 `m_colorOutput` 设置决定是否使用 Windows 控制台颜色 API`_WIN32` 平台)。各日志级别颜色映射:
| 级别 | 颜色 |
|------|------|
| Verbose | 灰色(低亮度) |
| Debug | 青色(蓝+绿) |
| Info | 绿色 |
| Warning | 黄色(红+绿) |
| Error | 红色(高亮度) |
| Fatal | 洋红色(红+蓝+高亮度) |
如果日志级别低于设置的最小级别,则不输出。
**参数:**
- `entry` - 日志条目
- `entry` - 日志条目(参见 [LogEntry](../logentry/logentry.md)
**线程安全:**
**复杂度:** O(1)
**返回值:**
**示例:**
```cpp

View File

@@ -1,41 +0,0 @@
# ConsoleLogSink
**命名空间**: `XCEngine::Debug`
**类型**: `class`
**头文件**: `XCEngine/Debug/ConsoleLogSink.h`
**描述**: 控制台日志输出目标,将日志输出到标准输出流。
## 概述
`ConsoleLogSink` 是日志系统的控制台输出实现。它将日志条目输出到标准输出流stdout支持彩色输出和日志级别过滤。
## 公共方法
| 方法 | 描述 |
|------|------|
| `ConsoleLogSink()` | [构造函数](consolelogsink.md) |
| `~ConsoleLogSink()` | [析构函数](~consolelogsink.md) |
| `void Log(const LogEntry& entry)` | [输出日志到控制台](log.md) |
| `void Flush()` | [刷新输出流](flush.md) |
| `void SetColorOutput(bool enable)` | [设置彩色输出](setcoloroutput.md) |
| `void SetMinimumLevel(LogLevel level)` | [设置最小日志级别](setminimumlevel.md) |
## 使用示例
```cpp
#include <XCEngine/Debug/ConsoleLogSink.h>
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
sink->SetColorOutput(true);
sink->SetMinimumLevel(XCEngine::Debug::LogLevel::Warning);
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
```
## 相关文档
- [Debug 模块总览](../debug.md) - 返回模块总览
- [Logger](../logger/logger.md) - 日志记录器
- [ILogSink](../ilogsink/ilogsink.md) - 日志输出接口

View File

@@ -4,13 +4,17 @@
void SetColorOutput(bool enable)
```
启用或禁用控制台彩色输出。启用后,不同日志级别使用 Windows 控制台颜色 API 输出,便于快速区分日志类型。
启用或禁用控制台彩色输出。启用后,不同日志级别使用 Windows 控制台颜色 API 输出(仅 `_WIN32` 平台有效,其他平台此设置无效果),便于快速区分日志类型。
**参数:**
- `enable` - true 启用彩色输出false 禁用
**线程安全:**
**复杂度:** O(1)
**返回值:**
**示例:**
```cpp

View File

@@ -4,13 +4,17 @@
void SetMinimumLevel(LogLevel level)
```
设置该 Sink 的最小输出级别。此设置仅影响当前 Sink不会影响 Logger 的全局级别过滤。
设置该 Sink 的最小输出级别。此设置仅影响当前 Sink不会影响 Logger 的全局级别过滤。默认值为 `LogLevel::Verbose`,即输出所有级别。
**参数:**
- `level` - 最小日志级别
**线程安全:**
**复杂度:** O(1)
**返回值:**
**示例:**
```cpp