用于编辑online.xml文件的实用工具,用于Sardana
项目描述
一般信息
此实用工具简化了online.xml的处理。
完整说明可在此处找到: https://confluence.desy.de/display/FSP23/Onlinexml+Editor
运行
您可以通过指定-f(或--file)选项来强制打开默认库
配置库
此实用工具的主要概念是“配置”——为online.xml指定的特定条目集合,可以任意分组并为此特定实验激活。
这些配置保存在单独的.xml文件中。每个文件可以包含多个配置,因此用户可以使用一个.xml文件进行所有实验。当前配置始终保存在~/.onlinexml_editor/default.xml文件中。
操作
主窗口由两个主要字段组成
- 配置视图,其中显示设备名称、激活状态、设备类型、sardana名称和用户注释。您可以通过“选择列”菜单添加其他字段。
- 设备属性视图,显示所选设备的详细信息。要能够编辑配置,您应该是“超级用户”,而“标准用户”只能浏览配置。用户角色在“切换用户”菜单中更改。超级用户密码在settings.py中设置。
条目类型
有4种条目类型
- 配置 - 基本条目,可以包含设备/串行设备/设备组/串行设备。库文件可以包含多个配置,但只能激活一个。
- 组 - 是用于存储设备/组/串行设备的容器,具有3个参数 - 名称、激活状态和注释。用于组织设备结构并简化多个相关设备的激活。例如,如果您有一个带有定位线性电机的检测器,并且您总是将其一起插入/拔出,则可以将检测器和相应的电机条目组合成一个组,并通过激活整个组来轻松地将其添加/删除到 online.xml。此外,您可以在组中添加额外的子组并随意更改它们的激活状态。如果您停用父组,则所有子组将从 online.xml 中删除。如果您再次激活父组,子设备/组的激活状态将被恢复。
- 设备(单个设备) - 个体设备,具有多个属性,这些属性将被转换为 online.xml 中的标签。您可以给每个设备添加一些用户注释,这些注释在转换过程中将被忽略。
- 串行设备 - 这是一个由具有相同参数的多个子设备组成的设备。个体设备只能有5个独立的参数:名称、设备(tango地址)、sardana名称、激活状态和注释。例如,对于计数器、OMS电机等很有用。
配置视图
激活的设备/组加粗,停用的为灰色斜体
- 如果组中至少有一个非活动设备,则复选框显示为部分选中
- 如果您停用组,则所有子设备不会添加到 online.xml
- 通过双击可以编辑设备/sardana名称和注释。
- 要创建/粘贴新的设备/组,请右键单击父配置/组
- 要删除/剪切/复制设备/组,请右键单击设备
- 可以通过拖放对设备进行排序:**如果将设备/组拖放到组上,则设备将移动到该组** **如果将设备/组拖放到其他设备/组之间,则当前组将重新排序** **如果您按住 ctrl 拖动设备,您将创建设备的一个副本**
设备属性视图
在这里显示在树视图中选定的设备的所有属性。
每个单元格都可以通过双击进行编辑。
要添加/删除属性,请单击表格下方的“添加/删除属性”按钮,并使用以下对话框。
- 如果您编辑串行设备,则通用属性将应用于所有子设备。个体属性可以是:名称、设备、sardana名称。
- 如果您编辑组,则只能更改名称和注释
检查错误/应用配置
在将选定的配置转换为 online.xml 文件之前,将执行以下检查
- 所有激活设备的逗号标签和 tango 地址的重复
- 所有激活设备都是在线的(通过尝试执行 PyTango.DeviceProxy() 命令
- 如果存在特定属性,则将检查属性的存在
- 对于所有测量组,所有选定的设备都处于激活状态
如果您仍然想应用包含错误的配置,可以按“忽略”按钮。
您可以通过单击“检查配置错误”来强制执行此检查而不应用配置
配置文件
配置文件是一个包含一个根元素的 .xml 文件
<library>
</library>
每个文件可以包含多个配置。每个配置都应该有 3 个属性:名称、active(其激活状态可以是“是”或“否”)和注释
<configuration active="yes" comment="" name="default">
</configuration>
与 online.xml 相比,这些 3 个属性:名称、active、注释应存在于每个元素中。单个设备条目与 online.xml 条目非常相似
<single_device active="yes" comment="" name="dcmbragg">
<device>dcmbragg/dcmtsai/axis1</device>
<type>type_tango</type>
<module>motor_tango</module>
<control>tango</control>
<hostname>hasep23oh:10000</hostname>
</single_device>
所有设备都可以按组组织
<group active="yes" comment="" name="OH">
</group>
此外,还有一个“串行设备”的概念。这是一系列设备,其中只有逗号和标签不同
<serial_device active="yes" comment="" name="Slit 2">
<type>stepping_motor</type>
<module>oms58</module>
<control>tango</control>
<hostname>hasepfe:10000</hostname>
<single_device active="yes" comment="" name="ps2vg">
<device>p23/motor/fe.19</device>
</single_device>
<single_device active="yes" comment="" name="ps2v">
<device>p23/motor/fe.20</device>
</single_device>
<single_device active="yes" comment="" name="ps2l">
<device>p23/motor/fe.21</device>
</single_device>
<single_device active="yes" comment="" name="ps2r">
<device>p23/motor/fe.22</device>
</single_device>
</serial_device>
项目详情
关闭
onlinexml_editor-2.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6db66b49f38c88780b15fced4e415a524d4ac1f0a9f21a614e4980b8449d22b2 |
|
MD5 | 4926368bf48f4f581eae0d8b6b905efe |
|
BLAKE2b-256 | 279ecd9c06d243b9140c55282f52ea76b51afb4fe9cdbe39c2b3c3c9808195a2 |