A package for building Phoebus GUIs
Project description
techui_builder
A package for building Phoebus GUIs
Techui-builder is a module for building and organising phoebus gui screens using a builder-ibek yaml description of an IOC, with a user created techui.yaml file containing a description of the screens the user wants to create.
| Source | https://github.com/DiamondLightSource/techui-builder |
|---|---|
| PyPI | pip install techui-builder |
| Releases | https://github.com/DiamondLightSource/techui-builder/releases |
The process to use this module goes as follows (WIP):
Requirements
- Docker
- VSCode
- CS-Studio (Phoebus)
Installation
- Clone this module with the
--recursiveflag to pull in techui-support for the associated bob files. - Open the project using VSCode.
- Reopen the project in a container. Make sure you are using the VSCode extension: Dev Containers by Microsoft.
Setting Up
-
Clone the beamline
ixx-servicesrepo to the root of this project, ensuring each IOC service has been converted to the ibek format. -
Create your handmade synoptic overview screen in Phoebus and place inside
ixx-services/synoptic/index.bob. -
Construct a
techui.yamlfile insideixx-services/synopticcontaining all the components from the services:beamline: short_dom: {e.g. b23, b01-1} long_dom: {e.g. bl23b} desc: {beamline description} components: {component name}: desc: {component description} prefix: {PV prefix} extras: - {extra prefix 1} - {extra prefix 2}[!NOTE]
extrasis optional, but allows any embedded screen to be added to make a summary screen e.g. combining all imgs, pirgs and ionps associated with a vacuum space. -
Run this command to locally generate a schema, which can be used for validation testing
$ techui-builder --schemaAdd the following at the top of the
techui.yamlto validate it against a schema# yaml-language-server: $schema=/path/to/techui.schema.ymlwhere the path can be the dev container workspace, or a released asset in the GitHub repo.
Generating the Synoptic
$ techui-builder /path/to/synoptic/techui.yaml
This populates index.bob and individual component screens inside ixx-services/synoptic.
Viewing the Synoptic
In a terminal outside of the container:
$ module load phoebus
$ phoebus.sh -resource /path/to/opis/index.bob
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file techui_builder-0.4.0a1.tar.gz.
File metadata
- Download URL: techui_builder-0.4.0a1.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c5392d1510a1beb78c0588f340b1f0a6026de42ad27b5292700acd1b50664db
|
|
| MD5 |
e3af6260e857771e3c50855abfc1c784
|
|
| BLAKE2b-256 |
27ae7736da33b110e1241bea1b046e2c3dc75b399cb02e07f4bb2fec5ee27d8b
|
File details
Details for the file techui_builder-0.4.0a1-py3-none-any.whl.
File metadata
- Download URL: techui_builder-0.4.0a1-py3-none-any.whl
- Upload date:
- Size: 20.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f202c4a8fbd161bf08a93929a067c92d53b8ad9f0fb2a8d3d9d72053342a984
|
|
| MD5 |
0b609db80517a126e116737d8f67cae7
|
|
| BLAKE2b-256 |
ace1c4766b65836d0ebe18fa7928781679611122254450382626aafe85cf2e4b
|