dls-dodal 1.64.0__tar.gz → 1.65.0__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.64.0 → dls_dodal-1.65.0}/PKG-INFO +1 -1
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dls_dodal.egg-info/PKG-INFO +1 -1
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dls_dodal.egg-info/SOURCES.txt +6 -2
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/_version.py +3 -3
- dls_dodal-1.65.0/src/dodal/beamline_specific_utils/i05_shared.py +14 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/b01_1.py +1 -1
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/b07.py +6 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/b07_1.py +6 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i03.py +9 -1
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i05.py +2 -2
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i05_1.py +2 -2
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i09.py +3 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i09_1.py +6 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i09_2.py +6 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i10_optics.py +3 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i17.py +3 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i19_2.py +22 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i21.py +3 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i22.py +0 -17
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/k07.py +6 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/cryostream.py +21 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i22/nxsas.py +5 -24
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/pgm.py +1 -1
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/scintillator.py +4 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/undulator.py +29 -1
- dls_dodal-1.65.0/src/dodal/plan_stubs/__init__.py +3 -0
- dls_dodal-1.65.0/src/dodal/testing/fixtures/run_engine.py +118 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/system_tests/test_oav_to_redis_system.py +30 -7
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/test_watcher_utils.py +2 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/current_amplifier/test_femto.py +9 -17
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/current_amplifier/test_sr570.py +11 -20
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/conftest.py +2 -2
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_i10_apple2.py +24 -39
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i22/test_fswitch.py +10 -12
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i24/test_pmac.py +9 -8
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/image_recognition/test_pin_tip_detect.py +0 -4
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_oav_utils.py +13 -13
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/temperature_controller/lakeshore/test_lakeshore.py +8 -9
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_apple2_undulator.py +22 -17
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_gridscan.py +8 -6
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_scintillator.py +20 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_undulator.py +43 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_motor_util_plans.py +7 -9
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_save_panda.py +8 -3
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_cli.py +7 -0
- dls_dodal-1.65.0/tests/testing/__init__.py +0 -0
- dls_dodal-1.65.0/tests/testing/fixtures/__init__.py +0 -0
- dls_dodal-1.65.0/tests/testing/fixtures/test_run_engine.py +33 -0
- dls_dodal-1.64.0/src/dodal/beamline_specific_utils/i05_shared.py +0 -11
- dls_dodal-1.64.0/src/dodal/testing/fixtures/run_engine.py +0 -46
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.copier-answers.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.devcontainer/devcontainer.json +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/CODEOWNERS +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/CONTRIBUTING.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/ISSUE_TEMPLATE/issue_template.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/actions/install_requirements/action.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/dependabot.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/pages/index.html +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/pages/make_switcher.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/scripts/check_test_durations.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/_dist.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/_docs.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/_pypi.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/_release.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/_test.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/_tox.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/ci.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.github/workflows/periodic.yml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.gitignore +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.pre-commit-config.yaml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.vscode/extensions.json +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.vscode/launch.json +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.vscode/settings.json +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/.vscode/tasks.json +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/Dockerfile +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/LICENSE +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/README.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/catalog-info.yaml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/conftest.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/_templates/autosummary/class.rst +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/_templates/autosummary/module.rst +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/_templates/custom-module-template.rst +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/assets/where-to-put-dodal-logic.png +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/assets/zocalo.png +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/conf.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/0001-record-architecture-decisions.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/0002-switched-to-python-copier-template.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/0003-codeowners.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/0004-make-devices-factory.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/0005-standardise-devices-at-epics-level.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/0006-devices-shared-between-endstations.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions/COPYME +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/decisions.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/reviews.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/umls/apple2_design.png +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations/umls/i10_id_design.png +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/explanations.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/genindex.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/build-docs.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/contribute.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/coverage.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/create-beamline.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/create-device.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/dev-install.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/excalidraw.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/external-io-devices.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/lint.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/lock-requirements.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/make-release.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/move-code.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/pypi.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/run-tests.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/static-analysis.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/update-template.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/write-tests.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to/zocalo.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/how-to.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/images/dls-logo.svg +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/images/excalidraw-example.svg +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/index.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/reference/api.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/reference/device-standards.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/reference/standards.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/reference.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/tutorials/get_started.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/tutorials/installation.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/docs/tutorials.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/pull_request_template.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/pyproject.toml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/setup.cfg +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dls_dodal.egg-info/dependency_links.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dls_dodal.egg-info/entry_points.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dls_dodal.egg-info/requires.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dls_dodal.egg-info/top_level.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/__main__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamline_specific_utils/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamline_specific_utils/i03.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/README.md +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/adsim.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/aithre.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/b16.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/b18.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/b21.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i02_1.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i02_2.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i04.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i07.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i10.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i10_1.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i11.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i13_1.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i15.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i15_1.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i18.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i19_1.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i19_optics.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i20_1.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i23.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/i24.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/k11.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/p38.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/p45.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/p60.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/p99.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/beamlines/training_rig.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/cli.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/beamlines/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/beamlines/beamline_parameters.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/beamlines/beamline_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/beamlines/commissioning_mode.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/beamlines/device_helpers.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/coordination.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/crystal_metadata.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/data_util.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/device_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/maths.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/types.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/udc_directory_provider.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/visit.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/common/watcher_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/aithre_lasershaping/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/aithre_lasershaping/goniometer.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/aithre_lasershaping/laser_robot.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/aperture.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/aperturescatterguard.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/apple2_undulator.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/areadetector/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/areadetector/plugins/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/areadetector/plugins/cam.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/areadetector/plugins/mjpg.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/attenuator/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/attenuator/attenuator.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/attenuator/filter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/attenuator/filter_selections.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b07/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b07/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b07_1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b07_1/ccmc.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b07_1/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b16/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/b16/detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/backlight.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/baton.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/bimorph_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/collimation_table.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/common_dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/controllers.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/current_amplifiers/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/current_amplifiers/current_amplifier.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/current_amplifiers/current_amplifier_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/current_amplifiers/femto.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/current_amplifiers/sr570.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/current_amplifiers/struck_scaler_counter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/detector/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/detector/det_dim_constants.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/detector/det_dist_to_beam_converter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/detector/det_resolution.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/detector/detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/detector/detector_motion.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/diamond_filter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/eiger.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/eiger_odin.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/abstract/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/abstract/base_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/abstract/base_driver_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/abstract/base_region.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/abstract/types.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/energy_sources.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/specs/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/specs/detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/specs/driver_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/specs/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/specs/region.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/types.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/util.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/vgscienta/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/vgscienta/detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/vgscienta/driver_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/vgscienta/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/electron_analyser/vgscienta/region.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/eurotherm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/fast_grid_scan.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/fast_shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/fluorescence_detector_motion.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/flux.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/focusing_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/hutch_shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i02_1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i02_1/fast_grid_scan.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i02_1/sample_motors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i02_2/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i03/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i03/dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i03/undulator_dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i04/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i04/constants.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i04/murko_results.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i04/transfocator.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i05/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i05/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i07/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i07/dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i09/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i09/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i09_1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i09_1/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i09_1_shared/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i09_1_shared/hard_undulator_functions.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/diagnostics.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/i10_apple2.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/i10_setting_data.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/mirrors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/rasor/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/rasor/rasor_current_amp.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/rasor/rasor_motors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/rasor/rasor_scaler_cards.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i10/slits.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i11/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i11/cyberstar_blower.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i11/diff_stages.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i11/mythen.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i11/nx100robot.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i11/spinner.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i13_1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i13_1/merlin.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i13_1/merlin_controller.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/focussing_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/jack.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/laue.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/motors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/multilayer_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i15/rail.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i17/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i17/i17_apple2.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i18/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i18/diode.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i18/kb_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/access_controlled/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/access_controlled/blueapi_device.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/access_controlled/hutch_access.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/access_controlled/shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/backlight.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/beamstop.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/diffractometer.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/mapt_configuration.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i19/pin_col_stages.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i20_1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i21/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i21/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i22/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i22/dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i22/fswitch.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/aperture.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/beam_center.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/beamstop.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/commissioning_jungfrau.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/dual_backlight.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/focus_mirrors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/pmac.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/i24/vgonio.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/ipin.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/linkam3.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/motors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/mx_phase1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/mx_phase1/beamstop.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/oav_calculations.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/oav_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/oav_parameters.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/oav_to_redis_forwarder.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/pin_image_recognition/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/pin_image_recognition/manual_test.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/pin_image_recognition/utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/snapshots/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/snapshots/grid_overlay.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/snapshots/snapshot.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/snapshots/snapshot_image_processing.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/snapshots/snapshot_with_grid.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/oav/utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p45.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p60/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p60/enums.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p60/lab_xray_source.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p99/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p99/andor2_point.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/p99/sample_stage.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/positioner.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/pressure_jump_cell.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/qbpm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/robot.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/s4_slit_gaps.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/slits.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/smargon.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/status.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/synchrotron.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/temperture_controller/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/temperture_controller/lakeshore/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/temperture_controller/lakeshore/lakeshore.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/temperture_controller/lakeshore/lakeshore_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/tetramm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/thawer.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/turbo_slit.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/util/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/util/adjuster_plans.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/util/epics_util.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/util/lookup_tables.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/v2f.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/watsonmarlow323_pump.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/webcam.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/xbpm_feedback.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/xspress3/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/xspress3/xspress3.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/xspress3/xspress3_channel.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zebra/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zebra/zebra.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zebra/zebra_constants_mapping.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zebra/zebra_controlled_shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zocalo/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zocalo/zocalo_constants.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zocalo/zocalo_interaction.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/devices/zocalo/zocalo_results.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/log.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/parameters/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/parameters/experiment_parameter_base.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plan_stubs/check_topup.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plan_stubs/data_session.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plan_stubs/motor_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plan_stubs/wrapped.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/bimorph.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/configure_arm_trigger_and_disarm_detector.py +0 -0
- {dls_dodal-1.64.0/src/dodal/plan_stubs → dls_dodal-1.65.0/src/dodal/plans/preprocessors}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/preprocessors/verify_undulator_gap.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/save_panda.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/scanspec.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/verify_undulator_gap.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/plans/wrapped.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/testing/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/testing/electron_analyser/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/testing/electron_analyser/device_factory.py +0 -0
- {dls_dodal-1.64.0/src/dodal/plans/preprocessors → dls_dodal-1.65.0/src/dodal/testing/fixtures}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/testing/fixtures/utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/testing/setup.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/src/dodal/utils.py +0 -0
- {dls_dodal-1.64.0/src/dodal/testing/fixtures → dls_dodal-1.65.0/system_tests}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/system_tests/test_adsim.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/system_tests/test_cli.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/system_tests/test_oav_system.py +0 -0
- {dls_dodal-1.64.0/system_tests → dls_dodal-1.65.0/tests}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests → dls_dodal-1.65.0/tests/beamlines}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/beamlines/test_b16.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/beamlines/test_i03.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/beamlines/test_i24.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/beamlines/test_mapping.py +0 -0
- {dls_dodal-1.64.0/tests/beamlines → dls_dodal-1.65.0/tests/common}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/common → dls_dodal-1.65.0/tests/common/beamlines}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/beamlines/test_beamline_parameters.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/beamlines/test_beamline_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/beamlines/test_commissioning_mode.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/beamlines/test_device_instantiation.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/test_coordination.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/test_crystal_metadata.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/test_maths.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/test_udc_directory_provider.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/common/test_visit.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/conftest.py +0 -0
- {dls_dodal-1.64.0/tests/common/beamlines → dls_dodal-1.65.0/tests/devices}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices → dls_dodal-1.65.0/tests/devices/aithre_lasershaping}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/aithre_lasershaping/test_goniometer.py +0 -0
- {dls_dodal-1.64.0/tests/devices/aithre_lasershaping → dls_dodal-1.65.0/tests/devices/b07_1}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/b07_1/test_ccmc.py +0 -0
- {dls_dodal-1.64.0/tests/devices/b07_1 → dls_dodal-1.65.0/tests/devices/current_amplifier}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/current_amplifier → dls_dodal-1.65.0/tests/devices/detector}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/detector/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/detector/test_data/test_det_dist_converter.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/detector/test_det_dim_constants.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/detector/test_det_resolution.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/detector/test_detector.py +0 -0
- {dls_dodal-1.64.0/tests/devices/detector → dls_dodal-1.65.0/tests/devices/electron_analyser}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/electron_analyser → dls_dodal-1.65.0/tests/devices/electron_analyser/abstract}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/abstract/test_base_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/abstract/test_base_driver_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/abstract/test_base_region.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/helper_util/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/helper_util/assert_func.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/helper_util/sequence.py +0 -0
- {dls_dodal-1.64.0/tests/devices/electron_analyser/abstract → dls_dodal-1.65.0/tests/devices/electron_analyser/specs}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/specs/test_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/specs/test_driver_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/specs/test_region.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/test_data/specs_sequence.seq +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/test_data/vgscienta_sequence.seq +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/test_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/test_energy_sources.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/test_util.py +0 -0
- {dls_dodal-1.64.0/tests/devices/electron_analyser/specs → dls_dodal-1.65.0/tests/devices/electron_analyser/vgscienta}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/vgscienta/test_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/vgscienta/test_driver_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/electron_analyser/vgscienta/test_region.py +0 -0
- {dls_dodal-1.64.0/tests/devices/electron_analyser/vgscienta → dls_dodal-1.65.0/tests/devices/i02_1}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i02_1/test_fast_grid_scan.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i02_1 → dls_dodal-1.65.0/tests/devices/i03}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i03/test_dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i03/test_undulator_dcm.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i03 → dls_dodal-1.65.0/tests/devices/i04}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i04/test_murko_results.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i04/test_transfocator.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i04 → dls_dodal-1.65.0/tests/devices/i07}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i07/test_dcm.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i07 → dls_dodal-1.65.0/tests/devices/i09}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i09 → dls_dodal-1.65.0/tests/devices/i09_1}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i09_1 → dls_dodal-1.65.0/tests/devices/i09_1_shared}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i09_1_shared/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i09_1_shared/test_data/test_lookuptable_i09_hu.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i09_1_shared/test_undulator_functions.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i09_1_shared → dls_dodal-1.65.0/tests/devices/i10}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/IDEnergy2GapCalibrations.csv +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/IDEnergy2PhaseCalibrations.csv +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/expectedIDEnergy2GapCalibrationsIdd.pkl +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/expectedIDEnergy2GapCalibrationsIdu.pkl +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/expectedIDEnergy2PhaseCalibrationsidd.pkl +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i10/test_data/expectedIDEnergy2PhaseCalibrationsidu.pkl +0 -0
- {dls_dodal-1.64.0/tests/devices/i10 → dls_dodal-1.65.0/tests/devices/i11}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i11/test_i11devices.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i11/test_mythen.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i11 → dls_dodal-1.65.0/tests/devices/i13_1}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i13_1/test_merlin.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i13_1 → dls_dodal-1.65.0/tests/devices/i15}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i15 → dls_dodal-1.65.0/tests/devices/i17}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i17/test_i17_apple2.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i17 → dls_dodal-1.65.0/tests/devices/i18}/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i18/test_kb_mirror.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i18 → dls_dodal-1.65.0/tests/devices/i19}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i19 → dls_dodal-1.65.0/tests/devices/i19/access_controlled}/__init__.py +0 -0
- {dls_dodal-1.64.0/tests/devices/i19 → dls_dodal-1.65.0/tests/devices/i19/access_controlled}/test_shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i19/test_backlight.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i19/test_beamstop.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i19/test_diffractometer.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i19/test_mapt.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i19/test_pin_col.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i22/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i22/test_dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i22/test_metadataholder.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i24/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i24/test_commissioning_jungfrau.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i24/test_dual_backlight.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i24/test_focus_mirrors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/i24/test_vgonio.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/mx_phase1/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/mx_phase1/test_beamstop.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/conftest.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/image_recognition/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/image_recognition/test_pin_tip_detect_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_data/oav_snapshot_expected.png +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_data/oav_snapshot_test.png +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_data/test_OAVCentring.json +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_grid_overlay.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_oav.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_oav_parameters.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_oav_to_redis_forwarder.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_snapshot_image_processing.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/oav/test_snapshots.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/p60/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/p60/test_lab_xray_source.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/p99/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/p99/test_p99_stage.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/temperature_controller/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/temperature_controller/lakeshore/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/temperature_controller/lakeshore/test_lakeshore_io.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_aperture.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_aperture_scatterguard.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_attenuator.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_backlight.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_bart_robot.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_baton.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_beam_converter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_bimorph_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_common_dcm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_controllers.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_daq_configuration/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_daq_configuration/domain/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_daq_configuration/domain/beamlineParameters +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_daq_configuration/lookup/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_data/test_beamline_undulator_to_gap_lookup_table.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_data/test_lookup_table.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_diamond_filter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_eiger.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_fast_shutters.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_focusing_mirror.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_hutch_shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_motors.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_odin.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_positioner.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_pressure_jump_cell.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_qbpm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_slits.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_smargon.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_synchrotron.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_tetramm.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_thawer.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_turbo_slit.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_watsonmarlow323_pump.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_webcam.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_xbpm_feedback.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_xspress3.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_zebra.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_zebra_constants_mapping.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_zebra_shutter.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_zocalo_interaction.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/test_zocalo_results.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_adjuster_plans.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_beamline_specific_utils.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_data/test_beamline_dcm_roll_converter.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_data/test_beamline_dcm_roll_converter_non_monotonic.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_data/test_beamline_dcm_roll_converter_reversed.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/devices/util/test_lookup_tables.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline_all_devices_raise_exception.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline_broken_dependency.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline_dependencies.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline_disordered_dependencies.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline_misbehaving_builtins.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_beamline_some_devices_working.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_device_factory_beamline.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_zocalo/README.rst +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_zocalo/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_zocalo/__main__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/fake_zocalo/dls_start_fake_zocalo.sh +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_data/topup_long_delay.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_data/topup_short_params.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_data_session.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_topup_plan.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plan_stubs/test_wrapped_stubs.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/conftest.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_bimorph.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_compliance.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_configure_arm_trigger_and_disarm_detector.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_preprocessors/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_preprocessors/test_verify_undulator_gap.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_scanspec.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_verify_undulator_gap_plan.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/plans/test_wrapped.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/preprocessors/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/preprocessors/test_filesystem_metadata.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_data/__init__.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_data/bad_beamlineParameters +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_data/i04_beamlineParameters +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_data/test_beamline_parameters.txt +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_data/test_display.configuration +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_data/test_oav_zoom_levels.xml +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/tests/test_log.py +0 -0
- {dls_dodal-1.64.0 → dls_dodal-1.65.0}/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.65.0
|
|
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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dls-dodal
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.65.0
|
|
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
|
|
@@ -545,7 +545,8 @@ tests/devices/i19/test_beamstop.py
|
|
|
545
545
|
tests/devices/i19/test_diffractometer.py
|
|
546
546
|
tests/devices/i19/test_mapt.py
|
|
547
547
|
tests/devices/i19/test_pin_col.py
|
|
548
|
-
tests/devices/i19/
|
|
548
|
+
tests/devices/i19/access_controlled/__init__.py
|
|
549
|
+
tests/devices/i19/access_controlled/test_shutter.py
|
|
549
550
|
tests/devices/i22/__init__.py
|
|
550
551
|
tests/devices/i22/test_dcm.py
|
|
551
552
|
tests/devices/i22/test_fswitch.py
|
|
@@ -629,4 +630,7 @@ tests/test_data/bad_beamlineParameters
|
|
|
629
630
|
tests/test_data/i04_beamlineParameters
|
|
630
631
|
tests/test_data/test_beamline_parameters.txt
|
|
631
632
|
tests/test_data/test_display.configuration
|
|
632
|
-
tests/test_data/test_oav_zoom_levels.xml
|
|
633
|
+
tests/test_data/test_oav_zoom_levels.xml
|
|
634
|
+
tests/testing/__init__.py
|
|
635
|
+
tests/testing/fixtures/__init__.py
|
|
636
|
+
tests/testing/fixtures/test_run_engine.py
|
|
@@ -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.65.0'
|
|
32
|
+
__version_tuple__ = version_tuple = (1, 65, 0)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g5fe631f29'
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from dodal.common.beamlines.beamline_utils import device_factory
|
|
2
|
+
from dodal.devices.i05.enums import Grating
|
|
3
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
4
|
+
from dodal.utils import BeamlinePrefix
|
|
5
|
+
|
|
6
|
+
PREFIX = BeamlinePrefix("i05", "I")
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@device_factory()
|
|
10
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
11
|
+
return PlaneGratingMonochromator(
|
|
12
|
+
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
13
|
+
grating=Grating,
|
|
14
|
+
)
|
|
@@ -5,7 +5,7 @@ from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beam
|
|
|
5
5
|
from dodal.devices.b07 import Grating, LensMode, PsuMode
|
|
6
6
|
from dodal.devices.electron_analyser import EnergySource
|
|
7
7
|
from dodal.devices.electron_analyser.specs import SpecsDetector
|
|
8
|
-
from dodal.devices.pgm import
|
|
8
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
9
9
|
from dodal.devices.synchrotron import Synchrotron
|
|
10
10
|
from dodal.log import set_beamline as set_log_beamline
|
|
11
11
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -22,8 +22,11 @@ def synchrotron() -> Synchrotron:
|
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
@device_factory()
|
|
25
|
-
def pgm() ->
|
|
26
|
-
return
|
|
25
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
26
|
+
return PlaneGratingMonochromator(
|
|
27
|
+
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
28
|
+
grating=Grating,
|
|
29
|
+
)
|
|
27
30
|
|
|
28
31
|
|
|
29
32
|
@device_factory()
|
|
@@ -8,7 +8,7 @@ from dodal.devices.b07_1 import (
|
|
|
8
8
|
)
|
|
9
9
|
from dodal.devices.electron_analyser import EnergySource
|
|
10
10
|
from dodal.devices.electron_analyser.specs import SpecsDetector
|
|
11
|
-
from dodal.devices.pgm import
|
|
11
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
12
12
|
from dodal.devices.synchrotron import Synchrotron
|
|
13
13
|
from dodal.log import set_beamline as set_log_beamline
|
|
14
14
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -25,8 +25,11 @@ def synchrotron() -> Synchrotron:
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
@device_factory()
|
|
28
|
-
def pgm() ->
|
|
29
|
-
return
|
|
28
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
29
|
+
return PlaneGratingMonochromator(
|
|
30
|
+
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
31
|
+
grating=Grating,
|
|
32
|
+
)
|
|
30
33
|
|
|
31
34
|
|
|
32
35
|
# Connect will work again after this work completed
|
|
@@ -21,7 +21,7 @@ from dodal.devices.attenuator.attenuator import BinaryFilterAttenuator
|
|
|
21
21
|
from dodal.devices.backlight import Backlight
|
|
22
22
|
from dodal.devices.baton import Baton
|
|
23
23
|
from dodal.devices.collimation_table import CollimationTable
|
|
24
|
-
from dodal.devices.cryostream import CryoStream
|
|
24
|
+
from dodal.devices.cryostream import CryoStream, CryoStreamGantry
|
|
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
|
|
@@ -396,6 +396,14 @@ def cryostream() -> CryoStream:
|
|
|
396
396
|
return CryoStream(PREFIX.beamline_prefix)
|
|
397
397
|
|
|
398
398
|
|
|
399
|
+
@device_factory()
|
|
400
|
+
def cryostream_gantry() -> CryoStreamGantry:
|
|
401
|
+
"""Get the i03 cryostream gantry device, instantiate it if it hasn't already been.
|
|
402
|
+
If this is called when already instantiated in i03, it will return the existing object.
|
|
403
|
+
"""
|
|
404
|
+
return CryoStreamGantry(PREFIX.beamline_prefix)
|
|
405
|
+
|
|
406
|
+
|
|
399
407
|
@device_factory()
|
|
400
408
|
def diamond_filter() -> DiamondFilter[I03Filters]:
|
|
401
409
|
"""Get the i03 diamond filter device, instantiate it if it hasn't already been.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from dodal.beamline_specific_utils.i05_shared import pgm as i05_pgm
|
|
2
2
|
from dodal.common.beamlines.beamline_utils import device_factory
|
|
3
3
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
4
|
-
from dodal.devices.pgm import
|
|
4
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
5
5
|
from dodal.devices.synchrotron import Synchrotron
|
|
6
6
|
from dodal.log import set_beamline as set_log_beamline
|
|
7
7
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -18,5 +18,5 @@ def synchrotron() -> Synchrotron:
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
@device_factory()
|
|
21
|
-
def pgm() ->
|
|
21
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
22
22
|
return i05_pgm()
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from dodal.beamline_specific_utils.i05_shared import pgm as i05_pgm
|
|
2
2
|
from dodal.common.beamlines.beamline_utils import device_factory
|
|
3
3
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
4
|
-
from dodal.devices.pgm import
|
|
4
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
5
5
|
from dodal.devices.synchrotron import Synchrotron
|
|
6
6
|
from dodal.log import set_beamline as set_log_beamline
|
|
7
7
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -13,7 +13,7 @@ set_utils_beamline(BL)
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
@device_factory()
|
|
16
|
-
def pgm() ->
|
|
16
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
17
17
|
return i05_pgm()
|
|
18
18
|
|
|
19
19
|
|
|
@@ -10,7 +10,7 @@ from dodal.devices.common_dcm import (
|
|
|
10
10
|
from dodal.devices.electron_analyser import DualEnergySource
|
|
11
11
|
from dodal.devices.electron_analyser.vgscienta import VGScientaDetector
|
|
12
12
|
from dodal.devices.i09 import Grating, LensMode, PassEnergy, PsuMode
|
|
13
|
-
from dodal.devices.pgm import
|
|
13
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
14
14
|
from dodal.devices.synchrotron import Synchrotron
|
|
15
15
|
from dodal.log import set_beamline as set_log_beamline
|
|
16
16
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -27,8 +27,8 @@ def synchrotron() -> Synchrotron:
|
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
@device_factory()
|
|
30
|
-
def pgm() ->
|
|
31
|
-
return
|
|
30
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
31
|
+
return PlaneGratingMonochromator(
|
|
32
32
|
prefix=f"{BeamlinePrefix(BL, suffix='J').beamline_prefix}-MO-PGM-01:",
|
|
33
33
|
grating=Grating,
|
|
34
34
|
)
|
|
@@ -11,6 +11,7 @@ from dodal.devices.electron_analyser import EnergySource
|
|
|
11
11
|
from dodal.devices.electron_analyser.specs import SpecsDetector
|
|
12
12
|
from dodal.devices.i09_1 import LensMode, PsuMode
|
|
13
13
|
from dodal.devices.synchrotron import Synchrotron
|
|
14
|
+
from dodal.devices.undulator import UndulatorOrder
|
|
14
15
|
from dodal.log import set_beamline as set_log_beamline
|
|
15
16
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
16
17
|
|
|
@@ -47,3 +48,8 @@ def analyser() -> SpecsDetector[LensMode, PsuMode]:
|
|
|
47
48
|
psu_mode_type=PsuMode,
|
|
48
49
|
energy_source=energy_source(),
|
|
49
50
|
)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
@device_factory()
|
|
54
|
+
def harmonics() -> UndulatorOrder:
|
|
55
|
+
return UndulatorOrder(name="harmonics")
|
|
@@ -8,7 +8,7 @@ from dodal.devices.apple2_undulator import (
|
|
|
8
8
|
UndulatorPhaseAxes,
|
|
9
9
|
)
|
|
10
10
|
from dodal.devices.i09.enums import Grating
|
|
11
|
-
from dodal.devices.pgm import
|
|
11
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
12
12
|
from dodal.devices.synchrotron import Synchrotron
|
|
13
13
|
from dodal.log import set_beamline as set_log_beamline
|
|
14
14
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -25,8 +25,11 @@ def synchrotron() -> Synchrotron:
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
@device_factory()
|
|
28
|
-
def pgm() ->
|
|
29
|
-
return
|
|
28
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
29
|
+
return PlaneGratingMonochromator(
|
|
30
|
+
prefix=f"{PREFIX.beamline_prefix}-MO-PGM-01:",
|
|
31
|
+
grating=Grating,
|
|
32
|
+
)
|
|
30
33
|
|
|
31
34
|
|
|
32
35
|
@device_factory()
|
|
@@ -32,7 +32,7 @@ from dodal.devices.i10.i10_apple2 import (
|
|
|
32
32
|
|
|
33
33
|
# Imports taken from i10 while we work out how to deal with split end stations
|
|
34
34
|
from dodal.devices.i10.i10_setting_data import I10Grating
|
|
35
|
-
from dodal.devices.pgm import
|
|
35
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
36
36
|
from dodal.devices.synchrotron import Synchrotron
|
|
37
37
|
from dodal.log import set_beamline as set_log_beamline
|
|
38
38
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -59,9 +59,9 @@ def first_mirror() -> PiezoMirror:
|
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
@device_factory()
|
|
62
|
-
def pgm() ->
|
|
62
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
63
63
|
"I10 Plane Grating Monochromator, it can change energy via pgm.energy.set(<energy>)"
|
|
64
|
-
return
|
|
64
|
+
return PlaneGratingMonochromator(
|
|
65
65
|
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
66
66
|
grating=I10Grating,
|
|
67
67
|
grating_pv="NLINES2",
|
|
@@ -17,7 +17,7 @@ from dodal.devices.apple2_undulator import (
|
|
|
17
17
|
UndulatorPhaseAxes,
|
|
18
18
|
)
|
|
19
19
|
from dodal.devices.i17.i17_apple2 import I17Apple2Controller
|
|
20
|
-
from dodal.devices.pgm import
|
|
20
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
21
21
|
from dodal.devices.synchrotron import Synchrotron
|
|
22
22
|
from dodal.log import set_beamline as set_log_beamline
|
|
23
23
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -39,8 +39,8 @@ def synchrotron() -> Synchrotron:
|
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
@device_factory(skip=True)
|
|
42
|
-
def pgm() ->
|
|
43
|
-
return
|
|
42
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
43
|
+
return PlaneGratingMonochromator(
|
|
44
44
|
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
45
45
|
grating=I17Grating,
|
|
46
46
|
grating_pv="NLINES2",
|
|
@@ -1,12 +1,17 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
from ophyd_async.fastcs.eiger import EigerDetector
|
|
1
4
|
from ophyd_async.fastcs.panda import HDFPanda
|
|
2
5
|
|
|
3
6
|
from dodal.common.beamlines.beamline_utils import (
|
|
4
7
|
device_factory,
|
|
5
8
|
get_path_provider,
|
|
9
|
+
set_path_provider,
|
|
6
10
|
)
|
|
7
11
|
from dodal.common.beamlines.beamline_utils import (
|
|
8
12
|
set_beamline as set_utils_beamline,
|
|
9
13
|
)
|
|
14
|
+
from dodal.common.visit import StaticVisitPathProvider
|
|
10
15
|
from dodal.devices.i19.access_controlled.blueapi_device import HutchState
|
|
11
16
|
from dodal.devices.i19.access_controlled.shutter import AccessControlledShutter
|
|
12
17
|
from dodal.devices.i19.backlight import BacklightPosition
|
|
@@ -31,6 +36,13 @@ PREFIX = BeamlinePrefix("i19", "I")
|
|
|
31
36
|
set_log_beamline(BL)
|
|
32
37
|
set_utils_beamline(BL)
|
|
33
38
|
|
|
39
|
+
set_path_provider(
|
|
40
|
+
StaticVisitPathProvider(
|
|
41
|
+
BL,
|
|
42
|
+
Path("/dls/i19-2/data/2025/cm40639-4/"),
|
|
43
|
+
)
|
|
44
|
+
)
|
|
45
|
+
|
|
34
46
|
|
|
35
47
|
I19_2_ZEBRA_MAPPING = ZebraMapping(
|
|
36
48
|
outputs=ZebraTTLOutputs(),
|
|
@@ -105,3 +117,13 @@ def panda() -> HDFPanda:
|
|
|
105
117
|
prefix=f"{PREFIX.beamline_prefix}-EA-PANDA-01:",
|
|
106
118
|
path_provider=get_path_provider(),
|
|
107
119
|
)
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
@device_factory()
|
|
123
|
+
def eiger() -> EigerDetector:
|
|
124
|
+
return EigerDetector(
|
|
125
|
+
prefix=PREFIX.beamline_prefix,
|
|
126
|
+
path_provider=get_path_provider(),
|
|
127
|
+
drv_suffix="-EA-EIGER-01:",
|
|
128
|
+
hdf_suffix="-EA-EIGER-01:OD:",
|
|
129
|
+
)
|
|
@@ -8,7 +8,7 @@ from dodal.devices.apple2_undulator import (
|
|
|
8
8
|
UndulatorPhaseAxes,
|
|
9
9
|
)
|
|
10
10
|
from dodal.devices.i21 import Grating
|
|
11
|
-
from dodal.devices.pgm import
|
|
11
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
12
12
|
from dodal.devices.synchrotron import Synchrotron
|
|
13
13
|
from dodal.log import set_beamline as set_log_beamline
|
|
14
14
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -25,8 +25,8 @@ def synchrotron() -> Synchrotron:
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
@device_factory()
|
|
28
|
-
def pgm() ->
|
|
29
|
-
return
|
|
28
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
29
|
+
return PlaneGratingMonochromator(
|
|
30
30
|
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
31
31
|
grating=Grating,
|
|
32
32
|
)
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
from pathlib import Path
|
|
2
|
-
|
|
3
1
|
from ophyd_async.epics.adaravis import AravisDetector
|
|
4
2
|
from ophyd_async.epics.adcore import NDPluginBaseIO, NDPluginStatsIO
|
|
5
3
|
from ophyd_async.epics.adpilatus import PilatusDetector
|
|
@@ -8,7 +6,6 @@ from ophyd_async.fastcs.panda import HDFPanda
|
|
|
8
6
|
from dodal.common.beamlines.beamline_utils import (
|
|
9
7
|
device_factory,
|
|
10
8
|
get_path_provider,
|
|
11
|
-
set_path_provider,
|
|
12
9
|
)
|
|
13
10
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
14
11
|
from dodal.common.beamlines.device_helpers import CAM_SUFFIX, DET_SUFFIX, HDF5_SUFFIX
|
|
@@ -16,7 +13,6 @@ from dodal.common.crystal_metadata import (
|
|
|
16
13
|
MaterialsEnum,
|
|
17
14
|
make_crystal_metadata_from_material,
|
|
18
15
|
)
|
|
19
|
-
from dodal.common.visit import RemoteDirectoryServiceClient, StaticVisitPathProvider
|
|
20
16
|
from dodal.devices.bimorph_mirror import BimorphMirror
|
|
21
17
|
from dodal.devices.focusing_mirror import FocusingMirror
|
|
22
18
|
from dodal.devices.i22.dcm import DCM
|
|
@@ -37,19 +33,6 @@ PREFIX = BeamlinePrefix(BL)
|
|
|
37
33
|
set_log_beamline(BL)
|
|
38
34
|
set_utils_beamline(BL)
|
|
39
35
|
|
|
40
|
-
# Currently we must hard-code the visit, determining the visit at runtime requires
|
|
41
|
-
# infrastructure that is still WIP.
|
|
42
|
-
# Communication with GDA is also WIP so for now we determine an arbitrary scan number
|
|
43
|
-
# locally and write the commissioning directory. The scan number is not guaranteed to
|
|
44
|
-
# be unique and the data is at risk - this configuration is for testing only.
|
|
45
|
-
set_path_provider(
|
|
46
|
-
StaticVisitPathProvider(
|
|
47
|
-
BL,
|
|
48
|
-
Path("/dls/i22/data/2025/cm40643-4/"),
|
|
49
|
-
client=RemoteDirectoryServiceClient("http://i22-control:8088/api"),
|
|
50
|
-
)
|
|
51
|
-
)
|
|
52
|
-
|
|
53
36
|
|
|
54
37
|
@device_factory()
|
|
55
38
|
def saxs() -> PilatusDetector:
|
|
@@ -4,7 +4,7 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
4
4
|
device_factory,
|
|
5
5
|
)
|
|
6
6
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
7
|
-
from dodal.devices.pgm import
|
|
7
|
+
from dodal.devices.pgm import PlaneGratingMonochromator
|
|
8
8
|
from dodal.devices.synchrotron import Synchrotron
|
|
9
9
|
from dodal.log import set_beamline as set_log_beamline
|
|
10
10
|
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
@@ -27,5 +27,8 @@ class Grating(StrictEnum):
|
|
|
27
27
|
|
|
28
28
|
# Grating does not exist yet - this class is a placeholder for when it does
|
|
29
29
|
@device_factory(skip=True)
|
|
30
|
-
def pgm() ->
|
|
31
|
-
return
|
|
30
|
+
def pgm() -> PlaneGratingMonochromator:
|
|
31
|
+
return PlaneGratingMonochromator(
|
|
32
|
+
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
33
|
+
grating=Grating,
|
|
34
|
+
)
|
|
@@ -32,6 +32,11 @@ class TurboEnum(StrictEnum):
|
|
|
32
32
|
AUTO = "Auto"
|
|
33
33
|
|
|
34
34
|
|
|
35
|
+
class CryoStreamSelection(StrictEnum):
|
|
36
|
+
CRYOJET = "CryoJet"
|
|
37
|
+
HC1 = "HC1"
|
|
38
|
+
|
|
39
|
+
|
|
35
40
|
class OxfordCryoStreamController(StandardReadable):
|
|
36
41
|
def __init__(self, prefix: str, name: str = ""):
|
|
37
42
|
with self.add_children_as_readables(StandardReadableFormat.CONFIG_SIGNAL):
|
|
@@ -107,3 +112,19 @@ class OxfordCryoStream(StandardReadable):
|
|
|
107
112
|
self.status = OxfordCryoStreamStatus(prefix=prefix)
|
|
108
113
|
|
|
109
114
|
super().__init__(name)
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
class CryoStreamGantry(StandardReadable):
|
|
118
|
+
def __init__(self, prefix: str, name: str = ""):
|
|
119
|
+
with self.add_children_as_readables(StandardReadableFormat.CONFIG_SIGNAL):
|
|
120
|
+
self.cryostream_selector = epics_signal_r(
|
|
121
|
+
CryoStreamSelection, f"{prefix}-EA-GANT-01:CTRL"
|
|
122
|
+
)
|
|
123
|
+
self.hc1_selected = epics_signal_r(
|
|
124
|
+
int, f"{prefix}-MO-STEP-02:GPIO_INP_BITS.B2"
|
|
125
|
+
)
|
|
126
|
+
self.cryostream_selected = epics_signal_r(
|
|
127
|
+
int, f"{prefix}-MO-STEP-02:GPIO_INP_BITS.B3"
|
|
128
|
+
)
|
|
129
|
+
|
|
130
|
+
super().__init__(name)
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import asyncio
|
|
2
|
-
from collections.abc import Awaitable, Iterable
|
|
3
1
|
from dataclasses import dataclass, fields
|
|
4
2
|
from typing import TypeVar
|
|
5
3
|
|
|
6
4
|
from bluesky.protocols import Reading
|
|
7
5
|
from event_model.documents.event_descriptor import DataKey
|
|
8
|
-
from ophyd_async.core import PathProvider
|
|
6
|
+
from ophyd_async.core import PathProvider, merge_gathered_dicts
|
|
9
7
|
from ophyd_async.epics.adaravis import AravisDetector
|
|
10
8
|
from ophyd_async.epics.adcore import NDPluginBaseIO
|
|
11
9
|
from ophyd_async.epics.adpilatus import PilatusDetector
|
|
@@ -14,23 +12,6 @@ ValueAndUnits = tuple[float, str]
|
|
|
14
12
|
T = TypeVar("T")
|
|
15
13
|
|
|
16
14
|
|
|
17
|
-
# TODO: Remove this file as part of github.com/DiamondLightSource/dodal/issues/595
|
|
18
|
-
# Until which, temporarily duplicated non-public method from ophyd_async
|
|
19
|
-
async def _merge_gathered_dicts(
|
|
20
|
-
coros: Iterable[Awaitable[dict[str, T]]],
|
|
21
|
-
) -> dict[str, T]:
|
|
22
|
-
"""Merge dictionaries produced by a sequence of coroutines.
|
|
23
|
-
|
|
24
|
-
Can be used for merging ``read()`` or ``describe``. For instance::
|
|
25
|
-
|
|
26
|
-
combined_read = await merge_gathered_dicts(s.read() for s in signals)
|
|
27
|
-
"""
|
|
28
|
-
ret: dict[str, T] = {}
|
|
29
|
-
for result in await asyncio.gather(*coros):
|
|
30
|
-
ret.update(result)
|
|
31
|
-
return ret
|
|
32
|
-
|
|
33
|
-
|
|
34
15
|
@dataclass
|
|
35
16
|
class MetadataHolder:
|
|
36
17
|
# TODO: just in case this is useful more widely...
|
|
@@ -124,7 +105,7 @@ class NXSasPilatus(PilatusDetector):
|
|
|
124
105
|
self._metadata_holder = metadata_holder
|
|
125
106
|
|
|
126
107
|
async def read_configuration(self) -> dict[str, Reading]:
|
|
127
|
-
return await
|
|
108
|
+
return await merge_gathered_dicts(
|
|
128
109
|
r
|
|
129
110
|
for r in (
|
|
130
111
|
super().read_configuration(),
|
|
@@ -133,7 +114,7 @@ class NXSasPilatus(PilatusDetector):
|
|
|
133
114
|
)
|
|
134
115
|
|
|
135
116
|
async def describe_configuration(self) -> dict[str, DataKey]:
|
|
136
|
-
return await
|
|
117
|
+
return await merge_gathered_dicts(
|
|
137
118
|
r
|
|
138
119
|
for r in (
|
|
139
120
|
super().describe_configuration(),
|
|
@@ -167,7 +148,7 @@ class NXSasOAV(AravisDetector):
|
|
|
167
148
|
self._metadata_holder = metadata_holder
|
|
168
149
|
|
|
169
150
|
async def read_configuration(self) -> dict[str, Reading]:
|
|
170
|
-
return await
|
|
151
|
+
return await merge_gathered_dicts(
|
|
171
152
|
r
|
|
172
153
|
for r in (
|
|
173
154
|
super().read_configuration(),
|
|
@@ -176,7 +157,7 @@ class NXSasOAV(AravisDetector):
|
|
|
176
157
|
)
|
|
177
158
|
|
|
178
159
|
async def describe_configuration(self) -> dict[str, DataKey]:
|
|
179
|
-
return await
|
|
160
|
+
return await merge_gathered_dicts(
|
|
180
161
|
r
|
|
181
162
|
for r in (
|
|
182
163
|
super().describe_configuration(),
|
|
@@ -7,7 +7,7 @@ from ophyd_async.epics.core import epics_signal_rw
|
|
|
7
7
|
from ophyd_async.epics.motor import Motor
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class PlaneGratingMonochromator(StandardReadable):
|
|
11
11
|
"""
|
|
12
12
|
Plane grating monochromator, it is use in soft x-ray beamline to generate monochromic beam.
|
|
13
13
|
"""
|
|
@@ -69,6 +69,10 @@ class Scintillator(StandardReadable):
|
|
|
69
69
|
async def _set_selected_position(self, position: InOut) -> None:
|
|
70
70
|
match position:
|
|
71
71
|
case InOut.OUT:
|
|
72
|
+
current_y = await self.y_mm.user_readback.get_value()
|
|
73
|
+
current_z = await self.z_mm.user_readback.get_value()
|
|
74
|
+
if self._get_selected_position(current_y, current_z) == InOut.OUT:
|
|
75
|
+
return
|
|
72
76
|
if (
|
|
73
77
|
self._aperture_scatterguard().selected_aperture.get_value()
|
|
74
78
|
!= ApertureValue.PARKED
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import os
|
|
2
2
|
|
|
3
3
|
import numpy as np
|
|
4
|
-
from bluesky.protocols import Movable
|
|
4
|
+
from bluesky.protocols import Locatable, Location, Movable
|
|
5
5
|
from numpy import ndarray
|
|
6
6
|
from ophyd_async.core import (
|
|
7
7
|
AsyncStatus,
|
|
@@ -9,6 +9,7 @@ from ophyd_async.core import (
|
|
|
9
9
|
StandardReadable,
|
|
10
10
|
StandardReadableFormat,
|
|
11
11
|
soft_signal_r_and_setter,
|
|
12
|
+
soft_signal_rw,
|
|
12
13
|
)
|
|
13
14
|
from ophyd_async.epics.core import epics_signal_r
|
|
14
15
|
from ophyd_async.epics.motor import Motor
|
|
@@ -157,3 +158,30 @@ class Undulator(StandardReadable, Movable[float]):
|
|
|
157
158
|
energy_kev * 1000,
|
|
158
159
|
energy_to_distance_table,
|
|
159
160
|
)
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
class UndulatorOrder(StandardReadable, Locatable[int]):
|
|
164
|
+
"""
|
|
165
|
+
Represents the order of an undulator device. Allows setting and locating the order.
|
|
166
|
+
"""
|
|
167
|
+
|
|
168
|
+
def __init__(self, name: str = "") -> None:
|
|
169
|
+
"""
|
|
170
|
+
Args:
|
|
171
|
+
name: Name for device. Defaults to ""
|
|
172
|
+
"""
|
|
173
|
+
with self.add_children_as_readables():
|
|
174
|
+
self._value = soft_signal_rw(int, initial_value=3)
|
|
175
|
+
super().__init__(name=name)
|
|
176
|
+
|
|
177
|
+
@AsyncStatus.wrap
|
|
178
|
+
async def set(self, value: int) -> None:
|
|
179
|
+
if (value >= 0) and isinstance(value, int):
|
|
180
|
+
await self._value.set(value)
|
|
181
|
+
else:
|
|
182
|
+
raise ValueError(
|
|
183
|
+
f"Undulator order must be a positive integer. Requested value: {value}"
|
|
184
|
+
)
|
|
185
|
+
|
|
186
|
+
async def locate(self) -> Location[int]:
|
|
187
|
+
return await self._value.locate()
|