dls-dodal 1.57.0__tar.gz → 1.59.1__tar.gz
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.
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/PKG-INFO +2 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/write-tests.md +30 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/pyproject.toml +1 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dls_dodal.egg-info/PKG-INFO +2 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dls_dodal.egg-info/SOURCES.txt +27 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dls_dodal.egg-info/requires.txt +1 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/_version.py +3 -3
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/b07.py +10 -5
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/b07_1.py +10 -5
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/b21.py +22 -0
- dls_dodal-1.59.1/src/dodal/beamlines/i02_1.py +117 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i03.py +7 -4
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i04.py +20 -3
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i09.py +10 -9
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i09_1.py +10 -5
- dls_dodal-1.59.1/src/dodal/beamlines/i10-1.py +25 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i10.py +17 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i11.py +0 -17
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i19_2.py +20 -0
- dls_dodal-1.59.1/src/dodal/beamlines/i21.py +27 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i22.py +12 -2
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i24.py +32 -3
- dls_dodal-1.59.1/src/dodal/beamlines/k07.py +31 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/p60.py +10 -9
- dls_dodal-1.59.1/src/dodal/common/beamlines/commissioning_mode.py +33 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/apple2_undulator.py +18 -142
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/attenuator/attenuator.py +48 -2
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/attenuator/filter.py +3 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/attenuator/filter_selections.py +26 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/baton.py +4 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/eiger.py +2 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/__init__.py +4 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/abstract/base_driver_io.py +30 -18
- dls_dodal-1.59.1/src/dodal/devices/electron_analyser/energy_sources.py +101 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/specs/detector.py +6 -6
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/specs/driver_io.py +7 -15
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/vgscienta/detector.py +6 -6
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/vgscienta/driver_io.py +7 -14
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/fast_grid_scan.py +130 -64
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/focusing_mirror.py +30 -0
- dls_dodal-1.59.1/src/dodal/devices/i02_1/fast_grid_scan.py +61 -0
- dls_dodal-1.59.1/src/dodal/devices/i02_1/sample_motors.py +19 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i04/murko_results.py +69 -23
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/i10_apple2.py +282 -140
- dls_dodal-1.59.1/src/dodal/devices/i19/backlight.py +17 -0
- dls_dodal-1.59.1/src/dodal/devices/i21/__init__.py +3 -0
- dls_dodal-1.59.1/src/dodal/devices/i21/enums.py +8 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i22/nxsas.py +2 -0
- dls_dodal-1.59.1/src/dodal/devices/i24/commissioning_jungfrau.py +114 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/smargon.py +0 -56
- dls_dodal-1.59.1/src/dodal/devices/temperture_controller/__init__.py +3 -0
- dls_dodal-1.59.1/src/dodal/devices/temperture_controller/lakeshore/lakeshore.py +204 -0
- dls_dodal-1.59.1/src/dodal/devices/temperture_controller/lakeshore/lakeshore_io.py +112 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/tetramm.py +38 -16
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/undulator.py +13 -9
- dls_dodal-1.59.1/src/dodal/devices/v2f.py +39 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/xbpm_feedback.py +12 -6
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zebra/zebra.py +1 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zebra/zebra_constants_mapping.py +1 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/parameters/experiment_parameter_base.py +1 -5
- dls_dodal-1.59.1/tests/common/beamlines/test_commissioning_mode.py +35 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/test_watcher_utils.py +14 -0
- dls_dodal-1.59.1/tests/conftest.py +133 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/abstract/test_base_detector.py +4 -3
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/abstract/test_base_driver_io.py +24 -8
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/conftest.py +28 -17
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/specs/test_detector.py +6 -3
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/specs/test_driver_io.py +14 -21
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/test_detector.py +4 -3
- dls_dodal-1.59.1/tests/devices/electron_analyser/test_energy_sources.py +93 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/vgscienta/test_detector.py +6 -3
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/vgscienta/test_driver_io.py +21 -22
- dls_dodal-1.59.1/tests/devices/i02_1/test_fast_grid_scan.py +23 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i03/test_undulator_dcm.py +29 -12
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i04/test_murko_results.py +125 -11
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_i10Apple2.py +106 -73
- dls_dodal-1.59.1/tests/devices/i19/test_backlight.py +18 -0
- dls_dodal-1.59.1/tests/devices/i24/test_commissioning_jungfrau.py +66 -0
- dls_dodal-1.59.1/tests/devices/temperature_controller/__init__.py +0 -0
- dls_dodal-1.59.1/tests/devices/temperature_controller/lakeshore/__init__.py +0 -0
- dls_dodal-1.59.1/tests/devices/temperature_controller/lakeshore/test_lakeshore.py +136 -0
- dls_dodal-1.59.1/tests/devices/temperature_controller/lakeshore/test_lakeshore_io.py +81 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_attenuator.py +44 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_baton.py +1 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_gridscan.py +65 -75
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_tetramm.py +41 -7
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_undulator.py +49 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_xbpm_feedback.py +26 -1
- dls_dodal-1.59.1/tests/devices/util/__init__.py +0 -0
- dls_dodal-1.59.1/tests/fake_zocalo/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_zocalo/__main__.py +1 -1
- dls_dodal-1.59.1/tests/plan_stubs/__init__.py +0 -0
- dls_dodal-1.57.0/src/dodal/beamlines/i02_1.py +0 -37
- dls_dodal-1.57.0/tests/conftest.py +0 -63
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.copier-answers.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.devcontainer/devcontainer.json +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/CODEOWNERS +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/CONTRIBUTING.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/ISSUE_TEMPLATE/issue_template.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/actions/install_requirements/action.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/dependabot.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/pages/index.html +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/pages/make_switcher.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/scripts/check_test_durations.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/_dist.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/_docs.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/_pypi.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/_release.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/_test.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/_tox.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/ci.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.github/workflows/periodic.yml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.gitignore +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.pre-commit-config.yaml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.vscode/extensions.json +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.vscode/launch.json +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.vscode/settings.json +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/.vscode/tasks.json +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/Dockerfile +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/LICENSE +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/README.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/catalog-info.yaml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/conftest.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/_templates/autosummary/class.rst +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/_templates/autosummary/module.rst +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/_templates/custom-module-template.rst +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/assets/where-to-put-dodal-logic.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/assets/zocalo.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/conf.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/0001-record-architecture-decisions.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/0002-switched-to-python-copier-template.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/0003-codeowners.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/0004-make-devices-factory.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/0005-standardise-devices-at-epics-level.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/0006-devices-shared-between-endstations.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions/COPYME +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/decisions.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/reviews.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/umls/apple2_design.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations/umls/i10_id_design.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/explanations.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/genindex.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/build-docs.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/contribute.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/coverage.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/create-beamline.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/create-device.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/dev-install.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/excalidraw.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/external-io-devices.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/lint.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/lock-requirements.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/make-release.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/move-code.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/pypi.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/run-tests.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/static-analysis.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/update-template.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to/zocalo.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/how-to.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/images/dls-logo.svg +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/images/excalidraw-example.svg +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/index.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/reference/api.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/reference/device-standards.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/reference/standards.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/reference.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/tutorials/get_started.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/tutorials/installation.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/docs/tutorials.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/pull_request_template.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/setup.cfg +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dls_dodal.egg-info/dependency_links.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dls_dodal.egg-info/entry_points.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dls_dodal.egg-info/top_level.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/__main__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamline_specific_utils/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamline_specific_utils/i03.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamline_specific_utils/i05_shared.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/README.md +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/adsim.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/aithre.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/b01_1.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/b16.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/b18.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i05.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i05_1.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i09_2.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i13_1.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i17.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i18.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i19_1.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i19_optics.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i20_1.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/i23.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/k11.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/p38.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/p45.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/p99.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/beamlines/training_rig.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/cli.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/beamlines/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/beamlines/beamline_parameters.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/beamlines/beamline_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/beamlines/device_helpers.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/coordination.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/crystal_metadata.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/data_util.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/device_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/maths.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/types.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/udc_directory_provider.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/visit.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/common/watcher_utils.py +1 -1
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/aithre_lasershaping/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/aithre_lasershaping/goniometer.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/aithre_lasershaping/laser_robot.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/aperture.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/aperturescatterguard.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/areadetector/plugins/CAM.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/areadetector/plugins/MJPG.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b07/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b07/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b07_1/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b07_1/ccmc.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b07_1/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b16/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/b16/detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/backlight.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/bimorph_mirror.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/collimation_table.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/common_dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/controllers.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/cryostream.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/current_amplifiers/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/current_amplifiers/current_amplifier.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/current_amplifiers/current_amplifier_detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/current_amplifiers/femto.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/current_amplifiers/sr570.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/current_amplifiers/struck_scaler_counter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/detector/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/detector/det_dim_constants.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/detector/det_dist_to_beam_converter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/detector/det_resolution.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/detector/detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/detector/detector_motion.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/diamond_filter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/eiger_odin.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/abstract/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/abstract/base_detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/abstract/base_region.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/abstract/types.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/specs/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/specs/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/specs/region.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/types.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/util.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/vgscienta/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/vgscienta/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/electron_analyser/vgscienta/region.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/eurotherm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/fluorescence_detector_motion.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/flux.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/hutch_shutter.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/i10 → dls_dodal-1.59.1/src/dodal/devices/i02_1}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i03/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i03/dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i03/undulator_dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i04/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i04/constants.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i04/transfocator.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i05/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i05/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i09/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i09/dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i09/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i09_1/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i09_1/enums.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/i13_1 → dls_dodal-1.59.1/src/dodal/devices/i10}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/diagnostics.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/i10_setting_data.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/mirrors.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/rasor/rasor_current_amp.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/rasor/rasor_motors.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/rasor/rasor_scaler_cards.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i10/slits.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i11/cyberstar_blower.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i11/diff_stages.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i11/mythen.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i11/nx100robot.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i11/spinner.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/i19 → dls_dodal-1.59.1/src/dodal/devices/i13_1}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i13_1/merlin.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i13_1/merlin_controller.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i18/KBMirror.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i18/diode.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/i20_1 → dls_dodal-1.59.1/src/dodal/devices/i19}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i19/beamstop.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i19/blueapi_device.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i19/diffractometer.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i19/hutch_access.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i19/shutter.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/i24 → dls_dodal-1.59.1/src/dodal/devices/i20_1}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i22/dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i22/fswitch.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/oav → dls_dodal-1.59.1/src/dodal/devices/i24}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/aperture.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/beam_center.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/beamstop.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/dual_backlight.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/focus_mirrors.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/pmac.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/i24/vgonio.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/ipin.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/linkam3.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/motors.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/mx_phase1/beamstop.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/p99 → dls_dodal-1.59.1/src/dodal/devices/oav}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/oav_calculations.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/oav_detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/oav_parameters.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/oav_to_redis_forwarder.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/pin_image_recognition/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/pin_image_recognition/manual_test.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/pin_image_recognition/utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/snapshots/grid_overlay.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/snapshots/snapshot.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/snapshots/snapshot_image_processing.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/snapshots/snapshot_with_grid.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/oav/utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/p45.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/p60/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/p60/enums.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/p60/lab_xray_source.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/util → dls_dodal-1.59.1/src/dodal/devices/p99}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/p99/andor2_point.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/p99/sample_stage.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/pgm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/positioner.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/pressure_jump_cell.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/qbpm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/robot.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/s4_slit_gaps.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/scintillator.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/slits.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/status.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/synchrotron.py +0 -0
- {dls_dodal-1.57.0/src/dodal/devices/zebra → dls_dodal-1.59.1/src/dodal/devices/temperture_controller/lakeshore}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/thawer.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/turbo_slit.py +0 -0
- {dls_dodal-1.57.0/src/dodal/plan_stubs → dls_dodal-1.59.1/src/dodal/devices/util}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/util/adjuster_plans.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/util/epics_util.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/util/lookup_tables.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/watsonmarlow323_pump.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/webcam.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/xspress3/xspress3.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/xspress3/xspress3_channel.py +0 -0
- {dls_dodal-1.57.0/src/dodal/plans/preprocessors → dls_dodal-1.59.1/src/dodal/devices/zebra}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zebra/zebra_controlled_shutter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zocalo/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zocalo/zocalo_constants.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zocalo/zocalo_interaction.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/devices/zocalo/zocalo_results.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/log.py +0 -0
- {dls_dodal-1.57.0/system_tests → dls_dodal-1.59.1/src/dodal/plan_stubs}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plan_stubs/check_topup.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plan_stubs/data_session.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plan_stubs/motor_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plan_stubs/wrapped.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/bimorph.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/configure_arm_trigger_and_disarm_detector.py +0 -0
- {dls_dodal-1.57.0/tests → dls_dodal-1.59.1/src/dodal/plans/preprocessors}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/preprocessors/verify_undulator_gap.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/save_panda.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/scanspec.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/verify_undulator_gap.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/plans/wrapped.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/testing/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/testing/electron_analyser/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/testing/electron_analyser/device_factory.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/testing/setup.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/src/dodal/utils.py +0 -0
- {dls_dodal-1.57.0/tests/beamlines → dls_dodal-1.59.1/system_tests}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/system_tests/test_adsim.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/system_tests/test_cli.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/system_tests/test_oav_system.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/system_tests/test_oav_to_redis_system.py +0 -0
- {dls_dodal-1.57.0/tests/common → dls_dodal-1.59.1/tests}/__init__.py +0 -0
- {dls_dodal-1.57.0/tests/common → dls_dodal-1.59.1/tests}/beamlines/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/beamlines/test_b16.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/beamlines/test_i03.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/beamlines/test_i24.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/beamlines/test_mapping.py +0 -0
- {dls_dodal-1.57.0/tests/devices → dls_dodal-1.59.1/tests/common}/__init__.py +0 -0
- {dls_dodal-1.57.0/tests/devices/electron_analyser → dls_dodal-1.59.1/tests/common/beamlines}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/beamlines/test_beamline_parameters.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/beamlines/test_beamline_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/beamlines/test_device_instantiation.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/test_coordination.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/test_crystal_metadata.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/test_maths.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/test_udc_directory_provider.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/common/test_visit.py +0 -0
- {dls_dodal-1.57.0/tests/devices/electron_analyser/abstract → dls_dodal-1.59.1/tests/devices}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/aithre_lasershaping/test_goniometer.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/b07_1/test_ccmc.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/current_amplifier/test_femto.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/current_amplifier/test_sr570.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/detector/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/detector/test_data/test_det_dist_converter.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/detector/test_det_dim_constants.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/detector/test_det_resolution.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/detector/test_detector.py +0 -0
- {dls_dodal-1.57.0/tests/devices/electron_analyser/specs → dls_dodal-1.59.1/tests/devices/electron_analyser}/__init__.py +0 -0
- {dls_dodal-1.57.0/tests/devices/electron_analyser/vgscienta → dls_dodal-1.59.1/tests/devices/electron_analyser/abstract}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/abstract/test_base_region.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/helper_util/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/helper_util/assert_func.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/helper_util/sequence.py +0 -0
- {dls_dodal-1.57.0/tests/devices/i03 → dls_dodal-1.59.1/tests/devices/electron_analyser/specs}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/specs/test_region.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/test_data/specs_sequence.seq +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/test_data/vgscienta_sequence.seq +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/test_util.py +0 -0
- {dls_dodal-1.57.0/tests/devices/i04 → dls_dodal-1.59.1/tests/devices/electron_analyser/vgscienta}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/electron_analyser/vgscienta/test_region.py +0 -0
- {dls_dodal-1.57.0/tests/devices/i09 → dls_dodal-1.59.1/tests/devices/i02_1}/__init__.py +0 -0
- {dls_dodal-1.57.0/tests/devices/i19 → dls_dodal-1.59.1/tests/devices/i03}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i03/test_dcm.py +0 -0
- {dls_dodal-1.57.0/tests/devices/i24 → dls_dodal-1.59.1/tests/devices/i04}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i04/test_transfocator.py +0 -0
- {dls_dodal-1.57.0/tests/devices/mx_phase1 → dls_dodal-1.59.1/tests/devices/i09}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i09/test_dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/IDEnergy2GapCalibrations.csv +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/IDEnergy2PhaseCalibrations.csv +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/expectedIDEnergy2GapCalibrationsIdd.pkl +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/expectedIDEnergy2GapCalibrationsIdu.pkl +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/expectedIDEnergy2PhaseCalibrationsidd.pkl +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i10/test_data/expectedIDEnergy2PhaseCalibrationsidu.pkl +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i11/test_i11devices.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i11/test_mythen.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i13_1/test_merlin.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i18/test_kb_mirror.py +0 -0
- {dls_dodal-1.57.0/tests/devices/oav → dls_dodal-1.59.1/tests/devices/i19}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i19/test_beamstop.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i19/test_diffractometer.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i19/test_shutter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i22/test_dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i22/test_fswitch.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i22/test_metadataholder.py +0 -0
- {dls_dodal-1.57.0/tests/devices/util → dls_dodal-1.59.1/tests/devices/i24}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i24/test_dual_backlight.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i24/test_focus_mirrors.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i24/test_pmac.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/i24/test_vgonio.py +0 -0
- {dls_dodal-1.57.0/tests/fake_zocalo → dls_dodal-1.59.1/tests/devices/mx_phase1}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/mx_phase1/test_beamstop.py +0 -0
- {dls_dodal-1.57.0/tests/plan_stubs → dls_dodal-1.59.1/tests/devices/oav}/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/conftest.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/image_recognition/test_pin_tip_detect.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/image_recognition/test_pin_tip_detect_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_data/oav_snapshot_expected.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_data/oav_snapshot_test.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_data/test_OAVCentring.json +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_grid_overlay.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_oav.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_oav_parameters.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_oav_to_redis_forwarder.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_oav_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_snapshot_image_processing.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/oav/test_snapshots.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/p60/test_lab_xray_source.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/p99/test_p99_stage.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test.png +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_aperture.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_aperture_scatterguard.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_apple2_undulator.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_backlight.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_bart_robot.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_beam_converter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_bimorph_mirror.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_common_dcm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_controllers.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_daq_configuration/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_daq_configuration/domain/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_daq_configuration/domain/beamlineParameters +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_daq_configuration/lookup/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_data/test_beamline_undulator_to_gap_lookup_table.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_data/test_lookup_table.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_diamond_filter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_eiger.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_focusing_mirror.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_hutch_shutter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_motors.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_odin.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_positioner.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_pressure_jump_cell.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_qbpm.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_scintillator.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_slits.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_smargon.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_status.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_synchrotron.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_thawer.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_turbo_slit.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_watsonmarlow323_pump.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_webcam.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_xspress3.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_zebra.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_zebra_constants_mapping.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_zebra_shutter.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_zocalo_interaction.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/test_zocalo_results.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_adjuster_plans.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_beamline_specific_utils.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_data/test_beamline_dcm_roll_converter.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_data/test_beamline_dcm_roll_converter_non_monotonic.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_data/test_beamline_dcm_roll_converter_reversed.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_lookup_tables.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/devices/util/test_save_panda.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline_all_devices_raise_exception.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline_broken_dependency.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline_dependencies.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline_disordered_dependencies.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline_misbehaving_builtins.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_beamline_some_devices_working.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_device_factory_beamline.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_zocalo/README.rst +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/fake_zocalo/dls_start_fake_zocalo.sh +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_data/topup_long_delay.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_data/topup_short_params.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_data_session.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_motor_util_plans.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_topup_plan.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plan_stubs/test_wrapped_stubs.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/conftest.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_bimorph.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_compliance.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_configure_arm_trigger_and_disarm_detector.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_preprocessors/test_verify_undulator_gap.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_scanspec.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_verify_undulator_gap_plan.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/plans/test_wrapped.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/preprocessors/test_filesystem_metadata.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_cli.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_data/__init__.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_data/bad_beamlineParameters +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_data/i04_beamlineParameters +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_data/test_beamline_parameters.txt +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_data/test_display.configuration +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_data/test_oav_zoom_levels.xml +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_log.py +0 -0
- {dls_dodal-1.57.0 → dls_dodal-1.59.1}/tests/test_utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dls-dodal
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.59.1
|
|
4
4
|
Summary: Ophyd devices and other utils that could be used across DLS beamlines
|
|
5
5
|
Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>, Joseph Ware <joseph.ware@diamond.ac.uk>, Oliver Silvester <Oliver.Silvester@diamond.ac.uk>, Noemi Frisina <noemi.frisina@diamond.ac.uk>
|
|
6
6
|
License: Apache License
|
|
@@ -233,6 +233,7 @@ Requires-Dist: scanspec>=0.7.3
|
|
|
233
233
|
Requires-Dist: event-model>=1.23
|
|
234
234
|
Requires-Dist: pyzmq==26.3.0
|
|
235
235
|
Requires-Dist: deepdiff
|
|
236
|
+
Requires-Dist: daq-config-server>=v1.0.0-rc.2
|
|
236
237
|
Provides-Extra: dev
|
|
237
238
|
Requires-Dist: black; extra == "dev"
|
|
238
239
|
Requires-Dist: diff-cover; extra == "dev"
|
|
@@ -120,3 +120,33 @@ async def test_my_device_read(sim_my_device: MyDevice, RE: RunEngine) -> None:
|
|
|
120
120
|
}
|
|
121
121
|
)
|
|
122
122
|
```
|
|
123
|
+
|
|
124
|
+
## Test performance and reliability
|
|
125
|
+
|
|
126
|
+
Dodal has well over 1000 unit tests and developers will run the full unit test suite frequently on their local
|
|
127
|
+
machines, therefore it is imperative that the unit tests are both reliable and run quickly. Ideally the test suite
|
|
128
|
+
should run in about a minute, so if your test takes more than a fraction of a second to complete then consider
|
|
129
|
+
making it faster. The GitHub CI will fail if any test takes longer than 1 second.
|
|
130
|
+
|
|
131
|
+
Tests that involve concurrency can sometimes be unreliable due to subtle race conditions and variations in timing
|
|
132
|
+
caused by caching, garbage collection and other factors.
|
|
133
|
+
Often these manifest only on certain machines or in CI and are difficult to reproduce. Whilst the odd test failure
|
|
134
|
+
can be worked around by re-running the tests, this is annoying and a build up of such flaky tests is undesirable so
|
|
135
|
+
it is preferable to fix the test.
|
|
136
|
+
|
|
137
|
+
### Event loop fuzzer
|
|
138
|
+
|
|
139
|
+
To assist in the reproduction of concurrency-related test failures, there is an event loop fuzzer available as a
|
|
140
|
+
pytest fixture. The fuzzer introduces random delays into the ``asyncio`` event loop. You can use it as by
|
|
141
|
+
requesting ``event_loop_fuzzing`` as a fixture. It is also recommended when debugging to parametrize the test to
|
|
142
|
+
introduce a good number of iterations in order to ensure the problem has a good chance to show up, but remember to
|
|
143
|
+
remove the parametrization afterwards.
|
|
144
|
+
|
|
145
|
+
```Python
|
|
146
|
+
import pytest
|
|
147
|
+
# repeat the test a number of times
|
|
148
|
+
@pytest.mark.parametrize("i", range(0, 100))
|
|
149
|
+
async def my_unreliable_test(i, event_loop_fuzzing):
|
|
150
|
+
# Do some stuff in here
|
|
151
|
+
|
|
152
|
+
```
|
|
@@ -32,6 +32,7 @@ dependencies = [
|
|
|
32
32
|
"event-model>=1.23", # Until bluesky pins it https://github.com/DiamondLightSource/dodal/issues/1278
|
|
33
33
|
"pyzmq==26.3.0", # Until we can move to RHEL 8 https://github.com/DiamondLightSource/mx-bluesky/issues/1139
|
|
34
34
|
"deepdiff",
|
|
35
|
+
"daq-config-server>=v1.0.0-rc.2",# For getting Configuration settings.
|
|
35
36
|
]
|
|
36
37
|
|
|
37
38
|
dynamic = ["version"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dls-dodal
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.59.1
|
|
4
4
|
Summary: Ophyd devices and other utils that could be used across DLS beamlines
|
|
5
5
|
Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>, Joseph Ware <joseph.ware@diamond.ac.uk>, Oliver Silvester <Oliver.Silvester@diamond.ac.uk>, Noemi Frisina <noemi.frisina@diamond.ac.uk>
|
|
6
6
|
License: Apache License
|
|
@@ -233,6 +233,7 @@ Requires-Dist: scanspec>=0.7.3
|
|
|
233
233
|
Requires-Dist: event-model>=1.23
|
|
234
234
|
Requires-Dist: pyzmq==26.3.0
|
|
235
235
|
Requires-Dist: deepdiff
|
|
236
|
+
Requires-Dist: daq-config-server>=v1.0.0-rc.2
|
|
236
237
|
Provides-Extra: dev
|
|
237
238
|
Requires-Dist: black; extra == "dev"
|
|
238
239
|
Requires-Dist: diff-cover; extra == "dev"
|
|
@@ -111,6 +111,7 @@ src/dodal/beamlines/i05_1.py
|
|
|
111
111
|
src/dodal/beamlines/i09.py
|
|
112
112
|
src/dodal/beamlines/i09_1.py
|
|
113
113
|
src/dodal/beamlines/i09_2.py
|
|
114
|
+
src/dodal/beamlines/i10-1.py
|
|
114
115
|
src/dodal/beamlines/i10.py
|
|
115
116
|
src/dodal/beamlines/i11.py
|
|
116
117
|
src/dodal/beamlines/i13_1.py
|
|
@@ -120,9 +121,11 @@ src/dodal/beamlines/i19_1.py
|
|
|
120
121
|
src/dodal/beamlines/i19_2.py
|
|
121
122
|
src/dodal/beamlines/i19_optics.py
|
|
122
123
|
src/dodal/beamlines/i20_1.py
|
|
124
|
+
src/dodal/beamlines/i21.py
|
|
123
125
|
src/dodal/beamlines/i22.py
|
|
124
126
|
src/dodal/beamlines/i23.py
|
|
125
127
|
src/dodal/beamlines/i24.py
|
|
128
|
+
src/dodal/beamlines/k07.py
|
|
126
129
|
src/dodal/beamlines/k11.py
|
|
127
130
|
src/dodal/beamlines/p38.py
|
|
128
131
|
src/dodal/beamlines/p45.py
|
|
@@ -143,6 +146,7 @@ src/dodal/common/watcher_utils.py
|
|
|
143
146
|
src/dodal/common/beamlines/__init__.py
|
|
144
147
|
src/dodal/common/beamlines/beamline_parameters.py
|
|
145
148
|
src/dodal/common/beamlines/beamline_utils.py
|
|
149
|
+
src/dodal/common/beamlines/commissioning_mode.py
|
|
146
150
|
src/dodal/common/beamlines/device_helpers.py
|
|
147
151
|
src/dodal/devices/__init__.py
|
|
148
152
|
src/dodal/devices/aperture.py
|
|
@@ -183,6 +187,7 @@ src/dodal/devices/tetramm.py
|
|
|
183
187
|
src/dodal/devices/thawer.py
|
|
184
188
|
src/dodal/devices/turbo_slit.py
|
|
185
189
|
src/dodal/devices/undulator.py
|
|
190
|
+
src/dodal/devices/v2f.py
|
|
186
191
|
src/dodal/devices/watsonmarlow323_pump.py
|
|
187
192
|
src/dodal/devices/webcam.py
|
|
188
193
|
src/dodal/devices/xbpm_feedback.py
|
|
@@ -215,6 +220,7 @@ src/dodal/devices/detector/detector.py
|
|
|
215
220
|
src/dodal/devices/detector/detector_motion.py
|
|
216
221
|
src/dodal/devices/electron_analyser/__init__.py
|
|
217
222
|
src/dodal/devices/electron_analyser/detector.py
|
|
223
|
+
src/dodal/devices/electron_analyser/energy_sources.py
|
|
218
224
|
src/dodal/devices/electron_analyser/enums.py
|
|
219
225
|
src/dodal/devices/electron_analyser/types.py
|
|
220
226
|
src/dodal/devices/electron_analyser/util.py
|
|
@@ -233,6 +239,9 @@ src/dodal/devices/electron_analyser/vgscienta/detector.py
|
|
|
233
239
|
src/dodal/devices/electron_analyser/vgscienta/driver_io.py
|
|
234
240
|
src/dodal/devices/electron_analyser/vgscienta/enums.py
|
|
235
241
|
src/dodal/devices/electron_analyser/vgscienta/region.py
|
|
242
|
+
src/dodal/devices/i02_1/__init__.py
|
|
243
|
+
src/dodal/devices/i02_1/fast_grid_scan.py
|
|
244
|
+
src/dodal/devices/i02_1/sample_motors.py
|
|
236
245
|
src/dodal/devices/i03/__init__.py
|
|
237
246
|
src/dodal/devices/i03/dcm.py
|
|
238
247
|
src/dodal/devices/i03/undulator_dcm.py
|
|
@@ -267,12 +276,15 @@ src/dodal/devices/i13_1/merlin_controller.py
|
|
|
267
276
|
src/dodal/devices/i18/KBMirror.py
|
|
268
277
|
src/dodal/devices/i18/diode.py
|
|
269
278
|
src/dodal/devices/i19/__init__.py
|
|
279
|
+
src/dodal/devices/i19/backlight.py
|
|
270
280
|
src/dodal/devices/i19/beamstop.py
|
|
271
281
|
src/dodal/devices/i19/blueapi_device.py
|
|
272
282
|
src/dodal/devices/i19/diffractometer.py
|
|
273
283
|
src/dodal/devices/i19/hutch_access.py
|
|
274
284
|
src/dodal/devices/i19/shutter.py
|
|
275
285
|
src/dodal/devices/i20_1/__init__.py
|
|
286
|
+
src/dodal/devices/i21/__init__.py
|
|
287
|
+
src/dodal/devices/i21/enums.py
|
|
276
288
|
src/dodal/devices/i22/dcm.py
|
|
277
289
|
src/dodal/devices/i22/fswitch.py
|
|
278
290
|
src/dodal/devices/i22/nxsas.py
|
|
@@ -280,6 +292,7 @@ src/dodal/devices/i24/__init__.py
|
|
|
280
292
|
src/dodal/devices/i24/aperture.py
|
|
281
293
|
src/dodal/devices/i24/beam_center.py
|
|
282
294
|
src/dodal/devices/i24/beamstop.py
|
|
295
|
+
src/dodal/devices/i24/commissioning_jungfrau.py
|
|
283
296
|
src/dodal/devices/i24/dcm.py
|
|
284
297
|
src/dodal/devices/i24/dual_backlight.py
|
|
285
298
|
src/dodal/devices/i24/focus_mirrors.py
|
|
@@ -305,6 +318,10 @@ src/dodal/devices/p60/lab_xray_source.py
|
|
|
305
318
|
src/dodal/devices/p99/__init__.py
|
|
306
319
|
src/dodal/devices/p99/andor2_point.py
|
|
307
320
|
src/dodal/devices/p99/sample_stage.py
|
|
321
|
+
src/dodal/devices/temperture_controller/__init__.py
|
|
322
|
+
src/dodal/devices/temperture_controller/lakeshore/__init__.py
|
|
323
|
+
src/dodal/devices/temperture_controller/lakeshore/lakeshore.py
|
|
324
|
+
src/dodal/devices/temperture_controller/lakeshore/lakeshore_io.py
|
|
308
325
|
src/dodal/devices/util/__init__.py
|
|
309
326
|
src/dodal/devices/util/adjuster_plans.py
|
|
310
327
|
src/dodal/devices/util/epics_util.py
|
|
@@ -371,6 +388,7 @@ tests/common/test_watcher_utils.py
|
|
|
371
388
|
tests/common/beamlines/__init__.py
|
|
372
389
|
tests/common/beamlines/test_beamline_parameters.py
|
|
373
390
|
tests/common/beamlines/test_beamline_utils.py
|
|
391
|
+
tests/common/beamlines/test_commissioning_mode.py
|
|
374
392
|
tests/common/beamlines/test_device_instantiation.py
|
|
375
393
|
tests/devices/__init__.py
|
|
376
394
|
tests/devices/test.png
|
|
@@ -426,6 +444,7 @@ tests/devices/detector/test_data/test_det_dist_converter.txt
|
|
|
426
444
|
tests/devices/electron_analyser/__init__.py
|
|
427
445
|
tests/devices/electron_analyser/conftest.py
|
|
428
446
|
tests/devices/electron_analyser/test_detector.py
|
|
447
|
+
tests/devices/electron_analyser/test_energy_sources.py
|
|
429
448
|
tests/devices/electron_analyser/test_util.py
|
|
430
449
|
tests/devices/electron_analyser/abstract/__init__.py
|
|
431
450
|
tests/devices/electron_analyser/abstract/test_base_detector.py
|
|
@@ -445,6 +464,8 @@ tests/devices/electron_analyser/vgscienta/__init__.py
|
|
|
445
464
|
tests/devices/electron_analyser/vgscienta/test_detector.py
|
|
446
465
|
tests/devices/electron_analyser/vgscienta/test_driver_io.py
|
|
447
466
|
tests/devices/electron_analyser/vgscienta/test_region.py
|
|
467
|
+
tests/devices/i02_1/__init__.py
|
|
468
|
+
tests/devices/i02_1/test_fast_grid_scan.py
|
|
448
469
|
tests/devices/i03/__init__.py
|
|
449
470
|
tests/devices/i03/test_dcm.py
|
|
450
471
|
tests/devices/i03/test_undulator_dcm.py
|
|
@@ -466,6 +487,7 @@ tests/devices/i11/test_mythen.py
|
|
|
466
487
|
tests/devices/i13_1/test_merlin.py
|
|
467
488
|
tests/devices/i18/test_kb_mirror.py
|
|
468
489
|
tests/devices/i19/__init__.py
|
|
490
|
+
tests/devices/i19/test_backlight.py
|
|
469
491
|
tests/devices/i19/test_beamstop.py
|
|
470
492
|
tests/devices/i19/test_diffractometer.py
|
|
471
493
|
tests/devices/i19/test_shutter.py
|
|
@@ -473,6 +495,7 @@ tests/devices/i22/test_dcm.py
|
|
|
473
495
|
tests/devices/i22/test_fswitch.py
|
|
474
496
|
tests/devices/i22/test_metadataholder.py
|
|
475
497
|
tests/devices/i24/__init__.py
|
|
498
|
+
tests/devices/i24/test_commissioning_jungfrau.py
|
|
476
499
|
tests/devices/i24/test_dual_backlight.py
|
|
477
500
|
tests/devices/i24/test_focus_mirrors.py
|
|
478
501
|
tests/devices/i24/test_pmac.py
|
|
@@ -496,6 +519,10 @@ tests/devices/oav/test_data/oav_snapshot_test.png
|
|
|
496
519
|
tests/devices/oav/test_data/test_OAVCentring.json
|
|
497
520
|
tests/devices/p60/test_lab_xray_source.py
|
|
498
521
|
tests/devices/p99/test_p99_stage.py
|
|
522
|
+
tests/devices/temperature_controller/__init__.py
|
|
523
|
+
tests/devices/temperature_controller/lakeshore/__init__.py
|
|
524
|
+
tests/devices/temperature_controller/lakeshore/test_lakeshore.py
|
|
525
|
+
tests/devices/temperature_controller/lakeshore/test_lakeshore_io.py
|
|
499
526
|
tests/devices/test_daq_configuration/__init__.py
|
|
500
527
|
tests/devices/test_daq_configuration/domain/__init__.py
|
|
501
528
|
tests/devices/test_daq_configuration/domain/beamlineParameters
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '1.
|
|
32
|
-
__version_tuple__ = version_tuple = (1,
|
|
31
|
+
__version__ = version = '1.59.1'
|
|
32
|
+
__version_tuple__ = version_tuple = (1, 59, 1)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g67bd9e286'
|
|
@@ -3,8 +3,8 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
3
3
|
)
|
|
4
4
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
5
5
|
from dodal.devices.b07 import Grating, LensMode, PsuMode
|
|
6
|
-
from dodal.devices.electron_analyser import
|
|
7
|
-
from dodal.devices.electron_analyser.specs import
|
|
6
|
+
from dodal.devices.electron_analyser import EnergySource
|
|
7
|
+
from dodal.devices.electron_analyser.specs import SpecsDetector
|
|
8
8
|
from dodal.devices.pgm import PGM
|
|
9
9
|
from dodal.devices.synchrotron import Synchrotron
|
|
10
10
|
from dodal.log import set_beamline as set_log_beamline
|
|
@@ -26,13 +26,18 @@ def pgm() -> PGM:
|
|
|
26
26
|
return PGM(prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:", grating=Grating)
|
|
27
27
|
|
|
28
28
|
|
|
29
|
+
@device_factory()
|
|
30
|
+
def energy_source() -> EnergySource:
|
|
31
|
+
return EnergySource(pgm().energy.user_readback)
|
|
32
|
+
|
|
33
|
+
|
|
29
34
|
# Connect will work again after this work completed
|
|
30
35
|
# https://jira.diamond.ac.uk/browse/B07-1104
|
|
31
36
|
@device_factory()
|
|
32
|
-
def
|
|
33
|
-
return
|
|
37
|
+
def analyser() -> SpecsDetector[LensMode, PsuMode]:
|
|
38
|
+
return SpecsDetector[LensMode, PsuMode](
|
|
34
39
|
prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:",
|
|
35
40
|
lens_mode_type=LensMode,
|
|
36
41
|
psu_mode_type=PsuMode,
|
|
37
|
-
|
|
42
|
+
energy_source=energy_source(),
|
|
38
43
|
)
|
|
@@ -6,8 +6,8 @@ from dodal.devices.b07_1 import (
|
|
|
6
6
|
Grating,
|
|
7
7
|
LensMode,
|
|
8
8
|
)
|
|
9
|
-
from dodal.devices.electron_analyser import
|
|
10
|
-
from dodal.devices.electron_analyser.specs import
|
|
9
|
+
from dodal.devices.electron_analyser import EnergySource
|
|
10
|
+
from dodal.devices.electron_analyser.specs import SpecsDetector
|
|
11
11
|
from dodal.devices.pgm import PGM
|
|
12
12
|
from dodal.devices.synchrotron import Synchrotron
|
|
13
13
|
from dodal.log import set_beamline as set_log_beamline
|
|
@@ -37,10 +37,15 @@ def ccmc() -> ChannelCutMonochromator:
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
@device_factory()
|
|
40
|
-
def
|
|
41
|
-
return
|
|
40
|
+
def energy_source() -> EnergySource:
|
|
41
|
+
return EnergySource(pgm().energy.user_readback)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
@device_factory()
|
|
45
|
+
def analyser() -> SpecsDetector[LensMode, PsuMode]:
|
|
46
|
+
return SpecsDetector[LensMode, PsuMode](
|
|
42
47
|
prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:",
|
|
43
48
|
lens_mode_type=LensMode,
|
|
44
49
|
psu_mode_type=PsuMode,
|
|
45
|
-
|
|
50
|
+
energy_source=energy_source(),
|
|
46
51
|
)
|
|
@@ -8,10 +8,13 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
8
8
|
)
|
|
9
9
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
10
10
|
from dodal.common.beamlines.device_helpers import CAM_SUFFIX, HDF5_SUFFIX
|
|
11
|
+
from dodal.devices.focusing_mirror import SimpleMirror
|
|
11
12
|
from dodal.devices.i22.nxsas import NXSasMetadataHolder, NXSasOAV
|
|
12
13
|
from dodal.devices.linkam3 import Linkam3
|
|
14
|
+
from dodal.devices.motors import XYStage
|
|
13
15
|
from dodal.devices.slits import Slits
|
|
14
16
|
from dodal.devices.synchrotron import Synchrotron
|
|
17
|
+
from dodal.devices.v2f import QDV2F
|
|
15
18
|
from dodal.log import set_beamline as set_log_beamline
|
|
16
19
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
17
20
|
|
|
@@ -43,6 +46,18 @@ def waxs() -> EigerDetector:
|
|
|
43
46
|
)
|
|
44
47
|
|
|
45
48
|
|
|
49
|
+
@device_factory()
|
|
50
|
+
def mirror() -> SimpleMirror:
|
|
51
|
+
return SimpleMirror(
|
|
52
|
+
prefix=f"{PREFIX.beamline_prefix}-OP-MR-01:",
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
@device_factory()
|
|
57
|
+
def it() -> QDV2F:
|
|
58
|
+
return QDV2F(prefix=f"{PREFIX.beamline_prefix}-DI-PHDGN-07:PHD1:", I_suffix="I")
|
|
59
|
+
|
|
60
|
+
|
|
46
61
|
@device_factory()
|
|
47
62
|
def panda1() -> HDFPanda:
|
|
48
63
|
return HDFPanda(
|
|
@@ -51,6 +66,13 @@ def panda1() -> HDFPanda:
|
|
|
51
66
|
)
|
|
52
67
|
|
|
53
68
|
|
|
69
|
+
@device_factory()
|
|
70
|
+
def table() -> XYStage:
|
|
71
|
+
return XYStage(
|
|
72
|
+
prefix=f"{PREFIX.beamline_prefix}-MO-TABLE-04:",
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
|
|
54
76
|
@device_factory()
|
|
55
77
|
def synchrotron() -> Synchrotron:
|
|
56
78
|
return Synchrotron()
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"""Beamline i02-1 is also known as VMXm, or I02J"""
|
|
2
|
+
|
|
3
|
+
from dodal.common.beamlines.beamline_utils import (
|
|
4
|
+
device_factory,
|
|
5
|
+
device_instantiation,
|
|
6
|
+
)
|
|
7
|
+
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
8
|
+
from dodal.devices.attenuator.attenuator import EnumFilterAttenuator
|
|
9
|
+
from dodal.devices.attenuator.filter_selections import (
|
|
10
|
+
I02_1FilterFourSelections,
|
|
11
|
+
I02_1FilterOneSelections,
|
|
12
|
+
I02_1FilterThreeSelections,
|
|
13
|
+
I02_1FilterTwoSelections,
|
|
14
|
+
)
|
|
15
|
+
from dodal.devices.eiger import EigerDetector
|
|
16
|
+
from dodal.devices.i02_1.fast_grid_scan import ZebraFastGridScanTwoD
|
|
17
|
+
from dodal.devices.i02_1.sample_motors import SampleMotors
|
|
18
|
+
from dodal.devices.synchrotron import Synchrotron
|
|
19
|
+
from dodal.devices.zebra.zebra import Zebra
|
|
20
|
+
from dodal.devices.zebra.zebra_constants_mapping import (
|
|
21
|
+
ZebraMapping,
|
|
22
|
+
ZebraSources,
|
|
23
|
+
ZebraTTLOutputs,
|
|
24
|
+
)
|
|
25
|
+
from dodal.devices.zocalo import ZocaloResults
|
|
26
|
+
from dodal.log import set_beamline as set_log_beamline
|
|
27
|
+
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
28
|
+
|
|
29
|
+
BL = get_beamline_name("i02-1")
|
|
30
|
+
PREFIX = BeamlinePrefix(BL, suffix="J")
|
|
31
|
+
set_log_beamline(BL)
|
|
32
|
+
set_utils_beamline(BL)
|
|
33
|
+
DAQ_CONFIGURATION_PATH = "/dls_sw/i02-1/software/daq_configuration"
|
|
34
|
+
|
|
35
|
+
I02_1_ZEBRA_MAPPING = ZebraMapping(
|
|
36
|
+
outputs=ZebraTTLOutputs(TTL_EIGER=2, TTL_XSPRESS3=3, TTL_FAST_SHUTTER=1),
|
|
37
|
+
sources=ZebraSources(),
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
@device_factory()
|
|
42
|
+
def eiger(mock: bool = False) -> EigerDetector:
|
|
43
|
+
"""Get the i02-1 Eiger device, instantiate it if it hasn't already been.
|
|
44
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
45
|
+
"""
|
|
46
|
+
return device_instantiation(
|
|
47
|
+
device_factory=EigerDetector,
|
|
48
|
+
prefix=f"{PREFIX.beamline_prefix}-EA-EIGER-01:",
|
|
49
|
+
bl_prefix=False,
|
|
50
|
+
wait=False,
|
|
51
|
+
fake=mock,
|
|
52
|
+
name="eiger",
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
@device_factory()
|
|
57
|
+
def zebra_fast_grid_scan() -> ZebraFastGridScanTwoD:
|
|
58
|
+
"""Get the i02-1 zebra_fast_grid_scan device, instantiate it if it hasn't already been.
|
|
59
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
60
|
+
"""
|
|
61
|
+
return ZebraFastGridScanTwoD(
|
|
62
|
+
prefix=f"{PREFIX.beamline_prefix}-MO-SAMP-11:",
|
|
63
|
+
motion_controller_prefix="BL02J-MO-STEP-11:",
|
|
64
|
+
)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
@device_factory()
|
|
68
|
+
def synchrotron() -> Synchrotron:
|
|
69
|
+
"""Get the i02-1 synchrotron device, instantiate it if it hasn't already been.
|
|
70
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
71
|
+
"""
|
|
72
|
+
return Synchrotron()
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
@device_factory()
|
|
76
|
+
def zebra() -> Zebra:
|
|
77
|
+
"""Get the i02-1 zebra device, instantiate it if it hasn't already been.
|
|
78
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
79
|
+
"""
|
|
80
|
+
return Zebra(
|
|
81
|
+
prefix=f"{PREFIX.beamline_prefix}-EA-ZEBRA-01:",
|
|
82
|
+
mapping=I02_1_ZEBRA_MAPPING,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
# Device not needed after https://github.com/DiamondLightSource/mx-bluesky/issues/1299
|
|
87
|
+
@device_factory()
|
|
88
|
+
def zocalo() -> ZocaloResults:
|
|
89
|
+
"""Get the i02-1 ZocaloResults device, instantiate it if it hasn't already been.
|
|
90
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
91
|
+
"""
|
|
92
|
+
return ZocaloResults()
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
@device_factory()
|
|
96
|
+
def goniometer() -> SampleMotors:
|
|
97
|
+
"""Get the i02-1 goniometer device, instantiate it if it hasn't already been.
|
|
98
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
99
|
+
"""
|
|
100
|
+
return SampleMotors(f"{PREFIX.beamline_prefix}-MO-SAMP-01:")
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
@device_factory()
|
|
104
|
+
def attenuator() -> EnumFilterAttenuator:
|
|
105
|
+
"""Get the i02-1 attenuator device, instantiate it if it hasn't already been.
|
|
106
|
+
If this is called when already instantiated in i02-1, it will return the existing object.
|
|
107
|
+
"""
|
|
108
|
+
|
|
109
|
+
return EnumFilterAttenuator(
|
|
110
|
+
f"{PREFIX.beamline_prefix}-OP-ATTN-01:",
|
|
111
|
+
(
|
|
112
|
+
I02_1FilterOneSelections,
|
|
113
|
+
I02_1FilterTwoSelections,
|
|
114
|
+
I02_1FilterThreeSelections,
|
|
115
|
+
I02_1FilterFourSelections,
|
|
116
|
+
),
|
|
117
|
+
)
|
|
@@ -25,7 +25,7 @@ from dodal.devices.cryostream import CryoStream
|
|
|
25
25
|
from dodal.devices.detector.detector_motion import DetectorMotion
|
|
26
26
|
from dodal.devices.diamond_filter import DiamondFilter, I03Filters
|
|
27
27
|
from dodal.devices.eiger import EigerDetector
|
|
28
|
-
from dodal.devices.fast_grid_scan import PandAFastGridScan,
|
|
28
|
+
from dodal.devices.fast_grid_scan import PandAFastGridScan, ZebraFastGridScanThreeD
|
|
29
29
|
from dodal.devices.fluorescence_detector_motion import FluorescenceDetector
|
|
30
30
|
from dodal.devices.flux import Flux
|
|
31
31
|
from dodal.devices.focusing_mirror import FocusingMirrorWithStripes, MirrorVoltages
|
|
@@ -191,11 +191,13 @@ def fastcs_eiger() -> FastEiger:
|
|
|
191
191
|
|
|
192
192
|
|
|
193
193
|
@device_factory()
|
|
194
|
-
def zebra_fast_grid_scan() ->
|
|
194
|
+
def zebra_fast_grid_scan() -> ZebraFastGridScanThreeD:
|
|
195
195
|
"""Get the i03 zebra_fast_grid_scan device, instantiate it if it hasn't already been.
|
|
196
196
|
If this is called when already instantiated in i03, it will return the existing object.
|
|
197
197
|
"""
|
|
198
|
-
return
|
|
198
|
+
return ZebraFastGridScanThreeD(
|
|
199
|
+
prefix=f"{PREFIX.beamline_prefix}-MO-SGON-01:",
|
|
200
|
+
)
|
|
199
201
|
|
|
200
202
|
|
|
201
203
|
@device_factory()
|
|
@@ -261,6 +263,7 @@ def undulator(daq_configuration_path: str | None = None) -> Undulator:
|
|
|
261
263
|
f"{BeamlinePrefix(BL).insertion_prefix}-MO-SERVC-01:",
|
|
262
264
|
# evaluate here not as parameter default to enable post-import mocking
|
|
263
265
|
id_gap_lookup_table_path=f"{daq_configuration_path or DAQ_CONFIGURATION_PATH}/lookup/BeamLine_Undulator_toGap.txt",
|
|
266
|
+
baton=baton(),
|
|
264
267
|
)
|
|
265
268
|
|
|
266
269
|
|
|
@@ -333,7 +336,7 @@ def xbpm_feedback() -> XBPMFeedback:
|
|
|
333
336
|
"""Get the i03 XBPM feeback device, instantiate it if it hasn't already been.
|
|
334
337
|
If this is called when already instantiated in i03, it will return the existing object.
|
|
335
338
|
"""
|
|
336
|
-
return XBPMFeedback(f"{PREFIX.beamline_prefix}-EA-FDBK-01:")
|
|
339
|
+
return XBPMFeedback(f"{PREFIX.beamline_prefix}-EA-FDBK-01:", baton=baton())
|
|
337
340
|
|
|
338
341
|
|
|
339
342
|
@device_factory()
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
from ophyd_async.core import Reference
|
|
2
|
+
|
|
1
3
|
from dodal.common.beamlines.beamline_parameters import get_beamline_parameters
|
|
2
4
|
from dodal.common.beamlines.beamline_utils import (
|
|
3
5
|
device_factory,
|
|
@@ -15,7 +17,7 @@ from dodal.devices.detector import DetectorParams
|
|
|
15
17
|
from dodal.devices.detector.detector_motion import DetectorMotion
|
|
16
18
|
from dodal.devices.diamond_filter import DiamondFilter, I04Filters
|
|
17
19
|
from dodal.devices.eiger import EigerDetector
|
|
18
|
-
from dodal.devices.fast_grid_scan import
|
|
20
|
+
from dodal.devices.fast_grid_scan import ZebraFastGridScanThreeD
|
|
19
21
|
from dodal.devices.flux import Flux
|
|
20
22
|
from dodal.devices.i03.dcm import DCM
|
|
21
23
|
from dodal.devices.i04.constants import RedisConstants
|
|
@@ -30,6 +32,7 @@ from dodal.devices.oav.oav_to_redis_forwarder import OAVToRedisForwarder
|
|
|
30
32
|
from dodal.devices.oav.pin_image_recognition import PinTipDetection
|
|
31
33
|
from dodal.devices.robot import BartRobot
|
|
32
34
|
from dodal.devices.s4_slit_gaps import S4SlitGaps
|
|
35
|
+
from dodal.devices.scintillator import Scintillator
|
|
33
36
|
from dodal.devices.smargon import Smargon
|
|
34
37
|
from dodal.devices.synchrotron import Synchrotron
|
|
35
38
|
from dodal.devices.thawer import Thawer
|
|
@@ -207,11 +210,13 @@ def eiger(mock: bool = False, params: DetectorParams | None = None) -> EigerDete
|
|
|
207
210
|
|
|
208
211
|
|
|
209
212
|
@device_factory()
|
|
210
|
-
def zebra_fast_grid_scan() ->
|
|
213
|
+
def zebra_fast_grid_scan() -> ZebraFastGridScanThreeD:
|
|
211
214
|
"""Get the i04 zebra_fast_grid_scan device, instantiate it if it hasn't already been.
|
|
212
215
|
If this is called when already instantiated in i04, it will return the existing object.
|
|
213
216
|
"""
|
|
214
|
-
return
|
|
217
|
+
return ZebraFastGridScanThreeD(
|
|
218
|
+
prefix=f"{PREFIX.beamline_prefix}-MO-SGON-01:",
|
|
219
|
+
)
|
|
215
220
|
|
|
216
221
|
|
|
217
222
|
@device_factory()
|
|
@@ -357,3 +362,15 @@ def pin_tip_detection() -> PinTipDetection:
|
|
|
357
362
|
If this is called when already instantiated in i04, it will return the existing object.
|
|
358
363
|
"""
|
|
359
364
|
return PinTipDetection(f"{PREFIX.beamline_prefix}-DI-OAV-01:")
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
@device_factory()
|
|
368
|
+
def scintillator() -> Scintillator:
|
|
369
|
+
"""Get the i04 scintillator device, instantiate it if it hasn't already been.
|
|
370
|
+
If this is called when already instantiated in i04, it will return the existing object.
|
|
371
|
+
"""
|
|
372
|
+
return Scintillator(
|
|
373
|
+
f"{PREFIX.beamline_prefix}-MO-SCIN-01:",
|
|
374
|
+
Reference(aperture_scatterguard()),
|
|
375
|
+
get_beamline_parameters(),
|
|
376
|
+
)
|
|
@@ -2,8 +2,8 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
2
2
|
device_factory,
|
|
3
3
|
)
|
|
4
4
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
5
|
-
from dodal.devices.electron_analyser import
|
|
6
|
-
from dodal.devices.electron_analyser.vgscienta import
|
|
5
|
+
from dodal.devices.electron_analyser import DualEnergySource
|
|
6
|
+
from dodal.devices.electron_analyser.vgscienta import VGScientaDetector
|
|
7
7
|
from dodal.devices.i09 import DCM, Grating, LensMode, PassEnergy, PsuMode
|
|
8
8
|
from dodal.devices.pgm import PGM
|
|
9
9
|
from dodal.devices.synchrotron import Synchrotron
|
|
@@ -34,18 +34,19 @@ def dcm() -> DCM:
|
|
|
34
34
|
return DCM(prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:")
|
|
35
35
|
|
|
36
36
|
|
|
37
|
+
@device_factory()
|
|
38
|
+
def energy_source() -> DualEnergySource:
|
|
39
|
+
return DualEnergySource(dcm().energy_in_ev, pgm().energy.user_readback)
|
|
40
|
+
|
|
41
|
+
|
|
37
42
|
# Connect will work again after this work completed
|
|
38
43
|
# https://jira.diamond.ac.uk/browse/I09-651
|
|
39
44
|
@device_factory()
|
|
40
|
-
def
|
|
41
|
-
|
|
42
|
-
SelectedSource.SOURCE1: pgm().energy.user_readback,
|
|
43
|
-
SelectedSource.SOURCE2: dcm().energy_in_ev,
|
|
44
|
-
}
|
|
45
|
-
return VGScientaAnalyserDriverIO[LensMode, PsuMode, PassEnergy](
|
|
45
|
+
def ew4000() -> VGScientaDetector[LensMode, PsuMode, PassEnergy]:
|
|
46
|
+
return VGScientaDetector[LensMode, PsuMode, PassEnergy](
|
|
46
47
|
prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:",
|
|
47
48
|
lens_mode_type=LensMode,
|
|
48
49
|
psu_mode_type=PsuMode,
|
|
49
50
|
pass_energy_type=PassEnergy,
|
|
50
|
-
|
|
51
|
+
energy_source=energy_source(),
|
|
51
52
|
)
|
|
@@ -2,8 +2,8 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
2
2
|
device_factory,
|
|
3
3
|
)
|
|
4
4
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
5
|
-
from dodal.devices.electron_analyser import
|
|
6
|
-
from dodal.devices.electron_analyser.specs import
|
|
5
|
+
from dodal.devices.electron_analyser import EnergySource
|
|
6
|
+
from dodal.devices.electron_analyser.specs import SpecsDetector
|
|
7
7
|
from dodal.devices.i09.dcm import DCM
|
|
8
8
|
from dodal.devices.i09_1 import LensMode, PsuMode
|
|
9
9
|
from dodal.devices.synchrotron import Synchrotron
|
|
@@ -26,13 +26,18 @@ def dcm() -> DCM:
|
|
|
26
26
|
return DCM(prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:")
|
|
27
27
|
|
|
28
28
|
|
|
29
|
+
@device_factory()
|
|
30
|
+
def energy_source() -> EnergySource:
|
|
31
|
+
return EnergySource(dcm().energy_in_ev)
|
|
32
|
+
|
|
33
|
+
|
|
29
34
|
# Connect will work again after this work completed
|
|
30
35
|
# https://jira.diamond.ac.uk/browse/I09-651
|
|
31
36
|
@device_factory()
|
|
32
|
-
def
|
|
33
|
-
return
|
|
37
|
+
def analyser() -> SpecsDetector[LensMode, PsuMode]:
|
|
38
|
+
return SpecsDetector[LensMode, PsuMode](
|
|
34
39
|
prefix=f"{PREFIX.beamline_prefix}-EA-DET-02:CAM:",
|
|
35
40
|
lens_mode_type=LensMode,
|
|
36
41
|
psu_mode_type=PsuMode,
|
|
37
|
-
|
|
42
|
+
energy_source=energy_source(),
|
|
38
43
|
)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from dodal.common.beamlines.beamline_utils import (
|
|
2
|
+
device_factory,
|
|
3
|
+
)
|
|
4
|
+
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
5
|
+
from dodal.devices.synchrotron import Synchrotron
|
|
6
|
+
from dodal.devices.temperture_controller import Lakeshore336
|
|
7
|
+
from dodal.log import set_beamline as set_log_beamline
|
|
8
|
+
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
9
|
+
|
|
10
|
+
BL = get_beamline_name("i10-1")
|
|
11
|
+
PREFIX = BeamlinePrefix(BL, suffix="J")
|
|
12
|
+
set_log_beamline(BL)
|
|
13
|
+
set_utils_beamline(BL)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@device_factory()
|
|
17
|
+
def synchrotron() -> Synchrotron:
|
|
18
|
+
return Synchrotron()
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
@device_factory()
|
|
22
|
+
def em_temperature_controller() -> Lakeshore336:
|
|
23
|
+
return Lakeshore336(
|
|
24
|
+
prefix=f"{PREFIX.beamline_prefix}-EA-TCTRL-41:",
|
|
25
|
+
)
|