diff options
Diffstat (limited to 'devices')
| -rw-r--r-- | devices/__pycache__/analog_input.cpython-312.pyc | bin | 24176 -> 24808 bytes | |||
| -rw-r--r-- | devices/__pycache__/digital_io.cpython-312.pyc | bin | 21962 -> 22589 bytes | |||
| -rw-r--r-- | devices/__pycache__/serial_device.cpython-312.pyc | bin | 14669 -> 15511 bytes | |||
| -rw-r--r-- | devices/analog_input.py | 27 | ||||
| -rw-r--r-- | devices/digital_io.py | 25 | ||||
| -rw-r--r-- | devices/serial_device.py | 13 |
6 files changed, 54 insertions, 11 deletions
diff --git a/devices/__pycache__/analog_input.cpython-312.pyc b/devices/__pycache__/analog_input.cpython-312.pyc Binary files differindex d285167..f22ffd6 100644 --- a/devices/__pycache__/analog_input.cpython-312.pyc +++ b/devices/__pycache__/analog_input.cpython-312.pyc diff --git a/devices/__pycache__/digital_io.cpython-312.pyc b/devices/__pycache__/digital_io.cpython-312.pyc Binary files differindex 5cc1faf..1907cb3 100644 --- a/devices/__pycache__/digital_io.cpython-312.pyc +++ b/devices/__pycache__/digital_io.cpython-312.pyc diff --git a/devices/__pycache__/serial_device.cpython-312.pyc b/devices/__pycache__/serial_device.cpython-312.pyc Binary files differindex 03a29f7..53ba302 100644 --- a/devices/__pycache__/serial_device.cpython-312.pyc +++ b/devices/__pycache__/serial_device.cpython-312.pyc diff --git a/devices/analog_input.py b/devices/analog_input.py index e1b8b09..c9e5d2a 100644 --- a/devices/analog_input.py +++ b/devices/analog_input.py @@ -73,12 +73,13 @@ class AnalogInputDevice(BaseDevice): ) super().__init__(info) - self._ni_device = ni_device - self._ni_min_v = ni_min_v - self._ni_max_v = ni_max_v - self._ard_port = ard_port - self._ard_baud = ard_baud - self._last_error = "" + self._ni_device = ni_device + self._ni_min_v = ni_min_v + self._ni_max_v = ni_max_v + self._ard_port = ard_port + self._ard_baud = ard_baud + self._num_channels = num_channels + self._last_error = "" self._layer = self._make_layer( backend, simulate, ni_device, ni_min_v, ni_max_v, @@ -170,6 +171,20 @@ class AnalogInputDevice(BaseDevice): # Named parameter / setpoint return self._layer.set_parameter(ch, value) + def get_save_config(self) -> dict: + return { + "device_type": self.DEVICE_TYPE, + "device_id": self.info.device_id, + "num_channels": self._num_channels, + "simulate": self.simulate, + "backend": self.backend, + "ni_device": self._ni_device, + "ni_min_v": self._ni_min_v, + "ni_max_v": self._ni_max_v, + "ard_port": self._ard_port, + "ard_baud": self._ard_baud, + } + def get_config_widget(self) -> QWidget: return AnalogInputConfigWidget(self) diff --git a/devices/digital_io.py b/devices/digital_io.py index 3d24192..96c6ca5 100644 --- a/devices/digital_io.py +++ b/devices/digital_io.py @@ -40,11 +40,13 @@ class DigitalIODevice(BaseDevice): ard_port: str = "COM3", ard_baud: int = 115200, ): - self.simulate = simulate - self.backend = backend - self._ni_device = ni_device - self._ard_port = ard_port - self._ard_baud = ard_baud + self.simulate = simulate + self.backend = backend + self._ni_device = ni_device + self._ard_port = ard_port + self._ard_baud = ard_baud + self._num_inputs = num_inputs + self._num_outputs = num_outputs channels = [] for i in range(num_inputs): @@ -252,6 +254,19 @@ class DigitalIODevice(BaseDevice): if was_running: self.connect() + def get_save_config(self) -> dict: + return { + "device_type": self.DEVICE_TYPE, + "device_id": self.info.device_id, + "num_inputs": self._num_inputs, + "num_outputs": self._num_outputs, + "simulate": self.simulate, + "backend": self.backend, + "ni_device": self._ni_device, + "ard_port": self._ard_port, + "ard_baud": self._ard_baud, + } + def get_config_widget(self) -> QWidget: return DigitalIOConfigWidget(self) diff --git a/devices/serial_device.py b/devices/serial_device.py index a5bf08c..6f54cb5 100644 --- a/devices/serial_device.py +++ b/devices/serial_device.py @@ -109,6 +109,19 @@ class SerialDevice(BaseDevice): def write_channel(self, channel_id: str, value: Any) -> bool: return self._layer.write(channel_id, int(value)) + def get_save_config(self) -> dict: + return { + "device_type": self.DEVICE_TYPE, + "device_id": self.info.device_id, + "port": self._port, + "baud_rate": self._baud, + "num_channels": len(self.info.channels), + "channel_names": [c.channel_id for c in self.info.channels], + "units": [c.unit for c in self.info.channels], + "parse_format": self._parse_format, + "simulate": self.simulate, + } + def get_config_widget(self) -> QWidget: return SerialConfigWidget(self) |
