As a user of Blueapi, I would like to run plans which contain composite devices.
In Hyperion, our plans use a lot of devices so we have something like
class FlyScanXRayCentreComposite:
aperture_scatterguard: ApertureScatterguard = inject(...)
attenuator: Attenuator = inject(...)
...
def flyscan_xray_centre(
composite: FlyScanXRayCentreComposite,
...
BlueAPI doesn't seem to be happy with this kind of thing right now. When doing a blueapi controller plans, the server outputs:
ValueError: Value not declarable with JSON Schema, field: name='aperture_scatterguard' type=ApertureScatterguard required=True
As a user of
Blueapi, I would like to run plans which contain composite devices.In Hyperion, our plans use a lot of devices so we have something like
BlueAPI doesn't seem to be happy with this kind of thing right now. When doing a
blueapi controller plans, the server outputs:ValueError: Value not declarable with JSON Schema, field: name='aperture_scatterguard' type=ApertureScatterguard required=True