pcdsdevices.utils.move_subdevices_to_start
- pcdsdevices.utils.move_subdevices_to_start(cls: type[Device] | None = None, subdevice_cls: type[Device] = <class 'ophyd.device.Device'>) type[Device] | Callable[[type[Device]], type[Device]]
Arrange the component order of a device class to put subdevices first.
This can be useful to bring e.g. all the motors to the top for the typhos screen.
The relative ordering of subdevices is preserved.
- Parameters:
cls (Device subclass) – The Device subclass that we’d like to rearrange the order of.
subdevice_cls (type, optional) – A specific class type to move to the front. If omitted, all device subclasses will be moved.
- Returns:
cls (Device subclass, or function that returns it) – Decorator-compatible output. When used as a function or as a no-argument decorator, this will return the input device. When used as a decorator with the subdevice_cls argument, this will return a function as required by the decorator interface.