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,会弹出网口类的窗口