""" The DD pressure ui loader """ # Python import os # Qt from PySide2 import QtCore, QtWidgets from PySide2.QtCore import Slot # parent from engine.dynamicloader import DynamicLoader # dd Simulator from leahi_dialin.ui.dd_messaging import DD_Messaging class Loader(DynamicLoader): """ The DD pressure ui loader """ def __init__(self): self.dd_interface = DD_Messaging() super().__init__(os.path.dirname(__file__)) def _init_loader(self): """ finds and creates widgets :return: none """ self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) self.dsbWaterInletInPressure = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbWaterInletInPressure' ) self.dsbWaterInletoutpressure = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbWaterInletoutpressure' ) self.dsbHydrolyicsOutletPressure = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbHydrolyicsOutletPressure' ) self.dsbBicarbBagPressure = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbBicarbBagPressure' ) self.dsbSpentDialysatePressure = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbSpentDialysatePressure' ) self.dsbFreshDialysatePressure = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbFreshDialysatePressure' ) self.dsbTMP = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbTMP' ) self.dsbWaterInletInTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbWaterInletInTemp' ) self.dsbWaterInletoutTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbWaterInletoutTemp' ) self.dsbHydrolyicsOutletTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbHydrolyicsOutletTemp' ) self.dsbBicarbBagTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbBicarbBagTemp' ) self.dsbSpentDialysateTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbSpentDialysateTemp' ) self.dsbFreshDialysateTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbFreshDialysateTemp' ) self.dsbTMPTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dsbTMPTemp' ) def _init_connections(self): """ initializes the widgets connections :return: none """ self.tbReset.clicked.connect(self._init_widgets) self.tbSend.clicked.connect(self.do_dd_pressure) @Slot() def _init_widgets(self): """ initializes the widgets' properties :return: none """ self.dsbWaterInletInPressure .setValue(0) self.dsbWaterInletoutpressure .setValue(0) self.dsbHydrolyicsOutletPressure .setValue(0) self.dsbBicarbBagPressure .setValue(0) self.dsbSpentDialysatePressure .setValue(0) self.dsbFreshDialysatePressure .setValue(0) self.dsbTMP .setValue(0) self.dsbWaterInletInTemp .setValue(0) self.dsbWaterInletoutTemp .setValue(0) self.dsbHydrolyicsOutletTemp .setValue(0) self.dsbBicarbBagTemp .setValue(0) self.dsbSpentDialysateTemp .setValue(0) self.dsbFreshDialysateTemp .setValue(0) self.dsbTMPTemp .setValue(0) @Slot() def do_dd_pressure(self): """ the slot for dd pressure change :return: none """ m1Pressure = self.dsbWaterInletInPressure .value() m3Pressure = self.dsbWaterInletoutpressure .value() d9Pressure = self.dsbHydrolyicsOutletPressure .value() d66Pressure = self.dsbBicarbBagPressure .value() d51Pressure = self.dsbSpentDialysatePressure .value() d18Pressure = self.dsbFreshDialysatePressure .value() d41Pressure = self.dsbTMP .value() m1PresTemp = self.dsbWaterInletInTemp .value() m3PresTemp = self.dsbWaterInletoutTemp .value() d9PresTemp = self.dsbHydrolyicsOutletTemp .value() d66PresTemp = self.dsbBicarbBagTemp .value() d51PresTemp = self.dsbSpentDialysateTemp .value() d18PresTemp = self.dsbFreshDialysateTemp .value() d41PresTemp = self.dsbTMPTemp .value() self.dd_interface.dd_pressure( m1Pressure , m3Pressure , d9Pressure , d66Pressure , d51Pressure , d18Pressure , d41Pressure , m1PresTemp , m3PresTemp , d9PresTemp , d66PresTemp , d51PresTemp , d18PresTemp , d41PresTemp )