Expand description
运行时装配:工厂表(ui 工厂注册)、宿主观察线程(关窗→close_all)、 进程主入口(eframe 主线程 + 宿主观察线程)、启动阶段机(0.9.5)。
线程形貌(S1b 双线程纪律):
- 主线程:eframe run_native(App 只读
UiShared); - 观察线程:sleep 轮询
UiShared::is_stop→engine.close_all; - 等价 headless 形貌见 ek-station bin(不带 ui 工厂)。
阶段机(0.9.5,用户裁定「先配置组件、运行后才出主界面;运行后装配只可看」):
Setup:只画组件配置面(勾选/装配/参数面/档案包/导出启动清单),主界面不画;Running:主界面(render_body)登场;装配面转只读(锁旗在界面层,底层零写死);- 锁只在启动全成功后置位(有壳没起来 = 不锁,运维面留修路);
- launcher 路
auto_boot = true= 装配+启动在开窗前走完(ready 标记协议不破)。
Structs§
- RunOpts
- 运行选项(S1c ready 标记 + S4 dm real_time 装配参数;ek-ui 零配置口径, 无任何配置文件输入 —— 结构只由 StationConfig 清单决定)。
- Stage
App - 启动阶段机 App(桌面 = ekapp 与 ek-ui 主程序共用的唯一窗口面; 0.9.5 收编:原 ekapp bin 自带的 DesktopApp 副本已删,单源在此)。
Enums§
- Stage
- 阶段机两相(0.9.5)。
Functions§
- run_
desktop - 桌面产品入口(ekapp 无参数路,0.9.5 起单源在此):从配置相起步 —— 开窗不装配不启动(用户裁定「先配置组件、运行后才出主界面」); 观察线程在开窗即挂(Setup 关窗也走 close_all 收尾,U-S3b 口径)。
- run_
station_ ui - 进程主入口:装配(dm/oms/ctp/ui 按清单)→ start → 就绪标记(可选) → eframe 主循环 → 观察线程收场。
- spawn_
host_ watcher - 宿主观察线程:窗口不复用的引擎在这里按 stop 位收场(close_all join)。
- ui_
kinds - ek-station 缺省工厂表(dm/oms/ctp;0.1.12 起 sim 已退场)+
ui工厂 + rt-on 的 dm 工厂(S4:UI 宿主观测面需要eBarUpdate.实时门; ek-station headless 保持 rt-off 缺省不动 —— 两宿主的 dm 配置差异在各自 工厂表,互不影响)。