DiamondLightSource / DiamondLightSource/blueapi
Expose children of devices
- Dominant language
- Python
- Stars
- 13
- Forks
- 13
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 25
Description
When querying for devices, a map of device name to all of the protocols it matches are shown.
When querying for a specific device, root or child device names can be used, to give the protocols of a child device.
However, there is no way of knowing what children a device has.
e.g. SimStage, which has children of x & y: both are Movables, but without knowing that SimStage has these children, you cannot find them.
## Acceptance Criteria
- There is a way of finding out about the children of a root device
- This could be that querying for devices gives you the full tree of its children, grandchildren etc.
- This could be that querying for a device takes an optional "children: bool" or "depth: int" parameter to decide how completely to interrogate the device's tree.
- This could be a new query, with the above optional arguments
- This could be that `parent-child` is registered to the blueapi context and can be fetched and displayed, which would fix #1129 also for free?
Contributor guide
Assessment
This issue has not been assessed yet.