当前位置: 首页 > news >正文

传奇世界官网电脑版北京谷歌优化

传奇世界官网电脑版,北京谷歌优化,校园网站建设毕业论文,重庆建设管理信息网站[框架设计之道&#xff08;二&#xff09;]设备、任务设置及业务流程 说明 此文档是开发中对设备设置项的管理。因为硬件在使用的过程中涉及大量设置项&#xff0c;因此需要单独开一篇文档说明设备的设置和任务的设置。 一、设备设置 1.基础接口 /// <summary> /// 配置…

[框架设计之道(二)]设备、任务设置及业务流程


说明
此文档是开发中对设备设置项的管理。因为硬件在使用的过程中涉及大量设置项,因此需要单独开一篇文档说明设备的设置和任务的设置。

一、设备设置
1.基础接口

/// <summary>
/// 配置文件管理模块
/// </summary>
class TSG_ConfigHelper : public TSG_Framework {
public:virtual bool Init(const QString& path, const QList<QString>& list_device_names) = 0;virtual bool Init(const QString& path) = 0;virtual QList<QString> getConfigFiles() = 0;virtual QJsonObject getConfigContain(const QString& config_name, const QString& device_name) = 0;virtual bool setConfigContain(const QString& config_name, const QString& contains, const QString& device_name) = 0;virtual QList<QString> getDeviceNames() = 0;

对于配置文件管理模块,我不希望提供过多和过花哨的接口。事实上,各式各样的配置文件管理模块实际上就是修改某个设备下的某个json文件。一个ConfigHelper需要包括多个设备,当然了,它实际上是以文件夹为单位进行管理的

每一个设备应该都会有一个init.json和一个DeviceParams.json文件,所以他们是以一个文件夹的形式保存起来的。

如图所示:
在这里插入图片描述

以这样的文件夹形式存放各个设备的参数信息,所有的信息都是以本地文件的形式存放的,所有的文件都需要热取用,因为随时可能会发生中途设备信息修改等等,所以再接口getConfigContain中,需要每次打开文件进行读取,而不是提前读取好了放在本地。
2.基本流程
配置文件管理模块流程大致如下:

image

读取和写入都需要保证可以在热读取下操作。否则每次重新设置或者配置文件可能都需要重新启动软件,会非常不灵活。

其中所有的设置和读取配置文件,只涉及两个功能,也就是所谓的写入和读取文件,仅此而已。

二、任务设置
任务设置模块应该是在主程序的kernel中进行的,每次在gui进行一次配置的时候都需要在主程序的kernel中
1.任务设置
每次任务设置参数涉及很多个方面,但主要的参数包含以下几个方面

1>任务的基本信息:名称、备注
2>需要换算的信息:隧道直径、小车速度、相机曝光时间、图片重复率

实际上,一个任务就只有两个信息是需要主动包含的,一个是基本信息,一个是换算信息。这里我们暂且不聊换算信息。为什么呢,因为这个是需要和后续的设备信息进行联动的,这里的所有基本换算都是来自gui程序或者主程序中本地的换算,所以轮不到设备的控制层去关系。

所以对于控制层来说,唯一需要关心的就是文件存储的路径,以及配置文件存放的路径。

三、业务流程
我们在所有设备的控制层代码中都写好了一套配置流程,那自然在主程序中也得有一套完整的流程。一套完整的流程控制不仅可以使在具体的采集过程中的程序更加可靠,也可以使得面对各种异常情况下能够更加优雅。另外值得一提的是,需要将错误日志系统搭建完善,而不是之前那一套没人看得懂的错误日志。

业务中,我们需要让每一次作业保持以下流程:

image

我需要简单解释一下此图:在全流程中,GUI只是一个人机交互的接口,也就是说GUI并不参与到具体的业务中,也不会做任何计算和任何的业务流程。

所有,注意,是所有的任务,都可以在主程序中完成,即使主程序在开发的过程中并没有提供GUI,只凭借仅有的控制台也应该要能够完成整个采集任务。

其中,设置设备信息和设置任务信息都不是必须的,这里需要提供两套预设,一套是存放在本地文件的default.json文件,另一套是放在代码内部的,基于目前已有的设备执行。

但是这里有问题,值得注意的一点是,扫描仪的并不是提前可以通过扫描获得的,而是只能通过提前设定好ip、sn和key来尝试连接的,所以扫描仪设备和所有的设备都不一样,需要在跳过设备信息之前提前确定扫描仪的信息。

开始采集、暂停采集、停止采集在主程序中比较好获取,因为在控制层中就已经对所有状态做好了声明和控制,只需要按照流程来即可。

最后,停止采集一定是所有控制中级别最高的,不论当前是任何状态,只要发送了停止采集的命令,机器就必须马上停止运转,状态归零,这是很重要的一点。

http://www.dt0577.cn/news/7109.html

相关文章:

  • 虎嗅wordpressseo网络推广优化教程
  • 做网站怎样申请域名如何在其他平台做推广
  • 可以做推广的网站有哪些关键词完整版
  • 用糖做的网站测试自己适不适合做销售
  • 北京建设银行网站首页2022社会热点事件及看法
  • 我贷款网站如何做沈阳seo关键词排名
  • 常用的设计软件有哪些优化网哪个牌子好
  • 网站快照前显示中文怎么做的网站提交收录软件
  • 杭州网站建设费用多少钱网站如何优化排名
  • 没有做防注入的网站如何自己建一个网站
  • 苏州园区两学一做网站南宁企业官网seo
  • 邢台做网站价位网络营销10大平台
  • 兼职做设计什么网站好网络优化工程师工作内容
  • 做go kegg的网站网络营销渠道的特点
  • 龙华网站建设yihekj线上推广怎么做
  • 做网站是用ecs还是虚拟主机青岛 google seo
  • 网络营销产品的整体概念外包seo公司
  • ftp工具下载网站源码教程网站提交入口链接
  • 免费网站建设 百度一下网络营销公司注册找哪家
  • 济南做公司网站需要多少钱怎么样推广最有效最快速
  • 手机网站建设的价格广告sem是什么意思
  • 北京西城区建设局网站百度旗下推广平台有哪些
  • 弓长岭网站建设深圳高端网站制作公司
  • 央企门户网站哪家做的最好windows 优化大师
  • 中国建设机械委员会网站晚上看b站
  • wordpress主题如何开发深圳seo优化方案
  • vshtml5网站开发百度联盟官网登录入口
  • 东莞建站公司速推全网天下首选网上推广专员是什么意思
  • 威海微网站建设北京谷歌seo公司
  • 美国网站加速器四川网络推广推广机构