project-joee-readme
# projectJoee
更新时间 2023-03-29
# 软件整体架构和逻辑
TODO:具体描述
# 整体架构
# 主程序流程图
# 任务数据流
# 功能模块
该项目主要分为主程序模块(包含主界面部分和控制逻辑,配置项相关逻辑),核心功能模块(检测算法实现、采集卡相机控制实现、数据库调用实现、开发工具集、外部插件接口实现、虚拟设备实现等),以及通过接口实现的外部插件功能模块(图标功能插件、串口报警器插件、相机串口控制插件、debug 控制台插件等可扩展插件)
其中主程序模块和核心功能模块(位于 core 目录下),是主程序运行所必须的部分,插件功能模块(位于 plugins 目录下) 是可以根据插件模块文件是否存在动态添加去除的。
# 主程序模块
Windalsa: 主要业务逻辑实现
子类:
-
MainWnd.cs: 主窗体,是程序的主要框架,负责主要业务逻辑和实现外部插件加载
-
Lists.cs: 自定义列表和控件数组
-
Plugins.cs: 实现插件加载和抽象接口调用
-
Utilties.cs: 扩展工具
-
CustomException.cs: 自定义异常
# 核心功能模块
DataBaseHelper:数据库功能
DefectDetection:瑕疵检测功能
Devices:硬件设备连接
LogHelper:日志记录功能
PaddleInference:Paddle 分类推理
VirtualDevices:模拟硬件采集卡设备(开发调试工具)
DefaultValues:定义默认变量和参数 (部分调用,考虑去掉)
PluginInterface:定义插件接口和相关工具实现
# 插件模块,以 Plugin 开头(PluginInterface 除外)
PluginChart:图表功能
PluginSerialDevice:串口报警器功能
PluginStatement:版权声明
PluginDebugConsole:Debug 控制台工具
PluginWndDemo:实现插件载入外部窗口的 Demo,不会被正式使用
# 主程序与插件的交互方式
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 阿伟又在打电动!
评论