mirror of
https://github.com/bec-project/ophyd_devices.git
synced 2025-06-06 03:40:41 +02:00
fix(PreviewSignal): use dotted name instead of signal name
This commit is contained in:
parent
ed9d8136b8
commit
780cc641c6
@ -322,7 +322,9 @@ class SimCameraWithStageStatus(SimCamera):
|
||||
class SimCameraWithPSIComponents(SimCamera):
|
||||
"""Test Device for PSIComponents"""
|
||||
|
||||
preview_2d = Cpt(PreviewSignal, ndim=2, doc="2D preview signal", num_rot90=2, transpose=True)
|
||||
preview_2d = Cpt(
|
||||
PreviewSignal, ndim=2, doc="2D preview signal", num_rotation_90=2, transpose=True
|
||||
)
|
||||
preview_1d = Cpt(PreviewSignal, ndim=1, doc="1D preview signal")
|
||||
file_event = Cpt(FileEventSignal, doc="File event signal")
|
||||
progress = Cpt(ProgressSignal, doc="Progress signal")
|
||||
|
@ -315,7 +315,7 @@ class PreviewSignal(BECMessageSignal):
|
||||
*,
|
||||
name: str,
|
||||
ndim: Literal[1, 2],
|
||||
num_rot90: Literal[0, 1, 2, 3] = 0,
|
||||
num_rotation_90: Literal[0, 1, 2, 3] = 0,
|
||||
transpose: bool = False,
|
||||
value: dict | None = None,
|
||||
**kwargs,
|
||||
@ -334,7 +334,11 @@ class PreviewSignal(BECMessageSignal):
|
||||
value=value,
|
||||
bec_message_type=messages.DevicePreviewMessage,
|
||||
kind=Kind.omitted,
|
||||
signal_metadata={"ndim": ndim, "num_rot90": num_rot90, "transpose": transpose},
|
||||
signal_metadata={
|
||||
"ndim": ndim,
|
||||
"num_rotation_90": num_rotation_90,
|
||||
"transpose": transpose,
|
||||
},
|
||||
**kwargs,
|
||||
)
|
||||
|
||||
@ -356,18 +360,20 @@ class PreviewSignal(BECMessageSignal):
|
||||
value (list | np.ndarray | dict | self._bec_message_type): The preview data. Must be 1D.
|
||||
metadata (dict | None): Additional metadata. If dict or self._bec_message_type is passed, it will be ignored.
|
||||
"""
|
||||
signal_name = self.dotted_name or self.name
|
||||
device_name = self.parent.name
|
||||
if isinstance(value, self._bec_message_type):
|
||||
return super().put(value, **kwargs)
|
||||
if isinstance(value, dict):
|
||||
value["device"] = self.parent.name
|
||||
value["signal"] = self.name
|
||||
value["device"] = device_name
|
||||
value["signal"] = signal_name
|
||||
return super().put(value, **kwargs)
|
||||
device = self.parent.name
|
||||
|
||||
if isinstance(value, list):
|
||||
value = np.array(value)
|
||||
try:
|
||||
msg = self._bec_message_type(
|
||||
data=value, device=device, signal=self.name, metadata=metadata
|
||||
data=value, device=device_name, signal=signal_name, metadata=metadata
|
||||
)
|
||||
except ValidationError as exc:
|
||||
raise ValueError(f"Error setting signal {self.name}: {exc}") from exc
|
||||
|
@ -335,7 +335,7 @@ def test_utils_preview_1d_signal():
|
||||
"source": "BECMessageSignal:preview_1d_signal",
|
||||
"dtype": "DevicePreviewMessage",
|
||||
"shape": [],
|
||||
"signal_metadata": {"ndim": 1, "num_rot90": 0, "transpose": False},
|
||||
"signal_metadata": {"ndim": 1, "num_rotation_90": 0, "transpose": False},
|
||||
}
|
||||
}
|
||||
# Put works with Message
|
||||
@ -387,7 +387,7 @@ def test_utils_preview_2d_signal():
|
||||
"source": "BECMessageSignal:preview_2d_signal",
|
||||
"dtype": "DevicePreviewMessage",
|
||||
"shape": [],
|
||||
"signal_metadata": {"ndim": 2, "num_rot90": 0, "transpose": False},
|
||||
"signal_metadata": {"ndim": 2, "num_rotation_90": 0, "transpose": False},
|
||||
}
|
||||
}
|
||||
# Put works with Message
|
||||
|
Loading…
x
Reference in New Issue
Block a user