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

LabVIEW专栏十、工厂模式

目录

  • 一、工厂模式
    • 1.1、创建仪器管理类
    • 1.2、初始化
    • 1.3、方法
      • 1.3.1、set devices
      • 1.3.2、index to device
    • 1.4、释放资源
  • 二、测试管理类
    • 2.1、界面
    • 2.2、程序框图
      • 2.2.1、初始化
      • 2.2.2、索引仪器

该章介绍一种设计模式"工厂模式",新建一个仪器管理类,用于管理所有仪器,负责仪器的"增删改查"。

一、工厂模式

新增一个仪器管理类来充当"工厂",对现有的仪器进行管理。界面上需要可以新增,删除仪器,并可以显示仪器的参数界面,进行参数修改。

1.1、创建仪器管理类

创建一个仪器管理类,命名为device manager,默认继承LabVIEW对象。
在这里插入图片描述
里面需要包含所有实际的仪器类,其中包括网口类network device和串口类serial device,这两个都是仪器类device的子类,所以只需要在仪器管理类内包含仪器类的数组,如下图:
在这里插入图片描述
由于需要在后续可能会更改仪器类的参数,所以改为队列来使用,如下图:
在这里插入图片描述

1.2、初始化

主要工作是初始化一个尺寸为1的仪器类数组队列,新建一个静态方法create.vi,如下图:
在这里插入图片描述

1.3、方法

需要新建一系列静态方法,主要是操作其包含的仪器类,因为真正实现具体功能的是具体的仪器类

1.3.1、set devices

设置仪器类数组,初始化后使用
在这里插入图片描述

1.3.2、index to device

根据索引获取仪器
在这里插入图片描述

1.4、释放资源

先释放其包含的仪器类,再释放自身队列
在这里插入图片描述

二、测试管理类

2.1、界面

放置两个按钮,分别用于打开两种仪器的窗口
在这里插入图片描述

2.2、程序框图

2.2.1、初始化

管理类初始化后,调用set devices把初始化完成后的仪器类输入到管理类的devices队列中
在这里插入图片描述

2.2.2、索引仪器

在事件结构中,在"网口窗口值改变"中,索引第一个仪器,也就是network device,并调用window.vi,会弹出网口类的窗口
在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/469472.html

相关文章:

  • Midjourney 应用:框架总结
  • ubuntu开机启动服务
  • 接口开发完后,个人对于接下来接口优化的一些思考
  • 小程序26-事件绑定和事件对象
  • Android 性能优化:内存优化(实践篇)
  • C++ static关键字(八股总结)
  • Python的各种各样基础
  • IDEA 撤销 merge 操作(详解)
  • 安装和配置MySQL教程
  • 科研绘图系列:R语言单细胞数据常见的可视化图形
  • [jsoncpp]JSON序列化与反序列化
  • 基于 Python Django 的社区爱心养老系统
  • 位置编码--RoPE
  • 单细胞组学大模型(7)--- GenePT,一个可以在本地部署和使用的单细胞转录组大模型
  • 【设计模式-1】软件设计模式概述
  • k8s修改存储目录-介绍
  • Docker 安装Elasticsearch搜索引擎 搜索优化 词库挂载 拼音分词 插件安装
  • Linux 防火墙:守护系统安全的坚固防线
  • 今日头条ip属地根据什么显示?不准确怎么办
  • 渗透测试--Web基础漏洞利用技巧
  • 浅谈棋牌游戏开发流程七:反外挂与安全体系——守护游戏公平与玩家体验
  • C# 设计模式(行为型模式):解释器模式
  • ✅binlog、redolog和undolog区别?
  • 深入理解 WebSocket:实时通信的基础
  • 鸿蒙应用开发(2)
  • Java字符编码与正则表达式深度解析