Skip to content

cnpem/sophys-gui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SOPHYS-GUI

The SOPHYS (Sirius Ophyd and Bluesky utilities) GUI is responsible for controlling and monitoring a Bluesky instance through HTTP Server and a Kafka broker.

Screenshot from 2024-11-25 09-27-27 image image

Some of its features are:

  • Control of permissions via a login widget, only monitoring is enabled for unauthenticated users.
  • Ordering the items of the Queue
  • Editting or deleting items of the Queue
  • Duplicating the items of the Queue
  • Addition of a plan to the Queue or immediate execution of it, using a dynamic form that adapts itself using the types provided by the queue server, as shown below.
  • Addition of instructions in the Queue
  • Shortcut for the addition of stop items in the Queue
  • Monitoring the current running item
  • Control of the Queue status, like connection, environment, stop pending and running status.
  • Dynamic buttons for controlling the queue:
    • Starting the queue if in the idle state.
    • Immediate and deffered pausing and stopping if in the running state.
    • Aborting, halting and resuming if in the paused state.
  • Monitoring the exit status, user, plan and parameters present in the History.
  • Live plotting using the Kafka Bluesky Live GUI.
  • Monitoring of the http server communication via a console.
  • Rescaling of the widgets.
  • Tooltips for the plans and parameters.
  • Loading bar for current running plan. If the "total_seq_num" metadata key is set, this will be the total number of events set in the progress ration.

Screenshot from 2024-11-25 09-28-15 Screenshot from 2024-11-25 09-28-00

How to Configure the YAML File

The .yml file is structured into multiple dictionaries, each identified by the plan name in snake case, as defined in the main function responsible for executing it.

Each top-level dictionary must contain:

  • name: an alternative display name for the plan, if a custom label is required.
  • param_names: a mapping between the plan parameters (in snake case) and their modified values.

The param_names: key may include nested dictionaries, where each key represents a group name and its value defines a specific set of parameters associated with the main plan.

example_plan:
    name: "Example Plan"
    param_names:
            "Plan Arguments":
                "proposal": "Proposal"
                "experiment_tag": "File Name"
                "trajectory_file": "Trajectory File"
                
            "Detectors Config.":
                "use_det1": "Use Detector 1"
                "use_det2": "Use Detector 2"

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •