From cc2e0ecaa308d86900135025c050d392b58cfc6f Mon Sep 17 00:00:00 2001 From: wakonig_k Date: Sun, 10 Mar 2024 21:09:06 +0100 Subject: [PATCH] refactor: converted to new plugin structure --- .../{hli => high_level_interface}/__init__.py | 0 .../{hli => high_level_interface}/spec_hli.py | 0 bec_plugins/dap_services/__init__.py | 0 bec_plugins/device_configs/__init__.py | 0 .../bec_device_config_sastt.yaml | 0 .../config_session_start_e20632.yaml | 0 .../e21125_lamni_config.yaml | 0 .../lamni_config.py | 0 .../test_config_cSAXS.yaml | 0 bec_plugins/devices/__init__.py | 0 .../scan_server/scan_plugins/__init__.py | 0 .../scan_plugins/scan_plugin_template.py | 32 +++++++++++++++++++ 12 files changed, 32 insertions(+) rename bec_plugins/bec_client/{hli => high_level_interface}/__init__.py (100%) rename bec_plugins/bec_client/{hli => high_level_interface}/spec_hli.py (100%) create mode 100644 bec_plugins/dap_services/__init__.py create mode 100644 bec_plugins/device_configs/__init__.py rename bec_plugins/{configs => device_configs}/bec_device_config_sastt.yaml (100%) rename bec_plugins/{configs => device_configs}/config_session_start_e20632.yaml (100%) rename bec_plugins/{configs => device_configs}/e21125_lamni_config.yaml (100%) rename bec_plugins/{scibec => device_configs}/lamni_config.py (100%) rename bec_plugins/{scibec => device_configs}/test_config_cSAXS.yaml (100%) create mode 100644 bec_plugins/devices/__init__.py create mode 100644 bec_plugins/scan_server/scan_plugins/__init__.py create mode 100644 bec_plugins/scan_server/scan_plugins/scan_plugin_template.py diff --git a/bec_plugins/bec_client/hli/__init__.py b/bec_plugins/bec_client/high_level_interface/__init__.py similarity index 100% rename from bec_plugins/bec_client/hli/__init__.py rename to bec_plugins/bec_client/high_level_interface/__init__.py diff --git a/bec_plugins/bec_client/hli/spec_hli.py b/bec_plugins/bec_client/high_level_interface/spec_hli.py similarity index 100% rename from bec_plugins/bec_client/hli/spec_hli.py rename to bec_plugins/bec_client/high_level_interface/spec_hli.py diff --git a/bec_plugins/dap_services/__init__.py b/bec_plugins/dap_services/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/bec_plugins/device_configs/__init__.py b/bec_plugins/device_configs/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/bec_plugins/configs/bec_device_config_sastt.yaml b/bec_plugins/device_configs/bec_device_config_sastt.yaml similarity index 100% rename from bec_plugins/configs/bec_device_config_sastt.yaml rename to bec_plugins/device_configs/bec_device_config_sastt.yaml diff --git a/bec_plugins/configs/config_session_start_e20632.yaml b/bec_plugins/device_configs/config_session_start_e20632.yaml similarity index 100% rename from bec_plugins/configs/config_session_start_e20632.yaml rename to bec_plugins/device_configs/config_session_start_e20632.yaml diff --git a/bec_plugins/configs/e21125_lamni_config.yaml b/bec_plugins/device_configs/e21125_lamni_config.yaml similarity index 100% rename from bec_plugins/configs/e21125_lamni_config.yaml rename to bec_plugins/device_configs/e21125_lamni_config.yaml diff --git a/bec_plugins/scibec/lamni_config.py b/bec_plugins/device_configs/lamni_config.py similarity index 100% rename from bec_plugins/scibec/lamni_config.py rename to bec_plugins/device_configs/lamni_config.py diff --git a/bec_plugins/scibec/test_config_cSAXS.yaml b/bec_plugins/device_configs/test_config_cSAXS.yaml similarity index 100% rename from bec_plugins/scibec/test_config_cSAXS.yaml rename to bec_plugins/device_configs/test_config_cSAXS.yaml diff --git a/bec_plugins/devices/__init__.py b/bec_plugins/devices/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/bec_plugins/scan_server/scan_plugins/__init__.py b/bec_plugins/scan_server/scan_plugins/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/bec_plugins/scan_server/scan_plugins/scan_plugin_template.py b/bec_plugins/scan_server/scan_plugins/scan_plugin_template.py new file mode 100644 index 0000000..5dbbd7e --- /dev/null +++ b/bec_plugins/scan_server/scan_plugins/scan_plugin_template.py @@ -0,0 +1,32 @@ +""" +SCAN PLUGINS + +All new scans should be derived from ScanBase. ScanBase provides various methods that can be customized and overriden +but they are executed in a specific order: + +- self.initialize # initialize the class if needed +- self.read_scan_motors # used to retrieve the start position (and the relative position shift if needed) +- self.prepare_positions # prepare the positions for the scan. The preparation is split into multiple sub fuctions: + - self._calculate_positions # calculate the positions + - self._set_positions_offset # apply the previously retrieved scan position shift (if needed) + - self._check_limits # tests to ensure the limits won't be reached +- self.open_scan # send an open_scan message including the scan name, the number of points and the scan motor names +- self.stage # stage all devices for the upcoming acquisiton +- self.run_baseline_readings # read all devices to get a baseline for the upcoming scan +- self.pre_scan # perform additional actions before the scan starts +- self.scan_core # run a loop over all position + - self._at_each_point(ind, pos) # called at each position with the current index and the target positions as arguments +- self.finalize # clean up the scan, e.g. move back to the start position; wait everything to finish +- self.unstage # unstage all devices that have been staged before +- self.cleanup # send a close scan message and perform additional cleanups if needed +""" + +# import time + +# import numpy as np + +# from bec_lib import MessageEndpoints, bec_logger, messages +# from scan_server.errors import ScanAbortion +# from scan_server.scans import FlyScanBase, RequestBase, ScanArgType, ScanBase + +# logger = bec_logger.logger -- 2.49.1