mx-bluesky 1.4.9__tar.gz → 1.5.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.
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_container.yml +26 -3
- mx_bluesky-1.5.0/Dockerfile.blueapi +14 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/PKG-INFO +3 -3
- mx_bluesky-1.5.0/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/code-map/grid_detect_xrc.rst +12 -11
- mx_bluesky-1.5.0/docs/developer/general/explanations/containerised_mx_bluesky.rst +14 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/create-a-release.rst +2 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/index.rst +1 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/pyproject.toml +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/_version.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/__init__.py +4 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/blueapi_config.yaml +4 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Collect_py3v1.py +32 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_Manager_py3v1.py +2 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/general_plans.py +77 -8
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py +4 -1
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion → mx_bluesky-1.5.0/src/mx_bluesky/common}/device_setup_plans/utils.py +0 -11
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans}/common_flyscan_xray_centre_plan.py +11 -19
- mx_bluesky-1.4.9/src/mx_bluesky/hyperion/experiment_plans/grid_detect_then_xray_centre_plan.py → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py +108 -136
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans}/inner_plans/do_fgs.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py +5 -13
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion → mx_bluesky-1.5.0/src/mx_bluesky/common}/experiment_plans/oav_snapshot_plan.py +5 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/parameters/components.py +1 -1
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion → mx_bluesky-1.5.0/src/mx_bluesky/common}/parameters/device_composites.py +12 -31
- mx_bluesky-1.5.0/src/mx_bluesky/hyperion/device_setup_plans/utils.py +12 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/__init__.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/experiment_registry.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/hyperion_flyscan_xray_centre_plan.py +40 -41
- mx_bluesky-1.5.0/src/mx_bluesky/hyperion/experiment_plans/hyperion_grid_detect_then_xray_centre_plan.py +60 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/pin_centre_then_xray_centre_plan.py +26 -15
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/robot_load_then_centre_plan.py +8 -6
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/rotation_scan_plan.py +11 -11
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/constants.py +0 -1
- mx_bluesky-1.5.0/src/mx_bluesky/hyperion/parameters/device_composites.py +62 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/utils/validation.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky.egg-info/PKG-INFO +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky.egg-info/SOURCES.txt +20 -14
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky.egg-info/requires.txt +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/conftest.py +342 -238
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/conftest.py +7 -9
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_ispyb_dev_connection.py +29 -17
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_load_centre_collect_full_plan.py +29 -26
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_nexgen.py +4 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_zocalo_system.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/example_load_centre_collect_params.json +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params.json +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_load_centre_collect_params_multi_rotation.json +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_multi_rotation_scan_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_one_multi_rotation_scan_parameters_nomove.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_rotation_scan_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/ispyb_gridscan_system_test_parameters.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/load_centre_collect_params_top_n_by_max_count.json +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/test_gridscan_param_defaults.json +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_ft_collect.py +3 -2
- mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +213 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/plans → mx_bluesky-1.5.0/tests/unit_tests/common/experiment_plans}/test_common_flyscan_xray_centre_plan.py +38 -38
- mx_bluesky-1.4.9/tests/unit_tests/hyperion/experiment_plans/test_grid_detect_then_xray_centre_plan.py → mx_bluesky-1.5.0/tests/unit_tests/common/experiment_plans/test_common_grid_detect_then_xray_centre_plan.py +93 -54
- {mx_bluesky-1.4.9/tests/unit_tests/hyperion → mx_bluesky-1.5.0/tests/unit_tests/common}/experiment_plans/test_oav_snapshot_plan.py +7 -6
- {mx_bluesky-1.4.9/tests/unit_tests/common/plans → mx_bluesky-1.5.0/tests/unit_tests/common/experiment_plans}/test_read_hardware.py +3 -3
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/common/test_snapshot_callback.py +3 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/ispyb/conftest.py +4 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/test_zocalo_handler.py +15 -15
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_callback.py +36 -29
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_handler.py +47 -33
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/xray_centre/test_ispyb_mapping.py +4 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/xray_centre/test_nexus_handler.py +17 -14
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/parameters/test_components.py +8 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/test_do_fgs.py +11 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/test_write_sample_status.py +2 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/conftest.py +105 -7
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/conftest.py +14 -24
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/test_utils.py +1 -1
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/conftest.py +3 -67
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_hyperion_flyscan_xray_centre_plan.py +15 -139
- mx_bluesky-1.5.0/tests/unit_tests/hyperion/experiment_plans/test_hyperion_grid_detect_then_xray_centre_plan.py +228 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_load_centre_collect_full_plan.py +41 -22
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_pin_centre_then_xray_centre_plan.py +33 -26
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_and_change_energy.py +3 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_robot_load_then_centre.py +7 -6
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_rotation_scan_plan.py +34 -9
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/test_ispyb_callback.py +35 -29
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/test_rotation_callbacks.py +3 -2
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/conftest.py +5 -4
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/test_write_rotation_nexus.py +6 -5
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/parameters/test_parameter_model.py +16 -10
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/test_main_system.py +36 -29
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/build_docker_image.sh +2 -2
- mx_bluesky-1.4.9/docs/developer/code-map/grid_detect_then_xray_centre.drawio.png +0 -0
- mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/web_gui/test_general_plans.py +0 -95
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.copier-answers.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.coveragerc +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.devcontainer/Dockerfile +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.devcontainer/devcontainer.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.dockerignore +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/CODEOWNERS +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/CONTRIBUTING.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/ISSUE_TEMPLATE/issue.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/actions/install_requirements/action.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/actions/verify-nexus/Dockerfile +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/actions/verify-nexus/action.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/actions/verify-nexus/entrypoint.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/dependabot.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/pages/index.html +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/pages/make_switcher.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_check.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_dist.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_docs.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_pypi.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_release.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_test.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/_tox.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/ci.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.github/workflows/periodic.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.gitignore +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.pre-commit-config.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.vscode/extensions.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.vscode/launch.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.vscode/mx-bluesky.code-workspace +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.vscode/mxb-with-core-dependencies.code-workspace +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.vscode/settings.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/.vscode/tasks.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/Dockerfile +0 -0
- /mx_bluesky-1.4.9/Dockerfile.release → /mx_bluesky-1.5.0/Dockerfile.hyperion +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/LICENSE +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/README.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/catalog-info.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/codecov.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/_api.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/_templates/custom-module-template.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/conf.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/code-map/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/explanations/callback_and_run_logic.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/explanations/decisions/0002-repository-structure.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/explanations/decisions/0003-python-version-support.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/explanations/decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/contribute.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/deploy-a-release.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/dev-ops/build-docs.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/dev-ops/dev-ops.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/dev-ops/lint.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/dev-ops/run-tests.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/dev-ops/update-tools.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/how-to/get-started.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/reference/standards.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/general/tutorials/profile-tests.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/deploying-hyperion.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/how-to/update-panda-ioc.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/reference/coordinate-systems.puml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/reference/coordinate-systems.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/reference/gridscan.puml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/reference/param-hierarchy.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/reference/readme.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/hyperion/system-tests.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/murko-integration/explanations/architecture.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/murko-integration/images/murko_setup.drawio.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/murko-integration/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/explanations/decisions/0001-record-architecture-decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/explanations/decisions.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/how-to/environment-setup.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/how-to/pmac-docs.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/how-to/run-a-collection.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/developer/serial-crystallography-on-i24/project-planning/roadmap.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/176701633-b93bba62-b2e7-4740-a863-c6b388beb14f.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/207297611-f67dfc25-a3a5-4ade-a1e7-28b54a136fa6.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/dls-favicon.ico +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/dls-logo.svg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/motor coordinate systems.odg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/motor-coords-omega-0.svg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/images/motor-coords-omega-alpha.svg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/docs/index.rst +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/hyperion/Chart.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/hyperion/templates/deployment.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/hyperion/templates/ingress.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/hyperion/templates/service.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/hyperion/templates/zocalo-config.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/hyperion/values.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/redis-to-murko/Chart.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/redis-to-murko/templates/deployment.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/helmcharts/redis-to-murko/values.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/add_assignee_when_pr_opened.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/assigned_issues_to_in_progress.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/get_issue_from_pr.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/get_project_data_and_move_column.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/linkcheck.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/open_prs_to_review.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/opened_issues_to_backlog.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/pin_versions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/pre_release_workflow.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/rework_prs_to_in_progress.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/test_data/pip_freeze.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/test_data/setup.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/test_data/setup.cfg.pinned +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/test_data/setup.cfg.unpinned +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/hyperion_other/workflows/test_pin_versions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/pull_request_template.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/run_hyperion.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/run_hyperion_in_podman.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/setup.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/__main__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/aithre_lasershaping/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/aithre_lasershaping/beamline_safe.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/aithre_lasershaping/check_goniometer_performance.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/aithre_lasershaping/goniometer_controls.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i04/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i04/callbacks/murko_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i04/redis_to_murko_forwarder.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i04/thawing_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i23/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i23/serial.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/dcid.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DetStage.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/DiamondExtruder-I24-py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/extruder/EX-gui-edm/microdrop_alignment.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/extruder/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/extruder/i24ssx_Extruder_Collect_py3v2.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/CustomChip_py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DetStage.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/DiamondChipI24-py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/ME14E-GeneralPurpose.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/MappingLite-oxford_py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/PMAC_Command.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/Shutter_Control.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/microdrop_alignment.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/nudgechip.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/pumpprobe-py3v1.edl +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s1l.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/FT-gui-edm/s2l.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/ft_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_Chip_StartUp_py3v1.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/fixed_target/i24ssx_moveonclick.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/constants.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/experiment_parameters.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/cs_maker.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/cs/motor_direction.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/minichip-oxford.pvar +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/fixed_target/pvar_files/oxford.pvar +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/parameters/utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/run_extruder.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/run_fixed_target.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/run_serial.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/run_ssx.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/set_visit_directory.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/ca.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/pv_abstract.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_beamline.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_detector.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/setup_beamline/setup_zebra_plans.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/start_blueapi.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/web_gui_plans/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/beamlines/i24/serial/write_nexus.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/device_setup_plans/position_detector.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/device_setup_plans/setup_oav.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/device_setup_plans/setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/device_setup_plans/xbpm_feedback.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/experiment_plans/change_aperture_then_move_plan.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans}/inner_plans/__init__ .py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans}/read_hardware.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/common/plans → mx_bluesky-1.5.0/src/mx_bluesky/common/experiment_plans}/write_sample_status.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/abstract_event.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/grid_detection_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_callback_base.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/ispyb_mapping.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/log_uid_tag_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/logging_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/plan_reactive_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/common/zocalo_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/sample_handling/sample_handling_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/ispyb_mapping.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/callbacks/xray_centre/nexus_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/config_server.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/ispyb/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/ispyb/data_model.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/ispyb/exp_eye_store.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_store.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/ispyb/ispyb_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/nexus/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/nexus/nexus_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/external_interaction/nexus/write_nexus.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/parameters/constants.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/parameters/gridscan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/preprocessors/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/preprocessors/preprocessors.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/protocols/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/protocols/protocols.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion/device_setup_plans → mx_bluesky-1.5.0/src/mx_bluesky/common/utils}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/utils/context.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/utils/exceptions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/utils/log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/utils/tracing.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/utils/utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/xrc_result.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/definitions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/__main__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/baton_handler.py +0 -0
- {mx_bluesky-1.4.9/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation → mx_bluesky-1.5.0/src/mx_bluesky/hyperion/device_setup_plans}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/device_setup_plans/dcm_pitch_roll_mirror_adjuster.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/device_setup_plans/setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/device_setup_plans/setup_zebra.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/device_setup_plans/smargon.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/load_centre_collect_full_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/optimise_attenuation_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/pin_tip_centring_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/robot_load_and_change_energy.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/experiment_plans/set_energy_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/agamemnon.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/__main__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/robot_load/ispyb_callback.py +0 -0
- {mx_bluesky-1.4.9/tests → mx_bluesky-1.5.0/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/ispyb_mapping.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/rotation/nexus_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/callbacks/snapshot_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/external_interaction/config_server.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/cli.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/components.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/gridscan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/load_centre_collect.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/robot_load.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/parameters/rotation.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/resources/panda/panda-gridscan.yaml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/utils/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/hyperion/utils/context.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/jupyter_example.ipynb +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky.egg-info/dependency_links.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky.egg-info/entry_points.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky.egg-info/top_level.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/start_jupyter.sh +0 -0
- {mx_bluesky-1.4.9/tests/system_tests → mx_bluesky-1.5.0/tests}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/system_tests/hyperion → mx_bluesky-1.5.0/tests/system_tests}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/conftest.py +0 -0
- {mx_bluesky-1.4.9/tests/system_tests/hyperion/external_interaction → mx_bluesky-1.5.0/tests/system_tests/hyperion}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/system_tests/hyperion/external_interaction/callbacks → mx_bluesky-1.5.0/tests/system_tests/hyperion/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests → mx_bluesky-1.5.0/tests/system_tests/hyperion/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_config_service.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/system_tests/hyperion/external_interaction/test_exp_eye_dev.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/agamemnon/example_collect_multipin.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/agamemnon/example_native.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/ispyb-test-credentials.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/README.md +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/fake_data.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/rotation/ins_8_5.nxs +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/rotation/ins_8_5_expected_output.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/rotation/ins_8_5_meta.h5.gz +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5.nxs +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_expected_output.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/nexus_files/rotation_unicode_metafile/ins_8_5_meta.h5.gz +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_grid_with_edge_detect_parameters.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_pin_centre_then_xray_centre_parameters.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_robot_load_and_centre_params.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/good_test_robot_load_params.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/parameter_json_files/test_oav_snapshot_params.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/rabbitmq-test-credentials.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/scratch/README +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_OAVCentring.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_beamline_dcm_pitch_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_beamline_dcm_roll_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_beamline_parameters.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_beamline_vfm_lat_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_config.cfg +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/OAVCentring_hyperion.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/display.configuration +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/domain/beamlineParameters +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Pitch_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/lookup/BeamLineEnergy_DCM_Roll_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/lookup/BeamLine_Undulator_toGap.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_daq_configuration/lookup/test_det_dist_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_det_dist_converter.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_display.configuration +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/generate_snapshot_input.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/generate_snapshot_output.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/ins_15_33_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/ins_15_33_90.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/ins_15_33_expected_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/ins_15_33_expected_270.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/thau_1_91_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/thau_1_91_90.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/thau_1_91_expected_0.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_images/thau_1_91_expected_270.png +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_jCameraManZoomLevels.xml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_lookup_table.txt +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/test_mirror_focus.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/test_data/zocalo-test-configuration.yaml +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines → mx_bluesky-1.5.0/tests/unit_tests}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24 → mx_bluesky-1.5.0/tests/unit_tests/beamlines}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/aithre_lasershaping/test_beamline_safe.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/aithre_lasershaping/test_check_goniometer_performance.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/aithre_lasershaping/test_goniometer_controls.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i04/callbacks/test_murko_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i04/test_redis_to_murko_forwarder.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i04/test_thawing.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i23/test_serial.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial → mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/extruder → mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24/serial}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/conftest.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/fixed_target → mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24/serial/extruder}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/extruder/test_extruder_collect.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/setup_beamline → mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24/serial/fixed_target}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/fixed_target/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_manager.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_chip_startup.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/fixed_target/test_moveonclick.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/parameters/test_parameter_model.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/parameters/test_utils.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/beamlines/i24/serial/web_gui → mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24/serial/setup_beamline}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_pv_abstract.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_beamline.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_setup_detector.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/setup_beamline/test_zebra_plans.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/test_dcid.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/test_log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/test_run_serial.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/beamlines/i24/serial/test_write_nexus.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common → mx_bluesky-1.5.0/tests/unit_tests/beamlines/i24/serial/web_gui}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/experiment_plans → mx_bluesky-1.5.0/tests/unit_tests/common}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/device_setup_plans/test_setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/device_setup_plans/test_xbpm_feedback.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction → mx_bluesky-1.5.0/tests/unit_tests/common/experiment_plans}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/experiment_plans/test_change_aperture_then_move_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/experiment_plans/test_grid_detection_plan.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction/callbacks → mx_bluesky-1.5.0/tests/unit_tests/common/external_interaction}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction/callbacks/common → mx_bluesky-1.5.0/tests/unit_tests/common/external_interaction/callbacks}/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/external_interaction/callbacks/ispyb → mx_bluesky-1.5.0/tests/unit_tests/common/external_interaction/callbacks/common}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/common/test_abstract_event.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/parameters → mx_bluesky-1.5.0/tests/unit_tests/common/external_interaction/callbacks/ispyb}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_expeye_interaction.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_gridscan_ispyb_store_3d.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/ispyb/test_rotation_ispyb_store.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/callbacks/test_plan_reactive_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/nexus/test_nexus_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/test_config_server.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/test_ispyb_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/external_interaction/xray_centre/__init__.py +0 -0
- {mx_bluesky-1.4.9/tests/unit_tests/common/plans → mx_bluesky-1.5.0/tests/unit_tests/common/parameters}/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/preprocessors/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/preprocessors/test_preprocessors.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/utils/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/common/utils/test_log.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/test_dcm_pitch_roll_mirror_adjuster.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/test_manipulate_sample.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/test_setup_oav.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/test_setup_panda.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/device_setup_plans/test_zebra_setup.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/common/test_flyscan_result.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_experiment_registry.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_optimise_attenuation_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_pin_tip_centring.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/experiment_plans/test_set_energy_plan.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/conftest.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/robot_load/test_robot_load_ispyb_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/rotation/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/sample_handling/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/sample_handling/test_sample_handling_callback.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/callbacks/test_external_callbacks.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/nexus/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/nexus/test_compare_nexus_to_gda_exhaustively.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/nexus/test_write_nexus.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/test_agamemnon.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000001.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000002.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/external_interaction/test_data/dummy_1_000003.h5 +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/parameters/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/test_baton_handler.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/test_exceptions.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/test_utils.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/utils/__init__.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/utils/test_callback_sim.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/hyperion/utils/test_context.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/tests/unit_tests/test_cli.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/beam_off_trickery.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/build_imginfo.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/deploy/create_venv.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/deploy/deploy_edm_for_ssx.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/deploy/deploy_mx_bluesky.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/deploy/deploy_mx_bluesky_app_to_k8s.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/deploy/test_deploy.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/dev_jaeger_container.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/dls_dev_env.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/docker/entrypoint.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/docker/healthcheck.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/docker/i03-compose.yml +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/generate_plantuml.py +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/graylog/Dockerfile +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/graylog/tcp_input.json +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/procserv_ioc_start.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/run_imginfo.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/setup_graylog.sh +0 -0
- {mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/utility_scripts/strip_metafile.py +0 -0
|
@@ -30,14 +30,25 @@ jobs:
|
|
|
30
30
|
DOCKER_BUILD_RECORD_UPLOAD: false
|
|
31
31
|
with:
|
|
32
32
|
context: .
|
|
33
|
-
file: Dockerfile.
|
|
33
|
+
file: Dockerfile.hyperion
|
|
34
|
+
load: true
|
|
35
|
+
|
|
36
|
+
- name: Build and export Dockerfile.blueapi to local cache
|
|
37
|
+
uses: docker/build-push-action@v6
|
|
38
|
+
env:
|
|
39
|
+
DOCKER_BUILD_RECORD_UPLOAD: false
|
|
40
|
+
with:
|
|
41
|
+
context: .
|
|
42
|
+
file: Dockerfile.blueapi
|
|
34
43
|
load: true
|
|
35
44
|
|
|
36
45
|
- name: Create tags for publishing image
|
|
37
46
|
id: meta
|
|
38
47
|
uses: docker/metadata-action@v5
|
|
39
48
|
with:
|
|
40
|
-
images:
|
|
49
|
+
images: |
|
|
50
|
+
ghcr.io/${{ github.repository }}
|
|
51
|
+
ghcr.io/${{ github.repository }}-blueapi
|
|
41
52
|
tags: |
|
|
42
53
|
type=ref,event=tag
|
|
43
54
|
type=raw,value=latest
|
|
@@ -51,7 +62,19 @@ jobs:
|
|
|
51
62
|
# Docker cache and publish it
|
|
52
63
|
with:
|
|
53
64
|
context: .
|
|
54
|
-
file: Dockerfile.
|
|
65
|
+
file: Dockerfile.hyperion
|
|
66
|
+
push: true
|
|
67
|
+
tags: ${{ steps.meta.outputs.tags }}
|
|
68
|
+
labels: ${{ steps.meta.outputs.labels }}
|
|
69
|
+
|
|
70
|
+
- name: Push Dockerfile.blueapi image to container registry
|
|
71
|
+
if: github.ref_type == 'tag'
|
|
72
|
+
uses: docker/build-push-action@v6
|
|
73
|
+
env:
|
|
74
|
+
DOCKER_BUILD_RECORD_UPLOAD: false
|
|
75
|
+
with:
|
|
76
|
+
context: .
|
|
77
|
+
file: Dockerfile.blueapi
|
|
55
78
|
push: true
|
|
56
79
|
tags: ${{ steps.meta.outputs.tags }}
|
|
57
80
|
labels: ${{ steps.meta.outputs.labels }}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# See https://github.com/DiamondLightSource/mx-bluesky/issues/1004
|
|
2
|
+
FROM ghcr.io/diamondlightsource/blueapi:0.10.1
|
|
3
|
+
|
|
4
|
+
ARG DEBIAN_FRONTEND=noninteractive
|
|
5
|
+
|
|
6
|
+
RUN apt update -y && apt upgrade -y
|
|
7
|
+
# Needed for python cv2 dependency
|
|
8
|
+
RUN apt install -y libgl1 libglib2.0-0
|
|
9
|
+
|
|
10
|
+
RUN /venv/bin/pip install mx-bluesky
|
|
11
|
+
|
|
12
|
+
# Needed so that Blueapi's setup-scratch stage has permission to modify dependencies installed
|
|
13
|
+
# in the above pip installation
|
|
14
|
+
RUN mkdir -p /.cache/pip; chmod -R 777 /venv /.cache/pip
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mx-bluesky
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5.0
|
|
4
4
|
Summary: Bluesky tools for MX Beamlines at DLS
|
|
5
5
|
Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
|
|
6
6
|
License: Apache License
|
|
@@ -234,12 +234,12 @@ Requires-Dist: scanspec
|
|
|
234
234
|
Requires-Dist: scipy
|
|
235
235
|
Requires-Dist: semver
|
|
236
236
|
Requires-Dist: matplotlib
|
|
237
|
-
Requires-Dist: blueapi>=0.
|
|
237
|
+
Requires-Dist: blueapi>=0.11.1
|
|
238
238
|
Requires-Dist: daq-config-server==0.1.1
|
|
239
239
|
Requires-Dist: ophyd>=1.10.5
|
|
240
240
|
Requires-Dist: ophyd-async>=0.10.0a2
|
|
241
241
|
Requires-Dist: bluesky>=1.13.1
|
|
242
|
-
Requires-Dist: dls-dodal==1.
|
|
242
|
+
Requires-Dist: dls-dodal==1.49.0
|
|
243
243
|
Provides-Extra: dev
|
|
244
244
|
Requires-Dist: black; extra == "dev"
|
|
245
245
|
Requires-Dist: build; extra == "dev"
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Grid Detect Then Xray Centre
|
|
2
2
|
============================
|
|
3
3
|
|
|
4
|
-
The aim of this page is to provide a general overview of the
|
|
4
|
+
The aim of this page is to provide a general overview of the ``grid_detect_then_xray_centre_plan``.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The code for the ``grid_detect_then_xray_centre`` plan is now entirely ``mx-bluesky/common/`` and `dodal <https://github.com/DiamondLightSource/dodal>`_. There is a new Hyperion entry point, ``hyperion_grid_detect_then_xray_centre`` which calls this common plan, setting up Hyperion features for it. There will soon be an i04 entry point that calls the common plan in the same way.
|
|
7
7
|
|
|
8
8
|
There are then a number of plans that make up the ``grid_detect_then_xray_centre_plan`` plan. Some important ones:
|
|
9
9
|
|
|
@@ -11,7 +11,7 @@ There are then a number of plans that make up the ``grid_detect_then_xray_centre
|
|
|
11
11
|
* :ref:`flyscan_xray_centre_plan<flyscan>` - Triggers a hardware-based grid scan and moves to the X-ray centre as returned from ``zocalo``.
|
|
12
12
|
* :ref:`grid_detect_then_xray_centre_plan<grid-detect-xrc>` - This top-level plan performs an :ref:`OAV grid detection <grid-detect>` then a :ref:`flyscan x-ray centre <flyscan>`.
|
|
13
13
|
|
|
14
|
-
The diagram below shows all the plans that make up the ``grid_detect_then_xray_centre_plan``.
|
|
14
|
+
The diagram below shows all the plans that make up the ``grid_detect_then_xray_centre_plan``.
|
|
15
15
|
|
|
16
16
|
.. image:: grid_detect_then_xray_centre.drawio.png
|
|
17
17
|
|
|
@@ -20,21 +20,22 @@ The diagram below shows all the plans that make up the ``grid_detect_then_xray_c
|
|
|
20
20
|
Grid Detect Then Xray Centre Plan
|
|
21
21
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
22
22
|
|
|
23
|
-
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/
|
|
23
|
+
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/common/experiment_plans/common_grid_detect_then_xray_centre_plan.py>`__ does the following, in roughly this order:
|
|
24
24
|
|
|
25
25
|
1. If called standalone, start preparing for data collection.
|
|
26
|
-
2.
|
|
27
|
-
3.
|
|
28
|
-
4.
|
|
29
|
-
5.
|
|
30
|
-
6.
|
|
26
|
+
2. Move the beamstop into place if it isn't already.
|
|
27
|
+
3. Perform an :ref:`OAV grid detection <grid-detect>`.
|
|
28
|
+
4. Convert the parameters calculated in step 2 into something we can send to the flyscan X-ray centre.
|
|
29
|
+
5. Move the backlight out, set the aperture to small, and wait for the detector to finish moving.
|
|
30
|
+
6. Perform a :ref:`flyscan X-ray centre <flyscan>`.
|
|
31
|
+
7. Move the sample based on the results of step 5.
|
|
31
32
|
|
|
32
33
|
.. _grid-detect:
|
|
33
34
|
|
|
34
35
|
OAV Grid Detection
|
|
35
36
|
~~~~~~~~~~~~~~~~~~
|
|
36
37
|
|
|
37
|
-
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/
|
|
38
|
+
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/common/experiment_plans/oav_grid_detection_plan.py>`__ does the following, in roughly this order:
|
|
38
39
|
|
|
39
40
|
1. Move to omega 0.
|
|
40
41
|
2. Calculate the 2D grid size using the edge arrays from the OAV.
|
|
@@ -48,7 +49,7 @@ OAV Grid Detection
|
|
|
48
49
|
Flyscan Xray Centre No Move
|
|
49
50
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
50
51
|
|
|
51
|
-
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/
|
|
52
|
+
`This plan <https://github.com/DiamondLightSource/mx-bluesky/blob/main/src/mx_bluesky/common/experiment_plans/common_flyscan_xray_centre_plan.py>`__ does the following, in roughly this order:
|
|
52
53
|
|
|
53
54
|
1. Move to the desired transmission (and turn off xbpm feedback).
|
|
54
55
|
2. Move to omega 0.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Containerised mx-bluesky
|
|
2
|
+
========================
|
|
3
|
+
|
|
4
|
+
There are currently two images associated with this repository which are pushed on release: hyperion, and mx-bluesky-blueapi.
|
|
5
|
+
|
|
6
|
+
The Hyperion image exists because Hyperion was developed before BlueAPI was production-ready, and so doesn't use BlueAPI to schedule plans. This image is only really relevant for i03, and currently isn't used in production anywhere
|
|
7
|
+
|
|
8
|
+
The ``mx-bluesky-blueapi`` image exists as a minor extension of BlueAPI's image. BlueAPI's image contains the dependencies of BlueAPI, as well as the dependencies of BlueAPI, which includes dodal. When the BlueAPI service is launched, it will do a ``pip install --no deps`` of the plan repository. For MX, this means ``mx-bluesky`` gets installed without any of its dependencies. For this reason, we have created an ``mx-bluesky-blueapi`` image which installs these extra dependencies.
|
|
9
|
+
|
|
10
|
+
This image can be used with BlueAPI's original helmchart, the only change required in the ``values.yaml`` is::
|
|
11
|
+
|
|
12
|
+
image:
|
|
13
|
+
repository: ghcr.io/diamondlightsource/mx-bluesky-blueapi
|
|
14
|
+
tag: "{desired_version}"
|
|
@@ -17,6 +17,8 @@ Release
|
|
|
17
17
|
6. You should now manually go through each line on the release notes and read it from the perspective of a beamline scientist. It should be clear from each what the change means to the beamline and should have links to easily find further info.
|
|
18
18
|
7. Publish the release
|
|
19
19
|
|
|
20
|
+
NOTE FOR USING THE MX-BLUESKY-BLUEAPI IMAGE: If using this image with BlueAPI's helmchart for deployment, the version of dodal which is installed will be the version which is pinned in the BlueAPI, rather than what's in mx-bluesky's pyproject.toml. Before releasing, you should pin BlueAPI to a version which uses a dodal version which is compatible with itself AND mx-bluesky. The deployment will fail if BlueAPI has no version which works with the desired dodal version
|
|
21
|
+
|
|
20
22
|
------------------------
|
|
21
23
|
Deciding release numbers
|
|
22
24
|
------------------------
|
|
@@ -41,12 +41,12 @@ dependencies = [
|
|
|
41
41
|
# These dependencies may be issued as pre-release versions and should have a pin constraint
|
|
42
42
|
# as by default pip-install will not upgrade to a pre-release.
|
|
43
43
|
#
|
|
44
|
-
"blueapi >= 0.
|
|
44
|
+
"blueapi >= 0.11.1",
|
|
45
45
|
"daq-config-server == 0.1.1",
|
|
46
46
|
"ophyd >= 1.10.5",
|
|
47
47
|
"ophyd-async >= 0.10.0a2",
|
|
48
48
|
"bluesky >= 1.13.1",
|
|
49
|
-
"dls-dodal == 1.
|
|
49
|
+
"dls-dodal == 1.49.0",
|
|
50
50
|
]
|
|
51
51
|
|
|
52
52
|
|
|
@@ -2,7 +2,8 @@ from mx_bluesky.beamlines.i24.serial.web_gui_plans.general_plans import (
|
|
|
2
2
|
gui_gonio_move_on_click,
|
|
3
3
|
gui_move_backlight,
|
|
4
4
|
gui_move_detector,
|
|
5
|
-
|
|
5
|
+
gui_run_chip_collection,
|
|
6
|
+
gui_set_zoom_level,
|
|
6
7
|
gui_sleep,
|
|
7
8
|
gui_stage_move_on_click,
|
|
8
9
|
)
|
|
@@ -57,6 +58,7 @@ __all__ = [
|
|
|
57
58
|
"gui_gonio_move_on_click",
|
|
58
59
|
"gui_sleep",
|
|
59
60
|
"gui_move_detector",
|
|
60
|
-
"
|
|
61
|
+
"gui_run_chip_collection",
|
|
61
62
|
"gui_move_backlight",
|
|
63
|
+
"gui_set_zoom_level",
|
|
62
64
|
]
|
|
@@ -684,6 +684,38 @@ def run_fixed_target_plan(
|
|
|
684
684
|
# DCID instance - do not create yet
|
|
685
685
|
dcid = DCID(emit_errors=False, expt_params=parameters)
|
|
686
686
|
|
|
687
|
+
yield from run_plan_in_wrapper(
|
|
688
|
+
zebra,
|
|
689
|
+
pmac,
|
|
690
|
+
aperture,
|
|
691
|
+
backlight,
|
|
692
|
+
beamstop,
|
|
693
|
+
detector_stage,
|
|
694
|
+
shutter,
|
|
695
|
+
dcm,
|
|
696
|
+
mirrors,
|
|
697
|
+
beam_center_device,
|
|
698
|
+
parameters,
|
|
699
|
+
dcid,
|
|
700
|
+
pilatus_metadata,
|
|
701
|
+
)
|
|
702
|
+
|
|
703
|
+
|
|
704
|
+
def run_plan_in_wrapper(
|
|
705
|
+
zebra: Zebra,
|
|
706
|
+
pmac: PMAC,
|
|
707
|
+
aperture: Aperture,
|
|
708
|
+
backlight: DualBacklight,
|
|
709
|
+
beamstop: Beamstop,
|
|
710
|
+
detector_stage: DetectorMotion,
|
|
711
|
+
shutter: HutchShutter,
|
|
712
|
+
dcm: DCM,
|
|
713
|
+
mirrors: FocusMirrorsMode,
|
|
714
|
+
beam_center_device: DetectorBeamCenter,
|
|
715
|
+
parameters: FixedTargetParameters,
|
|
716
|
+
dcid: DCID,
|
|
717
|
+
pilatus_metadata: PilatusMetadata,
|
|
718
|
+
) -> MsgGenerator:
|
|
687
719
|
yield from bpp.contingency_wrapper(
|
|
688
720
|
main_fixed_target_plan(
|
|
689
721
|
zebra,
|
|
@@ -256,6 +256,7 @@ def upload_chip_map_to_geobrick(pmac: PMAC, chip_map: list[int]) -> MsgGenerator
|
|
|
256
256
|
"""
|
|
257
257
|
SSX_LOGGER.info("Uploading Parameters for Oxford Chip to the GeoBrick")
|
|
258
258
|
SSX_LOGGER.info(f"Chipid {ChipType.Oxford}, width {OXFORD_CHIP_WIDTH}")
|
|
259
|
+
SSX_LOGGER.warning(f"MAP TO UPLOAD: {chip_map}")
|
|
259
260
|
for block in range(1, 65):
|
|
260
261
|
value = 1 if block in chip_map else 0
|
|
261
262
|
pvar = PVAR_TEMPLATE % block
|
|
@@ -264,7 +265,7 @@ def upload_chip_map_to_geobrick(pmac: PMAC, chip_map: list[int]) -> MsgGenerator
|
|
|
264
265
|
yield from bps.abs_set(pmac.pmac_string, pvar_str, wait=True)
|
|
265
266
|
# Wait for PMAC to be done processing PVAR string
|
|
266
267
|
yield from bps.sleep(0.02)
|
|
267
|
-
SSX_LOGGER.
|
|
268
|
+
SSX_LOGGER.info("Upload parameters done.")
|
|
268
269
|
|
|
269
270
|
|
|
270
271
|
@log_on_entry
|
|
@@ -3,19 +3,34 @@ from typing import Literal
|
|
|
3
3
|
|
|
4
4
|
import bluesky.plan_stubs as bps
|
|
5
5
|
import bluesky.preprocessors as bpp
|
|
6
|
-
from
|
|
6
|
+
from bluesky.utils import MsgGenerator
|
|
7
7
|
from dodal.beamlines import i24
|
|
8
8
|
from dodal.common import inject
|
|
9
|
+
from dodal.devices.hutch_shutter import HutchShutter
|
|
10
|
+
from dodal.devices.i24.aperture import Aperture
|
|
11
|
+
from dodal.devices.i24.beam_center import DetectorBeamCenter
|
|
12
|
+
from dodal.devices.i24.beamstop import Beamstop
|
|
13
|
+
from dodal.devices.i24.dcm import DCM
|
|
9
14
|
from dodal.devices.i24.dual_backlight import BacklightPositions, DualBacklight
|
|
15
|
+
from dodal.devices.i24.focus_mirrors import FocusMirrorsMode
|
|
10
16
|
from dodal.devices.i24.i24_detector_motion import DetectorMotion
|
|
17
|
+
from dodal.devices.i24.pilatus_metadata import PilatusMetadata
|
|
11
18
|
from dodal.devices.i24.pmac import PMAC
|
|
12
|
-
from dodal.devices.oav.oav_detector import
|
|
19
|
+
from dodal.devices.oav.oav_detector import OAVBeamCentreFile
|
|
20
|
+
from dodal.devices.zebra.zebra import Zebra
|
|
13
21
|
|
|
22
|
+
from mx_bluesky.beamlines.i24.serial.dcid import DCID
|
|
14
23
|
from mx_bluesky.beamlines.i24.serial.fixed_target.ft_utils import (
|
|
15
24
|
ChipType,
|
|
16
25
|
MappingType,
|
|
17
26
|
PumpProbeSetting,
|
|
18
27
|
)
|
|
28
|
+
from mx_bluesky.beamlines.i24.serial.fixed_target.i24ssx_Chip_Collect_py3v1 import (
|
|
29
|
+
run_plan_in_wrapper,
|
|
30
|
+
)
|
|
31
|
+
from mx_bluesky.beamlines.i24.serial.fixed_target.i24ssx_Chip_Manager_py3v1 import (
|
|
32
|
+
upload_chip_map_to_geobrick,
|
|
33
|
+
)
|
|
19
34
|
from mx_bluesky.beamlines.i24.serial.fixed_target.i24ssx_moveonclick import (
|
|
20
35
|
_move_on_mouse_click_plan,
|
|
21
36
|
)
|
|
@@ -24,6 +39,7 @@ from mx_bluesky.beamlines.i24.serial.log import (
|
|
|
24
39
|
_read_visit_directory_from_file,
|
|
25
40
|
)
|
|
26
41
|
from mx_bluesky.beamlines.i24.serial.parameters import (
|
|
42
|
+
DetectorName,
|
|
27
43
|
FixedTargetParameters,
|
|
28
44
|
get_chip_format,
|
|
29
45
|
)
|
|
@@ -46,9 +62,19 @@ def gui_move_backlight(
|
|
|
46
62
|
SSX_LOGGER.debug(f"Backlight moved to {bl_pos.value}")
|
|
47
63
|
|
|
48
64
|
|
|
65
|
+
@bpp.run_decorator()
|
|
66
|
+
def gui_set_zoom_level(
|
|
67
|
+
position: str, oav: OAVBeamCentreFile = inject("oav")
|
|
68
|
+
) -> MsgGenerator:
|
|
69
|
+
yield from bps.abs_set(oav.zoom_controller, position, wait=True)
|
|
70
|
+
SSX_LOGGER.debug(f"Setting zoom level to {position}")
|
|
71
|
+
|
|
72
|
+
|
|
49
73
|
@bpp.run_decorator()
|
|
50
74
|
def gui_stage_move_on_click(
|
|
51
|
-
position_px: tuple[int, int],
|
|
75
|
+
position_px: tuple[int, int],
|
|
76
|
+
oav: OAVBeamCentreFile = inject("oav"),
|
|
77
|
+
pmac: PMAC = inject("pmac"),
|
|
52
78
|
) -> MsgGenerator:
|
|
53
79
|
yield from _move_on_mouse_click_plan(oav, pmac, position_px)
|
|
54
80
|
|
|
@@ -88,7 +114,7 @@ def gui_move_detector(
|
|
|
88
114
|
|
|
89
115
|
|
|
90
116
|
@bpp.run_decorator()
|
|
91
|
-
def
|
|
117
|
+
def gui_run_chip_collection(
|
|
92
118
|
sub_dir: str,
|
|
93
119
|
chip_name: str,
|
|
94
120
|
exp_time: float,
|
|
@@ -103,6 +129,18 @@ def gui_set_parameters(
|
|
|
103
129
|
laser_dwell: float,
|
|
104
130
|
laser_delay: float,
|
|
105
131
|
pre_pump: float,
|
|
132
|
+
pmac: PMAC = inject("pmac"),
|
|
133
|
+
zebra: Zebra = inject("zebra"),
|
|
134
|
+
aperture: Aperture = inject("aperture"),
|
|
135
|
+
backlight: DualBacklight = inject("backlight"),
|
|
136
|
+
beamstop: Beamstop = inject("beamstop"),
|
|
137
|
+
detector_stage: DetectorMotion = inject("detector_motion"),
|
|
138
|
+
shutter: HutchShutter = inject("shutter"),
|
|
139
|
+
dcm: DCM = inject("dcm"),
|
|
140
|
+
mirrors: FocusMirrorsMode = inject("focus_mirrors"),
|
|
141
|
+
beam_center_pilatus: DetectorBeamCenter = inject("pilatus_bc"),
|
|
142
|
+
beam_center_eiger: DetectorBeamCenter = inject("eiger_bc"),
|
|
143
|
+
pilatus_metadata: PilatusMetadata = inject("pilatus_meta"),
|
|
106
144
|
) -> MsgGenerator:
|
|
107
145
|
"""Set the parameter model for the data collection.
|
|
108
146
|
|
|
@@ -132,7 +170,6 @@ def gui_set_parameters(
|
|
|
132
170
|
"""
|
|
133
171
|
# NOTE still a work in progress, adding to it as the ui grows
|
|
134
172
|
# See progression of https://github.com/DiamondLightSource/mx-daq-ui/issues/3
|
|
135
|
-
detector_stage = i24.detector_motion()
|
|
136
173
|
det_type = yield from get_detector_type(detector_stage)
|
|
137
174
|
_format = chip_format if ChipType[chip_type] is ChipType.Custom else None
|
|
138
175
|
chip_params = get_chip_format(ChipType[chip_type], _format)
|
|
@@ -164,6 +201,38 @@ def gui_set_parameters(
|
|
|
164
201
|
"checker_pattern": checker_pattern,
|
|
165
202
|
"pre_pump_exposure_s": pre_pump,
|
|
166
203
|
}
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
204
|
+
|
|
205
|
+
parameters = FixedTargetParameters(**params)
|
|
206
|
+
|
|
207
|
+
# Create collection directory
|
|
208
|
+
parameters.collection_directory.mkdir(parents=True, exist_ok=True)
|
|
209
|
+
|
|
210
|
+
if parameters.chip_map:
|
|
211
|
+
yield from upload_chip_map_to_geobrick(pmac, parameters.chip_map)
|
|
212
|
+
|
|
213
|
+
beam_center_device = (
|
|
214
|
+
beam_center_eiger
|
|
215
|
+
if parameters.detector_name is DetectorName.EIGER
|
|
216
|
+
else beam_center_pilatus
|
|
217
|
+
)
|
|
218
|
+
SSX_LOGGER.info("Beam center device ready")
|
|
219
|
+
|
|
220
|
+
# DCID instance - do not create yet
|
|
221
|
+
dcid = DCID(emit_errors=False, expt_params=parameters) # noqa
|
|
222
|
+
SSX_LOGGER.info("DCID created")
|
|
223
|
+
|
|
224
|
+
yield from run_plan_in_wrapper(
|
|
225
|
+
zebra,
|
|
226
|
+
pmac,
|
|
227
|
+
aperture,
|
|
228
|
+
backlight,
|
|
229
|
+
beamstop,
|
|
230
|
+
detector_stage,
|
|
231
|
+
shutter,
|
|
232
|
+
dcm,
|
|
233
|
+
mirrors,
|
|
234
|
+
beam_center_device,
|
|
235
|
+
parameters,
|
|
236
|
+
dcid,
|
|
237
|
+
pilatus_metadata,
|
|
238
|
+
)
|
{mx_bluesky-1.4.9 → mx_bluesky-1.5.0}/src/mx_bluesky/common/device_setup_plans/manipulate_sample.py
RENAMED
|
@@ -10,6 +10,7 @@ from dodal.devices.detector.detector_motion import DetectorMotion
|
|
|
10
10
|
from dodal.devices.smargon import CombinedMove, Smargon
|
|
11
11
|
|
|
12
12
|
from mx_bluesky.common.utils.log import LOGGER
|
|
13
|
+
from mx_bluesky.hyperion.parameters.constants import CONST
|
|
13
14
|
|
|
14
15
|
LOWER_DETECTOR_SHUTTER_AFTER_SCAN = True
|
|
15
16
|
|
|
@@ -21,6 +22,8 @@ def setup_sample_environment(
|
|
|
21
22
|
group="setup_senv",
|
|
22
23
|
):
|
|
23
24
|
"""Move the aperture into required position, move out the backlight."""
|
|
25
|
+
yield from bps.abs_set(backlight, BacklightPosition.OUT, group=group)
|
|
26
|
+
|
|
24
27
|
aperture_value = (
|
|
25
28
|
None
|
|
26
29
|
if not aperture_position_gda_name
|
|
@@ -29,7 +32,6 @@ def setup_sample_environment(
|
|
|
29
32
|
yield from move_aperture_if_required(
|
|
30
33
|
aperture_scatterguard, aperture_value, group=group
|
|
31
34
|
)
|
|
32
|
-
yield from bps.abs_set(backlight, BacklightPosition.OUT, group=group)
|
|
33
35
|
|
|
34
36
|
|
|
35
37
|
def move_aperture_if_required(
|
|
@@ -46,6 +48,7 @@ def move_aperture_if_required(
|
|
|
46
48
|
|
|
47
49
|
else:
|
|
48
50
|
LOGGER.info(f"Setting aperture position to {aperture_value}")
|
|
51
|
+
yield from bps.wait(CONST.WAIT.PREPARE_APERTURE)
|
|
49
52
|
yield from bps.abs_set(
|
|
50
53
|
aperture_scatterguard.selected_aperture,
|
|
51
54
|
aperture_value,
|
|
@@ -3,12 +3,8 @@ from collections.abc import Generator
|
|
|
3
3
|
from bluesky import plan_stubs as bps
|
|
4
4
|
from bluesky import preprocessors as bpp
|
|
5
5
|
from bluesky.utils import Msg
|
|
6
|
-
from dodal.devices.detector import (
|
|
7
|
-
DetectorParams,
|
|
8
|
-
)
|
|
9
6
|
from dodal.devices.detector.detector_motion import DetectorMotion, ShutterState
|
|
10
7
|
from dodal.devices.eiger import EigerDetector
|
|
11
|
-
from dodal.devices.i03.dcm import DCM
|
|
12
8
|
from dodal.devices.mx_phase1.beamstop import Beamstop, BeamstopPositions
|
|
13
9
|
|
|
14
10
|
from mx_bluesky.common.device_setup_plans.position_detector import (
|
|
@@ -17,13 +13,6 @@ from mx_bluesky.common.device_setup_plans.position_detector import (
|
|
|
17
13
|
)
|
|
18
14
|
|
|
19
15
|
|
|
20
|
-
def fill_in_energy_if_not_supplied(dcm: DCM, detector_params: DetectorParams):
|
|
21
|
-
if not detector_params.expected_energy_ev:
|
|
22
|
-
actual_energy_ev = 1000 * (yield from bps.rd(dcm.energy_in_kev))
|
|
23
|
-
detector_params.expected_energy_ev = actual_energy_ev
|
|
24
|
-
return detector_params
|
|
25
|
-
|
|
26
|
-
|
|
27
16
|
def start_preparing_data_collection_then_do_plan(
|
|
28
17
|
beamstop: Beamstop,
|
|
29
18
|
eiger: EigerDetector,
|
|
@@ -7,35 +7,32 @@ from functools import partial
|
|
|
7
7
|
import bluesky.plan_stubs as bps
|
|
8
8
|
import bluesky.preprocessors as bpp
|
|
9
9
|
import numpy as np
|
|
10
|
-
import pydantic
|
|
11
10
|
from bluesky.protocols import Readable
|
|
12
11
|
from bluesky.utils import MsgGenerator
|
|
13
|
-
from dodal.devices.eiger import EigerDetector
|
|
14
12
|
from dodal.devices.fast_grid_scan import (
|
|
15
13
|
FastGridScanCommon,
|
|
16
14
|
)
|
|
17
|
-
from dodal.devices.smargon import Smargon
|
|
18
|
-
from dodal.devices.synchrotron import Synchrotron
|
|
19
15
|
from dodal.devices.zocalo import ZocaloResults
|
|
20
16
|
from dodal.devices.zocalo.zocalo_results import (
|
|
21
17
|
XrcResult,
|
|
22
18
|
get_full_processing_results,
|
|
23
19
|
)
|
|
24
20
|
|
|
21
|
+
from mx_bluesky.common.experiment_plans.inner_plans.do_fgs import (
|
|
22
|
+
ZOCALO_STAGE_GROUP,
|
|
23
|
+
kickoff_and_complete_gridscan,
|
|
24
|
+
)
|
|
25
|
+
from mx_bluesky.common.experiment_plans.read_hardware import (
|
|
26
|
+
read_hardware_plan,
|
|
27
|
+
)
|
|
25
28
|
from mx_bluesky.common.parameters.constants import (
|
|
26
29
|
DocDescriptorNames,
|
|
27
30
|
GridscanParamConstants,
|
|
28
31
|
PlanGroupCheckpointConstants,
|
|
29
32
|
PlanNameConstants,
|
|
30
33
|
)
|
|
34
|
+
from mx_bluesky.common.parameters.device_composites import FlyScanEssentialDevices
|
|
31
35
|
from mx_bluesky.common.parameters.gridscan import SpecifiedThreeDGridScan
|
|
32
|
-
from mx_bluesky.common.plans.inner_plans.do_fgs import (
|
|
33
|
-
ZOCALO_STAGE_GROUP,
|
|
34
|
-
kickoff_and_complete_gridscan,
|
|
35
|
-
)
|
|
36
|
-
from mx_bluesky.common.plans.read_hardware import (
|
|
37
|
-
read_hardware_plan,
|
|
38
|
-
)
|
|
39
36
|
from mx_bluesky.common.utils.exceptions import (
|
|
40
37
|
CrystalNotFoundException,
|
|
41
38
|
SampleException,
|
|
@@ -45,14 +42,6 @@ from mx_bluesky.common.utils.tracing import TRACER
|
|
|
45
42
|
from mx_bluesky.common.xrc_result import XRayCentreResult
|
|
46
43
|
|
|
47
44
|
|
|
48
|
-
@pydantic.dataclasses.dataclass(config={"arbitrary_types_allowed": True})
|
|
49
|
-
class FlyScanEssentialDevices:
|
|
50
|
-
eiger: EigerDetector
|
|
51
|
-
synchrotron: Synchrotron
|
|
52
|
-
zocalo: ZocaloResults
|
|
53
|
-
smargon: Smargon
|
|
54
|
-
|
|
55
|
-
|
|
56
45
|
@dataclasses.dataclass
|
|
57
46
|
class BeamlineSpecificFGSFeatures:
|
|
58
47
|
setup_trigger_plan: Callable[..., MsgGenerator]
|
|
@@ -251,6 +240,9 @@ def run_gridscan(
|
|
|
251
240
|
parameters.scan_indices,
|
|
252
241
|
plan_during_collection=beamline_specific.read_during_collection_plan,
|
|
253
242
|
)
|
|
243
|
+
|
|
244
|
+
# GDA's gridscans requires Z steps to be at 0, so make sure we leave this device
|
|
245
|
+
# in a GDA-happy state.
|
|
254
246
|
yield from bps.abs_set(beamline_specific.fgs_motors.z_steps, 0, wait=False)
|
|
255
247
|
|
|
256
248
|
|