dls-dodal 1.43.0__tar.gz → 1.44.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.43.0 → dls_dodal-1.44.0}/PKG-INFO +4 -3
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/reference/device-standards.rst +1 -1
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/pyproject.toml +17 -13
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dls_dodal.egg-info/PKG-INFO +4 -3
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dls_dodal.egg-info/SOURCES.txt +21 -4
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dls_dodal.egg-info/requires.txt +1 -1
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/_version.py +2 -2
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/b01_1.py +8 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i03.py +11 -0
- dls_dodal-1.44.0/src/dodal/beamlines/i13_1.py +59 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i19_1.py +16 -5
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i19_2.py +12 -3
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i19_optics.py +4 -2
- dls_dodal-1.44.0/src/dodal/common/data_util.py +20 -0
- dls_dodal-1.44.0/src/dodal/common/signal_utils.py +88 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/aperturescatterguard.py +3 -3
- dls_dodal-1.44.0/src/dodal/devices/baton.py +17 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/current_amplifier.py +1 -6
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/current_amplifier_detector.py +2 -2
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/femto.py +0 -5
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/sr570.py +0 -5
- dls_dodal-1.44.0/src/dodal/devices/electron_analyser/base_region.py +64 -0
- dls_dodal-1.44.0/src/dodal/devices/electron_analyser/specs/specs_region.py +24 -0
- dls_dodal-1.44.0/src/dodal/devices/electron_analyser/vgscienta/vgscienta_region.py +77 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/fast_grid_scan.py +2 -2
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i03/beamstop.py +2 -2
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i13_1/merlin.py +1 -2
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i13_1/merlin_controller.py +12 -8
- dls_dodal-1.44.0/src/dodal/devices/i19/beamstop.py +30 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i19/hutch_access.py +2 -0
- dls_dodal-1.44.0/src/dodal/devices/i19/shutter.py +79 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i22/nxsas.py +1 -3
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/focus_mirrors.py +3 -3
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/pilatus_metadata.py +2 -2
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/oav_detector.py +7 -9
- dls_dodal-1.44.0/src/dodal/devices/oav/snapshots/snapshot.py +21 -0
- dls_dodal-1.44.0/src/dodal/devices/oav/snapshots/snapshot_image_processing.py +74 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plan_stubs/motor_utils.py +10 -12
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/utils.py +0 -7
- dls_dodal-1.44.0/tests/common/test_signal_utils.py +84 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i13_1/test_merlin.py +1 -2
- dls_dodal-1.44.0/tests/devices/i19/test_beamstop.py +15 -0
- dls_dodal-1.44.0/tests/devices/i19/test_shutter.py +149 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i22/test_dcm.py +1 -0
- dls_dodal-1.44.0/tests/devices/unit_tests/electron_analyser/test_specs_region.py +63 -0
- dls_dodal-1.44.0/tests/devices/unit_tests/electron_analyser/test_vgscienta_region.py +92 -0
- dls_dodal-1.44.0/tests/devices/unit_tests/electron_analyser/utils.py +16 -0
- dls_dodal-1.44.0/tests/devices/unit_tests/oav/test_snapshot_image_processing.py +39 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/test_snapshots.py +5 -35
- dls_dodal-1.44.0/tests/devices/unit_tests/test_baton.py +27 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_tetramm.py +2 -2
- dls_dodal-1.44.0/tests/devices/unit_tests/util/__init__.py +0 -0
- dls_dodal-1.44.0/tests/fake_zocalo/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plan_stubs/test_wrapped_stubs.py +8 -8
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plans/conftest.py +4 -3
- dls_dodal-1.44.0/tests/test_data/electron_analyser/specs_sequence.seq +40 -0
- dls_dodal-1.44.0/tests/test_data/electron_analyser/vgscienta_sequence.seq +61 -0
- dls_dodal-1.44.0/tests/unit_tests/__init__.py +0 -0
- dls_dodal-1.43.0/src/dodal/beamlines/i13_1.py +0 -85
- dls_dodal-1.43.0/src/dodal/common/signal_utils.py +0 -49
- dls_dodal-1.43.0/src/dodal/devices/i13_1/merlin_io.py +0 -17
- dls_dodal-1.43.0/src/dodal/devices/i19/shutter.py +0 -57
- dls_dodal-1.43.0/src/dodal/devices/oav/microns_for_zoom_levels.json +0 -55
- dls_dodal-1.43.0/src/dodal/devices/oav/snapshots/snapshot_with_beam_centre.py +0 -64
- dls_dodal-1.43.0/tests/devices/i19/test_shutter.py +0 -76
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.copier-answers.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.devcontainer/devcontainer.json +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/CODEOWNERS +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/CONTRIBUTING.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/ISSUE_TEMPLATE/issue_template.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/actions/install_requirements/action.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/dependabot.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/pages/index.html +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/pages/make_switcher.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/scripts/check_test_durations.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_check.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_dist.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_docs.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_pypi.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_release.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_test.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/_tox.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/ci.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.github/workflows/periodic.yml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.gitignore +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.pre-commit-config.yaml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.vscode/extensions.json +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.vscode/launch.json +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.vscode/settings.json +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/.vscode/tasks.json +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/Dockerfile +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/LICENSE +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/README.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/catalog-info.yaml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/conftest.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/_templates/autosummary/class.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/_templates/autosummary/module.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/_templates/custom-module-template.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/assets/zocalo.png +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/conf.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/decisions/0001-record-architecture-decisions.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/decisions/0002-switched-to-python-copier-template.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/decisions/0003-codeowners.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/decisions/0003-make-devices-factory.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/decisions/COPYME +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/decisions.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations/reviews.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/explanations.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/genindex.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/build-docs.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/contribute.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/coverage.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/create-beamline.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/dev-install.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/excalidraw.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/lint.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/lock-requirements.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/make-new-ophyd-async-device.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/make-release.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/move-code.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/pypi.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/run-tests.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/static-analysis.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/update-template.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/write-tests.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to/zocalo.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/how-to.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/images/dls-logo.svg +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/images/excalidraw-example.svg +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/index.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/reference/api.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/reference/standards.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/reference.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/tutorials/get_started.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/tutorials/installation.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/docs/tutorials.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/pull_request_template.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/setup.cfg +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dls_dodal.egg-info/dependency_links.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dls_dodal.egg-info/entry_points.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dls_dodal.egg-info/top_level.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/__main__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamline_specific_utils/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamline_specific_utils/i03.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/README.md +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/adsim.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/aithre.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i02_1.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i04.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i10.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i18.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i20_1.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i22.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i23.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/i24.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/p38.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/p45.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/p99.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/beamlines/training_rig.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/cli.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/beamlines/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/beamlines/beamline_parameters.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/beamlines/beamline_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/beamlines/device_helpers.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/coordination.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/crystal_metadata.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/maths.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/types.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/udc_directory_provider.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/common/visit.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/CTAB.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/adsim.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/aithre_lasershaping/goniometer.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/aperture.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/apple2_undulator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/areadetector/plugins/CAM.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/areadetector/plugins/MJPG.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/attenuator/attenuator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/attenuator/filter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/attenuator/filter_selections.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/backlight.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/bimorph_mirror.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/cryostream.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/struck_scaler_counter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/dcm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/detector/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/detector/det_dim_constants.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/detector/det_dist_to_beam_converter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/detector/det_resolution.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/detector/detector.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/detector/detector_motion.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/diamond_filter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/eiger.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/eiger_odin.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/i03 → dls_dodal-1.44.0/src/dodal/devices/electron_analyser}/__init__.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/i13_1 → dls_dodal-1.44.0/src/dodal/devices/electron_analyser/specs}/__init__.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/i19 → dls_dodal-1.44.0/src/dodal/devices/electron_analyser/vgscienta}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/fluorescence_detector_motion.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/flux.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/focusing_mirror.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/hutch_shutter.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/i20_1 → dls_dodal-1.44.0/src/dodal/devices/i03}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i04/transfocator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/i10_apple2.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/i10_setting_data.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/mirrors.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/rasor/rasor_current_amp.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/rasor/rasor_motors.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/rasor/rasor_scaler_cards.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i10/slits.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/i24 → dls_dodal-1.44.0/src/dodal/devices/i13_1}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i18/KBMirror.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i18/diode.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i18/table.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i18/thor_labs_stage.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/oav → dls_dodal-1.44.0/src/dodal/devices/i19}/__init__.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/p99 → dls_dodal-1.44.0/src/dodal/devices/i20_1}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i22/dcm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i22/fswitch.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/training_rig → dls_dodal-1.44.0/src/dodal/devices/i24}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/aperture.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/beam_center.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/beamstop.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/dcm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/dual_backlight.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/i24_detector_motion.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/pmac.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/i24/vgonio.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/ipin.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/linkam3.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/logging_ophyd_device.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/motors.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/util → dls_dodal-1.44.0/src/dodal/devices/oav}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/oav_calculations.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/oav_parameters.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/oav_to_redis_forwarder.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/pin_image_recognition/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/pin_image_recognition/manual_test.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/pin_image_recognition/utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/snapshots/grid_overlay.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/snapshots/snapshot_with_grid.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/oav/utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/p45.py +0 -0
- {dls_dodal-1.43.0/src/dodal/devices/zebra → dls_dodal-1.44.0/src/dodal/devices/p99}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/p99/sample_stage.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/pgm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/pressure_jump_cell.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/qbpm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/robot.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/s4_slit_gaps.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/scatterguard.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/scintillator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/slits.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/smargon.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/status.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/synchrotron.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/tetramm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/thawer.py +0 -0
- {dls_dodal-1.43.0/src/dodal/plan_stubs → dls_dodal-1.44.0/src/dodal/devices/training_rig}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/training_rig/sample_stage.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/turbo_slit.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/undulator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/undulator_dcm.py +0 -0
- {dls_dodal-1.43.0/src/dodal/plans/preprocessors → dls_dodal-1.44.0/src/dodal/devices/util}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/util/adjuster_plans.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/util/epics_util.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/util/lookup_tables.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/util/motor_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/util/test_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/watsonmarlow323_pump.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/webcam.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/xbpm_feedback.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/xspress3/xspress3.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/xspress3/xspress3_channel.py +0 -0
- {dls_dodal-1.43.0/system_tests → dls_dodal-1.44.0/src/dodal/devices/zebra}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zebra/zebra.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zebra/zebra_constants_mapping.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zebra/zebra_controlled_shutter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zocalo/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zocalo/zocalo_constants.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zocalo/zocalo_interaction.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/zocalo/zocalo_results.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/log.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/parameters/experiment_parameter_base.py +0 -0
- {dls_dodal-1.43.0/tests → dls_dodal-1.44.0/src/dodal/plan_stubs}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plan_stubs/check_topup.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plan_stubs/data_session.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plan_stubs/wrapped.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plans/__init__.py +0 -0
- {dls_dodal-1.43.0/tests/beamlines → dls_dodal-1.44.0/src/dodal/plans/preprocessors}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plans/preprocessors/verify_undulator_gap.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plans/save_panda.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plans/scanspec.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plans/verify_undulator_gap.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/plans/wrapped.py +0 -0
- {dls_dodal-1.43.0/tests/beamlines/unit_tests → dls_dodal-1.44.0/system_tests}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_adsim.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_aperturescatterguard_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_cli.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_eiger_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_gridscan_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_oav_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_oav_to_redis_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_slit_gaps_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_smargon_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_synchrotron_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_undulator_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_zebra_system.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/system_tests/test_zocalo_results.py +0 -0
- {dls_dodal-1.43.0/tests/common → dls_dodal-1.44.0/tests}/__init__.py +0 -0
- {dls_dodal-1.43.0/tests/common → dls_dodal-1.44.0/tests}/beamlines/__init__.py +0 -0
- {dls_dodal-1.43.0/tests/devices → dls_dodal-1.44.0/tests/beamlines/unit_tests}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/beamlines/unit_tests/test_i03.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/beamlines/unit_tests/test_i24.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/beamlines/unit_tests/test_mapping.py +0 -0
- {dls_dodal-1.43.0/tests/devices/i03 → dls_dodal-1.44.0/tests/common}/__init__.py +0 -0
- {dls_dodal-1.43.0/tests/devices/i04 → dls_dodal-1.44.0/tests/common/beamlines}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/beamlines/test_beamline_parameters.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/beamlines/test_beamline_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/beamlines/test_device_helpers.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/beamlines/test_device_instantiation.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/test_coordination.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/test_crystal_metadata.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/test_maths.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/test_udc_directory_provider.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/common/test_visit.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/conftest.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/constants.py +0 -0
- {dls_dodal-1.43.0/tests/devices/i19 → dls_dodal-1.44.0/tests/devices}/__init__.py +0 -0
- {dls_dodal-1.43.0/tests/devices/unit_tests → dls_dodal-1.44.0/tests/devices/i03}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i03/test_beamstop.py +0 -0
- {dls_dodal-1.43.0/tests/devices/unit_tests/i24 → dls_dodal-1.44.0/tests/devices/i04}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i04/test_transfocator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/lookupTables/IDEnergy2GapCalibrations.csv +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/lookupTables/IDEnergy2PhaseCalibrations.csv +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/lookupTables/expectedIDEnergy2GapCalibrationsIdd.pkl +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/lookupTables/expectedIDEnergy2GapCalibrationsIdu.pkl +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/lookupTables/expectedIDEnergy2PhaseCalibrationsidd.pkl +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/lookupTables/expectedIDEnergy2PhaseCalibrationsidu.pkl +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i10/test_i10Apple2.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i18/test_kb_mirror.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i18/test_table.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i18/test_thor_labs_stage.py +0 -0
- {dls_dodal-1.43.0/tests/devices/unit_tests/oav → dls_dodal-1.44.0/tests/devices/i19}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i22/test_fswitch.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/i22/test_metadataholder.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/test_diamond_filter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/training_rig/test_sample_stage.py +0 -0
- {dls_dodal-1.43.0/tests/devices/unit_tests/util → dls_dodal-1.44.0/tests/devices/unit_tests}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/conftest.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/current_amplifier/test_femto.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/current_amplifier/test_sr570.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/detector/test_det_dim_constants.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/detector/test_det_resolution.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/detector/test_detector.py +0 -0
- {dls_dodal-1.43.0/tests/fake_zocalo → dls_dodal-1.44.0/tests/devices/unit_tests/i24}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/i24/test_dual_backlight.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/i24/test_focus_mirrors.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/i24/test_pilatus_metadata.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/i24/test_pmac.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/i24/test_vgonio.py +0 -0
- {dls_dodal-1.43.0/tests/unit_tests → dls_dodal-1.44.0/tests/devices/unit_tests/oav}/__init__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/conftest.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/test_grid_overlay.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/test_oav.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/test_oav_parameters.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/test_oav_to_redis_forwarder.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/oav/test_oav_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/p99/test_p99_stage.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_OAVCentring.json +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_aperture.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_aperture_scatterguard.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_apple2_undulator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_attenuator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_backlight.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_bart_robot.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_beam_converter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_beamline_undulator_to_gap_lookup_table.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_bimorph_mirror.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_daq_configuration/domain/beamlineParameters +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_dcm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_display.configuration +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_eiger.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_focusing_mirror.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_gridscan.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_hutch_shutter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_jCameraManZoomLevels.xml +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_linkam3.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_lookup_table.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_lookup_table_2.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_odin.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_pressure_jump_cell.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_qbpm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_slits.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_smargon.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_status.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_synchrotron.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_thawer.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_undulator.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_undulator_dcm.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_watsonmarlow323_pump.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_webcam.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_xbpm_feedback.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_xspress3.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_zebra.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_zebra_constants_mapping.py +0 -0
- /dls_dodal-1.43.0/tests/devices/unit_tests/test_shutter.py → /dls_dodal-1.44.0/tests/devices/unit_tests/test_zebra_shutter.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_zocalo_interaction.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/test_zocalo_results.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/util/test_adjuster_plans.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/util/test_beamline_specific_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/util/test_lookup_tables.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/devices/unit_tests/util/test_save_panda.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline_all_devices_raise_exception.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline_broken_dependency.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline_dependencies.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline_disordered_dependencies.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline_misbehaving_builtins.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_beamline_some_devices_working.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_device_factory_beamline.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_zocalo/README.rst +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_zocalo/__main__.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/fake_zocalo/dls_start_fake_zocalo.sh +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plan_stubs/test_data_session.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plan_stubs/test_motor_util_plans.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plan_stubs/test_topup_plan.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plans/test_compliance.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plans/test_preprocessors/test_verify_undulator_gap.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plans/test_scanspec.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plans/test_verify_undulator_gap_plan.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/plans/test_wrapped.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/preprocessors/test_filesystem_metadata.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/bad_beamlineParameters +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/i04_beamlineParameters +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_beamline_dcm_roll_converter_non_monotonic.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_beamline_dcm_roll_converter_reversed.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_beamline_parameters.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_det_dist_converter.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_images/oav_snapshot_expected.png +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/test_images/oav_snapshot_test.png +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/topup_long_delay.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_data/topup_short_params.txt +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/test_utils.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/unit_tests/test_cli.py +0 -0
- {dls_dodal-1.43.0 → dls_dodal-1.44.0}/tests/unit_tests/test_log.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: dls-dodal
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.44.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>
|
|
6
6
|
License: Apache License
|
|
@@ -216,7 +216,7 @@ Description-Content-Type: text/markdown
|
|
|
216
216
|
License-File: LICENSE
|
|
217
217
|
Requires-Dist: click
|
|
218
218
|
Requires-Dist: ophyd
|
|
219
|
-
Requires-Dist: ophyd-async>=0.
|
|
219
|
+
Requires-Dist: ophyd-async>=0.10.0a1
|
|
220
220
|
Requires-Dist: bluesky
|
|
221
221
|
Requires-Dist: pyepics
|
|
222
222
|
Requires-Dist: dataclasses-json
|
|
@@ -264,6 +264,7 @@ Requires-Dist: types-requests; extra == "dev"
|
|
|
264
264
|
Requires-Dist: types-mock; extra == "dev"
|
|
265
265
|
Requires-Dist: types-PyYAML; extra == "dev"
|
|
266
266
|
Requires-Dist: types-aiofiles; extra == "dev"
|
|
267
|
+
Dynamic: license-file
|
|
267
268
|
|
|
268
269
|
[](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml)
|
|
269
270
|
[](https://codecov.io/gh/DiamondLightSource/dodal)
|
|
@@ -150,7 +150,7 @@ based on this and so this has the issues listed above. Instead you should make s
|
|
|
150
150
|
def __init__(self):
|
|
151
151
|
self.underlying_motor = Motor("MOTOR")
|
|
152
152
|
with self.add_children_as_readables():
|
|
153
|
-
self.in_out =
|
|
153
|
+
self.in_out = create_r_hardware_backed_soft_signal(InOut, self._get_in_out_from_hardware)
|
|
154
154
|
|
|
155
155
|
async def _get_in_out_from_hardware(self):
|
|
156
156
|
current_position = await self.underlying_motor.get_value()
|
|
@@ -15,7 +15,7 @@ description = "Ophyd devices and other utils that could be used across DLS beaml
|
|
|
15
15
|
dependencies = [
|
|
16
16
|
"click",
|
|
17
17
|
"ophyd",
|
|
18
|
-
"ophyd-async
|
|
18
|
+
"ophyd-async>=0.10.0a1",
|
|
19
19
|
"bluesky",
|
|
20
20
|
"pyepics",
|
|
21
21
|
"dataclasses-json",
|
|
@@ -170,23 +170,27 @@ lint.extend-ignore = [
|
|
|
170
170
|
"F811", # support typing.overload decorator
|
|
171
171
|
]
|
|
172
172
|
lint.select = [
|
|
173
|
-
"B",
|
|
174
|
-
"C4",
|
|
175
|
-
"E",
|
|
176
|
-
"F",
|
|
177
|
-
"W",
|
|
178
|
-
"I",
|
|
179
|
-
"UP",
|
|
180
|
-
"SLF",
|
|
181
|
-
"RUF018" # walrus operators in asserts - https://docs.astral.sh/ruff/rules/assignment-in-assert/
|
|
173
|
+
"B", # flake8-bugbear - https://docs.astral.sh/ruff/rules/#flake8-bugbear-b
|
|
174
|
+
"C4", # flake8-comprehensions - https://docs.astral.sh/ruff/rules/#flake8-comprehensions-c4
|
|
175
|
+
"E", # pycodestyle errors - https://docs.astral.sh/ruff/rules/#error-e
|
|
176
|
+
"F", # pyflakes rules - https://docs.astral.sh/ruff/rules/#pyflakes-f
|
|
177
|
+
"W", # pycodestyle warnings - https://docs.astral.sh/ruff/rules/#warning-w
|
|
178
|
+
"I", # isort - https://docs.astral.sh/ruff/rules/#isort-i
|
|
179
|
+
"UP", # pyupgrade - https://docs.astral.sh/ruff/rules/#pyupgrade-up
|
|
180
|
+
"SLF", # self - https://docs.astral.sh/ruff/settings/#lintflake8-self
|
|
181
|
+
"RUF018", # walrus operators in asserts - https://docs.astral.sh/ruff/rules/assignment-in-assert/
|
|
182
|
+
"TID251", # banned api - https://docs.astral.sh/ruff/rules/banned-api/
|
|
182
183
|
]
|
|
183
184
|
|
|
184
185
|
[tool.ruff.lint.per-file-ignores]
|
|
185
186
|
# By default, private member access is allowed in tests
|
|
186
187
|
# See https://github.com/DiamondLightSource/python-copier-template/issues/154
|
|
187
|
-
# Remove this line to forbid private member access
|
|
188
|
-
"tests/**/*" = ["SLF001", "RUF018"]
|
|
189
|
-
"system_tests/**/*" = ["SLF001", "RUF018"]
|
|
188
|
+
# Remove this line to forbid private member access, walrus operators, banned api in asserts in tests
|
|
189
|
+
"tests/**/*" = ["SLF001", "RUF018", "TID251"]
|
|
190
|
+
"system_tests/**/*" = ["SLF001", "RUF018", "TID251"]
|
|
191
|
+
|
|
192
|
+
[tool.ruff.lint.flake8-tidy-imports.banned-api]
|
|
193
|
+
"time.sleep".msg = "Use bps.sleep or asyncio.sleep instead. # noqa will disable this rule for that line. See https://github.com/DiamondLightSource/mx-bluesky/issues/925"
|
|
190
194
|
|
|
191
195
|
[tool.importlinter]
|
|
192
196
|
root_package = "dodal"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: dls-dodal
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.44.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>
|
|
6
6
|
License: Apache License
|
|
@@ -216,7 +216,7 @@ Description-Content-Type: text/markdown
|
|
|
216
216
|
License-File: LICENSE
|
|
217
217
|
Requires-Dist: click
|
|
218
218
|
Requires-Dist: ophyd
|
|
219
|
-
Requires-Dist: ophyd-async>=0.
|
|
219
|
+
Requires-Dist: ophyd-async>=0.10.0a1
|
|
220
220
|
Requires-Dist: bluesky
|
|
221
221
|
Requires-Dist: pyepics
|
|
222
222
|
Requires-Dist: dataclasses-json
|
|
@@ -264,6 +264,7 @@ Requires-Dist: types-requests; extra == "dev"
|
|
|
264
264
|
Requires-Dist: types-mock; extra == "dev"
|
|
265
265
|
Requires-Dist: types-PyYAML; extra == "dev"
|
|
266
266
|
Requires-Dist: types-aiofiles; extra == "dev"
|
|
267
|
+
Dynamic: license-file
|
|
267
268
|
|
|
268
269
|
[](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml)
|
|
269
270
|
[](https://codecov.io/gh/DiamondLightSource/dodal)
|
|
@@ -112,6 +112,7 @@ src/dodal/beamlines/training_rig.py
|
|
|
112
112
|
src/dodal/common/__init__.py
|
|
113
113
|
src/dodal/common/coordination.py
|
|
114
114
|
src/dodal/common/crystal_metadata.py
|
|
115
|
+
src/dodal/common/data_util.py
|
|
115
116
|
src/dodal/common/maths.py
|
|
116
117
|
src/dodal/common/signal_utils.py
|
|
117
118
|
src/dodal/common/types.py
|
|
@@ -128,6 +129,7 @@ src/dodal/devices/aperture.py
|
|
|
128
129
|
src/dodal/devices/aperturescatterguard.py
|
|
129
130
|
src/dodal/devices/apple2_undulator.py
|
|
130
131
|
src/dodal/devices/backlight.py
|
|
132
|
+
src/dodal/devices/baton.py
|
|
131
133
|
src/dodal/devices/bimorph_mirror.py
|
|
132
134
|
src/dodal/devices/cryostream.py
|
|
133
135
|
src/dodal/devices/dcm.py
|
|
@@ -181,6 +183,12 @@ src/dodal/devices/detector/det_dist_to_beam_converter.py
|
|
|
181
183
|
src/dodal/devices/detector/det_resolution.py
|
|
182
184
|
src/dodal/devices/detector/detector.py
|
|
183
185
|
src/dodal/devices/detector/detector_motion.py
|
|
186
|
+
src/dodal/devices/electron_analyser/__init__.py
|
|
187
|
+
src/dodal/devices/electron_analyser/base_region.py
|
|
188
|
+
src/dodal/devices/electron_analyser/specs/__init__.py
|
|
189
|
+
src/dodal/devices/electron_analyser/specs/specs_region.py
|
|
190
|
+
src/dodal/devices/electron_analyser/vgscienta/__init__.py
|
|
191
|
+
src/dodal/devices/electron_analyser/vgscienta/vgscienta_region.py
|
|
184
192
|
src/dodal/devices/i03/__init__.py
|
|
185
193
|
src/dodal/devices/i03/beamstop.py
|
|
186
194
|
src/dodal/devices/i04/transfocator.py
|
|
@@ -194,12 +202,12 @@ src/dodal/devices/i10/rasor/rasor_scaler_cards.py
|
|
|
194
202
|
src/dodal/devices/i13_1/__init__.py
|
|
195
203
|
src/dodal/devices/i13_1/merlin.py
|
|
196
204
|
src/dodal/devices/i13_1/merlin_controller.py
|
|
197
|
-
src/dodal/devices/i13_1/merlin_io.py
|
|
198
205
|
src/dodal/devices/i18/KBMirror.py
|
|
199
206
|
src/dodal/devices/i18/diode.py
|
|
200
207
|
src/dodal/devices/i18/table.py
|
|
201
208
|
src/dodal/devices/i18/thor_labs_stage.py
|
|
202
209
|
src/dodal/devices/i19/__init__.py
|
|
210
|
+
src/dodal/devices/i19/beamstop.py
|
|
203
211
|
src/dodal/devices/i19/hutch_access.py
|
|
204
212
|
src/dodal/devices/i19/shutter.py
|
|
205
213
|
src/dodal/devices/i20_1/__init__.py
|
|
@@ -218,7 +226,6 @@ src/dodal/devices/i24/pilatus_metadata.py
|
|
|
218
226
|
src/dodal/devices/i24/pmac.py
|
|
219
227
|
src/dodal/devices/i24/vgonio.py
|
|
220
228
|
src/dodal/devices/oav/__init__.py
|
|
221
|
-
src/dodal/devices/oav/microns_for_zoom_levels.json
|
|
222
229
|
src/dodal/devices/oav/oav_calculations.py
|
|
223
230
|
src/dodal/devices/oav/oav_detector.py
|
|
224
231
|
src/dodal/devices/oav/oav_parameters.py
|
|
@@ -228,7 +235,8 @@ src/dodal/devices/oav/pin_image_recognition/__init__.py
|
|
|
228
235
|
src/dodal/devices/oav/pin_image_recognition/manual_test.py
|
|
229
236
|
src/dodal/devices/oav/pin_image_recognition/utils.py
|
|
230
237
|
src/dodal/devices/oav/snapshots/grid_overlay.py
|
|
231
|
-
src/dodal/devices/oav/snapshots/
|
|
238
|
+
src/dodal/devices/oav/snapshots/snapshot.py
|
|
239
|
+
src/dodal/devices/oav/snapshots/snapshot_image_processing.py
|
|
232
240
|
src/dodal/devices/oav/snapshots/snapshot_with_grid.py
|
|
233
241
|
src/dodal/devices/p99/__init__.py
|
|
234
242
|
src/dodal/devices/p99/sample_stage.py
|
|
@@ -298,6 +306,7 @@ tests/common/__init__.py
|
|
|
298
306
|
tests/common/test_coordination.py
|
|
299
307
|
tests/common/test_crystal_metadata.py
|
|
300
308
|
tests/common/test_maths.py
|
|
309
|
+
tests/common/test_signal_utils.py
|
|
301
310
|
tests/common/test_udc_directory_provider.py
|
|
302
311
|
tests/common/test_visit.py
|
|
303
312
|
tests/common/beamlines/__init__.py
|
|
@@ -323,6 +332,7 @@ tests/devices/i18/test_kb_mirror.py
|
|
|
323
332
|
tests/devices/i18/test_table.py
|
|
324
333
|
tests/devices/i18/test_thor_labs_stage.py
|
|
325
334
|
tests/devices/i19/__init__.py
|
|
335
|
+
tests/devices/i19/test_beamstop.py
|
|
326
336
|
tests/devices/i19/test_shutter.py
|
|
327
337
|
tests/devices/i22/test_dcm.py
|
|
328
338
|
tests/devices/i22/test_fswitch.py
|
|
@@ -337,6 +347,7 @@ tests/devices/unit_tests/test_apple2_undulator.py
|
|
|
337
347
|
tests/devices/unit_tests/test_attenuator.py
|
|
338
348
|
tests/devices/unit_tests/test_backlight.py
|
|
339
349
|
tests/devices/unit_tests/test_bart_robot.py
|
|
350
|
+
tests/devices/unit_tests/test_baton.py
|
|
340
351
|
tests/devices/unit_tests/test_beam_converter.py
|
|
341
352
|
tests/devices/unit_tests/test_beamline_undulator_to_gap_lookup_table.txt
|
|
342
353
|
tests/devices/unit_tests/test_bimorph_mirror.py
|
|
@@ -353,7 +364,6 @@ tests/devices/unit_tests/test_lookup_table_2.txt
|
|
|
353
364
|
tests/devices/unit_tests/test_odin.py
|
|
354
365
|
tests/devices/unit_tests/test_pressure_jump_cell.py
|
|
355
366
|
tests/devices/unit_tests/test_qbpm.py
|
|
356
|
-
tests/devices/unit_tests/test_shutter.py
|
|
357
367
|
tests/devices/unit_tests/test_slits.py
|
|
358
368
|
tests/devices/unit_tests/test_smargon.py
|
|
359
369
|
tests/devices/unit_tests/test_status.py
|
|
@@ -369,6 +379,7 @@ tests/devices/unit_tests/test_xbpm_feedback.py
|
|
|
369
379
|
tests/devices/unit_tests/test_xspress3.py
|
|
370
380
|
tests/devices/unit_tests/test_zebra.py
|
|
371
381
|
tests/devices/unit_tests/test_zebra_constants_mapping.py
|
|
382
|
+
tests/devices/unit_tests/test_zebra_shutter.py
|
|
372
383
|
tests/devices/unit_tests/test_zocalo_interaction.py
|
|
373
384
|
tests/devices/unit_tests/test_zocalo_results.py
|
|
374
385
|
tests/devices/unit_tests/current_amplifier/test_femto.py
|
|
@@ -376,6 +387,9 @@ tests/devices/unit_tests/current_amplifier/test_sr570.py
|
|
|
376
387
|
tests/devices/unit_tests/detector/test_det_dim_constants.py
|
|
377
388
|
tests/devices/unit_tests/detector/test_det_resolution.py
|
|
378
389
|
tests/devices/unit_tests/detector/test_detector.py
|
|
390
|
+
tests/devices/unit_tests/electron_analyser/test_specs_region.py
|
|
391
|
+
tests/devices/unit_tests/electron_analyser/test_vgscienta_region.py
|
|
392
|
+
tests/devices/unit_tests/electron_analyser/utils.py
|
|
379
393
|
tests/devices/unit_tests/i24/__init__.py
|
|
380
394
|
tests/devices/unit_tests/i24/test_dual_backlight.py
|
|
381
395
|
tests/devices/unit_tests/i24/test_focus_mirrors.py
|
|
@@ -389,6 +403,7 @@ tests/devices/unit_tests/oav/test_oav.py
|
|
|
389
403
|
tests/devices/unit_tests/oav/test_oav_parameters.py
|
|
390
404
|
tests/devices/unit_tests/oav/test_oav_to_redis_forwarder.py
|
|
391
405
|
tests/devices/unit_tests/oav/test_oav_utils.py
|
|
406
|
+
tests/devices/unit_tests/oav/test_snapshot_image_processing.py
|
|
392
407
|
tests/devices/unit_tests/oav/test_snapshots.py
|
|
393
408
|
tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect.py
|
|
394
409
|
tests/devices/unit_tests/oav/image_recognition/test_pin_tip_detect_utils.py
|
|
@@ -425,6 +440,8 @@ tests/test_data/test_beamline_parameters.txt
|
|
|
425
440
|
tests/test_data/test_det_dist_converter.txt
|
|
426
441
|
tests/test_data/topup_long_delay.txt
|
|
427
442
|
tests/test_data/topup_short_params.txt
|
|
443
|
+
tests/test_data/electron_analyser/specs_sequence.seq
|
|
444
|
+
tests/test_data/electron_analyser/vgscienta_sequence.seq
|
|
428
445
|
tests/test_data/test_images/oav_snapshot_expected.png
|
|
429
446
|
tests/test_data/test_images/oav_snapshot_test.png
|
|
430
447
|
tests/unit_tests/__init__.py
|
|
@@ -11,6 +11,7 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
11
11
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
12
12
|
from dodal.common.beamlines.device_helpers import CAM_SUFFIX, HDF5_SUFFIX
|
|
13
13
|
from dodal.common.visit import LocalDirectoryServiceClient, StaticVisitPathProvider
|
|
14
|
+
from dodal.devices.motors import XYZPositioner
|
|
14
15
|
from dodal.devices.synchrotron import Synchrotron
|
|
15
16
|
from dodal.log import set_beamline as set_log_beamline
|
|
16
17
|
from dodal.utils import BeamlinePrefix
|
|
@@ -60,3 +61,10 @@ def manta() -> AravisDetector:
|
|
|
60
61
|
drv_suffix=CAM_SUFFIX,
|
|
61
62
|
fileio_suffix=HDF5_SUFFIX,
|
|
62
63
|
)
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
@device_factory()
|
|
67
|
+
def sample_stage() -> XYZPositioner:
|
|
68
|
+
return XYZPositioner(
|
|
69
|
+
f"{PREFIX.beamline_prefix}-MO-PPMAC-01:",
|
|
70
|
+
)
|
|
@@ -16,6 +16,7 @@ from dodal.devices.aperturescatterguard import (
|
|
|
16
16
|
)
|
|
17
17
|
from dodal.devices.attenuator.attenuator import BinaryFilterAttenuator
|
|
18
18
|
from dodal.devices.backlight import Backlight
|
|
19
|
+
from dodal.devices.baton import Baton
|
|
19
20
|
from dodal.devices.cryostream import CryoStream
|
|
20
21
|
from dodal.devices.dcm import DCM
|
|
21
22
|
from dodal.devices.detector.detector_motion import DetectorMotion
|
|
@@ -436,3 +437,13 @@ def qbpm() -> QBPM:
|
|
|
436
437
|
f"{PREFIX.beamline_prefix}-DI-QBPM-01:",
|
|
437
438
|
"qbpm",
|
|
438
439
|
)
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
@device_factory(
|
|
443
|
+
skip=True
|
|
444
|
+
) # Skipping as not yet on the beamline, see https://jira.diamond.ac.uk/browse/I03-894
|
|
445
|
+
def baton() -> Baton:
|
|
446
|
+
"""Get the i03 baton device, instantiate it if it hasn't already been.
|
|
447
|
+
If this is called when already instantiated in i03, it will return the existing object.
|
|
448
|
+
"""
|
|
449
|
+
return Baton(f"{PREFIX.beamline_prefix}:")
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
from ophyd_async.epics.adaravis import AravisDetector
|
|
4
|
+
|
|
5
|
+
from dodal.common.beamlines.beamline_utils import (
|
|
6
|
+
device_factory,
|
|
7
|
+
get_path_provider,
|
|
8
|
+
set_path_provider,
|
|
9
|
+
)
|
|
10
|
+
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
11
|
+
from dodal.common.visit import LocalDirectoryServiceClient, StaticVisitPathProvider
|
|
12
|
+
from dodal.devices.i13_1.merlin import Merlin
|
|
13
|
+
from dodal.devices.motors import XYZPositioner
|
|
14
|
+
from dodal.log import set_beamline as set_log_beamline
|
|
15
|
+
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
16
|
+
|
|
17
|
+
BL = get_beamline_name("i13-1")
|
|
18
|
+
PREFIX_BL13I = BeamlinePrefix(BL) # Can't use this yet as returns BL13I
|
|
19
|
+
PREFIX = "BL13J"
|
|
20
|
+
set_log_beamline(BL)
|
|
21
|
+
set_utils_beamline(BL)
|
|
22
|
+
set_path_provider(
|
|
23
|
+
StaticVisitPathProvider(
|
|
24
|
+
BL,
|
|
25
|
+
Path("/dls/i13-1/data/2024/cm37257-5/tmp/"), # latest commissioning visit
|
|
26
|
+
client=LocalDirectoryServiceClient(),
|
|
27
|
+
)
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
@device_factory()
|
|
32
|
+
def sample_xyz_stage() -> XYZPositioner:
|
|
33
|
+
return XYZPositioner(prefix=f"{PREFIX}-MO-PI-02:")
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
@device_factory()
|
|
37
|
+
def sample_xyz_lab_fa_stage() -> XYZPositioner:
|
|
38
|
+
return XYZPositioner(prefix=f"{PREFIX}-MO-PI-02:FIXANG:")
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
@device_factory()
|
|
42
|
+
def side_camera() -> AravisDetector:
|
|
43
|
+
return AravisDetector(
|
|
44
|
+
prefix=f"{PREFIX}-OP-FLOAT-03:",
|
|
45
|
+
drv_suffix="CAM:",
|
|
46
|
+
fileio_suffix="HDF5:",
|
|
47
|
+
path_provider=get_path_provider(),
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
@device_factory()
|
|
52
|
+
def merlin() -> Merlin:
|
|
53
|
+
return Merlin(
|
|
54
|
+
prefix=f"{PREFIX}-EA-DET-04:",
|
|
55
|
+
name="merlin",
|
|
56
|
+
drv_suffix="CAM:",
|
|
57
|
+
fileio_suffix="HDF5:",
|
|
58
|
+
path_provider=get_path_provider(),
|
|
59
|
+
)
|
|
@@ -4,7 +4,8 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
4
4
|
from dodal.common.beamlines.beamline_utils import (
|
|
5
5
|
set_beamline as set_utils_beamline,
|
|
6
6
|
)
|
|
7
|
-
from dodal.devices.i19.
|
|
7
|
+
from dodal.devices.i19.beamstop import BeamStop
|
|
8
|
+
from dodal.devices.i19.shutter import AccessControlledShutter, HutchState
|
|
8
9
|
from dodal.devices.oav.oav_detector import OAV
|
|
9
10
|
from dodal.devices.oav.oav_parameters import OAVConfig
|
|
10
11
|
from dodal.devices.synchrotron import Synchrotron
|
|
@@ -35,10 +36,20 @@ ZOOM_PARAMS_FILE = (
|
|
|
35
36
|
DISPLAY_CONFIG = "/dls_sw/i19-1/software/daq_configuration/domain/display.configuration"
|
|
36
37
|
|
|
37
38
|
|
|
39
|
+
# Needs to wait until enum is fixed on the beamline
|
|
40
|
+
# See https://github.com/DiamondLightSource/dodal/issues/1150
|
|
41
|
+
@device_factory(skip=True)
|
|
42
|
+
def beamstop() -> BeamStop:
|
|
43
|
+
"""Get the i19-1 beamstop device, instantiate it if it hasn't already been.
|
|
44
|
+
If this is called when already instantiated in i19-1, it will return the existing object.
|
|
45
|
+
"""
|
|
46
|
+
return BeamStop(prefix=f"{PREFIX.beamline_prefix}-RS-ABSB-01:")
|
|
47
|
+
|
|
48
|
+
|
|
38
49
|
@device_factory()
|
|
39
50
|
def oav() -> OAV:
|
|
40
51
|
return OAV(
|
|
41
|
-
prefix=f"{PREFIX.beamline_prefix}-
|
|
52
|
+
prefix=f"{PREFIX.beamline_prefix}-EA-OAV-01:",
|
|
42
53
|
config=OAVConfig(ZOOM_PARAMS_FILE, DISPLAY_CONFIG),
|
|
43
54
|
)
|
|
44
55
|
|
|
@@ -56,11 +67,11 @@ def zebra() -> Zebra:
|
|
|
56
67
|
|
|
57
68
|
|
|
58
69
|
@device_factory()
|
|
59
|
-
def shutter() ->
|
|
60
|
-
"""Get the i19-
|
|
70
|
+
def shutter() -> AccessControlledShutter:
|
|
71
|
+
"""Get the i19-1 hutch shutter device, instantiate it if it hasn't already been.
|
|
61
72
|
If this is called when already instantiated, it will return the existing object.
|
|
62
73
|
"""
|
|
63
|
-
return
|
|
74
|
+
return AccessControlledShutter(
|
|
64
75
|
prefix=f"{PREFIX.beamline_prefix}-PS-SHTR-01:",
|
|
65
76
|
hutch=HutchState.EH1,
|
|
66
77
|
)
|
|
@@ -4,7 +4,8 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
4
4
|
from dodal.common.beamlines.beamline_utils import (
|
|
5
5
|
set_beamline as set_utils_beamline,
|
|
6
6
|
)
|
|
7
|
-
from dodal.devices.i19.
|
|
7
|
+
from dodal.devices.i19.beamstop import BeamStop
|
|
8
|
+
from dodal.devices.i19.shutter import AccessControlledShutter, HutchState
|
|
8
9
|
from dodal.devices.synchrotron import Synchrotron
|
|
9
10
|
from dodal.devices.zebra.zebra import Zebra
|
|
10
11
|
from dodal.devices.zebra.zebra_constants_mapping import (
|
|
@@ -30,6 +31,14 @@ I19_2_ZEBRA_MAPPING = ZebraMapping(
|
|
|
30
31
|
)
|
|
31
32
|
|
|
32
33
|
|
|
34
|
+
@device_factory()
|
|
35
|
+
def beamstop() -> BeamStop:
|
|
36
|
+
"""Get the i19-2 beamstop device, instantiate it if it hasn't already been.
|
|
37
|
+
If this is called when already instantiated in i19-2, it will return the existing object.
|
|
38
|
+
"""
|
|
39
|
+
return BeamStop(prefix=f"{PREFIX.beamline_prefix}-OP-ABSB-02:")
|
|
40
|
+
|
|
41
|
+
|
|
33
42
|
@device_factory()
|
|
34
43
|
def zebra() -> Zebra:
|
|
35
44
|
"""Get the i19-2 zebra device, instantiate it if it hasn't already been.
|
|
@@ -43,11 +52,11 @@ def zebra() -> Zebra:
|
|
|
43
52
|
|
|
44
53
|
|
|
45
54
|
@device_factory()
|
|
46
|
-
def shutter() ->
|
|
55
|
+
def shutter() -> AccessControlledShutter:
|
|
47
56
|
"""Get the i19-2 hutch shutter device, instantiate it if it hasn't already been.
|
|
48
57
|
If this is called when already instantiated, it will return the existing object.
|
|
49
58
|
"""
|
|
50
|
-
return
|
|
59
|
+
return AccessControlledShutter(
|
|
51
60
|
prefix=f"{PREFIX.beamline_prefix}-PS-SHTR-01:",
|
|
52
61
|
hutch=HutchState.EH2,
|
|
53
62
|
)
|
|
@@ -5,7 +5,7 @@ from dodal.common.beamlines.beamline_utils import (
|
|
|
5
5
|
set_beamline as set_utils_beamline,
|
|
6
6
|
)
|
|
7
7
|
from dodal.devices.hutch_shutter import HutchShutter
|
|
8
|
-
from dodal.devices.i19.hutch_access import HutchAccessControl
|
|
8
|
+
from dodal.devices.i19.hutch_access import ACCESS_DEVICE_NAME, HutchAccessControl
|
|
9
9
|
from dodal.log import set_beamline as set_log_beamline
|
|
10
10
|
from dodal.utils import BeamlinePrefix
|
|
11
11
|
|
|
@@ -31,4 +31,6 @@ def access_control() -> HutchAccessControl:
|
|
|
31
31
|
"""Get a device that checks the active hutch for i19, instantiate it if it hasn't already been.
|
|
32
32
|
If this is called when already instantiated, it will return the existing object.
|
|
33
33
|
"""
|
|
34
|
-
return HutchAccessControl(
|
|
34
|
+
return HutchAccessControl(
|
|
35
|
+
f"{PREFIX.beamline_prefix}-OP-STAT-01:", ACCESS_DEVICE_NAME
|
|
36
|
+
)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from typing import TypeVar
|
|
2
|
+
|
|
3
|
+
from pydantic import BaseModel
|
|
4
|
+
|
|
5
|
+
TBaseModel = TypeVar("TBaseModel", bound=BaseModel)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def load_json_file_to_class(
|
|
9
|
+
t: type[TBaseModel],
|
|
10
|
+
file: str,
|
|
11
|
+
) -> TBaseModel:
|
|
12
|
+
with open(file) as f:
|
|
13
|
+
json_obj = f.read()
|
|
14
|
+
cls = t.model_validate_json(json_obj)
|
|
15
|
+
return cls
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def save_class_to_json_file(model: BaseModel, file: str) -> None:
|
|
19
|
+
with open(file, "w") as f:
|
|
20
|
+
f.write(model.model_dump_json())
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
from collections.abc import Callable, Coroutine
|
|
2
|
+
from typing import Any
|
|
3
|
+
|
|
4
|
+
from bluesky.protocols import Reading
|
|
5
|
+
from ophyd_async.core import SignalDatatypeT, SignalR, SignalRW, SoftSignalBackend
|
|
6
|
+
|
|
7
|
+
SetHardwareType = Callable[[SignalDatatypeT], Coroutine[Any, Any, None]]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class HardwareBackedSoftSignalBackend(SoftSignalBackend[SignalDatatypeT]):
|
|
11
|
+
def __init__(
|
|
12
|
+
self,
|
|
13
|
+
get_from_hardware_func: Callable[[], Coroutine[Any, Any, SignalDatatypeT]],
|
|
14
|
+
set_to_hardware_func: SetHardwareType | None = None,
|
|
15
|
+
*args,
|
|
16
|
+
**kwargs,
|
|
17
|
+
) -> None:
|
|
18
|
+
self.get_from_hardware_func = get_from_hardware_func
|
|
19
|
+
self.set_to_hardware_func = set_to_hardware_func
|
|
20
|
+
super().__init__(*args, **kwargs)
|
|
21
|
+
|
|
22
|
+
async def _update_value(self):
|
|
23
|
+
new_value = await self.get_from_hardware_func()
|
|
24
|
+
self.set_value(new_value)
|
|
25
|
+
|
|
26
|
+
async def get_reading(self) -> Reading:
|
|
27
|
+
await self._update_value()
|
|
28
|
+
return await super().get_reading()
|
|
29
|
+
|
|
30
|
+
async def get_value(self) -> SignalDatatypeT:
|
|
31
|
+
await self._update_value()
|
|
32
|
+
return await super().get_value()
|
|
33
|
+
|
|
34
|
+
async def put(self, value: SignalDatatypeT | None, wait: bool) -> None:
|
|
35
|
+
if self.set_to_hardware_func:
|
|
36
|
+
write_value = self.initial_value if value is None else value
|
|
37
|
+
await self.set_to_hardware_func(write_value)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def create_rw_hardware_backed_soft_signal(
|
|
41
|
+
datatype: type[SignalDatatypeT],
|
|
42
|
+
get_from_hardware_func: Callable[[], Coroutine[Any, Any, SignalDatatypeT]],
|
|
43
|
+
set_to_hardware_func: SetHardwareType,
|
|
44
|
+
units: str | None = None,
|
|
45
|
+
precision: int | None = None,
|
|
46
|
+
):
|
|
47
|
+
"""Creates a soft signal that, when read will call the function passed into
|
|
48
|
+
`get_from_hardware_func` and return this. When set it will call `set_to_hardware_func`
|
|
49
|
+
and send something to the hardware.
|
|
50
|
+
|
|
51
|
+
This will allow you to make soft signals derived from arbitrary hardware signals.
|
|
52
|
+
However, calling subscribe on this signal does not give you a sensible value. See https://github.com/bluesky/ophyd-async/issues/525
|
|
53
|
+
for a more full solution.
|
|
54
|
+
"""
|
|
55
|
+
return SignalRW(
|
|
56
|
+
backend=HardwareBackedSoftSignalBackend(
|
|
57
|
+
get_from_hardware_func,
|
|
58
|
+
set_to_hardware_func,
|
|
59
|
+
datatype,
|
|
60
|
+
units=units,
|
|
61
|
+
precision=precision,
|
|
62
|
+
)
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
def create_r_hardware_backed_soft_signal(
|
|
67
|
+
datatype: type[SignalDatatypeT],
|
|
68
|
+
get_from_hardware_func: Callable[[], Coroutine[Any, Any, SignalDatatypeT]],
|
|
69
|
+
units: str | None = None,
|
|
70
|
+
precision: int | None = None,
|
|
71
|
+
):
|
|
72
|
+
"""Creates a soft signal that, when read will call the function passed into
|
|
73
|
+
`get_from_hardware_func` and return this.
|
|
74
|
+
|
|
75
|
+
This will allow you to make soft signals derived from arbitrary hardware signals.
|
|
76
|
+
However, calling subscribe on this signal does not give you a sensible value and
|
|
77
|
+
the signal is currently read only. See https://github.com/bluesky/ophyd-async/issues/525
|
|
78
|
+
for a more full solution.
|
|
79
|
+
"""
|
|
80
|
+
return SignalR(
|
|
81
|
+
backend=HardwareBackedSoftSignalBackend(
|
|
82
|
+
get_from_hardware_func,
|
|
83
|
+
None,
|
|
84
|
+
datatype,
|
|
85
|
+
units=units,
|
|
86
|
+
precision=precision,
|
|
87
|
+
)
|
|
88
|
+
)
|
|
@@ -12,7 +12,7 @@ from ophyd_async.core import (
|
|
|
12
12
|
from pydantic import BaseModel, Field
|
|
13
13
|
|
|
14
14
|
from dodal.common.beamlines.beamline_parameters import GDABeamlineParameters
|
|
15
|
-
from dodal.common.signal_utils import
|
|
15
|
+
from dodal.common.signal_utils import create_r_hardware_backed_soft_signal
|
|
16
16
|
from dodal.devices.aperture import Aperture
|
|
17
17
|
from dodal.devices.scatterguard import Scatterguard
|
|
18
18
|
|
|
@@ -164,7 +164,7 @@ class ApertureScatterguard(StandardReadable, Movable[ApertureValue], Preparable)
|
|
|
164
164
|
) -> None:
|
|
165
165
|
self.aperture = Aperture(prefix + "-MO-MAPT-01:")
|
|
166
166
|
self.scatterguard = Scatterguard(prefix + "-MO-SCAT-01:")
|
|
167
|
-
self.radius =
|
|
167
|
+
self.radius = create_r_hardware_backed_soft_signal(
|
|
168
168
|
float, self._get_current_radius, units="µm"
|
|
169
169
|
)
|
|
170
170
|
self._loaded_positions = loaded_positions
|
|
@@ -181,7 +181,7 @@ class ApertureScatterguard(StandardReadable, Movable[ApertureValue], Preparable)
|
|
|
181
181
|
)
|
|
182
182
|
|
|
183
183
|
with self.add_children_as_readables(StandardReadableFormat.HINTED_SIGNAL):
|
|
184
|
-
self.selected_aperture =
|
|
184
|
+
self.selected_aperture = create_r_hardware_backed_soft_signal(
|
|
185
185
|
ApertureValue, self._get_current_aperture_position
|
|
186
186
|
)
|
|
187
187
|
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from typing import Annotated as A
|
|
2
|
+
|
|
3
|
+
from ophyd_async.core import (
|
|
4
|
+
SignalRW,
|
|
5
|
+
StandardReadable,
|
|
6
|
+
)
|
|
7
|
+
from ophyd_async.core import StandardReadableFormat as Format
|
|
8
|
+
from ophyd_async.epics.core import EpicsDevice, PvSuffix
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class Baton(StandardReadable, EpicsDevice):
|
|
12
|
+
requested_user: A[
|
|
13
|
+
SignalRW[str], PvSuffix("REQUESTED_USER"), Format.HINTED_UNCACHED_SIGNAL
|
|
14
|
+
]
|
|
15
|
+
current_user: A[
|
|
16
|
+
SignalRW[str], PvSuffix("CURRENT_USER"), Format.HINTED_UNCACHED_SIGNAL
|
|
17
|
+
]
|
{dls_dodal-1.43.0 → dls_dodal-1.44.0}/src/dodal/devices/current_amplifiers/current_amplifier.py
RENAMED
|
@@ -23,7 +23,6 @@ class CurrentAmp(ABC, StandardReadable, Movable):
|
|
|
23
23
|
super().__init__(name)
|
|
24
24
|
|
|
25
25
|
@abstractmethod
|
|
26
|
-
@AsyncStatus.wrap
|
|
27
26
|
async def increase_gain(self, value: int = 1) -> None:
|
|
28
27
|
"""Increase gain, increment by 1 by default.
|
|
29
28
|
|
|
@@ -31,7 +30,6 @@ class CurrentAmp(ABC, StandardReadable, Movable):
|
|
|
31
30
|
bool: True if success.
|
|
32
31
|
"""
|
|
33
32
|
|
|
34
|
-
@AsyncStatus.wrap
|
|
35
33
|
@abstractmethod
|
|
36
34
|
async def decrease_gain(self, value: int = 1) -> None:
|
|
37
35
|
"""Decrease gain, decrement by 1 by default.
|
|
@@ -40,21 +38,18 @@ class CurrentAmp(ABC, StandardReadable, Movable):
|
|
|
40
38
|
bool: True if success.
|
|
41
39
|
"""
|
|
42
40
|
|
|
43
|
-
@AsyncStatus.wrap
|
|
44
41
|
@abstractmethod
|
|
45
|
-
async def get_gain(self) ->
|
|
42
|
+
async def get_gain(self) -> Enum:
|
|
46
43
|
"""Get the current gain setting
|
|
47
44
|
|
|
48
45
|
Returns:
|
|
49
46
|
Enum: The member name of the current gain setting in gain_conversion_table.
|
|
50
47
|
"""
|
|
51
48
|
|
|
52
|
-
@AsyncStatus.wrap
|
|
53
49
|
@abstractmethod
|
|
54
50
|
async def get_upperlimit(self) -> float:
|
|
55
51
|
"""Get the upper limit of the current amplifier"""
|
|
56
52
|
|
|
57
|
-
@AsyncStatus.wrap
|
|
58
53
|
@abstractmethod
|
|
59
54
|
async def get_lowerlimit(self) -> float:
|
|
60
55
|
"""Get the lower limit of the current amplifier"""
|