表示硬件设备的适当类结构

时间:2011-11-21 12:24:18

标签: c++ hardware class-design

我正在尝试编写一个基本ECG设备的接口。我需要表单来设置设备,发送“记录”消息并保存返回到文件中的ECG数据(以及在屏幕上报告一点)。硬件设备获取发送命令,并通过串行接口返回数据。

我的问题是关于最合适的类结构。

选项1: MainWindow实例化一个 硬件设备对象实时读取ECG信息,创建“ECG文件类对象”并在内部处理Device对象。 录制完成后,MainWindow会删除Device对象,我们就完成了。

选项2: MainWindow实例化 硬件设备对象接收大量数据,然后将该数据维护为可公开访问的数据结构(成员) 然后MainWindow将引用该Device Object数据结构,实例化ECG File类对象本身并将其写入文件。

理想情况下,我想以不同的格式写出数据(例如,指定格式的类?)

很抱歉,如果问题不是那么清楚,我想我会问硬件设备对象是否也适合管理所有自己的数据,或者将其传回主窗口然后自行处理。

我已经选择了第1选项,但它变得很难看,而且我不确定我是否从一开始就错误地设计了这个东西。

赞赏所有/所有观点!

皮特

1 个答案:

答案 0 :(得分:1)

我不太了解Domain,我设计了几个使用设备的系统。我似乎也有一些设备设计。有很多方法可以设计这种东西,但我喜欢为所有设备编写包装器并使用开放,关闭,读取和写入界面。

基本上,创建了一个名为Device的抽象类。可以设计特定设备来扩展此基类。然后创建一个构建器类来创建和初始化特定的类。从这个基本类中,可以构建一个系统来处理输出输出。我倾向于设计接口并使类尽可能简单。