Index: TD_Post_Treatment/interface.ui =================================================================== diff -u -re7b0bdd0190ebfcee1681e7c8320e923b8ac9f0d -r5029d84258937bd3d917272c46dea4cc65ba1294 --- TD_Post_Treatment/interface.ui (.../interface.ui) (revision e7b0bdd0190ebfcee1681e7c8320e923b8ac9f0d) +++ TD_Post_Treatment/interface.ui (.../interface.ui) (revision 5029d84258937bd3d917272c46dea4cc65ba1294) @@ -6,8 +6,8 @@ 0 0 - 545 - 90 + 854 + 586 @@ -19,11 +19,42 @@ &A Post Treatment/&1 Post Treatment - + - - + + + + + 0 + 0 + + + + + 100 + 0 + + + + false + + + QFrame::WinPanel + + + QFrame::Sunken + + + - + + + Qt::AlignCenter + + + + + Qt::Horizontal @@ -35,7 +66,42 @@ - + + + + + 0 + 0 + + + + Req[0x94] + + + + + + + + 15 + + + + false + + + color: rgb(238, 238, 236); +background-color:rgb(191, 98, 114) + + + Post-Treatment + + + Qt::AlignCenter + + + + @@ -66,36 +132,88 @@ - - - - Qt::Horizontal + + + + Accepted - + + true + + + + + + + 900 + + + + + + + 0 + 0 + + + + Reason + + + + + + + 40 20 - - + + + + + 0 + 0 + + - 0 + 352 0 + + + 16777215 + 16777215 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(191, 98, 163); + + - Reason + 149 : [0x9500] : Auto Eject - - - - 900 + + + + + 0 + 0 + @@ -124,15 +242,133 @@ background-color:rgb(173, 127, 168) - Post-Treatment + 167 : [0xAA00] : Treatment Review Logs Qt::AlignCenter - - + + + + + 0 + 0 + + + + Reason + + + + + + + Accepted + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + 900 + + + + + + + + 0 + 0 + + + + Req [0x55] + + + + + + + + 100 + 16777215 + + + + Send + + + + + + + + 0 + 0 + + + + Req [0xA9] + + + + + + + + 0 + 0 + + + + Reason + + + + + + + Accepted + + + true + + + + + + + + 100 + 16777215 + + + + Send + + + + + 0 @@ -162,13 +398,1355 @@ - 148 : [0x9400] : Auto Eject + 86 : [0x5600] : Patient Disconnect Confirm Qt::AlignCenter + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + false + + + QFrame::WinPanel + + + QFrame::Sunken + + + - + + + Qt::AlignCenter + + + + + + + 900 + + + + + + + true + + + + + 0 + -487 + 818 + 833 + + + + + + + + + + + + + + + Qt::Vertical + + + + + + + + + + + 0 + 0 + + + + Dialysate Temperature + + + true + + + + + + + + + + + 0 + 0 + + + + Fluid Bolus Volume Actual + + + true + + + + + + + + 0 + 0 + + + + Treatment End + + + true + + + + + + + + 0 + 0 + + + + UF Volume Target + + + true + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Calcium Concentration + + + true + + + + + + + + 0 + 0 + + + + Acid Concentrate Type + + + true + + + + + + + Qt::Vertical + + + + + + + + + + + + + + 0 + 0 + + + + Dialysate Volume Used + + + true + + + + + + + + + + + 0 + 0 + + + + Dialysate Temperature Actual + + + true + + + + + + + + + + + 0 + 0 + + + + Potassium Concentration Actual + + + true + + + + + + + 999999999 + + + + + + + 999999999 + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Dialysate Flow + + + true + + + + + + + + + + + + + + + + + 0 + 0 + + + + UF Rate Target + + + true + + + + + + + + 0 + 0 + + + + Heparin Type + + + true + + + + + + + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Vitals Interval + + + true + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Treatment Duration Actual + + + true + + + + + + + Qt::Vertical + + + + + + + + + + + 0 + 0 + + + + Treatment Start + + + true + + + + + + + + + + + 0 + 0 + + + + Heparin Delivered Volume + + + true + + + + + + + + 0 + 0 + + + + Acid Concentrate Type Actual + + + true + + + + + + + + + + + + + + + + Qt::Vertical + + + + + + + + + + + 0 + 0 + + + + Heparin Delivery Duration Actual + + + true + + + + + + + + 0 + 0 + + + + Treatment Duration + + + true + + + + + + + Qt::Vertical + + + + + + + + + + + 0 + 0 + + + + Dialysate Flow Actual + + + true + + + + + + + + 0 + 0 + + + + Hepatitis Status + + + true + + + + + + + + 0 + 0 + + + + Bicarbonate Concentration Actual + + + true + + + + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + HDF Operation Mode + + + true + + + + + + + + 0 + 0 + + + + Sodium Concentration Actual + + + true + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Vitals Interval Actual + + + true + + + + + + + + + + + 0 + 0 + + + + Bicarbonate Cartridge Size + + + true + + + + + + + + 0 + 0 + + + + Calcium Concentration Actual + + + true + + + + + + + Qt::Vertical + + + + + + + + + + 999999999 + + + + + + + + 0 + 0 + + + + HDF Operation Mode Actual + + + true + + + + + + + + 0 + 0 + + + + Treatment Modality Actual + + + true + + + + + + + + + + + + + + + + + 0 + 0 + + + + Bicarbonate Concentration + + + true + + + + + + + + 0 + 0 + + + + Heparin Dispensing Rate + + + true + + + + + + + + 0 + 0 + + + + Blood Flow Actual + + + true + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Water Sample Result + + + true + + + + + + + + + + Qt::Vertical + + + + + + + + + + + 0 + 0 + + + + Heparin Bolus Volume + + + true + + + + + + + + + + + + + Qt::Vertical + + + + + + + + 0 + 0 + + + + Bicarbonate Cartridge Size Actual + + + true + + + + + + + + 0 + 0 + + + + Potassium Concentration + + + true + + + + + + + + + + + + + + 0 + 0 + + + + Sodium Concentration + + + true + + + + + + + + + + Qt::Vertical + + + + + + + + + + + 0 + 0 + + + + Blood Flow + + + true + + + + + + + + 0 + 0 + + + + Heparin Delivery Duration + + + true + + + + + + + + 0 + 0 + + + + Fluid Bolus Volume + + + true + + + + + + + + + + + + + + 0 + 0 + + + + Dialyzer Type + + + true + + + + + + + 999999999 + + + + + + + + + + + 0 + 0 + + + + Treatment Modality + + + true + + + + + + + + + + + 0 + 0 + + + + Heparin Dispensing Rate Actual + + + true + + + + + + + + 0 + 0 + + + + Heparin Bolus Volume Actual + + + true + + + + + + + + 0 + 0 + + + + Iso UF Rate Target + + + true + + + + + + + + 0 + 0 + + + + Iso UF Volume Target + + + true + + + + + + + + 0 + 0 + + + + Substitution Rate Target + + + true + + + + + + + + 0 + 0 + + + + Substitution Volume Target + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + UF Volume + + + true + + + + + + + + + + + 0 + 0 + + + + UF Volume Actual + + + true + + + + + + + + + + + 0 + 0 + + + + UF Rate + + + true + + + + + + + + + + + 0 + 0 + + + + Substitution Volume + + + true + + + + + + + + + + + 0 + 0 + + + + Substitution Rate + + + true + + + + + + + + 0 + 0 + + + + Iso UF Volume + + + true + + + + + + + + 0 + 0 + + + + Iso UF Rate + + + true + + + + + + + + + + + + + + + + + 0 + 0 + + + + UF Rate Actual + + + true + + + + + + + + + + + 0 + 0 + + + + Substitution Volume Actual + + + true + + + + + + + + + + + 0 + 0 + + + + Substitution Rate Actual + + + true + + + + + + + + + + + 0 + 0 + + + + Iso UF Volume Actual + + + true + + + + + + + + + + + 0 + 0 + + + + Iso UF Rate Actual + + + true + + + + + + + + + + + + Index: TD_Post_Treatment/loader.py =================================================================== diff -u -re7b0bdd0190ebfcee1681e7c8320e923b8ac9f0d -r5029d84258937bd3d917272c46dea4cc65ba1294 --- TD_Post_Treatment/loader.py (.../loader.py) (revision e7b0bdd0190ebfcee1681e7c8320e923b8ac9f0d) +++ TD_Post_Treatment/loader.py (.../loader.py) (revision 5029d84258937bd3d917272c46dea4cc65ba1294) @@ -33,11 +33,19 @@ if self.can_interface is not None: channel_id = CAN.DenaliChannels.ui_to_td_ch_id - eject_request_message_id = MsgIds.MSG_ID_UI_ADJUST_DISPOSABLES_REMOVAL_CONFIRM_REQUEST.value self.can_interface.register_receiving_publication_function(channel_id, - eject_request_message_id, + MsgIds.MSG_ID_UI_ADJUST_DISPOSABLES_REMOVAL_CONFIRM_REQUEST.value, self.handle_eject_request) + self.can_interface.register_receiving_publication_function(channel_id, + MsgIds.MSG_ID_UI_ADJUST_PATIENT_DISCONNECT_CONFIRM_REQUEST.value, + self.handle_patient_disconnect_request) + + self.can_interface.register_receiving_publication_function(channel_id, + MsgIds.MSG_ID_UI_ADJUST_TREATMENT_LOGS_REQUEST.value, + self.handle_tx_logs_request) + + def _init_loader(self): """ finds and creates widgets @@ -48,6 +56,69 @@ self.lbAutoEject = self.find_widget(QtWidgets.QLabel , 'lbAutoEject' ) + self.spnBloodFlow = self.find_widget(QtWidgets.QSpinBox , 'spnBloodFlow' ) + self.spnBloodFlowActual = self.find_widget(QtWidgets.QSpinBox , 'spnBloodFlowActual' ) + self.spnDialysateFlow = self.find_widget(QtWidgets.QSpinBox , 'spnDialysateFlow' ) + self.spnDialysateFlowActual = self.find_widget(QtWidgets.QSpinBox , 'spnDialysateFlowActual' ) + self.spnTreatmentDuration = self.find_widget(QtWidgets.QSpinBox , 'spnTreatmentDuration' ) + self.spnTreatmentDurationActual = self.find_widget(QtWidgets.QSpinBox , 'spnTreatmentDurationActual' ) + self.spnAcidConcentrate = self.find_widget(QtWidgets.QSpinBox , 'spnAcidConcentrate' ) + self.spnAcidConcentrateActual = self.find_widget(QtWidgets.QSpinBox , 'spnAcidConcentrateActual' ) + self.spnBicarbonateCartridgeSize = self.find_widget(QtWidgets.QSpinBox , 'spnBicarbonateCartridgeSize' ) + self.spnBicarbonateCartridgeSizeActual = self.find_widget(QtWidgets.QSpinBox , 'spnBicarbonateCartridgeSizeActual' ) + self.spnPotassiumConcentration = self.find_widget(QtWidgets.QSpinBox , 'spnPotassiumConcentration' ) + self.spnPotassiumConcentrationActual = self.find_widget(QtWidgets.QSpinBox , 'spnPotassiumConcentrationActual' ) + self.spnCalciumConcentration = self.find_widget(QtWidgets.QSpinBox , 'spnCalciumConcentration' ) + self.spnCalciumConcentrationActual = self.find_widget(QtWidgets.QSpinBox , 'spnCalciumConcentrationActual' ) + self.spnBicarbonateConcentration = self.find_widget(QtWidgets.QSpinBox , 'spnBicarbonateConcentration' ) + self.spnBicarbonateConcentrationActual = self.find_widget(QtWidgets.QSpinBox , 'spnBicarbonateConcentrationActual' ) + self.spnSodiumConcentration = self.find_widget(QtWidgets.QSpinBox , 'spnSodiumConcentration' ) + self.spnSodiumConcentrationActual = self.find_widget(QtWidgets.QSpinBox , 'spnSodiumConcentrationActual' ) + self.spnVitalsInterval = self.find_widget(QtWidgets.QSpinBox , 'spnVitalsInterval' ) + self.spnVitalsIntervalActual = self.find_widget(QtWidgets.QSpinBox , 'spnVitalsIntervalActual' ) + self.spnDialyzerType = self.find_widget(QtWidgets.QSpinBox , 'spnDialyzerType' ) + self.spnTreatmentStart = self.find_widget(QtWidgets.QSpinBox , 'spnTreatmentStart' ) + self.spnTreatmentEnd = self.find_widget(QtWidgets.QSpinBox , 'spnTreatmentEnd' ) + self.spnFluidBolusVolume = self.find_widget(QtWidgets.QSpinBox , 'spnFluidBolusVolume' ) + self.spnFluidBolusVolumeActual = self.find_widget(QtWidgets.QSpinBox , 'spnFluidBolusVolumeActual' ) + self.spnHeparinType = self.find_widget(QtWidgets.QSpinBox , 'spnHeparinType' ) + self.spnHeparinDeliveryDuration = self.find_widget(QtWidgets.QSpinBox , 'spnHeparinDeliveryDuration' ) + self.spnHeparinDeliveryDurationActual = self.find_widget(QtWidgets.QSpinBox , 'spnHeparinDeliveryDurationActual' ) + self.spnTreatmentModality = self.find_widget(QtWidgets.QSpinBox , 'spnTreatmentModality' ) + self.spnTreatmentModalityActual = self.find_widget(QtWidgets.QSpinBox , 'spnTreatmentModalityActual' ) + self.spnHDFOperationMode = self.find_widget(QtWidgets.QSpinBox , 'spnHDFOperationMode' ) + self.spnHDFOperationModeActual = self.find_widget(QtWidgets.QSpinBox , 'spnHDFOperationModeActual' ) + self.spnHepatitisStatus = self.find_widget(QtWidgets.QSpinBox , 'spnHepatitisStatus' ) + self.spnDialysateTemperature = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnDialysateTemperature' ) + self.spnDialysateTemperatureActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnDialysateTemperatureActual' ) + self.spnDialysateVolumeUsed = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnDialysateVolumeUsed' ) + self.spnHeparinBolusVolume = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnHeparinBolusVolume' ) + self.spnHeparinBolusVolumeActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnHeparinBolusVolumeActual' ) + self.spnHeparinDispensingRate = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnHeparinDispensingRate' ) + self.spnHeparinDispensingRateActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnHeparinDispensingRateActual' ) + self.spnHeparinDeliveredVolume = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnHeparinDeliveredVolume' ) + self.spnUFVolume = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnUFVolume' ) + self.spnUFVolumeActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnUFVolumeActual' ) + self.spnUFVolumeTarget = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnUFVolumeTarget' ) + self.spnUFRate = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnUFRate' ) + self.spnUFRateActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnUFRateActual' ) + self.spnUFRateTarget = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnUFRateTarget' ) + self.spnSubstitutionVolume = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnSubstitutionVolume' ) + self.spnSubstitutionActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnSubstitutionActual' ) + self.spnSubstitutionVolumeTarget = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnSubstitutionVolumeTarget' ) + self.spnSubstitutionRate = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnSubstitutionRate' ) + self.spnSubstitutionRateActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnSubstitutionRateActual' ) + self.spnSubstitutionRateTarget = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnSubstitutionRateTarget' ) + self.spnIsoUFVolume = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnIsoUFVolume' ) + self.spnIsoUFVolumeActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnIsoUFVolumeActual' ) + self.spnIsoUFVolumeTarget = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnIsoUFVolumeTarget' ) + self.spnIsoUFRate = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnIsoUFRate' ) + self.spnIsoUFRateActual = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnIsoUFRateActual' ) + self.spnIsoUFRateTarget = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnIsoUFRateTarget' ) + self.spnWaterSampleResult = self.find_widget(QtWidgets.QDoubleSpinBox , 'spnWaterSampleResult' ) + + + def _init_connections(self): """ initializes the widgets connections @@ -61,14 +132,74 @@ :return: none """ self.spnAutoEjectRejectReason .setValue(0) - + self.spnBloodFlow .setValue(0) + self.spnBloodFlowActual .setValue(0) + self.spnDialysateFlow .setValue(0) + self.spnDialysateFlowActual .setValue(0) + self.spnTreatmentDuration .setValue(0) + self.spnTreatmentDurationActual .setValue(0) + self.spnAcidConcentrate .setValue(0) + self.spnAcidConcentrateActual .setValue(0) + self.spnBicarbonateCartridgeSize .setValue(0) + self.spnBicarbonateCartridgeSizeActual .setValue(0) + self.spnPotassiumConcentration .setValue(0) + self.spnPotassiumConcentrationActual .setValue(0) + self.spnCalciumConcentration .setValue(0) + self.spnCalciumConcentrationActual .setValue(0) + self.spnBicarbonateConcentration .setValue(0) + self.spnBicarbonateConcentrationActual .setValue(0) + self.spnSodiumConcentration .setValue(0) + self.spnSodiumConcentrationActual .setValue(0) + self.spnVitalsInterval .setValue(0) + self.spnVitalsIntervalActual .setValue(0) + self.spnDialyzerType .setValue(0) + self.spnTreatmentStart .setValue(0) + self.spnTreatmentEnd .setValue(0) + self.spnFluidBolusVolume .setValue(0) + self.spnFluidBolusVolumeActual .setValue(0) + self.spnHeparinType .setValue(0) + self.spnHeparinDeliveryDuration .setValue(0) + self.spnHeparinDeliveryDurationActual .setValue(0) + self.spnTreatmentModality .setValue(0) + self.spnTreatmentModalityActual .setValue(0) + self.spnHDFOperationMode .setValue(0) + self.spnHDFOperationModeActual .setValue(0) + self.spnHepatitisStatus .setValue(0) + self.spnDialysateTemperature .setValue(0) + self.spnDialysateTemperatureActual .setValue(0) + self.spnDialysateVolumeUsed .setValue(0) + self.spnHeparinBolusVolume .setValue(0) + self.spnHeparinBolusVolumeActual .setValue(0) + self.spnHeparinDispensingRate .setValue(0) + self.spnHeparinDispensingRateActual .setValue(0) + self.spnHeparinDeliveredVolume .setValue(0) + self.spnUFVolume .setValue(0) + self.spnUFVolumeActual .setValue(0) + self.spnUFVolumeTarget .setValue(0) + self.spnUFRate .setValue(0) + self.spnUFRateActual .setValue(0) + self.spnUFRateTarget .setValue(0) + self.spnSubstitutionVolume .setValue(0) + self.spnSubstitutionActual .setValue(0) + self.spnSubstitutionVolumeTarget .setValue(0) + self.spnSubstitutionRate .setValue(0) + self.spnSubstitutionRateActual .setValue(0) + self.spnSubstitutionRateTarget .setValue(0) + self.spnIsoUFVolume .setValue(0) + self.spnIsoUFVolumeActual .setValue(0) + self.spnIsoUFVolumeTarget .setValue(0) + self.spnIsoUFRate .setValue(0) + self.spnIsoUFRateActual .setValue(0) + self.spnIsoUFRateTarget .setValue(0) + self.spnWaterSampleResult .setValue(0) @Slot() def do_auto_eject(self): reason = self.spnAutoEjectRejectReason.value() self.td_interface.td_blood_set_auto_eject_response(reason) self.lbAutoEject.setText("-") + @Slot() def handle_eject_request(self, message, timestamp = 0.0): """ @@ -77,3 +208,87 @@ """ self.lbAutoEject.setText("Requested") + + @Slot() + def handle_patient_disconnect_request(self, message, timestamp = 0.0): + """ + Called when the user requests to firmware from UI + @return: None + """ + self.lbPatientDisconnect.setText("Requested") + + + @Slot() + def do_treatment_logs(self): + self.lbTxLogs.setText("-") + self.td_interface.td_post_tx_logs_response( self.cbTxLogsAccepted .isChecked(), + self.spnTxLogsReasonSpinBox .value(), + self.spnBloodFlow .value(), # vBloodFlowRate + self.spnBloodFlowActual .value(), # vBloodFlowRateActual + self.spnDialysateFlow .value(), # vDialysateFlowRate + self.spnDialysateFlowActual .value(), # vDialysateFlowRateActual + self.spnTreatmentDuration .value(), # vTreatmentDuration + self.spnTreatmentDurationActual .value(), # vTreatmentDurationActual + self.spnAcidConcentrate .value(), # vAcidConcentrateType + self.spnAcidConcentrateActual .value(), # vAcidConcentrateTypeActual + self.spnBicarbonateCartridgeSize .value(), # vBicarbonateCartridgeSize + self.spnBicarbonateCartridgeSizeActual .value(), # vBicarbonateCartridgeSizeActual + self.spnPotassiumConcentration .value(), # vPotassiumConcentration + self.spnPotassiumConcentrationActual .value(), # vPotassiumConcentrationActual + self.spnCalciumConcentration .value(), # vCalciumConcentration + self.spnCalciumConcentrationActual .value(), # vCalciumConcentrationActual + self.spnBicarbonateConcentration .value(), # vBicarbonateConcentration + self.spnBicarbonateConcentrationActual .value(), # vBicarbonateConcentrationActual + self.spnSodiumConcentration .value(), # vSodiumConcentration + self.spnSodiumConcentrationActual .value(), # vSodiumConcentrationActual + self.spnVitalsInterval .value(), # vVitalsInterval + self.spnVitalsIntervalActual .value(), # vVitalsIntervalActual + self.spnDialyzerType .value(), # vDialyzerType + self.spnTreatmentStart .value(), # vTreatmentStartEpoch + self.spnTreatmentEnd .value(), # vTreatmentEndEpoch + self.spnFluidBolusVolume .value(), # vFluidBolusVolume + self.spnFluidBolusVolumeActual .value(), # vFluidBolusVolumeActual + self.spnHeparinType .value(), # vHeparinType + self.spnHeparinDeliveryDuration .value(), # vHeparinDeliveryDuration + self.spnHeparinDeliveryDurationActual .value(), # vHeparinDeliveryDurationActual + self.spnTreatmentModality .value(), # vTreatmentModality + self.spnTreatmentModalityActual .value(), # vTreatmentModalityActual + self.spnHDFOperationMode .value(), # vHDFOperatingMode + self.spnHDFOperationModeActual .value(), # vHDFOperatingModeActual + self.spnHepatitisStatus .value(), # vHepatitisStatus + self.spnDialysateTemperature .value(), # vDialysateTemperature + self.spnDialysateTemperatureActual .value(), # vDialysateTemperatureActual + self.spnDialysateVolumeUsed .value(), # vDialysateVolumeUsed + self.spnHeparinBolusVolume .value(), # vHeparinBolusVolume + self.spnHeparinBolusVolumeActual .value(), # vHeparinBolusVolumeActual + self.spnHeparinDispensingRate .value(), # vHeparinDispenseRate + self.spnHeparinDispensingRateActual .value(), # vHeparinDispenseRateActual + self.spnHeparinDeliveredVolume .value(), # vHeparinDeliveredVolume + self.spnUFVolume .value(), # vUFVolume + self.spnUFVolumeActual .value(), # vUFVolumeActual + self.spnUFVolumeTarget .value(), # vUFVolumeTarget + self.spnUFRate .value(), # vUFRate + self.spnUFRateActual .value(), # vUFRateActual + self.spnUFRateTarget .value(), # vUFRateTarget + self.spnSubstitutionVolume .value(), # vSubstitutionVolume + self.spnSubstitutionActual .value(), # vSubstitutionVolumeActual + self.spnSubstitutionVolumeTarget .value(), # vSubstitutionVolumeTarget + self.spnSubstitutionRate .value(), # vSubstitutionRate + self.spnSubstitutionRateActual .value(), # vSubstitutionRateActual + self.spnSubstitutionRateTarget .value(), # vSubstitutionRateTarget + self.spnIsoUFVolume .value(), # vIsoUfVolume + self.spnIsoUFVolumeActual .value(), # vIsoUfVolumeActual + self.spnIsoUFVolumeTarget .value(), # vIsoUfVolumeTarget + self.spnIsoUFRate .value(), # vIsoUfRate + self.spnIsoUFRateActual .value(), # vIsoUfRateActual + self.spnIsoUFRateTarget .value(), # vIsoUfRateTarget + self.spnWaterSampleResult .value()) # vWaterSampleTestResult + + + @Slot() + def handle_tx_logs_request(self, message, timestamp = 0.0): + """ + Called when the user requests to firmware from UI + @return: None + """ + self.lbTxLogs.setText("Requested") \ No newline at end of file