Skip to content

Commit 90a2fdd

Browse files
authored
Make beamsize signals readable (#1730)
1 parent 143c2c3 commit 90a2fdd

File tree

3 files changed

+26
-27
lines changed

3 files changed

+26
-27
lines changed
Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
1-
from typing import Annotated
2-
31
from ophyd_async.core import SignalR, StandardReadable
4-
from ophyd_async.core import StandardReadableFormat as Format
52

63

74
class BeamsizeBase(StandardReadable):
8-
x_um: Annotated[SignalR[float], Format.HINTED_SIGNAL]
9-
y_um: Annotated[SignalR[float], Format.HINTED_SIGNAL]
5+
x_um: SignalR[float]
6+
y_um: SignalR[float]

src/dodal/devices/i03/beamsize.py

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,17 @@ def __init__(self, aperture_scatterguard: ApertureScatterguard, name=""):
1010
super().__init__(name=name)
1111
self._aperture_scatterguard_ref = Reference(aperture_scatterguard)
1212

13-
self.x_um = derived_signal_r(
14-
self._get_beamsize_x,
15-
aperture_radius=self._aperture_scatterguard_ref().radius,
16-
derived_units="µm",
17-
)
18-
self.y_um = derived_signal_r(
19-
self._get_beamsize_y,
20-
aperture_radius=self._aperture_scatterguard_ref().radius,
21-
derived_units="µm",
22-
)
13+
with self.add_children_as_readables():
14+
self.x_um = derived_signal_r(
15+
self._get_beamsize_x,
16+
aperture_radius=self._aperture_scatterguard_ref().radius,
17+
derived_units="µm",
18+
)
19+
self.y_um = derived_signal_r(
20+
self._get_beamsize_y,
21+
aperture_radius=self._aperture_scatterguard_ref().radius,
22+
derived_units="µm",
23+
)
2324

2425
def _get_beamsize_x(
2526
self,

src/dodal/devices/i04/beamsize.py

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,19 @@ def __init__(
1616
self._transfocator_ref = Reference(transfocator)
1717
self._aperture_scatterguard_ref = Reference(aperture_scatterguard)
1818

19-
self.x_um = derived_signal_r(
20-
self._get_beamsize_x,
21-
transfocator_size_x=self._transfocator_ref().current_horizontal_size_rbv,
22-
aperture_radius=self._aperture_scatterguard_ref().radius,
23-
derived_units="µm",
24-
)
25-
self.y_um = derived_signal_r(
26-
self._get_beamsize_y,
27-
transfocator_size_y=self._transfocator_ref().current_vertical_size_rbv,
28-
aperture_radius=self._aperture_scatterguard_ref().radius,
29-
derived_units="µm",
30-
)
19+
with self.add_children_as_readables():
20+
self.x_um = derived_signal_r(
21+
self._get_beamsize_x,
22+
transfocator_size_x=self._transfocator_ref().current_horizontal_size_rbv,
23+
aperture_radius=self._aperture_scatterguard_ref().radius,
24+
derived_units="µm",
25+
)
26+
self.y_um = derived_signal_r(
27+
self._get_beamsize_y,
28+
transfocator_size_y=self._transfocator_ref().current_vertical_size_rbv,
29+
aperture_radius=self._aperture_scatterguard_ref().radius,
30+
derived_units="µm",
31+
)
3132

3233
def _get_beamsize_x(
3334
self,

0 commit comments

Comments
 (0)