85 lines
2.6 KiB
Markdown
85 lines
2.6 KiB
Markdown
# 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 实现,可移植性良好
|