mirror of
https://github.com/bec-project/bec_widgets.git
synced 2025-07-14 11:41:49 +02:00
35 lines
1.7 KiB
Markdown
35 lines
1.7 KiB
Markdown
(user.widgets.scan_control)=
|
|
|
|
# Scan Control
|
|
|
|
**Purpose:**
|
|
|
|
The `ScanControl` widget is designed to generate a graphical user interface (GUI) to control various scan operations
|
|
based on the scan's signature and `gui_config`. The widget is used to control the scan operations, such as starting,
|
|
stopping, and pausing the scan. The widget also provides a graphical representation of the scan progress and the scan
|
|
status. The widget is designed to be used in conjunction with the `ScanServer` and `ScanBundler` services from the BEC
|
|
core services.
|
|
|
|
By default the widget supports only the scans which have defined `gui_config` and are inhereted from these scan classes:
|
|
|
|
- [ScanBase](https://beamline-experiment-control.readthedocs.io/en/latest/api_reference/_autosummary/bec_server.scan_server.scans.ScanBase.html)
|
|
- [SyncFlyScanBase](https://beamline-experiment-control.readthedocs.io/en/latest/api_reference/_autosummary/bec_server.scan_server.scans.SyncFlyScanBase.html)
|
|
- [AsyncFlyScanBase](https://beamline-experiment-control.readthedocs.io/en/latest/api_reference/_autosummary/bec_server.scan_server.scans.AsyncFlyScanBase.html)
|
|
|
|
**Key Features:**
|
|
|
|
- Automatically generates a control interface based on scan signatures and `gui_config`.
|
|
- Supports adding and removing argument bundles dynamically.
|
|
- Provides a visual representation of scan parameters grouped by functionality.
|
|
- Integrates start and stop controls for executing and halting scans.
|
|
|
|
**Example of Use:**
|
|
|
|
**Code example:**
|
|
The following code snipped demonstrates how to create a `ScanControl` widget using BEC Widgets within `BECIPythonClient`
|
|
|
|

|
|
|
|
```python
|
|
scan_control = gui.add_dock().add_widget("ScanControl")
|
|
``` |