Skip to content

Commit

Permalink
Move plugins from child classes to parent classes (#309)
Browse files Browse the repository at this point in the history
Co-authored-by: Tom C (DLS) <[email protected]>
  • Loading branch information
ZohebShaikh and coretl authored May 23, 2024
1 parent 5270e1c commit c846287
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 9 deletions.
8 changes: 1 addition & 7 deletions src/ophyd_async/epics/areadetector/drivers/ad_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
set_and_wait_for_value,
)

from ...signal.signal import epics_signal_r, epics_signal_rw, epics_signal_rw_rbv
from ...signal.signal import epics_signal_r, epics_signal_rw_rbv
from ..utils import ImageMode
from ..writers.nd_plugin import NDArrayBase

Expand Down Expand Up @@ -43,18 +43,12 @@ class DetectorState(str, Enum):
class ADBase(NDArrayBase):
def __init__(self, prefix: str, name: str = "") -> None:
# Define some signals
self.acquire = epics_signal_rw_rbv(bool, prefix + "Acquire")
self.acquire_time = epics_signal_rw_rbv(float, prefix + "AcquireTime")
self.num_images = epics_signal_rw_rbv(int, prefix + "NumImages")
self.image_mode = epics_signal_rw_rbv(ImageMode, prefix + "ImageMode")
self.array_counter = epics_signal_rw_rbv(int, prefix + "ArrayCounter")
self.array_size_x = epics_signal_r(int, prefix + "ArraySizeX_RBV")
self.array_size_y = epics_signal_r(int, prefix + "ArraySizeY_RBV")
self.detector_state = epics_signal_r(
DetectorState, prefix + "DetectorState_RBV"
)
# There is no _RBV for this one
self.wait_for_plugins = epics_signal_rw(bool, prefix + "WaitForPlugins")
super().__init__(prefix, name=name)


Expand Down
2 changes: 0 additions & 2 deletions src/ophyd_async/epics/areadetector/writers/nd_file_hdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,5 @@ def __init__(self, prefix: str, name="") -> None:
self.lazy_open = epics_signal_rw_rbv(bool, prefix + "LazyOpen")
self.capture = epics_signal_rw_rbv(bool, prefix + "Capture")
self.flush_now = epics_signal_rw(bool, prefix + "FlushNow")
self.array_size0 = epics_signal_r(int, prefix + "ArraySize0_RBV")
self.array_size1 = epics_signal_r(int, prefix + "ArraySize1_RBV")
self.xml_file_name = epics_signal_rw_rbv(str, prefix + "XMLFileName")
super().__init__(prefix, name)
9 changes: 9 additions & 0 deletions src/ophyd_async/epics/areadetector/writers/nd_plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,13 @@ class NDArrayBase(Device):
def __init__(self, prefix: str, name: str = "") -> None:
self.unique_id = epics_signal_r(int, prefix + "UniqueId_RBV")
self.nd_attributes_file = epics_signal_rw(str, prefix + "NDAttributesFile")
self.acquire = epics_signal_rw_rbv(bool, prefix + "Acquire")
self.array_size_x = epics_signal_r(int, prefix + "ArraySizeX_RBV")
self.array_size_y = epics_signal_r(int, prefix + "ArraySizeY_RBV")
self.array_counter = epics_signal_rw_rbv(int, prefix + "ArrayCounter")
# There is no _RBV for this one
self.wait_for_plugins = epics_signal_rw(bool, prefix + "WaitForPlugins")

super().__init__(name=name)


Expand All @@ -22,6 +29,8 @@ def __init__(self, prefix: str, name: str = "") -> None:
self.nd_array_port = epics_signal_rw_rbv(str, prefix + "NDArrayPort")
self.enable_callback = epics_signal_rw_rbv(Callback, prefix + "EnableCallbacks")
self.nd_array_address = epics_signal_rw_rbv(int, prefix + "NDArrayAddress")
self.array_size0 = epics_signal_r(int, prefix + "ArraySize0_RBV")
self.array_size1 = epics_signal_r(int, prefix + "ArraySize1_RBV")
super().__init__(prefix, name)


Expand Down

0 comments on commit c846287

Please sign in to comment.