mx-bluesky 1.4.7__py3-none-any.whl → 1.4.9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mx_bluesky/_version.py +2 -2
- mx_bluesky/beamlines/aithre_lasershaping/__init__.py +8 -0
- mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +36 -0
- mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +43 -0
- mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +4 -4
- mx_bluesky/beamlines/i04/thawing_plan.py +8 -2
- mx_bluesky/beamlines/i23/__init__.py +3 -0
- mx_bluesky/beamlines/i23/serial.py +71 -0
- mx_bluesky/beamlines/i24/serial/__init__.py +2 -0
- mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +2 -1
- mx_bluesky/beamlines/i24/serial/dcid.py +5 -5
- mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +2 -2
- mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +9 -9
- mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py +25 -5
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +2 -2
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +14 -14
- mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +5 -5
- mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py +29 -60
- mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +7 -1
- mx_bluesky/beamlines/i24/serial/log.py +9 -10
- mx_bluesky/beamlines/i24/serial/parameters/utils.py +36 -7
- mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +0 -1
- mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +4 -4
- mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +4 -12
- mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +2 -1
- mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +71 -11
- mx_bluesky/beamlines/i24/serial/write_nexus.py +3 -3
- mx_bluesky/{hyperion → common}/device_setup_plans/manipulate_sample.py +6 -14
- mx_bluesky/{hyperion → common}/device_setup_plans/setup_oav.py +12 -6
- mx_bluesky/{hyperion → common}/experiment_plans/change_aperture_then_move_plan.py +4 -5
- mx_bluesky/{hyperion → common}/experiment_plans/oav_grid_detection_plan.py +6 -6
- mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +6 -5
- mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +16 -47
- mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +4 -1
- mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +4 -4
- mx_bluesky/common/external_interaction/nexus/nexus_utils.py +2 -2
- mx_bluesky/common/parameters/components.py +22 -2
- mx_bluesky/common/parameters/constants.py +4 -16
- mx_bluesky/common/parameters/gridscan.py +36 -32
- mx_bluesky/common/plans/common_flyscan_xray_centre_plan.py +316 -0
- mx_bluesky/common/plans/inner_plans/__init__ .py +0 -0
- mx_bluesky/common/plans/read_hardware.py +3 -3
- mx_bluesky/common/utils/log.py +19 -15
- mx_bluesky/hyperion/__main__.py +6 -24
- mx_bluesky/hyperion/baton_handler.py +8 -3
- mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +4 -4
- mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -33
- mx_bluesky/hyperion/device_setup_plans/smargon.py +2 -7
- mx_bluesky/hyperion/device_setup_plans/utils.py +6 -5
- mx_bluesky/hyperion/experiment_plans/__init__.py +1 -7
- mx_bluesky/hyperion/experiment_plans/experiment_registry.py +3 -13
- mx_bluesky/hyperion/experiment_plans/grid_detect_then_xray_centre_plan.py +80 -87
- mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +183 -0
- mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +50 -15
- mx_bluesky/hyperion/experiment_plans/oav_snapshot_plan.py +31 -7
- mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +4 -4
- mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +1 -1
- mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +13 -14
- mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +9 -8
- mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +30 -71
- mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +2 -2
- mx_bluesky/hyperion/external_interaction/agamemnon.py +78 -80
- mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +8 -6
- mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +3 -3
- mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +6 -3
- mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +2 -2
- mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +183 -31
- mx_bluesky/hyperion/external_interaction/config_server.py +4 -1
- mx_bluesky/hyperion/parameters/cli.py +4 -19
- mx_bluesky/hyperion/parameters/constants.py +1 -5
- mx_bluesky/hyperion/parameters/device_composites.py +40 -5
- mx_bluesky/hyperion/parameters/gridscan.py +9 -58
- mx_bluesky/hyperion/parameters/load_centre_collect.py +4 -4
- mx_bluesky/hyperion/parameters/rotation.py +9 -12
- mx_bluesky/hyperion/utils/context.py +2 -2
- mx_bluesky/hyperion/utils/validation.py +15 -19
- {mx_bluesky-1.4.7.dist-info → mx_bluesky-1.4.9.dist-info}/METADATA +7 -6
- {mx_bluesky-1.4.7.dist-info → mx_bluesky-1.4.9.dist-info}/RECORD +86 -83
- {mx_bluesky-1.4.7.dist-info → mx_bluesky-1.4.9.dist-info}/WHEEL +1 -1
- mx_bluesky/common/external_interaction/test_config_server.py +0 -38
- mx_bluesky/hyperion/device_setup_plans/check_beamstop.py +0 -27
- mx_bluesky/hyperion/experiment_plans/flyscan_xray_centre_plan.py +0 -467
- /mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/{short1-laser.png → s1l.png} +0 -0
- /mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/{short2-laser.png → s2l.png} +0 -0
- /mx_bluesky/{hyperion → common}/device_setup_plans/position_detector.py +0 -0
- /mx_bluesky/common/plans/{do_fgs.py → inner_plans/do_fgs.py} +0 -0
- {mx_bluesky-1.4.7.dist-info → mx_bluesky-1.4.9.dist-info}/entry_points.txt +0 -0
- {mx_bluesky-1.4.7.dist-info → mx_bluesky-1.4.9.dist-info}/licenses/LICENSE +0 -0
- {mx_bluesky-1.4.7.dist-info → mx_bluesky-1.4.9.dist-info}/top_level.txt +0 -0
|
@@ -12,7 +12,7 @@ from mx_bluesky.hyperion.parameters.components import WithHyperionUDCFeatures
|
|
|
12
12
|
from mx_bluesky.hyperion.parameters.robot_load import (
|
|
13
13
|
RobotLoadThenCentre,
|
|
14
14
|
)
|
|
15
|
-
from mx_bluesky.hyperion.parameters.rotation import
|
|
15
|
+
from mx_bluesky.hyperion.parameters.rotation import RotationScan
|
|
16
16
|
|
|
17
17
|
T = TypeVar("T", bound=BaseModel)
|
|
18
18
|
|
|
@@ -34,7 +34,7 @@ class LoadCentreCollect(
|
|
|
34
34
|
pin-tip centre and rotation scan operations."""
|
|
35
35
|
|
|
36
36
|
robot_load_then_centre: RobotLoadThenCentre
|
|
37
|
-
multi_rotation_scan:
|
|
37
|
+
multi_rotation_scan: RotationScan
|
|
38
38
|
|
|
39
39
|
@model_validator(mode="before")
|
|
40
40
|
@classmethod
|
|
@@ -42,7 +42,7 @@ class LoadCentreCollect(
|
|
|
42
42
|
allowed_keys = (
|
|
43
43
|
LoadCentreCollect.model_fields.keys()
|
|
44
44
|
| RobotLoadThenCentre.model_fields.keys()
|
|
45
|
-
|
|
|
45
|
+
| RotationScan.model_fields.keys()
|
|
46
46
|
)
|
|
47
47
|
|
|
48
48
|
disallowed_keys = values.keys() - allowed_keys
|
|
@@ -74,7 +74,7 @@ class LoadCentreCollect(
|
|
|
74
74
|
values, values["robot_load_then_centre"], RobotLoadThenCentre
|
|
75
75
|
)
|
|
76
76
|
new_multi_rotation_scan_params = construct_from_values(
|
|
77
|
-
values, values["multi_rotation_scan"],
|
|
77
|
+
values, values["multi_rotation_scan"], RotationScan
|
|
78
78
|
)
|
|
79
79
|
values["multi_rotation_scan"] = new_multi_rotation_scan_params
|
|
80
80
|
values["robot_load_then_centre"] = new_robot_load_then_centre_params
|
|
@@ -42,7 +42,8 @@ class RotationScanPerSweep(OptionalGonioAngleStarts, OptionalXyzStarts):
|
|
|
42
42
|
omega_start_deg: The initial angle of the rotation in degrees (default 0)
|
|
43
43
|
scan_width_deg: The sweep of the rotation in degrees, this must be positive (default 360)
|
|
44
44
|
rotation_direction: Indicates the direction of rotation, if RotationDirection.POSITIVE
|
|
45
|
-
the final angle is obtained by adding scan_width_deg, otherwise by subtraction (default NEGATIVE)
|
|
45
|
+
the final angle is obtained by adding scan_width_deg, otherwise by subtraction (default NEGATIVE).
|
|
46
|
+
See "Hyperion Coordinate Systems" in the documentation.
|
|
46
47
|
nexus_vds_start_img: The frame number of the first frame captured during the rotation
|
|
47
48
|
"""
|
|
48
49
|
|
|
@@ -104,7 +105,7 @@ class RotationExperiment(DiffractionExperimentWithSample, WithHyperionUDCFeature
|
|
|
104
105
|
return aperture_position
|
|
105
106
|
|
|
106
107
|
|
|
107
|
-
class
|
|
108
|
+
class SingleRotationScan(WithScan, RotationScanPerSweep, RotationExperiment):
|
|
108
109
|
@property
|
|
109
110
|
def detector_params(self):
|
|
110
111
|
return self._detector_params(self.omega_start_deg)
|
|
@@ -129,12 +130,12 @@ class RotationScan(WithScan, RotationScanPerSweep, RotationExperiment):
|
|
|
129
130
|
return int(self.scan_width_deg / self.rotation_increment_deg)
|
|
130
131
|
|
|
131
132
|
|
|
132
|
-
class
|
|
133
|
+
class RotationScan(RotationExperiment, SplitScan):
|
|
133
134
|
rotation_scans: Annotated[list[RotationScanPerSweep], Len(min_length=1)]
|
|
134
135
|
|
|
135
|
-
def _single_rotation_scan(self, scan: RotationScanPerSweep) ->
|
|
136
|
+
def _single_rotation_scan(self, scan: RotationScanPerSweep) -> SingleRotationScan:
|
|
136
137
|
# self has everything from RotationExperiment
|
|
137
|
-
allowed_keys =
|
|
138
|
+
allowed_keys = SingleRotationScan.model_fields.keys() # type: ignore # mypy doesn't recognise this as a property...
|
|
138
139
|
params_dump = self.model_dump()
|
|
139
140
|
# provided `scan` has everything from RotationScanPerSweep
|
|
140
141
|
scan_dump = scan.model_dump()
|
|
@@ -142,13 +143,13 @@ class MultiRotationScan(RotationExperiment, SplitScan):
|
|
|
142
143
|
k: v for k, v in (params_dump | scan_dump).items() if k in allowed_keys
|
|
143
144
|
}
|
|
144
145
|
# together they have everything for RotationScan
|
|
145
|
-
rotation_scan =
|
|
146
|
+
rotation_scan = SingleRotationScan(**rotation_scan_kv_pairs)
|
|
146
147
|
return rotation_scan
|
|
147
148
|
|
|
148
149
|
@model_validator(mode="after")
|
|
149
150
|
@classmethod
|
|
150
151
|
def correct_start_vds(cls, values: Any) -> Any:
|
|
151
|
-
assert isinstance(values,
|
|
152
|
+
assert isinstance(values, RotationScan)
|
|
152
153
|
start_img = 0.0
|
|
153
154
|
for scan in values.rotation_scans:
|
|
154
155
|
scan.nexus_vds_start_img = int(start_img)
|
|
@@ -167,7 +168,7 @@ class MultiRotationScan(RotationExperiment, SplitScan):
|
|
|
167
168
|
return self
|
|
168
169
|
|
|
169
170
|
@property
|
|
170
|
-
def single_rotation_scans(self) -> Iterator[
|
|
171
|
+
def single_rotation_scans(self) -> Iterator[SingleRotationScan]:
|
|
171
172
|
for scan in self.rotation_scans:
|
|
172
173
|
yield self._single_rotation_scan(scan)
|
|
173
174
|
|
|
@@ -192,7 +193,3 @@ class MultiRotationScan(RotationExperiment, SplitScan):
|
|
|
192
193
|
self._num_images_per_scan()[0],
|
|
193
194
|
len(self._num_images_per_scan()),
|
|
194
195
|
)
|
|
195
|
-
|
|
196
|
-
@property
|
|
197
|
-
def ispyb_params(self): # pyright: ignore
|
|
198
|
-
raise ValueError("Please get ispyb params from one of the individual scans")
|
|
@@ -5,13 +5,13 @@ import mx_bluesky.hyperion.experiment_plans as hyperion_plans
|
|
|
5
5
|
from mx_bluesky.common.utils.log import LOGGER
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
def setup_context(
|
|
8
|
+
def setup_context(dev_mode: bool = False) -> BlueskyContext:
|
|
9
9
|
context = BlueskyContext()
|
|
10
10
|
context.with_plan_module(hyperion_plans)
|
|
11
11
|
|
|
12
12
|
context.with_dodal_module(
|
|
13
13
|
get_beamline_based_on_environment_variable(),
|
|
14
|
-
|
|
14
|
+
mock=dev_mode,
|
|
15
15
|
)
|
|
16
16
|
|
|
17
17
|
LOGGER.info(f"Plans found in context: {context.plan_functions.keys()}")
|
|
@@ -3,12 +3,11 @@ import json
|
|
|
3
3
|
import os
|
|
4
4
|
import shutil
|
|
5
5
|
from pathlib import Path
|
|
6
|
-
from unittest.mock import patch
|
|
7
6
|
|
|
8
7
|
import bluesky.preprocessors as bpp
|
|
9
8
|
from bluesky.run_engine import RunEngine
|
|
10
9
|
from dodal.beamlines import i03
|
|
11
|
-
from dodal.devices.oav.
|
|
10
|
+
from dodal.devices.oav.oav_detector import OAVConfigBeamCentre
|
|
12
11
|
from ophyd_async.testing import set_mock_value
|
|
13
12
|
|
|
14
13
|
from mx_bluesky.common.plans.read_hardware import (
|
|
@@ -38,16 +37,17 @@ def test_params(filename_stub, dir):
|
|
|
38
37
|
|
|
39
38
|
params = RotationScan(
|
|
40
39
|
**get_params(
|
|
41
|
-
"tests/test_data/parameter_json_files/
|
|
40
|
+
"tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json"
|
|
42
41
|
)
|
|
43
42
|
)
|
|
43
|
+
for scan_params in params.rotation_scans:
|
|
44
|
+
scan_params.x_start_um = 0
|
|
45
|
+
scan_params.y_start_um = 0
|
|
46
|
+
scan_params.z_start_um = 0
|
|
47
|
+
scan_params.scan_width_deg = 360
|
|
44
48
|
params.file_name = filename_stub
|
|
45
|
-
params.scan_width_deg = 360
|
|
46
49
|
params.demand_energy_ev = 12700
|
|
47
50
|
params.storage_directory = str(dir)
|
|
48
|
-
params.x_start_um = 0
|
|
49
|
-
params.y_start_um = 0
|
|
50
|
-
params.z_start_um = 0
|
|
51
51
|
params.exposure_time_s = 0.004
|
|
52
52
|
return params
|
|
53
53
|
|
|
@@ -57,12 +57,14 @@ def fake_rotation_scan(
|
|
|
57
57
|
subscription: RotationNexusFileCallback,
|
|
58
58
|
rotation_devices: RotationScanComposite,
|
|
59
59
|
):
|
|
60
|
+
single_scan_parameters = next(parameters.single_rotation_scans)
|
|
61
|
+
|
|
60
62
|
@bpp.subs_decorator(subscription)
|
|
61
63
|
@bpp.set_run_key_decorator("rotation_scan_with_cleanup_and_subs")
|
|
62
64
|
@bpp.run_decorator( # attach experiment metadata to the start document
|
|
63
65
|
md={
|
|
64
66
|
"subplan_name": CONST.PLAN.ROTATION_OUTER,
|
|
65
|
-
"mx_bluesky_parameters":
|
|
67
|
+
"mx_bluesky_parameters": single_scan_parameters.model_dump_json(),
|
|
66
68
|
"activate_callbacks": "RotationNexusFileCallback",
|
|
67
69
|
}
|
|
68
70
|
)
|
|
@@ -98,9 +100,7 @@ def fake_create_rotation_devices():
|
|
|
98
100
|
oav = i03.oav(
|
|
99
101
|
connect_immediately=True,
|
|
100
102
|
mock=True,
|
|
101
|
-
params=
|
|
102
|
-
zoom_params_file=ZOOM_LEVELS_XML, display_config_file=DISPLAY_CONFIGURATION
|
|
103
|
-
),
|
|
103
|
+
params=OAVConfigBeamCentre(ZOOM_LEVELS_XML, DISPLAY_CONFIGURATION),
|
|
104
104
|
)
|
|
105
105
|
xbpm_feedback = i03.xbpm_feedback(connect_immediately=True, mock=True)
|
|
106
106
|
|
|
@@ -139,15 +139,11 @@ def sim_rotation_scan_to_create_nexus(
|
|
|
139
139
|
|
|
140
140
|
fake_create_rotation_devices.eiger.bit_depth.sim_put(32) # type: ignore
|
|
141
141
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
):
|
|
146
|
-
RE(
|
|
147
|
-
fake_rotation_scan(
|
|
148
|
-
test_params, RotationNexusFileCallback(), fake_create_rotation_devices
|
|
149
|
-
)
|
|
142
|
+
RE(
|
|
143
|
+
fake_rotation_scan(
|
|
144
|
+
test_params, RotationNexusFileCallback(), fake_create_rotation_devices
|
|
150
145
|
)
|
|
146
|
+
)
|
|
151
147
|
|
|
152
148
|
nexus_path = Path(test_params.storage_directory) / nexus_filename
|
|
153
149
|
assert os.path.isfile(nexus_path)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mx-bluesky
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.9
|
|
4
4
|
Summary: Bluesky tools for MX Beamlines at DLS
|
|
5
5
|
Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
|
|
6
6
|
License: Apache License
|
|
@@ -220,7 +220,7 @@ Requires-Dist: flask-restful
|
|
|
220
220
|
Requires-Dist: ispyb
|
|
221
221
|
Requires-Dist: jupyterlab
|
|
222
222
|
Requires-Dist: matplotlib
|
|
223
|
-
Requires-Dist: nexgen
|
|
223
|
+
Requires-Dist: nexgen>=0.11.0
|
|
224
224
|
Requires-Dist: numpy
|
|
225
225
|
Requires-Dist: opencv-python
|
|
226
226
|
Requires-Dist: opentelemetry-distro
|
|
@@ -235,11 +235,11 @@ Requires-Dist: scipy
|
|
|
235
235
|
Requires-Dist: semver
|
|
236
236
|
Requires-Dist: matplotlib
|
|
237
237
|
Requires-Dist: blueapi>=0.5.0
|
|
238
|
-
Requires-Dist: daq-config-server
|
|
239
|
-
Requires-Dist: ophyd
|
|
240
|
-
Requires-Dist: ophyd-async>=0.
|
|
238
|
+
Requires-Dist: daq-config-server==0.1.1
|
|
239
|
+
Requires-Dist: ophyd>=1.10.5
|
|
240
|
+
Requires-Dist: ophyd-async>=0.10.0a2
|
|
241
241
|
Requires-Dist: bluesky>=1.13.1
|
|
242
|
-
Requires-Dist: dls-dodal==1.
|
|
242
|
+
Requires-Dist: dls-dodal==1.48.0
|
|
243
243
|
Provides-Extra: dev
|
|
244
244
|
Requires-Dist: black; extra == "dev"
|
|
245
245
|
Requires-Dist: build; extra == "dev"
|
|
@@ -257,6 +257,7 @@ Requires-Dist: pyright; extra == "dev"
|
|
|
257
257
|
Requires-Dist: pytest-asyncio; extra == "dev"
|
|
258
258
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
259
259
|
Requires-Dist: pytest-random-order; extra == "dev"
|
|
260
|
+
Requires-Dist: pytest-timeout; extra == "dev"
|
|
260
261
|
Requires-Dist: pytest; extra == "dev"
|
|
261
262
|
Requires-Dist: ruff; extra == "dev"
|
|
262
263
|
Requires-Dist: sphinx-autobuild; extra == "dev"
|
|
@@ -1,79 +1,86 @@
|
|
|
1
1
|
mx_bluesky/__init__.py,sha256=Ksms_WJF8LTkbm38gEpm1jBpGqcQ8NGvmb2ZJlOE1j8,198
|
|
2
2
|
mx_bluesky/__main__.py,sha256=RVqPnxDisFMIn_aoEi0drlThNHgKTJULnSrotouIKI0,480
|
|
3
|
-
mx_bluesky/_version.py,sha256=
|
|
3
|
+
mx_bluesky/_version.py,sha256=_khE0BvLLOXKCyxlHn8gjMAbG__XlngpoNyCPRZBxOQ,511
|
|
4
4
|
mx_bluesky/definitions.py,sha256=ULpEYAUzdQiEbBoTgYTMxfUf3DDDjhYtvDxofs7Qxqw,168
|
|
5
5
|
mx_bluesky/jupyter_example.ipynb,sha256=wpwvPrBvwtRMS5AIFk8F54cIlUoD0o4ji8tKK5cZHA4,1672
|
|
6
6
|
mx_bluesky/beamlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
mx_bluesky/beamlines/aithre_lasershaping/__init__.py,sha256=
|
|
7
|
+
mx_bluesky/beamlines/aithre_lasershaping/__init__.py,sha256=A0dlifkBYPlCiMkTEovTcNVUCOzH5FhkUGK9y_u8lHo,603
|
|
8
|
+
mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py,sha256=-GTu2w7dIKtssZB8vXwE2f1zF-Pg1zC_jwBbB-r2Goo,1233
|
|
8
9
|
mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py,sha256=AqWAFey_Ih1JcRxVNiZDGFsVg4kvA9LH2p5SJeXfe2I,834
|
|
9
|
-
mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py,sha256=
|
|
10
|
+
mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py,sha256=1La4vJmQdKp3_Ib1DMgavJBdYLTxp7S7dEr_lqNknV0,1828
|
|
10
11
|
mx_bluesky/beamlines/i04/__init__.py,sha256=jZjAMN5_oOEjQoR3iTrnMFW3ElxlHhQ7pEQZIv21Y4I,129
|
|
11
|
-
mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py,sha256=
|
|
12
|
-
mx_bluesky/beamlines/i04/thawing_plan.py,sha256=
|
|
12
|
+
mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py,sha256=T6K0LOwwGxB05YvS6FV-UU4O2N2GMQdEM2vj9BSow_U,6618
|
|
13
|
+
mx_bluesky/beamlines/i04/thawing_plan.py,sha256=uvm1wfp012GN5yE7TcURSQeDtC9nWnW5X__6UCXazjA,5085
|
|
13
14
|
mx_bluesky/beamlines/i04/callbacks/murko_callback.py,sha256=ZIwkY6gdcmIE-aMBvehN8DVcjGRtb9wwzpgHJNMZ39Q,2125
|
|
15
|
+
mx_bluesky/beamlines/i23/__init__.py,sha256=7nwQiKBZAXLnvPhCqaI2VC1k4TOzQalOUvwF6SQ3Yd4,95
|
|
16
|
+
mx_bluesky/beamlines/i23/serial.py,sha256=XVbHM8NevnJMFAJD9jkxG-VnPaWX6t_k-wlipRw0pmY,2055
|
|
14
17
|
mx_bluesky/beamlines/i24/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
-
mx_bluesky/beamlines/i24/serial/__init__.py,sha256=
|
|
16
|
-
mx_bluesky/beamlines/i24/serial/blueapi_config.yaml,sha256=
|
|
17
|
-
mx_bluesky/beamlines/i24/serial/dcid.py,sha256=
|
|
18
|
-
mx_bluesky/beamlines/i24/serial/log.py,sha256=
|
|
18
|
+
mx_bluesky/beamlines/i24/serial/__init__.py,sha256=TInCdnrsp4FYLkwTZ8bzNpUrFuLrWzg9ugqwkplvPZg,1473
|
|
19
|
+
mx_bluesky/beamlines/i24/serial/blueapi_config.yaml,sha256=xT-czuatOKpt_a8onssDsVNx2ey-uZMoTJ4s7HPuDEU,261
|
|
20
|
+
mx_bluesky/beamlines/i24/serial/dcid.py,sha256=ab48UFmZT6Zuv9RNoqOLkmAgmaIr0G6UDjqr_bE0vF8,14564
|
|
21
|
+
mx_bluesky/beamlines/i24/serial/log.py,sha256=76-bKjjxLZEITTcALpvuwCy3KU5pTq0blnVFD9wT5cY,4798
|
|
19
22
|
mx_bluesky/beamlines/i24/serial/run_extruder.sh,sha256=FXYsqdTpVgxB1-QrY4Tg5pl5Ex7PgUoXnuAcr9iDZTE,1078
|
|
20
23
|
mx_bluesky/beamlines/i24/serial/run_fixed_target.sh,sha256=ZzxcVFoitBRvcqsJaBxjtepgkG-ZCGBW6X9xuV_Y478,1229
|
|
21
24
|
mx_bluesky/beamlines/i24/serial/run_serial.py,sha256=Zrudosavh2HnnBXd2CLtOPs3lyQFxaN8YyO_sradRGs,1511
|
|
22
25
|
mx_bluesky/beamlines/i24/serial/run_ssx.sh,sha256=0Ir5iQQ-xSN_5teHtxzht6G-mJ08mE1gxBS32vkh1eM,714
|
|
23
26
|
mx_bluesky/beamlines/i24/serial/set_visit_directory.sh,sha256=heQWMqUHNERQurt2tRgU-kve2ov6L6gyNamjLTRpb48,1660
|
|
24
27
|
mx_bluesky/beamlines/i24/serial/start_blueapi.sh,sha256=4iBzQljTLXQiVIF4UO7drc9qUkP7KSRC6Mjh8hcGxpI,608
|
|
25
|
-
mx_bluesky/beamlines/i24/serial/write_nexus.py,sha256=
|
|
28
|
+
mx_bluesky/beamlines/i24/serial/write_nexus.py,sha256=3qSjvH2_0WYPuX8nUaOdsec7kIUSW0xBhCFec2tv3WM,4018
|
|
26
29
|
mx_bluesky/beamlines/i24/serial/extruder/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py,sha256=
|
|
28
|
-
mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl,sha256=
|
|
29
|
-
mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl,sha256=
|
|
30
|
+
mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py,sha256=upg_8uQ-DMzQckjoDSt0VjoxxayfX09WvphCTVGBNM8,19462
|
|
31
|
+
mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl,sha256=Uqw7u7Lqn6SRZxOoo4E7XwEueTI0eXylXpgBL66DXrI,1974
|
|
32
|
+
mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl,sha256=lRFa3LEIqc6Yar2XjCT3T1KKG9cHBW0AK96nsfss0bE,30896
|
|
30
33
|
mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl,sha256=K79vmGAcf9qVEQLXTgr0g4bZDWaJ7nFoK4e0Ex7qAwM,14690
|
|
31
34
|
mx_bluesky/beamlines/i24/serial/fixed_target/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
35
|
mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py,sha256=puO1vg0x-TPgv8FbEFg73ohJqbwDpcG50_2cLUTa2FA,1210
|
|
33
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py,sha256=
|
|
34
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py,sha256=
|
|
36
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py,sha256=lMGbqiJPcn-V8l3t9_BZi3BBJi3aNNxyrQYFNvapIgs,24878
|
|
37
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py,sha256=cuv37pLsyNgf7sAnGiHMt0Ql3bJM6RUZR2esGUZNfR4,33091
|
|
35
38
|
mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py,sha256=Vokr_Gl_lpqcUwG18C2h8TYMmyTx1HmUSDd9zgR9-7M,3275
|
|
36
39
|
mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py,sha256=QLg4wryENBeFfOYFaIgE9R12r2KvUuKIP9ZY8iyYibY,6582
|
|
37
40
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl,sha256=H9BVU1S3oy8tAVHtKvJvp7YTHA-4X-jtOtiu3jJ7of4,10348
|
|
38
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl,sha256=
|
|
39
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl,sha256
|
|
41
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl,sha256=EOhu9lhayhfElypEyVuH7VoNEB6rjSIk-9697A7DK1M,1977
|
|
42
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl,sha256=hetE5eKgjdJbcaxaRDAfF_d3oPNMLKXMbVsjCztZs-4,55873
|
|
40
43
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl,sha256=cpKpXfU668mGjIz35jUMTF8KAi0RI7WlVO2AR-EnJ8U,60868
|
|
41
44
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl,sha256=LI6Z5J1ugny0hX3NrfKx0CC3QdfnohokxYwcyPW-6XU,38124
|
|
42
45
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl,sha256=2KUy2iEcX9AC07zSH3Sp97b5qauGIm8_HjvoQ4pkyCU,1417
|
|
43
46
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl,sha256=o2PDoIFzeErIUijDbGdfWdrh3wd5GFAqEsDD2at2a4k,1601
|
|
44
47
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl,sha256=8TWQTIBnX3OLa1kjsibsCnG5wCVotPYIOHwFam7rJe4,14679
|
|
45
48
|
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl,sha256=IgLLF7gcNoG8Z4t9FTA7_4ggUccNm6-ekK5bb0V4ekY,15711
|
|
46
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl,sha256=
|
|
47
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/
|
|
48
|
-
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/
|
|
49
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl,sha256=7K_yMC_52x6DVTgamkei1pSGSGp4t7bx3vUmEaQx-4I,22639
|
|
50
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png,sha256=wDNuKCa_8hUPy4W01vdIrfdZtCyQKT8qVS5AS6kOTmo,9740
|
|
51
|
+
mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png,sha256=MrdiCFX7j-ODkfSdzc4NQ_8hj2Gs8i9gQqWyNXvdM5s,10189
|
|
49
52
|
mx_bluesky/beamlines/i24/serial/parameters/__init__.py,sha256=fdXGnTxNRyWV1cqVv8lQmwhUpUWDoz_VIRlo6KGwvS4,615
|
|
50
53
|
mx_bluesky/beamlines/i24/serial/parameters/constants.py,sha256=uJE3K7p1s8rXrgA0vH2JKrTaitH5ZDqLoSp_0ZmSCB4,1815
|
|
51
54
|
mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py,sha256=n6nRgycKMp5GuxwNoU30CP9enW7vTtTKHKIcIOH9ABY,4879
|
|
52
|
-
mx_bluesky/beamlines/i24/serial/parameters/utils.py,sha256=
|
|
55
|
+
mx_bluesky/beamlines/i24/serial/parameters/utils.py,sha256=ugRG7Es74NLXwaJtiCq850g-TK4N7u-qjiUdUVnZifg,4076
|
|
53
56
|
mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json,sha256=xT3y7SSWjVTAJ58dzwNnEgBdn10A6T8umR18n5xt508,142
|
|
54
57
|
mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt,sha256=oIPpcQpqCrKz5dPZ-qQ5gQ2Sdqtj6nsnf66pN8PGU50,199
|
|
55
58
|
mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar,sha256=SN4deU199dMcA1Bcx1BF6CBMvoSszxJWZC6vt7_5fHc,284
|
|
56
59
|
mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar,sha256=pZbFOEiN_S5yiTEtqdNHmTMtnQY-W2ImXVBYCovPCx0,1842
|
|
57
60
|
mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py,sha256=UhBdMcPdJMzwV0d8DKOBzvYNd6TDSwcP9GJVqfGa7Jc,261
|
|
58
61
|
mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py,sha256=H2gPmsLheYReFlGPFa5zzWbnyqdWbCmgKiAwcpVoYfk,1516
|
|
59
|
-
mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py,sha256=
|
|
60
|
-
mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py,sha256=
|
|
61
|
-
mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py,sha256=
|
|
62
|
-
mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py,sha256=
|
|
62
|
+
mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py,sha256=9Up7ob1UMUG438SKjW7Ffn6OFiurC7Qpl0v19nwDjQQ,15601
|
|
63
|
+
mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py,sha256=DVimjuvZYJoCaIswuO6YYVDtbLgZp33KQFmnlb9ngDY,1804
|
|
64
|
+
mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py,sha256=1JU9eEygAX1bYA-pMlLC4dPMnd2KdaMRVtEpEWX-JM8,20982
|
|
65
|
+
mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py,sha256=niJJjPkk1fSDr__Upf-9DbBkoPrFn8Gz_eTPgO0WpE8,3221
|
|
63
66
|
mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py,sha256=oRNZLA2uxiRM5eheAuRMM5eT0Oxe1YHqg59BHys3sXY,17970
|
|
64
67
|
mx_bluesky/beamlines/i24/serial/web_gui_plans/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
65
|
-
mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py,sha256=
|
|
68
|
+
mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py,sha256=BtZaTZJGSv_Je2UleDJTsy8HLiuc_C5YP4c46K3UOgo,6609
|
|
66
69
|
mx_bluesky/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
67
70
|
mx_bluesky/common/xrc_result.py,sha256=J1uB9Bujz_Sq_MwvYdWOZL3c6kX09TSaZW3eetRXBpw,2351
|
|
71
|
+
mx_bluesky/common/device_setup_plans/manipulate_sample.py,sha256=6iE47tjD8M-MJiRv6HMfMH5XLTFKNUzrQhB2PQIxrLw,2998
|
|
72
|
+
mx_bluesky/common/device_setup_plans/position_detector.py,sha256=S49ml0KNZ6wXPQqOxNJ2whKTCyRTcKdBXBhyeEyFDQQ,635
|
|
73
|
+
mx_bluesky/common/device_setup_plans/setup_oav.py,sha256=7WLElZZU5mWq9g2WP86p3P81uiSPuj2V4kIkqXlap3o,2692
|
|
68
74
|
mx_bluesky/common/device_setup_plans/setup_panda.py,sha256=OF-ZygZyAyQEUdrAWiIxWZ6QhAsVx4Mm9ngRYB1mzKI,433
|
|
69
75
|
mx_bluesky/common/device_setup_plans/xbpm_feedback.py,sha256=WsUMdeOZBgbj-bFp7x66aHp2oWffQmjyp61-qmtQAmI,2153
|
|
76
|
+
mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py,sha256=IY5pq8ni_LKD4LTZG0bbKrC3fEXAnxiunIkp6Oray_c,2897
|
|
77
|
+
mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py,sha256=BhwCm-uFQJjgtElfj1Q5DZpKFqRae5iU9Vm7ReX1M4c,6982
|
|
70
78
|
mx_bluesky/common/external_interaction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
71
79
|
mx_bluesky/common/external_interaction/config_server.py,sha256=EmvLfOkvoJlnKa0sffAKNICkY26YsQQqY9sYHKmOGzw,2441
|
|
72
|
-
mx_bluesky/common/external_interaction/test_config_server.py,sha256=4wdYsOpXJfc3yNBZvdcjZGSllOHzKBTB8oYFjjSOufU,960
|
|
73
80
|
mx_bluesky/common/external_interaction/callbacks/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
74
81
|
mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py,sha256=iBj4WNK5ikieZzTePBZ9AEu6ehlnpew1nDK3ONJqibI,2093
|
|
75
82
|
mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py,sha256=JmF5FssUqNPgsnxqrgxB9Pmw5Dd7W6GCPb9Mur8DHCo,4017
|
|
76
|
-
mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py,sha256=
|
|
83
|
+
mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py,sha256=Bk5dpAUunuNbhor7MfOc7qRKhbIAhRbtfBKzSTUeUnE,9875
|
|
77
84
|
mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py,sha256=bHtnDZfxIR5zzSRiBSehZ51y42wzkEcCJ7rFg93aONA,2578
|
|
78
85
|
mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py,sha256=pfZxQfS9SnXep3F2YAPptDX5bjjWvbXtgy5fINfsoTU,626
|
|
79
86
|
mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py,sha256=NHb8Gp86TAk6PRTV3inWrlW-Lj96LmnZda7ZGewlrFA,712
|
|
@@ -82,88 +89,84 @@ mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py,sha25
|
|
|
82
89
|
mx_bluesky/common/external_interaction/callbacks/sample_handling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
83
90
|
mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py,sha256=niZ7CG1vqbp0MUjRfchevmLwJMg-puMz4i_HDPQavI0,2880
|
|
84
91
|
mx_bluesky/common/external_interaction/callbacks/xray_centre/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
85
|
-
mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py,sha256=
|
|
92
|
+
mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py,sha256=niNZLRO3iEFIM6PFnS5byl4n9X6GwZR0NRzDmy9IFyQ,12634
|
|
86
93
|
mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py,sha256=fOYJkqaXEfCdLGQwGhTrzfGOj6Ed3t2wcRgv68DOOHc,1790
|
|
87
94
|
mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py,sha256=64ZA2ACcq8mI9tKG1MMTf46PYdb_B-sul8xQGM56_WA,4709
|
|
88
95
|
mx_bluesky/common/external_interaction/ispyb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
89
96
|
mx_bluesky/common/external_interaction/ispyb/data_model.py,sha256=HJZPT_j5EMK7-j-0tdaugiS3kDp44_jzvVoP-xcFCsA,2738
|
|
90
97
|
mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py,sha256=Y3nZV5NZ-XnYThettFMhZin4dQb5jAZfT2mGmtLlv74,6076
|
|
91
|
-
mx_bluesky/common/external_interaction/ispyb/ispyb_store.py,sha256=
|
|
92
|
-
mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py,sha256=
|
|
98
|
+
mx_bluesky/common/external_interaction/ispyb/ispyb_store.py,sha256=YMHENdmzzErRc4AxbpgMIGXmULrd6DmiqKfq8rP8fBc,11183
|
|
99
|
+
mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py,sha256=5-8wHmY1KvMuRpXUxN5YBCQP3M-Jk-sTcfDm-CC84Mw,732
|
|
93
100
|
mx_bluesky/common/external_interaction/nexus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
94
|
-
mx_bluesky/common/external_interaction/nexus/nexus_utils.py,sha256=
|
|
101
|
+
mx_bluesky/common/external_interaction/nexus/nexus_utils.py,sha256=n97KHJJd_C59SOVJHcJ3RbNkvxkoUrF6fIJx3jXBuI0,5580
|
|
95
102
|
mx_bluesky/common/external_interaction/nexus/write_nexus.py,sha256=tIz9PFFSiaUs1olbMtLGHddTLj132rEuFSWBK9rOM6Y,4087
|
|
96
|
-
mx_bluesky/common/parameters/components.py,sha256=
|
|
97
|
-
mx_bluesky/common/parameters/constants.py,sha256=
|
|
98
|
-
mx_bluesky/common/parameters/gridscan.py,sha256=
|
|
103
|
+
mx_bluesky/common/parameters/components.py,sha256=z4UD4GZF5dhn-8mMUCfX1nKfXgpricqdAVY6azNfRWM,8284
|
|
104
|
+
mx_bluesky/common/parameters/constants.py,sha256=yB-yV2RH8wBueEp6dAl87_JwssKgU8vxjwNbENjbjZA,4426
|
|
105
|
+
mx_bluesky/common/parameters/gridscan.py,sha256=XHlXi6zSJoag11hrS4_k44v_NZSIdCS-QBveben2nPw,7034
|
|
99
106
|
mx_bluesky/common/plans/__init__.py,sha256=FMA-4VN1TJCPcyURKF0qPIQ8uo8YBbtHPRdJokVF4MA,129
|
|
100
|
-
mx_bluesky/common/plans/
|
|
101
|
-
mx_bluesky/common/plans/read_hardware.py,sha256=
|
|
107
|
+
mx_bluesky/common/plans/common_flyscan_xray_centre_plan.py,sha256=83qzhnuLOPZi6EVGMUHtjPNIg92PexHkY2JanesrWGU,12404
|
|
108
|
+
mx_bluesky/common/plans/read_hardware.py,sha256=Og7Uz8lAB1_Z6puN6ws_2kwOqCvgQMqfmyZPFZMRneY,2351
|
|
102
109
|
mx_bluesky/common/plans/write_sample_status.py,sha256=pmS4Lsndp90CCIKzD_wssvbzt1qu7rEzfXgxvDwDrQ8,1313
|
|
110
|
+
mx_bluesky/common/plans/inner_plans/__init__ .py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
111
|
+
mx_bluesky/common/plans/inner_plans/do_fgs.py,sha256=6aFWvQAuDgBfySzKgt567U_aoDYhAxfUhEDpn3wMjSQ,4775
|
|
103
112
|
mx_bluesky/common/preprocessors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
104
113
|
mx_bluesky/common/preprocessors/preprocessors.py,sha256=BNpSM7S9gxhVbG39rjH14k89sOmKiII0cqApH3pF_H0,4476
|
|
105
114
|
mx_bluesky/common/protocols/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
106
115
|
mx_bluesky/common/protocols/protocols.py,sha256=I-Yd1AFDarfTe14fMgv0VONEJ-9K-5IwDAItNWZPZ90,298
|
|
107
116
|
mx_bluesky/common/utils/context.py,sha256=Fe_YSNv3ZEIZvpdWs-9UqiG6-xEEdCpK6oMYYdCSYT8,2198
|
|
108
117
|
mx_bluesky/common/utils/exceptions.py,sha256=aB_26oowu7gvoaWWKpiBEllrvtGG-Hd6HLsE86mQgKI,2153
|
|
109
|
-
mx_bluesky/common/utils/log.py,sha256=
|
|
118
|
+
mx_bluesky/common/utils/log.py,sha256=CepibF7U5GnN-ICl4bmhbEwqRzWsSFyfNtBDJejK0eo,4325
|
|
110
119
|
mx_bluesky/common/utils/tracing.py,sha256=stnBZIvPuKiAm2wVc8lFr3ns7V5C52rUigULi9V-IFs,1171
|
|
111
120
|
mx_bluesky/common/utils/utils.py,sha256=q2uCaK1E8zLVk1BFmj7qlTnQf3JRKjCjyadIVnL1-4M,1180
|
|
112
121
|
mx_bluesky/hyperion/__init__.py,sha256=f4E8wInL1Ll4eeFtAiyKmipOBTPlUtKmVK-m_LOQG4M,35
|
|
113
|
-
mx_bluesky/hyperion/__main__.py,sha256=
|
|
114
|
-
mx_bluesky/hyperion/baton_handler.py,sha256=
|
|
122
|
+
mx_bluesky/hyperion/__main__.py,sha256=2TEoxvKU3JaG74rW3VKCf-DQhl6CRl_eZNQ0u5dW6EA,11406
|
|
123
|
+
mx_bluesky/hyperion/baton_handler.py,sha256=AC3Qca5d3KdM5eN2nTqA2HmPkN4ZciOuCxtCKLfK0Uc,3276
|
|
115
124
|
mx_bluesky/hyperion/device_setup_plans/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
116
|
-
mx_bluesky/hyperion/device_setup_plans/
|
|
117
|
-
mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py,sha256=68L4Fd8nvvH_VeQJfOYK_3WLrlKRt09TRsaA9T2uqU0,4703
|
|
118
|
-
mx_bluesky/hyperion/device_setup_plans/manipulate_sample.py,sha256=fuNRH8slknuZ0iNVv2htiuDozc9LzvxUrWuwYQTtLt8,3293
|
|
119
|
-
mx_bluesky/hyperion/device_setup_plans/position_detector.py,sha256=S49ml0KNZ6wXPQqOxNJ2whKTCyRTcKdBXBhyeEyFDQQ,635
|
|
120
|
-
mx_bluesky/hyperion/device_setup_plans/setup_oav.py,sha256=jVbDCSKDXxJXPfr-dR6dQgKLPmh7pzewj8gH9y-psy8,2564
|
|
125
|
+
mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py,sha256=iQawC-nIOVSoMMSYl4mleIkVYs-BaKKMTgOWX4efHTg,4723
|
|
121
126
|
mx_bluesky/hyperion/device_setup_plans/setup_panda.py,sha256=96eFp4acQLOthe1PA-S14uv635uGVP71DpP7qy_uo40,8509
|
|
122
|
-
mx_bluesky/hyperion/device_setup_plans/setup_zebra.py,sha256=
|
|
123
|
-
mx_bluesky/hyperion/device_setup_plans/smargon.py,sha256=
|
|
124
|
-
mx_bluesky/hyperion/device_setup_plans/utils.py,sha256=
|
|
125
|
-
mx_bluesky/hyperion/experiment_plans/__init__.py,sha256=
|
|
126
|
-
mx_bluesky/hyperion/experiment_plans/
|
|
127
|
-
mx_bluesky/hyperion/experiment_plans/
|
|
128
|
-
mx_bluesky/hyperion/experiment_plans/
|
|
129
|
-
mx_bluesky/hyperion/experiment_plans/
|
|
130
|
-
mx_bluesky/hyperion/experiment_plans/
|
|
131
|
-
mx_bluesky/hyperion/experiment_plans/oav_grid_detection_plan.py,sha256=PRwV04KuvefTm4mV4iE-hB3lLb5LAmJshYKfMnLE-k0,6950
|
|
132
|
-
mx_bluesky/hyperion/experiment_plans/oav_snapshot_plan.py,sha256=DAQZzyw8-yNsUpVWlXFFOtoyUVEh8EskmyBgdSTExqU,2748
|
|
127
|
+
mx_bluesky/hyperion/device_setup_plans/setup_zebra.py,sha256=_PnV4PyrcoN7_CBi-HLWWNMKMKarpFUTcNcXsEx3sZo,9076
|
|
128
|
+
mx_bluesky/hyperion/device_setup_plans/smargon.py,sha256=9znQLGF8Uqif1SZ_H4GyqcnhR3xCI1FIniCaGLRY3zM,758
|
|
129
|
+
mx_bluesky/hyperion/device_setup_plans/utils.py,sha256=z5ybrrbkcpoTXpEqufDdNqRi1zgcSyMZzVYdPm6xdmE,2246
|
|
130
|
+
mx_bluesky/hyperion/experiment_plans/__init__.py,sha256=JhJ9c2V1f1gwAVkuVBuvgBu7LKdgbrp9MBkh7JUefAY,760
|
|
131
|
+
mx_bluesky/hyperion/experiment_plans/experiment_registry.py,sha256=b9ROMppIQPxsR7IBMcBOHTVKB_Vrv5QSG7xqCc7_41g,1674
|
|
132
|
+
mx_bluesky/hyperion/experiment_plans/grid_detect_then_xray_centre_plan.py,sha256=o5l4pWCzGH-Z3PBy7Y9N_xMbfS_ZxRsw5t-OLt6ynCI,7994
|
|
133
|
+
mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py,sha256=5AK0-mY6e8-x6w_Uj41FnS4pvdbLniTdmznAUZPGbpg,6550
|
|
134
|
+
mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py,sha256=kdp1dWh4g-w9Bob3L7VoiTDAVNkxwrvKvSGcEMzZCBc,6177
|
|
135
|
+
mx_bluesky/hyperion/experiment_plans/oav_snapshot_plan.py,sha256=YU_lwG6rlPtrS0KfUxmJb9fgH8jCfpZQzpaBxFudadk,3595
|
|
133
136
|
mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py,sha256=5ZAH17F5T1YyVgA2ML0NEf4ufrD1G0jPRU0_5pINdTg,16195
|
|
134
|
-
mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py,sha256=
|
|
135
|
-
mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py,sha256=
|
|
136
|
-
mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py,sha256=
|
|
137
|
-
mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py,sha256=
|
|
138
|
-
mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py,sha256=
|
|
139
|
-
mx_bluesky/hyperion/experiment_plans/set_energy_plan.py,sha256=
|
|
137
|
+
mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py,sha256=DCD2oUx6n6VL6JaBQU779opOPxHr-UY0dQrSIW2hWus,5002
|
|
138
|
+
mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py,sha256=FP_tAhq7Txljbxvvr3eEMoapDtXj8siPyWd9qcYevBg,6247
|
|
139
|
+
mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py,sha256=imANEAVswFFaMqTISRXSe0BwcUkQ1sIT8O-WnKsxhqM,8082
|
|
140
|
+
mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py,sha256=I1kdngl_FwJN5GiWA9LYgp13VZ_EjWHsBCy2GmdeP2w,6841
|
|
141
|
+
mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py,sha256=az_LYhT7cKTM0z_Y8cdu2zMQKJ9m0ege-uARwmyjEqc,15855
|
|
142
|
+
mx_bluesky/hyperion/experiment_plans/set_energy_plan.py,sha256=8FAqN-aJgRwZSiCX-hNdeGmaijt0l8owdShVBwNchfE,2643
|
|
140
143
|
mx_bluesky/hyperion/external_interaction/__init__.py,sha256=95DwXDmKsx36RgAL-AtLZl2LQoLPKbzeYdlkkP_4Coc,559
|
|
141
|
-
mx_bluesky/hyperion/external_interaction/agamemnon.py,sha256=
|
|
142
|
-
mx_bluesky/hyperion/external_interaction/config_server.py,sha256=
|
|
144
|
+
mx_bluesky/hyperion/external_interaction/agamemnon.py,sha256=Bh6vIg3edjjKmWKZj_IDFYDmGN5pC_FeCCgSFJQiUKc,9984
|
|
145
|
+
mx_bluesky/hyperion/external_interaction/config_server.py,sha256=_nHoHcEXhKSFTszTu57Y5FSCP5Xogmyy8FVwYRraAy4,2146
|
|
143
146
|
mx_bluesky/hyperion/external_interaction/callbacks/__init__.py,sha256=1XHaxDljMveu_DYIlk7n963gHffyC6r4C_RhF6HA-N8,283
|
|
144
|
-
mx_bluesky/hyperion/external_interaction/callbacks/__main__.py,sha256=
|
|
145
|
-
mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py,sha256=
|
|
147
|
+
mx_bluesky/hyperion/external_interaction/callbacks/__main__.py,sha256=1Uu4oT-qnJb2LHQinHrLvN0zBTuz0EZ8HEmqfFrAJE4,6155
|
|
148
|
+
mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py,sha256=Yg9i9YNeQLll9KEtic5omAqZohrlQ4DXdhp0fjGNz5U,11581
|
|
146
149
|
mx_bluesky/hyperion/external_interaction/callbacks/robot_load/ispyb_callback.py,sha256=7xSvCd95tXjvmsbFLecI1hEwJj_rm8yGuJJ1Pmg-RKU,4142
|
|
147
150
|
mx_bluesky/hyperion/external_interaction/callbacks/rotation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
148
|
-
mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py,sha256=
|
|
149
|
-
mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py,sha256=
|
|
150
|
-
mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py,sha256=
|
|
151
|
+
mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py,sha256=KJ1lXurzvvy7eS0W3KDXfnsWzbftsjBUxR0SS0rC0Mg,7460
|
|
152
|
+
mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py,sha256=bba5ZHoOMqvSCUXJIxbx55HGhaoC_Jqhyxxb-ttqt5g,801
|
|
153
|
+
mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py,sha256=QxLjRqoKSmEC9TbTK6mufbWXRcmzLfe9xZclEhUbxIw,4736
|
|
151
154
|
mx_bluesky/hyperion/parameters/__init__.py,sha256=kf2wfcILBUBpT0tJ8-W39BywQUkn67yxl9IVsfrr1LE,115
|
|
152
|
-
mx_bluesky/hyperion/parameters/cli.py,sha256=
|
|
155
|
+
mx_bluesky/hyperion/parameters/cli.py,sha256=zciAE1-7Ahx0B8-RNNk25hB40xBMrmrR7cK1GbEDgaM,1177
|
|
153
156
|
mx_bluesky/hyperion/parameters/components.py,sha256=uXxdW6nIE1VZnh4ZXe5O-LOwsx4MbENEWfLGm2ACvsI,313
|
|
154
|
-
mx_bluesky/hyperion/parameters/constants.py,sha256=
|
|
155
|
-
mx_bluesky/hyperion/parameters/device_composites.py,sha256=
|
|
156
|
-
mx_bluesky/hyperion/parameters/gridscan.py,sha256=
|
|
157
|
-
mx_bluesky/hyperion/parameters/load_centre_collect.py,sha256=
|
|
157
|
+
mx_bluesky/hyperion/parameters/constants.py,sha256=EbMhqD9VJTTMABqDgZAYcZdJ1M6IGvJerTZI-5lONYU,1891
|
|
158
|
+
mx_bluesky/hyperion/parameters/device_composites.py,sha256=zFN-Pog5jUewBygIFyTvxBXC6jo_Of_C3Qo5UGV5u0I,2802
|
|
159
|
+
mx_bluesky/hyperion/parameters/gridscan.py,sha256=LcKfL8LUrQlEeehxawL_GebUxVyKYCJuJysMp5W0t_s,3799
|
|
160
|
+
mx_bluesky/hyperion/parameters/load_centre_collect.py,sha256=1KsL9pk1iJAmCJIn6R560tkrh4hU2pp7dFKVbVb-zYU,3673
|
|
158
161
|
mx_bluesky/hyperion/parameters/robot_load.py,sha256=DSOwIosO629WoXbVFokEjmgqKZz3xzv0feRQHC_ZgpI,1233
|
|
159
|
-
mx_bluesky/hyperion/parameters/rotation.py,sha256=
|
|
162
|
+
mx_bluesky/hyperion/parameters/rotation.py,sha256=wziJtpx9bgBbNsqwVs8fVZlAOflOEoiRzSvgtmB_1b8,7462
|
|
160
163
|
mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml,sha256=mhLBJTSjHCkM9F6mjtqbhNmmrV8qSctbCUfhb0q7pYo,28085
|
|
161
164
|
mx_bluesky/hyperion/utils/__init__.py,sha256=f4E8wInL1Ll4eeFtAiyKmipOBTPlUtKmVK-m_LOQG4M,35
|
|
162
|
-
mx_bluesky/hyperion/utils/context.py,sha256=
|
|
163
|
-
mx_bluesky/hyperion/utils/validation.py,sha256=
|
|
164
|
-
mx_bluesky-1.4.
|
|
165
|
-
mx_bluesky-1.4.
|
|
166
|
-
mx_bluesky-1.4.
|
|
167
|
-
mx_bluesky-1.4.
|
|
168
|
-
mx_bluesky-1.4.
|
|
169
|
-
mx_bluesky-1.4.
|
|
165
|
+
mx_bluesky/hyperion/utils/context.py,sha256=TXvARIUZNLcz-KY_-xPkQvK-tMe1sV_cjFDh6IqPgfo,568
|
|
166
|
+
mx_bluesky/hyperion/utils/validation.py,sha256=5rCvANMbgk1OC0X4bTZWoO-nRhBaM0S6sMvoSYdeR1c,6650
|
|
167
|
+
mx_bluesky-1.4.9.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
|
|
168
|
+
mx_bluesky-1.4.9.dist-info/METADATA,sha256=RDKjEGQVuHICiWqUDHwvuQc1sfIcasJxeVMGJmWAjhY,17360
|
|
169
|
+
mx_bluesky-1.4.9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
170
|
+
mx_bluesky-1.4.9.dist-info/entry_points.txt,sha256=-hM2jXf6TAwgqnUHaEVx02j7sdB0L_WaeHW_tIRuj6o,600
|
|
171
|
+
mx_bluesky-1.4.9.dist-info/top_level.txt,sha256=S4rrzXIUef58ulf_04wn01XGZ3xeJjXs4LPEJ_xoF-I,11
|
|
172
|
+
mx_bluesky-1.4.9.dist-info/RECORD,,
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
from functools import cache
|
|
2
|
-
|
|
3
|
-
import pytest
|
|
4
|
-
|
|
5
|
-
from mx_bluesky.common.external_interaction.config_server import FeatureFlags
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
class MockConfigServer:
|
|
9
|
-
def best_effort_get_all_feature_flags(self):
|
|
10
|
-
return {
|
|
11
|
-
"feature_a": False,
|
|
12
|
-
"feature_b": False,
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class FakeFeatureFlags(FeatureFlags):
|
|
17
|
-
@staticmethod
|
|
18
|
-
@cache
|
|
19
|
-
def get_config_server() -> MockConfigServer: # type: ignore
|
|
20
|
-
return MockConfigServer()
|
|
21
|
-
|
|
22
|
-
feature_a: bool = False
|
|
23
|
-
feature_b: bool = False
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
@pytest.fixture
|
|
27
|
-
def fake_feature_flags():
|
|
28
|
-
return FakeFeatureFlags(feature_a=False, feature_b=False)
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
def test_valid_overridden_features(fake_feature_flags: FakeFeatureFlags):
|
|
32
|
-
assert fake_feature_flags.feature_a is False
|
|
33
|
-
assert fake_feature_flags.feature_b is False
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
def test_invalid_overridden_features():
|
|
37
|
-
with pytest.raises(ValueError, match="Invalid feature toggle"):
|
|
38
|
-
FakeFeatureFlags(feature_x=True) # type: ignore
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import bluesky.plan_stubs as bps
|
|
2
|
-
from dodal.devices.i03.beamstop import Beamstop, BeamstopPositions
|
|
3
|
-
|
|
4
|
-
from mx_bluesky.common.utils.log import LOGGER
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class BeamstopException(Exception):
|
|
8
|
-
pass
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
def check_beamstop(beamstop: Beamstop):
|
|
12
|
-
"""
|
|
13
|
-
Check the current position of the beamstop to ensure it is in position for data collection
|
|
14
|
-
Args:
|
|
15
|
-
beamstop: The beamstop device
|
|
16
|
-
|
|
17
|
-
Raises:
|
|
18
|
-
BeamstopException: If the beamstop is in any other position than DATA_COLLECTION
|
|
19
|
-
"""
|
|
20
|
-
current_pos = yield from bps.rd(beamstop.selected_pos)
|
|
21
|
-
if current_pos != BeamstopPositions.DATA_COLLECTION:
|
|
22
|
-
LOGGER.info(f"Beamstop check failed: position {current_pos}")
|
|
23
|
-
raise BeamstopException(
|
|
24
|
-
f"Beamstop is not DATA_COLLECTION, current state is {current_pos}"
|
|
25
|
-
)
|
|
26
|
-
|
|
27
|
-
LOGGER.info("Beamstop check ok")
|