--- version: 0.1.0 last_updated: 2024-01-20 status: draft --- # API 参考索引 本文档提供 MIRAI 框架所有公共 API 的快速索引,帮助开发者快速查找所需接口。 ## 核心类索引 ### 基础层 (Core) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `object` | `mirai` | 所有可共享对象的基类 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-42) | | `widget_base` | `mirai` | UI 控件的抽象基类 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-43) | | `spinlock` | `mirai::threading` | 自旋锁同步原语 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-11) | | `thread_pool` | `mirai::threading` | 线程池管理器 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-14) | | `task_graph` | `mirai::threading` | 任务依赖图 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-15) | ### 响应式系统 (Reactive) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `signal` | `mirai::reactive` | 可观察值 | [05-phase2-reactive-system.md](./05-phase2-reactive-system.md#任务-31) | | `computed` | `mirai::reactive` | 自动计算值 | [05-phase2-reactive-system.md](./05-phase2-reactive-system.md#任务-32) | | `effect` | `mirai::reactive` | 副作用函数 | [05-phase2-reactive-system.md](./05-phase2-reactive-system.md#任务-33) | | `dirty_tracker` | `mirai::reactive` | 脏标记追踪器 | [05-phase2-reactive-system.md](./05-phase2-reactive-system.md#任务-34) | ### 渲染系统 (Render) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `render_context` | `mirai::render` | 渲染上下文 | [03-phase1a-rendering-core.md](./03-phase1a-rendering-core.md) | | `pipeline` | `mirai::render` | 渲染管线 | [03-phase1a-rendering-core.md](./03-phase1a-rendering-core.md) | | `batch` | `mirai::render` | 批处理器 | [03-phase1a-rendering-core.md](./03-phase1a-rendering-core.md) | | `shader` | `mirai::shader` | 着色器封装 | [03-phase1a-rendering-core.md](./03-phase1a-rendering-core.md) | ### 窗口系统 (Window) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `window` | `mirai::window` | 窗口抽象接口 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-92) | | `window_manager` | `mirai::window` | 窗口管理器 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-94) | | `dpi_scale` | `mirai::window` | DPI 缩放因子 | [02-phase0-infrastructure.md](./02-phase0-infrastructure.md#任务-91) | ### 文本系统 (Text) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `font` | `mirai::text` | 字体资源 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-71) | | `text_shaper` | `mirai::text` | 文本整形器 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-72) | | `glyph_cache` | `mirai::text` | 字形缓存 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-74) | | `text_layout` | `mirai::text` | 文本布局 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-75) | ### 输入系统 (Input) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `input_manager` | `mirai::input` | 输入管理器 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-82) | | `gesture_manager` | `mirai::input` | 手势识别器 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-83) | | `focus_manager` | `mirai::input` | 焦点管理器 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-84) | | `ime_manager` | `mirai::input` | IME 管理器 | [04-phase1b-text-input.md](./04-phase1b-text-input.md#任务-85) | ### UI 控件系统 (UI) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `widget` | `mirai::ui` | 控件基类 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-111) | | `container` | `mirai::ui` | 容器控件 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-113) | | `label` | `mirai::ui` | 文本标签 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-114) | | `button` | `mirai::ui` | 按钮 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-115) | | `text_input` | `mirai::ui` | 文本输入 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-116) | ### 布局控件 (Layout) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `h_stack` | `mirai::ui` | 水平布局 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-1113) | | `v_stack` | `mirai::ui` | 垂直布局 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-1114) | | `z_stack` | `mirai::ui` | 层叠布局 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-1115) | | `spacer` | `mirai::ui` | 弹性空间 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-1116) | | `overlay` | `mirai::ui` | 覆盖层 | [06-phase3-widget-system.md](./06-phase3-widget-system.md#任务-1117) | ### 调试系统 (Debug) | 类名 | 命名空间 | 说明 | 文档位置 | |------|----------|------|----------| | `perf_monitor` | `mirai::debug` | 性能监控器 | [07-phase4-debugger.md](./07-phase4-debugger.md#任务-121) | | `widget_tree_view` | `mirai::debug` | 控件树视图 | [07-phase4-debugger.md](./07-phase4-debugger.md#任务-122) | | `inspector` | `mirai::debug` | 属性检查器 | [07-phase4-debugger.md](./07-phase4-debugger.md#任务-123) | | `debug_overlay` | `mirai::debug` | 调试覆盖层 | [07-phase4-debugger.md](./07-phase4-debugger.md#任务-123) | --- ## 函数索引 ### 工厂函数 | 函数 | 命名空间 | 说明 | |------|----------|------| | `make_object(args...)` | `mirai` | 创建对象并调用 on_created | | `make_weak(args...)` | `mirai` | 创建弱引用 | | `global_thread_pool()` | `mirai::threading` | 获取全局线程池实例 | | `window::create(config)` | `mirai::window` | 创建窗口 | | `label(text)` | `mirai::ui` | 创建标签 | | `button(text)` | `mirai::ui` | 创建按钮 | | `h_stack()` | `mirai::ui` | 创建水平布局 | | `v_stack()` | `mirai::ui` | 创建垂直布局 | | `z_stack()` | `mirai::ui` | 创建层叠布局 | ### 全局函数 | 函数 | 命名空间 | 说明 | |------|----------|------| | `batch(fn)` | `mirai::reactive` | 批量更新 | | `application::create()` | `mirai` | 创建应用实例 | --- ## 宏定义 | 宏 | 说明 | |----|------| | `MIRAI_NONCOPYABLE(class)` | 禁用拷贝构造和赋值 | | `MIRAI_NONMOVABLE(class)` | 禁用移动构造和赋值 | | `MIRAI_DEFAULT_MOVABLE(class)` | 启用默认移动操作 | --- ## 枚举索引 ### 任务优先级 | 枚举值 | 说明 | |--------|------| | `task_priority::low` | 低优先级 | | `task_priority::normal` | 正常优先级 | | `task_priority::high` | 高优先级 | | `task_priority::critical` | 关键优先级 | ### 文本对齐 | 枚举值 | 说明 | |--------|------| | `text_align::left` | 左对齐 | | `text_align::center` | 居中 | | `text_align::right` | 右对齐 | | `text_align::justify` | 两端对齐 | ### 堆叠对齐 | 枚举值 | 说明 | |--------|------| | `stack_alignment::start` | 起点对齐 | | `stack_alignment::center` | 居中对齐 | | `stack_alignment::end` | 终点对齐 | | `stack_alignment::stretch` | 拉伸对齐 | --- ## 结构体索引 ### 配置结构 | 结构体 | 命名空间 | 说明 | |--------|----------|------| | `window_config` | `mirai::window` | 窗口创建配置 | | `text_style` | `mirai::text` | 文本样式 | | `text_layout_config` | `mirai::text` | 文本布局配置 | | `sdf_config` | `mirai::text` | SDF 生成配置 | | `layout_style` | `mirai::ui` | 布局样式 | | `shader_parameter` | `mirai::ui` | 着色器参数 | --- ## 类型别名 | 别名 | 原始类型 | 说明 | |------|----------|------| | `widget::ptr` | `std::shared_ptr` | 控件共享指针 | | `widget::weak_ptr` | `std::weak_ptr` | 控件弱指针 | | `signal::ptr` | `std::shared_ptr>` | 信号共享指针 | --- *本文档随 API 演进持续更新*