Index: leahi_dialin/dd/modules/alarms.py =================================================================== diff -u -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/dd/modules/alarms.py (.../alarms.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) +++ leahi_dialin/dd/modules/alarms.py (.../alarms.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -68,7 +68,8 @@ self.last_alarm_triggered = 0 #: The timestamp when did the last alarm triggered self.last_alarm_data_1 = 0.0 #: The last Alarm's data part 1 self.last_alarm_data_2 = 0.0 #: The last Alarm's data part 2 - self.handler_execution_times = [] + self.handler_triggered_execution_times = [] + self.handler_info_execution_times = [] @publish(["msg_id_dd_alarm_triggered", "alarm_states", "alarm_conditions", "alarm_data", Index: leahi_dialin/dd/modules/conductivity_sensors.py =================================================================== diff -u -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/dd/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) +++ leahi_dialin/dd/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -109,7 +109,8 @@ }, } - self.handler_execution_times = [] + self.handler_cond_execution_times = [] + self.handler_resist_execution_times = [] @publish(["msg_id_dd_conductivity_data", "dd_conductivity", "dd_conductivity_timestamp"]) def _handler_conductivity_sensors_sync(self, message, timestamp=0.0): @@ -132,7 +133,7 @@ decoder_list = sensor_list, message = message) self.dd_conductivity_timestamp = timestamp - self.handler_execution_times.append(time.perf_counter() - start) + self.handler_cond_execution_times.append(time.perf_counter() - start) @publish(["msg_id_dd_conductivity_resistance_data", "dd_conductivity_resistance", "dd_conductivity_resistance_timestamp"]) def _handler_conductivity_resistance_sync(self, message, timestamp=0.0): @@ -143,6 +144,7 @@ @param message: published DD conductivity sensor resistance data message @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D17_COND.name, dd_enum_repository.DDConductivityResistanceAttributes.RAW_RESISTANCE.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D27_COND.name, dd_enum_repository.DDConductivityResistanceAttributes.RAW_RESISTANCE.name, DataTypes.F32)) @@ -163,6 +165,7 @@ decoder_list = sensor_list, message = message) self.dd_conductivity_resistance_timestamp = timestamp + self.handler_resist_execution_times.append(time.perf_counter() - start) @publish(["msg_id_dd_conductivity_version_data", "dd_conductivity_resistance", "dd_conductivity_version_timestamp"]) def _handler_conductivity_version_sync(self, message, timestamp=0.0): Index: leahi_dialin/fp/modules/conductivity_sensors.py =================================================================== diff -u -r8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/fp/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 8ebb614a8c6e52b27d40ac5ef8b48aa22a4be73d) +++ leahi_dialin/fp/modules/conductivity_sensors.py (.../conductivity_sensors.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -73,6 +73,7 @@ } self.handler_execution_times = [] + self.handler_ro_execution_times = [] @publish(["msg_id_fp_conductivity_data", "fp_conductivity", "fp_conductivity_timestamp"]) def _handler_conductivity_sensors_sync(self, message, timestamp=0.0): @@ -92,6 +93,7 @@ decoder_list = sensor_list, message = message) self.fp_conductivity_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(["msg_id_ro_rejection_ratio_data", "ro_rejection_ratio", "ro_rejection_ratio_timestamp"]) @@ -115,7 +117,7 @@ decoder_list = sensor_list, message = message) self.ro_rejection_ratio_timestamp = timestamp - self.handler_execution_times.append(time.perf_counter() - start) + self.handler_ro_execution_times.append(time.perf_counter() - start) def cmd_conductivity_sensor_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/fp/modules/events.py =================================================================== diff -u -r8b54f610f3b5c0610bea0a481b892e8c70935765 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/fp/modules/events.py (.../events.py) (revision 8b54f610f3b5c0610bea0a481b892e8c70935765) +++ leahi_dialin/fp/modules/events.py (.../events.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -73,7 +73,9 @@ for event in fp_enum_repository.FPEventList: self._event_dictionary[fp_enum_repository.FPEventList(event).name] = [] + self.handler_execution_times = [] + def get_fp_nth_event(self, event_id, event_number=0): """ Returns the nth requested FP event @@ -141,6 +143,7 @@ @param message: published FP events data message @returns none """ + start = time.perf_counter() event_data_1 = 0 event_data_2 = 0 op_mode = 0 @@ -288,8 +291,8 @@ # Update event dictionary self._event_dictionary[event_enum.name].append(event_tuple) self.events_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) - @publish(["msg_id_fp_op_mode_data", "event_op_mode_timestamp", "op_mode", "sub_mode"]) def _handler_fp_op_mode_sync(self, message, timestamp=0.0): """ Index: leahi_dialin/td/modules/air_pump.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/air_pump.py (.../air_pump.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/air_pump.py (.../air_pump.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,7 +16,7 @@ # Module imports from logging import Logger - +import time # Project imports from leahi_dialin.common.constants import NO_RESET from leahi_dialin.common.generic_defs import DataTypes @@ -64,6 +64,7 @@ td_enum_repository.TDAirPumpAttributes.SCALAR_POWER.name: 0 } } + self.handler_execution_times = [] @publish(["msg_id_td_air_pump_data", "td_air_pump", "td_air_pump_timestamp"]) @@ -74,6 +75,7 @@ @param message: published air pump data message as: air pump state @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((td_enum_repository.TDAirPumpNames.H12_AIR_PUMP.name, td_enum_repository.TDAirPumpAttributes.STATE.name, DataTypes.U32)) sensor_list.append((td_enum_repository.TDAirPumpNames.H12_AIR_PUMP.name, td_enum_repository.TDAirPumpAttributes.DUTY_CYCLE.name, DataTypes.F32)) @@ -87,6 +89,7 @@ decoder_list = sensor_list, message = message) self.td_air_pump_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_air_pump_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/air_trap.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/air_trap.py (.../air_trap.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/air_trap.py (.../air_trap.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,7 +16,7 @@ # Module imports from logging import Logger - +import time # Project imports from leahi_dialin.common.constants import NO_RESET from leahi_dialin.common.generic_defs import DataTypes @@ -78,6 +78,7 @@ self.AirPumpLowerPowerLevel = 0 # TODO remove after testing self.AirPumpRaisePowerLevel = 0 + self.handler_execution_times = [] @publish(["msg_id_td_air_trap_data", @@ -93,6 +94,7 @@ @param message: published air trap data message @return: None """ + start = time.perf_counter() sensor_list_1 =[] sensor_list_1.append((td_enum_repository.TDAirTrapLevelSensorNames.H17_LEVEL.name, td_enum_repository.TDAirTrapLevelSensorAttributes.LEVEL.name, DataTypes.U32)) sensor_list_1.append((td_enum_repository.TDAirTrapLevelSensorNames.H16_LEVEL.name, td_enum_repository.TDAirTrapLevelSensorAttributes.LEVEL.name, DataTypes.U32)) @@ -118,6 +120,7 @@ message = message, start_from_byte = (len(sensor_list_1) + len(sensor_list_2)) * DataTypes.U32.size()) self.td_air_trap_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_air_trap_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/alarms.py =================================================================== diff -u -rc2f174da6eec4d8ce0e76a1926beb5ca1d9680ea -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/alarms.py (.../alarms.py) (revision c2f174da6eec4d8ce0e76a1926beb5ca1d9680ea) +++ leahi_dialin/td/modules/alarms.py (.../alarms.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -19,6 +19,7 @@ from logging import Logger import struct from enum import unique +import time # Project imports from leahi_dialin.common.alarm_defs import AlarmList @@ -154,6 +155,12 @@ # Alarm Table Properties self.alarm_table = {} #: The Alarm Table with Alarm Property details + self.handler_triggered_execution_times = [] + self.handler_clr_execution_times = [] + self.handler_info_execution_times = [] + self.handler_sts_execution_times = [] + self.handler_conclr_execution_times = [] + self.handler_prop_execution_times = [] def clear_dialin_alarms(self): @@ -177,6 +184,7 @@ @param message: published alarm status data message @return: none """ + start = time.perf_counter() msg_list = [] msg_list.append(('self.alarms_priority_state', DataTypes.U32)) msg_list.append(('self.alarm_top', DataTypes.U32)) @@ -187,6 +195,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.td_alarm_status_timestamp = timestamp + self.handler_sts_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_alarm_triggered", "alarm_states", "alarm_conditions", @@ -199,6 +208,7 @@ @param message: published TD alarm activation message @return: none """ + start = time.perf_counter() self.logger.debug("Alarm activated!") result = {} @@ -236,6 +246,7 @@ self.last_alarm_data_1 = result['data_1'] self.last_alarm_data_2 = result['data_2'] self.td_alarm_triggered_timestamp = timestamp + self.handler_triggered_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_alarm_cleared", "alarm_states", "alarm_conditions", "TD_alarm_cleared_timestamp"]) @@ -246,6 +257,7 @@ @param message: published TD alarm clear message @return: none """ + start = time.perf_counter() msg_list = [] msg_list.append(('alarm_id', DataTypes.U32)) @@ -254,6 +266,7 @@ self.alarm_states[result['alarm_id']] = False self.alarm_conditions[result['alarm_id']] = False self.td_alarm_cleared_timestamp = timestamp + self.handler_clr_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_alarm_condition_cleared", "alarm_conditions", "alarm_conditions", "td_alarm_clr_condition_timestamp"]) @@ -264,6 +277,7 @@ @param message: published TD alarm clear alarm condition message @return: none """ + start = time.perf_counter() msg_list = [] msg_list.append(('alarm_id', DataTypes.U32)) @@ -272,6 +286,7 @@ self.alarm_conditions[result['alarm_id']] = False self.td_alarm_clr_condition_timestamp = timestamp + self.handler_conclr_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_alarm_info_data", "alarm_volume", "alarm_audio_curr_hg", @@ -285,6 +300,7 @@ @param message: published TD alarm information message @return: none """ + start = time.perf_counter() msg_list = [] msg_list.append(('self.alarm_volume', DataTypes.U32)) msg_list.append(('self.alarm_audio_curr_hg', DataTypes.F32)) @@ -308,6 +324,7 @@ start_from_byte = len(msg_list) * DataTypes.U32.size()) self.td_alarm_information_timestamp = timestamp + self.handler_info_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_active_alarms_list_request_response", "accepted", "rejection_reason", "active_alarm_list"]) @@ -339,6 +356,7 @@ @param message: published TD alarm table properties message @return: none """ + start = time.perf_counter() properties_list = [] properties_list.append(('Priority', DataTypes.U16)) properties_list.append(('Rank', DataTypes.U16)) @@ -371,6 +389,7 @@ self.alarm_table[result['Alarm_Id']][prop] = result[prop] self.alarm_table_timestamp = timestamp + self.handler_clr_execution_times.append(time.perf_counter() - start) def cmd_alarm_status_broadcast_interval_override(self, ms: int = 250, reset: int = NO_RESET): Index: leahi_dialin/td/modules/blood_flow.py =================================================================== diff -u -rd4692c944b4b54a9bfd1b2ad178a37de854806ff -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/blood_flow.py (.../blood_flow.py) (revision d4692c944b4b54a9bfd1b2ad178a37de854806ff) +++ leahi_dialin/td/modules/blood_flow.py (.../blood_flow.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET, PUMP_CONTROL_MODE_CLOSED_LOOP @@ -62,6 +63,7 @@ td_enum_repository.TDBloodFlowMotorAttributes.ROTOR_HALL_STATE.name: 0, } + self.handler_execution_times = [] @publish(["msg_id_td_blood_pump_data", "h4_motor", "td_blood_flow_timestamp"]) @@ -73,6 +75,7 @@ @param message: published blood flow data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((td_enum_repository.TDBloodFlowMotorAttributes.SET_BLOOD_FLOW_RATE.name, DataTypes.S32)) sensor_list.append((td_enum_repository.TDBloodFlowMotorAttributes.MEASURED_BLOOD_FLOW_RATE.name, DataTypes.F32)) @@ -88,6 +91,7 @@ decoder_list = sensor_list, message = message) self.td_blood_flow_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_blood_flow_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/bubble_detector.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/bubble_detector.py (.../bubble_detector.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/bubble_detector.py (.../bubble_detector.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -70,6 +71,7 @@ td_enum_repository.TDAirBubbleDetectorAttributes.STATE.name: self.AIR_BUBBLE_NORMAL_STATE } } + self.handler_execution_times = [] @publish(["msg_id_td_bubbles_data", "h18_bubble_detector", "td_air_bubbles_timestamp"]) @@ -80,6 +82,7 @@ @param message: published air bubbles data message as: h18 bubble status, h18 bubble state @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((td_enum_repository.TDAirBubbleDetectorNames.H18_ADV.name, td_enum_repository.TDAirBubbleDetectorAttributes.STATUS.name, DataTypes.U32)) sensor_list.append((td_enum_repository.TDAirBubbleDetectorNames.H18_ADV.name, td_enum_repository.TDAirBubbleDetectorAttributes.STATE.name, DataTypes.U32)) @@ -88,6 +91,7 @@ decoder_list = sensor_list, message = message) self.td_air_bubbles_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_air_bubbles_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/buttons.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/buttons.py (.../buttons.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/buttons.py (.../buttons.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -17,6 +17,7 @@ # Module imports from logging import Logger import struct +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -51,6 +52,7 @@ self.td_power_off_timestamp = 0.0 #: The timestamp of the last message self.poweroff_timeout_expired = False #: The Power Off timeout value + self.handler_execution_times = [] def reset_poweroff_timeout_expired(self): @@ -70,6 +72,7 @@ @param message: The poweroff timeout occurred message string @return: None """ + start = time.perf_counter() if len(message["message"]) < 16: self.logger.debug("Poweroff message id detected, but was the wrong length.") return @@ -80,6 +83,7 @@ if len(mode) > 0: self.poweroff_timeout_expired = bool(mode[0]) self.td_power_off_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_off_button_override(self, state: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/ejector.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/ejector.py (.../ejector.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/ejector.py (.../ejector.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -60,6 +61,7 @@ td_enum_repository.TDEjectorAttributes.OPT_SNSR_ENGAGE.name: 0 # H24 Optical Sensor } } + self.handler_execution_times = [] @publish(["msg_id_td_ejector_data", "h5_motor", "td_ejector_timestamp"]) @@ -70,6 +72,7 @@ @param message: published ejector data message as: ejector state @return: None """ + start = time.perf_counter() sensor_list =[] sensor_list.append((td_enum_repository.TDEjectorNames.H5_MOTOR.name, td_enum_repository.TDEjectorAttributes.STATE.name, DataTypes.U32)) sensor_list.append((td_enum_repository.TDEjectorNames.H5_MOTOR.name, td_enum_repository.TDEjectorAttributes.SET_SPEED.name, DataTypes.F32)) @@ -80,6 +83,7 @@ decoder_list = sensor_list, message = message) self.td_ejector_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_ejector_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/events.py =================================================================== diff -u -r8b54f610f3b5c0610bea0a481b892e8c70935765 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/events.py (.../events.py) (revision 8b54f610f3b5c0610bea0a481b892e8c70935765) +++ leahi_dialin/td/modules/events.py (.../events.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -73,6 +73,7 @@ self._event_dictionary = dict() for event in td_enum_repository.TDEventList: self._event_dictionary[td_enum_repository.TDEventList(event).name] = [] + self.handler_execution_times = [] def get_td_nth_event(self, event_id, event_number=0): @@ -142,6 +143,7 @@ @param message: published TD events data message @returns none """ + start = time.perf_counter() event_data_1 = 0 event_data_2 = 0 op_mode = 0 @@ -283,6 +285,7 @@ # Update event dictionary self._event_dictionary[event_enum.name].append(event_tuple) self.events_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_op_mode_data", "event_op_mode_timestamp", "op_mode", "sub_mode"]) Index: leahi_dialin/td/modules/pressure_sensors.py =================================================================== diff -u -r60a4cdf7272161c64bb60aac93b26acf50465494 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 60a4cdf7272161c64bb60aac93b26acf50465494) +++ leahi_dialin/td/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -76,8 +77,8 @@ } self.pressure_limits_state = 0 #: Pressure limits state value + self.handler_execution_times = [] - @publish([ "msg_id_td_pressure_data", "td_pressure_sensors", @@ -96,7 +97,7 @@ @param message: published pressure & occlusion data message @return: none """ - + start = time.perf_counter() sensor_list_1 = [] sensor_list_1.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES.name, DataTypes.F32)) sensor_list_1.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES.name, DataTypes.F32)) @@ -129,6 +130,7 @@ start_from_byte = (len(sensor_list_1) + len(msg_list_1)) * DataTypes.F32.size()) self.td_pressure_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_pressure_sensors_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/switches.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/switches.py (.../switches.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/switches.py (.../switches.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -52,6 +53,7 @@ # The Switches data in dictionary format self.td_switches_status = { td_enum_repository.TDSwitchNames.H9_FRONT_DOOR.name: td_enum_repository.TDSwitchStatus.CLOSED.value } + self.handler_execution_times = [] @publish(["msg_id_td_switches_data", "td_switches_status", "td_switches_timestamp"]) @@ -62,13 +64,15 @@ @param message: published switches data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((td_enum_repository.TDSwitchNames.H9_FRONT_DOOR.name, DataTypes.U32)) self.process_into_dict(dict_to_update = self.td_switches_status, decoder_list = sensor_list, message = message) self.td_switches_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_switches_data_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/syringe_pump.py =================================================================== diff -u -r60a4cdf7272161c64bb60aac93b26acf50465494 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/syringe_pump.py (.../syringe_pump.py) (revision 60a4cdf7272161c64bb60aac93b26acf50465494) +++ leahi_dialin/td/modules/syringe_pump.py (.../syringe_pump.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -15,6 +15,7 @@ ############################################################################ import struct from logging import Logger +import time from leahi_dialin.common.constants import RESET, NO_RESET from leahi_dialin.common.generic_defs import DataTypes @@ -62,6 +63,7 @@ self.syringe_pump_adc_dac_status = 0 #: current syringe pump ADC & DAC status self.syringe_pump_adc_read_counter = 0 #: current syringe pump ADC read counter self.td_syringe_pump_timestamp = 0.0 #: The timestamp of the syringe pump message + self.handler_execution_times = [] @publish(["td_syringe_pump_timestamp", @@ -80,6 +82,7 @@ @param message: published syringe pump data message @return: None """ + start = time.perf_counter() msg_list = [] msg_list.append(('self.syringe_pump_state', DataTypes.U32)) msg_list.append(('self.heparin_state', DataTypes.U32)) @@ -100,8 +103,8 @@ message = message) self.td_syringe_pump_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) - def cmd_syringe_pump_operation(self, operation: int = SyringePumpOperations.SYRINGE_PUMP_OP_STOP.value, rate: float = 0.0, volume: float = 0.0) -> int: Index: leahi_dialin/td/modules/temperature_sensors.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/temperature_sensors.py (.../temperature_sensors.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/temperature_sensors.py (.../temperature_sensors.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -51,6 +52,7 @@ # The Temperature data in dictionary format self.td_temperatures_status = { td_enum_repository.TDTemperatureSensorNames.H23_TEMP.name: 0.0 } + self.handler_execution_times = [] @@ -66,13 +68,15 @@ @param message: published temperature data message @return: none """ + start = time.perf_counter() sensor_list =[] sensor_list.append((td_enum_repository.TDTemperatureSensorNames.H23_TEMP.name, DataTypes.F32)) self.process_into_dict(dict_to_update = self.td_temperatures_status, decoder_list = sensor_list, message = message) self.td_temperature_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_temperature_sensors_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/treatment.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/treatment.py (.../treatment.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/treatment.py (.../treatment.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -129,6 +130,7 @@ self.hep_bolus_vol = 0.0 #: The Heparin bolus volume self.uf_vol = 0.0 #: The Ultrafiltration volume self.tx_param_req_timestamp = 0 #: The timestamp of the latest Treatment Parameters Request message + self.handler_execution_times = [] @publish(["msg_id_td_treatment_param_ranges", "min_tx_time","max_tx_time","min_uf_volume","max_uf_volume", @@ -140,6 +142,7 @@ @param message: published treatment parameter range data message @return: none """ + start = time.perf_counter() msg_list = [] msg_list.append(['self.min_tx_time', DataTypes.U32]) msg_list.append(['self.max_tx_time', DataTypes.U32]) @@ -151,6 +154,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) self.tx_params_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) @publish(["msg_id_td_saline_bolus_data", "tgt_saline_volume","cum_saline_volume","bol_saline_volume", Index: leahi_dialin/td/modules/valves.py =================================================================== diff -u -r6c90336ac2cd8cf34ac620cff431a847d9ddf557 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/valves.py (.../valves.py) (revision 6c90336ac2cd8cf34ac620cff431a847d9ddf557) +++ leahi_dialin/td/modules/valves.py (.../valves.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -55,6 +56,7 @@ # The Valves data in dictionary format self.valves_status = {td_enum_repository.TDValveNames.H1_VALV.name: {}, td_enum_repository.TDValveNames.H19_VALV.name: {}} + self.handler_execution_times = [] @publish(["msg_id_td_valves_data", "valves_status", "td_valves_timestamp"]) @@ -66,6 +68,7 @@ @param message: published TD valves data message @returns none """ + start = time.perf_counter() msg_list = [] msg_list.append(('Valve', DataTypes.U32)) msg_list.append(('State', DataTypes.U32)) @@ -90,6 +93,7 @@ # Update the valves dictionary self.valves_status[result['Valve']] = result self.td_valves_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_valves_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: Index: leahi_dialin/td/modules/voltages.py =================================================================== diff -u -r1f2bf6d939eb4033dbedb7d7005494cc12fccbc6 -r8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf --- leahi_dialin/td/modules/voltages.py (.../voltages.py) (revision 1f2bf6d939eb4033dbedb7d7005494cc12fccbc6) +++ leahi_dialin/td/modules/voltages.py (.../voltages.py) (revision 8ad61b1fa2e79b11b1c3db53a3242662e8eb9adf) @@ -16,6 +16,7 @@ # Module imports from logging import Logger +import time # Project imports from leahi_dialin.common.constants import NO_RESET @@ -51,6 +52,7 @@ #: The Voltage data in list format self.monitored_voltages = [0.0] * td_enum_repository.TDMonitoredVoltages.NUM_OF_MONITORED_VOLTAGE_LINES.value + self.handler_execution_times = [] @publish(["msg_id_td_voltages_data", "monitored_voltages", "td_voltages_timestamp"]) @@ -62,6 +64,7 @@ @param message: published monitored voltages data message @return: none """ + start = time.perf_counter() sensor_list = [] sensor_list.append((td_enum_repository.TDMonitoredVoltages.MONITORED_LINE_1_2V.name, DataTypes.F32)) sensor_list.append((td_enum_repository.TDMonitoredVoltages.MONITORED_LINE_3_3V.name, DataTypes.F32)) @@ -79,6 +82,7 @@ decoder_list = sensor_list, message = message) self.td_voltages_timestamp = timestamp + self.handler_execution_times.append(time.perf_counter() - start) def cmd_monitored_voltages_broadcast_interval_override(self, ms: int = 1000, reset: int = NO_RESET) -> int: