实验任务预备队列管理器

预备任务(准备台)的表格模型:PrepModel 列表模型与队列 ScheduleModel。

概述

quatm/GUI/widgets/models.py 提供把 Python 字典 / 列表映射为 Qt 表格模型的基类 (源自 ARTIQ models)。预备队列(准备台)用列表型 PrepModel:预备任务不需要 唯一 ID、顺序可自由调整;实验队列用字典型 ScheduleModel(按优先级再按任务号 排序)。

核心类

说明
_SyncSubstruct包装底层容器的字典操作辅助(append/insert/pop 回调刷新)
DictSyncModel字典→表格模型基类
ListSyncModel列表→表格模型基类
ScheduleModel实验队列(ExperimentQueue)模型:任务按优先级/任务号排序
PrepModel预备队列(PrepStation)模型:列表型,顺序可调

具体业务模型通过子类实现 convert(键/值/列转单元格内容)、sort_key(排序键) 与 flags(编辑标志)三个钩子。

用法

from quatm.GUI.widgets.models import PrepModel

model = PrepModel(init=prep_list)   # 预备任务列表

模型说明见 数据模型;预备队列操作见 准备台