Index: dialin/hd/fans.py =================================================================== diff -u -r428c5c0a653129867b1cb32b5e64f89f68191c4b -r49fee61e157e01eab63fefb0b9d5e13b3e4a45ad --- dialin/hd/fans.py (.../fans.py) (revision 428c5c0a653129867b1cb32b5e64f89f68191c4b) +++ dialin/hd/fans.py (.../fans.py) (revision 49fee61e157e01eab63fefb0b9d5e13b3e4a45ad) @@ -94,7 +94,7 @@ return self.rpm_alarm_time @publish(["hd_fans_data_timestamp", 'duty_cycle', 'target_rpm', 'inlet_1_rpm', 'rpm_alarm_time']) - def _handler_fans_sync(self, message,timestamp=0.0): + def _handler_fans_sync(self, message, timestamp=0.0): """ Handles published thermistors message. Index: dialin/hd/pressure_occlusion.py =================================================================== diff -u -r9bc00e997e91dab8b404aa877b02ae3d4100d417 -r49fee61e157e01eab63fefb0b9d5e13b3e4a45ad --- dialin/hd/pressure_occlusion.py (.../pressure_occlusion.py) (revision 9bc00e997e91dab8b404aa877b02ae3d4100d417) +++ dialin/hd/pressure_occlusion.py (.../pressure_occlusion.py) (revision 49fee61e157e01eab63fefb0b9d5e13b3e4a45ad) @@ -48,6 +48,11 @@ self.arterial_pressure = 0.0 self.venous_pressure = 0.0 self.blood_pump_occlusion = 0 + self.pressure_limits_state = 0 + self.arterial_pressure_limit_min = 0 + self.arterial_pressure_limit_max = 0 + self.venous_pressure_limit_min = 0 + self.venous_pressure_limit_max = 0 def get_arterial_pressure(self): """ @@ -72,11 +77,56 @@ """ return self.blood_pump_occlusion + def get_pressure_limits_state(self): + """ + Gets the current pressure limits state. + + @return: (int) The pressure limits state (0=stabilization, 1=stable) + """ + return self.pressure_limits_state + + def get_arterial_pressure_limit_min(self): + """ + Gets the current arterial pressure limit (minimum). + + @return: (int) The arterial pressure limit (minimum) + """ + return self.arterial_pressure_limit_min + + def get_arterial_pressure_limit_max(self): + """ + Gets the current arterial pressure limit (maximum). + + @return: (int) The arterial pressure limit (maximum) + """ + return self.arterial_pressure_limit_max + + def get_venous_pressure_limit_min(self): + """ + Gets the current venous pressure limit (minimum). + + @return: (int) The venous pressure limit (minimum) + """ + return self.venous_pressure_limit_min + + def get_venous_pressure_limit_max(self): + """ + Gets the current venous pressure limit (maximum). + + @return: (int) The venous pressure limit (maximum) + """ + return self.venous_pressure_limit_max + @publish([ "hd_pressure_occlusion_timestamp", "arterial_pressure", "venous_pressure", "blood_pump_occlusion", + "self.pressure_limits_state", + "arterial_pressure_limit_min", + "arterial_pressure_limit_max", + "venous_pressure_limit_min", + "venous_pressure_limit_max" ]) def _handler_pressure_occlusion_sync(self, message, timestamp=0.0): """ @@ -93,10 +143,25 @@ message['message'][MsgFieldPositions.START_POS_FIELD_2:MsgFieldPositions.END_POS_FIELD_2])) bp = struct.unpack('i', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_3:MsgFieldPositions.END_POS_FIELD_3])) + pls = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_4:MsgFieldPositions.END_POS_FIELD_4])) + apl = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_5:MsgFieldPositions.END_POS_FIELD_5])) + apu = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_6:MsgFieldPositions.END_POS_FIELD_6])) + vpl = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_7:MsgFieldPositions.END_POS_FIELD_7])) + vpu = struct.unpack('i', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_8:MsgFieldPositions.END_POS_FIELD_8])) self.arterial_pressure = art[0] self.venous_pressure = ven[0] self.blood_pump_occlusion = bp[0] + self.pressure_limits_state = pls[0] + self.arterial_pressure_limit_min = apl[0] + self.arterial_pressure_limit_max = apu[0] + self.venous_pressure_limit_min = vpl[0] + self.venous_pressure_limit_max = vpu[0] self.hd_pressure_occlusion_timestamp = timestamp def cmd_arterial_pressure_measured_override(self, pres: float, reset: int = NO_RESET) -> int: Index: dialin/hd/ui_proxy.py =================================================================== diff -u -r3ad893deb92bb6424bbc4385454632ec5549ce01 -r49fee61e157e01eab63fefb0b9d5e13b3e4a45ad --- dialin/hd/ui_proxy.py (.../ui_proxy.py) (revision 3ad893deb92bb6424bbc4385454632ec5549ce01) +++ dialin/hd/ui_proxy.py (.../ui_proxy.py) (revision 49fee61e157e01eab63fefb0b9d5e13b3e4a45ad) @@ -1342,7 +1342,7 @@ dialyzer: int = 0, hep_type: int = 0, dia_temp: float = 37.0, - art_win: int = 100, + art_win: int = 120, ven_win: int = 100, ven_asy: int = 20, bp_intvl: int = 30, Index: tests/unit_tests/test_ui_proxy.py =================================================================== diff -u -r3ad893deb92bb6424bbc4385454632ec5549ce01 -r49fee61e157e01eab63fefb0b9d5e13b3e4a45ad --- tests/unit_tests/test_ui_proxy.py (.../test_ui_proxy.py) (revision 3ad893deb92bb6424bbc4385454632ec5549ce01) +++ tests/unit_tests/test_ui_proxy.py (.../test_ui_proxy.py) (revision 49fee61e157e01eab63fefb0b9d5e13b3e4a45ad) @@ -47,7 +47,7 @@ ("dialyzer", 0 ), ("hep_type", 0 ), ("dia_temp", 35.0 ), - ("art_win" , 100 ), + ("art_win" , 120 ), ("ven_win" , 100 ), ("ven_asy" , 20 ), ("bp_intvl", 15 ),