3.2 KiB
3.2 KiB
任务规划软件(TPS)— C++ 核心处理单元
概述
任务规划软件(Task Planning System, TPS)是战场任务规划系统的核心处理单元,实现从事件感知到任务生成、计划管理、方案分发与状态监控的闭环管理。本工程实现了 TPS 的核心数据模型与业务逻辑。
工程结构
.
├── CMakeLists.txt # CMake 构建配置
├── README.md # 本文件
├── include/
│ ├── app.hpp # 核心数据结构(数据库表模型)
│ ├── event_handler.hpp # 事件接收与处理模块
│ ├── template_manager.hpp # 模板管理模块
│ ├── plan_manager.hpp # 计划管理模块
│ └── distribution_monitor.hpp # 方案分发与状态监控模块
├── src/
│ ├── main.cpp # 命令行入口(演示流程)
│ ├── event_handler.cpp # 事件处理实现
│ ├── template_manager.cpp # 模板管理实现
│ ├── plan_manager.cpp # 计划管理实现
│ └── distribution_monitor.cpp # 分发监控实现
└── tests/
└── basic_test.cpp # 单元测试(标准库 assert)
需求覆盖
| CSCI需求标识 | 需求名称 | 模块/函数 |
|---|---|---|
| SRS-F-01-001 | 接收临机事件和规划事件 | EventHandler::receiveEvent() |
| SRS-F-01-002 | 事件数据过滤转化封装 | EventHandler::processEvent() |
| SRS-F-02-001 | 接收待处理事件列表 | EventHandler::getPendingEvents() |
| SRS-F-02-004 | 生成作战任务并送交处理 | PlanManager::createPlan() |
| SRS-F-03-001 | 任务模板先验知识库版本选择 | TemplateManager::getConfig() |
| SRS-F-03-002 | 先验知识库配置调整 | TemplateManager::updateConfig() |
| SRS-F-04-001 | 接收推送的任务模板集合数据 | TemplateManager::receiveTemplates() |
| SRS-F-04-005 | 人环模式下用户选择任务模板 | TemplateManager::selectTemplate() |
| SRS-F-04-006 | 自主执行模式下任务模板自动选择提示 | TemplateManager::autoSelectTemplate() |
| SRS-F-05-001 | 集中式计划管理与偏好排序 | PlanManager::sortPlans() |
| SRS-F-05-002 | 计划详情可视化与HITL通知 | PlanManager::notifyHITL() |
| SRS-F-05-003 | 计划重配置操作与可视化 | PlanManager::reconfigurePlan() |
| SRS-F-05-004 | 分布式计划管理与算法处理 | PlanManager::mergeAndCheckConsistency() |
| SRS-F-06-001 | 方案驱动分发与状态响应 | DistributionMonitor::distributePlan() / receiveAck() |
| SRS-F-06-002 | 驱动状态监控与异常信息展示 | DistributionMonitor::receiveTelemetry() / triggerAlarm() |
编译与运行
前置条件
- CMake ≥ 3.14
- C++17 兼容的编译器(GCC 8+, Clang 10+, MSVC 2019+)
构建
cd codegen-runs/codegen_af1ed1d727e14f1cb7e99c1a9f65e3f6
mkdir build && cd build
cmake ..
cmake --build .
运行主程序
# Linux/macOS
./tps
# Windows
tps.exe
运行单元测试
# Linux/macOS
./tps_test
# Windows
tps_test.exe