task_auto_execute_plan/README.md

85 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2026-04-27 03:50:37 +00:00
# FZKJ 作战任务管理与方案驱动系统
## 版本
**版本号**1.6.0
**对应文档**《软件需求规格说明书_V1.6.docx》
## 功能覆盖
| 编号 | 功能名称 | 说明 |
|------|----------|------|
| SRS-FZKJ_F-001 | 任务管理与事件处理 | 战场事件接收、校验、任务模板匹配与生成 |
| SRS-FZKJ_F-002 | 战斗方案管理可视化 | 方案列表、偏好排序、多方案对比 |
| SRS-FZKJ_F-003 | 方案驱动与状态监控 | 方案分发、执行状态监控、异常告警 |
| SRS-FZKJ_F-004 | 共用态势与地图展示 | GIS地图加载、态势图层叠加、距离量算、网格控制 |
| SRS-FZKJ_F-005 | 数据中转与存储管理 | 数据转发、缓存持久化、缓存清空 |
| SRS-FZKJ_F-006 | 系统设置与想定切换 | 算法参数、模式切换、想定加载、网络配置 |
## 工程结构
```
codegen-runs/codegen_010467c2aac04bad984d26ac6d3f8915/
├── CMakeLists.txt # CMake 构建配置C++17
├── README.md # 本说明文件
├── include/
│ └── app.hpp # 头文件数据结构定义、App 类声明
├── src/
│ ├── app.cpp # 实现文件:所有功能模块实现
│ └── main.cpp # 主程序入口及功能演示
└── tests/
└── basic_test.cpp # 基础单元测试(标准库 assert
```
## 核心数据结构
- **EventPayload**:定长 256 字节战场事件数据包(二进制、字节对齐)
- **Task**:作战任务实体
- **BattleSolution**:战斗方案实体(支持集中式/分布式标记)
- **ExecutionUnit**:执行单元及其状态
- **GeoPoint / MapViewState / MeasureResult**GIS 相关数据类型
- **SystemConfig**:系统配置(算法、模式、网络、想定)
## 编译与运行
### 前置条件
- CMake ≥ 3.14
- 支持 C++17 的编译器GCC 7+、Clang 5+、MSVC 2017+
### 编译步骤
```bash
# 1. 进入工程目录
cd codegen-runs/codegen_010467c2aac04bad984d26ac6d3f8915
# 2. 创建构建目录
mkdir build && cd build
# 3. 生成构建系统
cmake ..
# 4. 编译
cmake --build .
# 5. 运行主程序
./fzkj_app # Linux/macOS
# 或
fzkj_app.exe # Windows
# 6. 运行测试
./fzkj_test # Linux/macOS
# 或
fzkj_test.exe # Windows
```
### Windows MSVC 注意事项
若使用 Visual Studio 编译CMake 已自动添加 `/utf-8` 编译选项以支持中文显示。
### 跨平台支持
- 支持 Windows 与中标麒麟操作系统
- 无外部第三方依赖
- 标准 C++17 实现,可移植性良好