DiamondLightSource / DiamondLightSource/mx-bluesky
Tidy up robot unload/load
- Dominant language
- Python
- Stars
- 4
- Forks
- 5
- Avg merge
- 1d 30m
- Merged PRs (30d)
- 2
Description
There seems to be an asymmetry between robot load and robot unload in terms of usage.
`robot_unload` manages the preparation and the moving of the gonio, whereas `robot_load_and_snapshots` is outside of the module and calls these things separately. One is a device setup plan and the other is an experiment plan.
Perhaps it would be better to consider moving `robot_load_and_snapshots` into `robot_load_unload` - thawing and taking snapshots seem like a natural part of loading which people would want on any beamline if there is the facility to do so. Then the implementation functions can be private to the module, and it only exposes loading and unloading.
Changing energy to me seems to be the only thing which is not naturally part of loading; you could supply an arbitrary plan as a parameter which you execute while waiting for the robot to load.
_Originally posted by @rtuck99 in https://github.com/DiamondLightSource/mx-bluesky/pull/1078#discussion_r2158560565_
Contributor guide
Assessment
This issue has not been assessed yet.