Index: AlarmMapping.csv =================================================================== diff -u -r86e9dfbff50cb7e16fd94c16c1c818cef3b47eac -rb3a919eb1696079530d537fb2bf8b7e526178997 --- AlarmMapping.csv (.../AlarmMapping.csv) (revision 86e9dfbff50cb7e16fd94c16c1c818cef3b47eac) +++ AlarmMapping.csv (.../AlarmMapping.csv) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -8,25 +8,25 @@ 7,"HD RTC battery low." 8,"HD accelerometer failed POST." 9,"DG accelerometer failed POST." - 10,"Alarm ID available for use." - 11,"Alarm ID available for use." + 10,"HD blood leak sensor setting embedded mode failure." + 11,"HD dialysate temperature below target temperature." 12,"HD firmware image integrity POST test failed." 13,"DG firmware image integrity POST test failed." - 14,"HD blood flow invalid calibration." - 15,"HD dialysate flow invalid calibration." + 14,"DG invalid usage record CRC." + 15,"HD invalid usage record CRC." 16,"HD alarm audio failed POST." 17,"HD UI POST failed." 18,"DG load cells invalid calibration record." - 19,"DG flow sensors invalid calibration record." + 19,"HD dialysate temperature above target temperature." 20,"DG conductivity sensors invalid calibration record." 21,"DG drain line volume invalid calibration record." 22,"DG reservoirs invalid calibration record." 23,"DG acid concentrate calibration record." 24,"DG bicarb concentrate calibration record." 25,"DG accelerometer invalid calibration record." 26,"HD accelerometer invalid calibration record." - 27,"HD blood flow invalid calibration record." - 28,"HD dialyzer flow invalid calibration record." + 27,"HD blood leak sensor zero and self test sequence failed." + 28,"DG two wire sensors FPGA fault." 29,"HD heparin force sensor invalid calibration record." 30,"HD Software fault.\nSoftware found itself in an unexpected state." 31,"Blood pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." @@ -70,8 +70,8 @@ 69,"HD blood leak sensor invalid calibration record." 70,"HD arterial pressure self-test failure alarm." 71,"HD venous pressure self-test failure alarm." - 72,"HD blood flow meter status check self-test failure alarm." - 73,"HD dialysate flow meter status check self-test failure alarm." + 72,"HD No load cell data message receive at least once every 2 seconds." + 73,"HD No dialysate temperature data message receive at least once every 2 seconds." 74,"HD blood leak detector self-test transmit timeout." 75,"HD syringe pump self-test failure alarm." 76,"HD monitored voltage is out of range." @@ -101,10 +101,10 @@ 100,"HD no cartridge self-test timeout." 101,"HD dry self-test timeout." 102,"DG heat disinfect temperature gradient out of range." - 103,"HD non-volatile calibration group invalid record CRC." + 103,"HD invalid calibration CRC." 104,"Air trap level sensors reporting illegal combination of air/fluid." - 105,"DG non-volatile system group invalid record CRC." - 106,"Unused." + 105,"DG invalid calibration CRC." + 106,"DG dialysate flow sensor invalid calibration record." 107,"HD reports DG restarted fault." 108,"HD syringe pump ADC error." 109,"HD syringe pump volume check error." @@ -114,7 +114,7 @@ 113,"HD blood leak zero command fault." 114,"HD venous air bubble detector self-test failure." 115,"DG temperature sensor out of range." - 116,"DG temperature sensor ADC out of range." + 116,"DG temperature sensor ADC fault." 117,"DG CAN message not acked." 118,"DG RTC config error." 119,"DG RTC battery low error." @@ -142,7 +142,7 @@ 141,"Air trap fill timeout during treatment." 142,"Blood pump occlusion detected." 143,"DG dialysate temperature sensors out of range." - 144,"Alarm ID available for use." + 144,"DG RO flow sensor invalid calibration record." 145,"Concentrate conductivity after adding acid out of range alarm." 146,"DG RTC or timer accuracy failure." 147,"Wait for the DG to produce dialysate." @@ -153,8 +153,8 @@ 152,"Inlet water pressure in low range." 153,"HD prime completed high priority alarm." 154,"EEPROM operations (read, write, erase) failure." - 155,"Alarm ID available for use." - 156,"Alarm ID available for use." + 155,"HD No reservoirs data message receive at least once every 2 seconds." + 156,"HD No DG operation mode message receive at least once every 2 seconds." 157,"DG chemical disinfect prime acid line timeout." 158,"Inlet water temperature is in the low range." 159,"Dialysate inlet pump failed flow vs motor speed check." @@ -174,7 +174,7 @@ 173,"HD RTC configuration error." 174,"HD RTC or timer accuracy failure." 175,"HD pump direction status error." - 176,"HD active reservoir is full during treatment and DG not ready to switch reservoirs." + 176,"HD dialysate temperature out of high safety range." 177,"DG software fault.\nSoftware found itself in an unexpected state." 178,"HD communication timeout." 179,"DG FPGA communication down for too long." @@ -191,13 +191,13 @@ 190,"DG drain pump off fault." 191,"DG flow rate out of upper range." 192,"DG flow rate out of lower range." - 193,"." + 193,"HD dialysate temperature out of low safety range." 194,"DG RO pump duty cycle out of range." 195,"DG RO pump pressure out of range." - 196,"DG temperature sensor error flag fault." - 197,"DG temperature sensors ADC fault." - 198,"Alarm ID available for use." - 199,"." + 196,"DG temperature sensor error bit fault." + 197,"DG temperature sensors FPGA fault." + 198,"RO flow too low while primary heater is on." + 199,"Dialysate flow too low while trimmer heater is on." 200,"DG thermistors/sensors temperature out of range." 201,"HD pre-treatment mode wet self-test lc vs FMD failure." 202,"HD pre-treatment mode dry pressure normal self-test failure." @@ -206,7 +206,7 @@ 205,"Conductivity sensor fault." 206,"DG dialysate fill runs out of time." 207,"DG flow meter check failure alarm." - 208,"Alarm ID available for use." + 208,"HD venous pressure occlusion alarm." 209,"DG drain circulation line timeout." 210,"HD battery pack detected an error." 211,"Blood sitting too long warning (>4 min)." @@ -218,20 +218,20 @@ 217,"HD blood prime volume check failure." 218,"HD syringe detected alarm." 219,"HD syringe pump syringe removed alarm." - 220,"HD battery pack SOC is too low." + 220,"DG THd sensors FPGA fault." 221,"HD Saline bag is empty." 222,"HD dialysate temperature too high alarm." 223,"HD dialysate temperature too low alarm." 224,"Treatment stopped by user action." 225,"HD end of treatment warning." 226,"HD prime completed low priority alarm." 227,"HD prime out of time alarm." - 228,"HD time out on prime sub-mode purge air state." + 228,"HD time out on prime saline purge air state." 229,"HD prime dialysate dialyzer time out alarm." 230,"HD prime dialysate bypass time out alarm." 231,"HD pre-treatment mode dry pressure self-test failure." 232,"HD pre-treatment mode wet self-test LC vs LC failure." - 233,"Alarm ID available for use." + 233,"DG barometric sensor coefficients bad CRC." 234,"RTC (i.e read time) or RAM operations failure (read or write)." 235,"HD in treatment stopped sub-mode after rinseback completed (no escalation)." 236,"HD needs new cartridge to be installed." @@ -289,4 +289,16 @@ 288,"HD load cells primary/back up drift out of range." 289,"DG dialysate or concentrate caps not closed." 290,"DG flow too low while heater is on." - 291,"Total number of alarms." + 291,"HD processor is in Disinfect Flush mode." + 292,"HD processor is in Disinfect Heat mode." + 293,"HD processor is in Disinfect Chemical mode." + 294,"HD processor Disinfect Chemical mode instructions to user." + 295,"UI POST CloudSync failure." + 296,"DG TDi sensors FPGA fault." + 297,"DG TRo sensors FPGA fault." + 298,"DG baro sensor FPGA fault." + 299,"DG disinfect has been expired." + 300,"DG service time interval has elapsed." + 301,"DG primary heater power voltage out of range." + 302,"DG processor RAM error." + 303,"Total number of alarms." Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r2d0bacfbe1b70055247eb40743405a5f9acb15e3 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 2d0bacfbe1b70055247eb40743405a5f9acb15e3) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -325,6 +325,8 @@ // Treatment End Q_ENUM(Treatment_End_States) Q_ENUM(Requested_Treatment_End_User_Actions) + // Treatment Stop + Q_ENUM(Treatment_Stop_States) // Pre-Treatment SubMode Q_ENUM(HD_Pre_Treatment_Mode_States) // Pre-Treatment Water Sample @@ -340,6 +342,9 @@ Q_ENUM(HD_Pre_Treatment_Prime_States) // Pre-Treatment Recirculate Q_ENUM(HD_Pre_Treatment_Recirc_States) + // Post-Treatment SubMode + Q_ENUM(HD_Post_Treatment_Mode_States) + // Disinfection #include "DGDefs.h" Index: sources/gui/qml/pages/MainStack.qml =================================================================== diff -u -r3caffb866d4c84ac6282dcd36fc2d8f7cad9584d -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision 3caffb866d4c84ac6282dcd36fc2d8f7cad9584d) +++ sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -180,6 +180,8 @@ // Treatment Stop onTxStopChanged : { page( _treatmentStack , vtxStop )} onTsRecirculateChanged : { page( null , vtsRecirculate )} + onTsRecirculateDialysateChanged : { page( null , vtsRecirculateDialysate )} + onTsRecirculateBloodChanged : { page( null , vtsRecirculateBlood )} onTsRecirculateNoChanged : { page( null , vtsRecirculateNo )} } Index: sources/gui/qml/pages/pretreatment/PreTreatmentPrimeStack.qml =================================================================== diff -u -r301c0a2101eb9374145ae274c8d91460fc9a6a62 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/gui/qml/pages/pretreatment/PreTreatmentPrimeStack.qml (.../PreTreatmentPrimeStack.qml) (revision 301c0a2101eb9374145ae274c8d91460fc9a6a62) +++ sources/gui/qml/pages/pretreatment/PreTreatmentPrimeStack.qml (.../PreTreatmentPrimeStack.qml) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -111,7 +111,9 @@ onSelfTestDry_usedCartridgeEntered : { _preTreatmentDrySelfTest .checkList.setItem(0, vselfTestDry_usedCartridge )} onSelfTestDry_occlusionSensorsEntered : { _preTreatmentDrySelfTest .checkList.setItem(1, vselfTestDry_occlusionSensors )} onSelfTestDry_pressureSensorsSetupEntered : { _preTreatmentDrySelfTest .checkList.setItem(2, true )} - onSelfTestDry_pressureSensorsEntered : {} + onSelfTestDry_pressureSensorsPressurizedEntered : {} + onSelfTestDry_pressureSensorsDecayEntered : {} + onSelfTestDry_pressureSensorsStabilityEntered : {} onSelfTestDry_pressureSensorsNormalEntered : { _preTreatmentDrySelfTest .checkList.setItem(2, vselfTestDry_pressureSensorsNormal )} onSelfTestDry_syringePumpEntered : { _preTreatmentDrySelfTest .checkList.setItem(3, vselfTestDry_syringePump )} onSelfTestDry_stoppedEntered : {} Index: sources/model/hd/adjustment/treatment/MTreatmentAdjustUltrafiltrationStateResponse.cpp =================================================================== diff -u -r27cc308ff5113a9386899d3c8f8b29962a8498e1 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/model/hd/adjustment/treatment/MTreatmentAdjustUltrafiltrationStateResponse.cpp (.../MTreatmentAdjustUltrafiltrationStateResponse.cpp) (revision 27cc308ff5113a9386899d3c8f8b29962a8498e1) +++ sources/model/hd/adjustment/treatment/MTreatmentAdjustUltrafiltrationStateResponse.cpp (.../MTreatmentAdjustUltrafiltrationStateResponse.cpp) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -20,15 +20,15 @@ return { _data.mAccepted.value, _data.mReason .value, - _data.mState .value, + _data.mUFState .value, }; } bool MAdjustUltrafiltrationStateResponse::fromByteArray(const QByteArray &vByteArray, int *vIndex) { int index = 0; // message data start position if (GetValue(vByteArray, index, _data.mAccepted )) if (GetValue(vByteArray, index, _data.mReason )) - if (GetValue(vByteArray, index, _data.mState )) + if (GetValue(vByteArray, index, _data.mUFState )) return true ; else { if(vIndex) *vIndex = index; return false; } else { if(vIndex) *vIndex = index; return false; } @@ -44,6 +44,6 @@ Data data; data.mAccepted = _data.mAccepted.value; data.mReason = _data.mReason .value; - data.mState = _data.mState .value; + data.mUFState = _data.mUFState .value; return data; } Index: sources/model/hd/adjustment/treatment/MTreatmentAdjustUltrafiltrationStateResponse.h =================================================================== diff -u -r27cc308ff5113a9386899d3c8f8b29962a8498e1 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/model/hd/adjustment/treatment/MTreatmentAdjustUltrafiltrationStateResponse.h (.../MTreatmentAdjustUltrafiltrationStateResponse.h) (revision 27cc308ff5113a9386899d3c8f8b29962a8498e1) +++ sources/model/hd/adjustment/treatment/MTreatmentAdjustUltrafiltrationStateResponse.h (.../MTreatmentAdjustUltrafiltrationStateResponse.h) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -61,7 +61,7 @@ struct { Types::U32 mAccepted; Types::U32 mReason ; - Types::U32 mState ; + Types::U32 mUFState ; } _data; public: @@ -70,9 +70,9 @@ QString infoText () const override { return QString("AdjustUFState"); } struct Data { - bool mAccepted = 0; /*!< Accepted value of type quint32 extracted out */ - quint32 mReason = 0; /*!< Reason value of type quint32 extracted out */ - quint32 mState = 0; /*!< UF State value of type quint32 extracted out */ + bool mAccepted = 0; /*!< Accepted value of type quint32 extracted out */ + quint32 mReason = 0; /*!< Reason value of type quint32 extracted out */ + quint32 mUFState = 0; /*!< UF State value of type quint32 extracted out */ }; MAdjustUltrafiltrationStateResponse() { } Index: sources/model/hd/alarm/MAlarmMapping.cpp =================================================================== diff -u -rf9912fcd4b809e5a7fd59cf855488b6a762198d0 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/model/hd/alarm/MAlarmMapping.cpp (.../MAlarmMapping.cpp) (revision f9912fcd4b809e5a7fd59cf855488b6a762198d0) +++ sources/model/hd/alarm/MAlarmMapping.cpp (.../MAlarmMapping.cpp) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -7,7 +7,7 @@ * * \file MAlarmMapping.cpp * \author (last) Behrouz NematiPour - * \date (last) 01-Jul-2022 + * \date (last) 11-Sep-2022 * \author (original) Behrouz NematiPour * \date (original) 03-May-2021 * @@ -33,298 +33,310 @@ QString result; if ( vAlarmID == 0 ) return result; switch (vAlarmID) { -/*0000*/case GuiAlarmID::ALARM_ID_NO_ALARM : { result = QObject::tr("Indication for when no alarms is a possible situation." ); break; } /* 0*/ -/*0001*/case GuiAlarmID::ALARM_ID_STUCK_BUTTON_TEST_FAILED : { result = QObject::tr("Stuck button POST failure.\nStop or Off button detected to be pressed for at least 1 second during test shortly after power up." ); break; } /* 1*/ -/*0002*/case GuiAlarmID::ALARM_ID_HD_FPGA_POST_TEST_FAILED : { result = QObject::tr("HD FPGA POST failure." ); break; } /* 2*/ -/*0003*/case GuiAlarmID::ALARM_ID_DG_FPGA_POST_TEST_FAILED : { result = QObject::tr("DG FPGA POST failure." ); break; } /* 3*/ -/*0004*/case GuiAlarmID::ALARM_ID_HD_WATCHDOG_POST_TEST_FAILED : { result = QObject::tr("HD Watchdog POST failure." ); break; } /* 4*/ -/*0005*/case GuiAlarmID::ALARM_ID_DG_WATCHDOG_POST_TEST_FAILED : { result = QObject::tr("DG Watchdog POST failure." ); break; } /* 5*/ -/*0006*/case GuiAlarmID::ALARM_ID_UI_COMM_POST_FAILED : { result = QObject::tr("UI communication POST failure.\nUI failed to communicate within a reasonable time after power up." ); break; } /* 6*/ -/*0007*/case GuiAlarmID::ALARM_ID_HD_RTC_BATTERY_LOW : { result = QObject::tr("HD RTC battery low." ); break; } /* 7*/ -/*0008*/case GuiAlarmID::ALARM_ID_HD_ACCELEROMETER_SELF_TEST_FAILURE : { result = QObject::tr("HD accelerometer failed POST." ); break; } /* 8*/ -/*0009*/case GuiAlarmID::ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE : { result = QObject::tr("DG accelerometer failed POST." ); break; } /* 9*/ -/*0010*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_FAULT : { result = QObject::tr("Alarm ID available for use." ); break; } /* 10*/ -/*0011*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SELF_TEST_FAILURE : { result = QObject::tr("Alarm ID available for use." ); break; } /* 11*/ -/*0012*/case GuiAlarmID::ALARM_ID_HD_INTEGRITY_POST_TEST_FAILED : { result = QObject::tr("HD firmware image integrity POST test failed." ); break; } /* 12*/ -/*0013*/case GuiAlarmID::ALARM_ID_DG_INTEGRITY_POST_TEST_FAILED : { result = QObject::tr("DG firmware image integrity POST test failed." ); break; } /* 13*/ -/*0014*/case GuiAlarmID::ALARM_ID_HD_BLOOD_FLOW_INVALID_CALIBRATION : { result = QObject::tr("HD blood flow invalid calibration." ); break; } /* 14*/ -/*0015*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_FLOW_INVALID_CALIBRATION : { result = QObject::tr("HD dialysate flow invalid calibration." ); break; } /* 15*/ -/*0016*/case GuiAlarmID::ALARM_ID_HD_ALARM_AUDIO_SELF_TEST_FAILURE : { result = QObject::tr("HD alarm audio failed POST." ); break; } /* 16*/ -/*0017*/case GuiAlarmID::ALARM_ID_HD_UI_POST_FAILED : { result = QObject::tr("HD UI POST failed." ); break; } /* 17*/ -/*0018*/case GuiAlarmID::ALARM_ID_DG_PRESSURE_SENSORS_INVALID_CAL_RECORD : { result = QObject::tr("DG load cells invalid calibration record." ); break; } /* 18*/ -/*0019*/case GuiAlarmID::ALARM_ID_DG_FLOW_SENSORS_INVALID_CAL_RECORD : { result = QObject::tr("DG flow sensors invalid calibration record." ); break; } /* 19*/ -/*0020*/case GuiAlarmID::ALARM_ID_DG_COND_SENSORS_INVALID_CAL_RECORD : { result = QObject::tr("DG conductivity sensors invalid calibration record." ); break; } /* 20*/ -/*0021*/case GuiAlarmID::ALARM_ID_DG_DRAIN_LINE_VOLUME_INVALID_CAL_RECORD : { result = QObject::tr("DG drain line volume invalid calibration record." ); break; } /* 21*/ -/*0022*/case GuiAlarmID::ALARM_ID_DG_RESERVOIRS_INVALID_CAL_RECORD : { result = QObject::tr("DG reservoirs invalid calibration record." ); break; } /* 22*/ -/*0023*/case GuiAlarmID::ALARM_ID_DG_ACID_CONCENTRATE_INVALID_CAL_RECORD : { result = QObject::tr("DG acid concentrate calibration record." ); break; } /* 23*/ -/*0024*/case GuiAlarmID::ALARM_ID_DG_BICARB_CONCENTRATE_INVALID_CAL_RECORD : { result = QObject::tr("DG bicarb concentrate calibration record." ); break; } /* 24*/ -/*0025*/case GuiAlarmID::ALARM_ID_DG_ACCELEROMETERS_INVALID_CAL_RECORD : { result = QObject::tr("DG accelerometer invalid calibration record." ); break; } /* 25*/ -/*0026*/case GuiAlarmID::ALARM_ID_HD_ACCELEROMETERS_INVALID_CAL_RECORD : { result = QObject::tr("HD accelerometer invalid calibration record." ); break; } /* 26*/ -/*0027*/case GuiAlarmID::ALARM_ID_HD_BLOOD_FLOW_INVALID_CAL_RECORD : { result = QObject::tr("HD blood flow invalid calibration record." ); break; } /* 27*/ -/*0028*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_FLOW_INVALID_CAL_RECORD : { result = QObject::tr("HD dialyzer flow invalid calibration record." ); break; } /* 28*/ -/*0029*/case GuiAlarmID::ALARM_ID_HD_HEPARIN_FORCE_SENSOR_INVALID_CAL_RECORD : { result = QObject::tr("HD heparin force sensor invalid calibration record." ); break; } /* 29*/ -/*0030*/case GuiAlarmID::ALARM_ID_HD_SOFTWARE_FAULT : { result = QObject::tr("HD Software fault.\nSoftware found itself in an unexpected state." ); break; } /* 30*/ -/*0031*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_MC_CURRENT_CHECK : { result = QObject::tr("Blood pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." ); break; } /* 31*/ -/*0032*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_OFF_CHECK : { result = QObject::tr("Blood pump failed motor off check.\nMeasured speed while commanded off." ); break; } /* 32*/ -/*0033*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_MC_DIRECTION_CHECK : { result = QObject::tr("Blood pump failed motor direction check.\nMeasured vs commanded." ); break; } /* 33*/ -/*0034*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_CHECK : { result = QObject::tr("Blood pump failed rotor speed check.\nMismatch with rotor and motor speeds." ); break; } /* 34*/ -/*0035*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_MC_CURRENT_CHECK : { result = QObject::tr("Dialysis inlet pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." ); break; } /* 35*/ -/*0036*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_OFF_CHECK : { result = QObject::tr("Dialysis inlet pump failed motor off check.\nMeasured speed while commanded off." ); break; } /* 36*/ -/*0037*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_MC_DIRECTION_CHECK : { result = QObject::tr("Dialysis inlet pump failed motor direction check.\nMeasured vs commanded." ); break; } /* 37*/ -/*0038*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_ROTOR_SPEED_CHECK : { result = QObject::tr("Dialysis inlet pump failed rotor speed check.\nMismatch with rotor and motor speeds." ); break; } /* 38*/ -/*0039*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_MC_CURRENT_CHECK : { result = QObject::tr("Dialysis outlet pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." ); break; } /* 39*/ -/*0040*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_OFF_CHECK : { result = QObject::tr("Dialysis outlet pump failed motor off check.\nMeasured speed while commanded off." ); break; } /* 40*/ -/*0041*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_MC_DIRECTION_CHECK : { result = QObject::tr("Dialysis outlet pump failed motor direction check.\nMeasured vs commanded." ); break; } /* 41*/ -/*0042*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_ROTOR_SPEED_CHECK : { result = QObject::tr("Dialysis outlet pump failed rotor speed check.\nMismatch with rotor and motor speeds." ); break; } /* 42*/ -/*0043*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SELF_TEST_FAULT : { result = QObject::tr("HD blood leak self test fault." ); break; } /* 43*/ -/*0044*/case GuiAlarmID::ALARM_ID_UI_COMM_TIMEOUT : { result = QObject::tr("User interface communication timeout." ); break; } /* 44*/ -/*0045*/case GuiAlarmID::ALARM_ID_HD_COMM_TOO_MANY_BAD_CRCS : { result = QObject::tr("HD too many bad communications CRC." ); break; } /* 45*/ -/*0046*/case GuiAlarmID::ALARM_ID_CAN_MESSAGE_NOT_ACKED : { result = QObject::tr("System message that required acknowledgment was not acknowledged." ); break; } /* 46*/ -/*0047*/case GuiAlarmID::ALARM_ID_UF_RATE_TOO_HIGH_ERROR : { result = QObject::tr("Ultrafiltration rate is too high error during treatment." ); break; } /* 47*/ -/*0048*/case GuiAlarmID::ALARM_ID_UF_VOLUME_ACCURACY_ERROR : { result = QObject::tr("Ultrafiltration volume accuracy error during treatment." ); break; } /* 48*/ -/*0049*/case GuiAlarmID::ALARM_ID_HD_FPGA_COMM_TIMEOUT : { result = QObject::tr("HD FPGA communication down for too long." ); break; } /* 49*/ -/*0050*/case GuiAlarmID::ALARM_ID_VALVE_CONTROL_FAILURE : { result = QObject::tr("FPGA not accepting commanded valve states." ); break; } /* 50*/ -/*0051*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_MOTOR_SPEED_CHECK : { result = QObject::tr("Blood pump failed motor speed check.\nMeasured vs commanded." ); break; } /* 51*/ -/*0052*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_MOTOR_SPEED_CHECK : { result = QObject::tr("Dialysate inlet pump failed motor speed check.\nMeasured vs commanded." ); break; } /* 52*/ -/*0053*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_MOTOR_SPEED_CHECK : { result = QObject::tr("Dialysate outlet pump failed motor speed check.\nMeasured vs commanded." ); break; } /* 53*/ -/*0054*/case GuiAlarmID::ALARM_ID_HD_CRITICAL_DATA_ERROR : { result = QObject::tr("HD critical data integrity check failed." ); break; } /* 54*/ -/*0055*/case GuiAlarmID::ALARM_ID_DG_CRITICAL_DATA_ERROR : { result = QObject::tr("DG critical data integrity check failed." ); break; } /* 55*/ -/*0056*/case GuiAlarmID::ALARM_ID_HD_ACCELEROMETER_FAILURE : { result = QObject::tr("HD accelerometer error (no readings or FPGA reports error)." ); break; } /* 56*/ -/*0057*/case GuiAlarmID::ALARM_ID_DG_ACCELEROMETER_FAILURE : { result = QObject::tr("DG accelerometer error (no readings or FPGA reports error)." ); break; } /* 57*/ -/*0058*/case GuiAlarmID::ALARM_ID_HD_VALVE_HOMING_FAILED : { result = QObject::tr("HD valve homing failed." ); break; } /* 58*/ -/*0059*/case GuiAlarmID::ALARM_ID_HD_VALVE_TRANSITION_TIMEOUT : { result = QObject::tr("HD valve transition time out." ); break; } /* 59*/ -/*0060*/case GuiAlarmID::ALARM_ID_HD_VALVE_NOT_FUNCTIONAL : { result = QObject::tr("HD valve not functional." ); break; } /* 60*/ -/*0061*/case GuiAlarmID::ALARM_ID_HD_VALVE_CURRENT_OUT_OF_RANGE : { result = QObject::tr("HD valve current out of range." ); break; } /* 61*/ -/*0062*/case GuiAlarmID::ALARM_ID_HD_VALVE_POSITION_OUT_OF_RANGE : { result = QObject::tr("HD valve position out of target." ); break; } /* 62*/ -/*0063*/case GuiAlarmID::ALARM_ID_ARTERIAL_PRESSURE_SENSOR_FAULT : { result = QObject::tr("FPGA reports failure reading arterial pressure sensor." ); break; } /* 63*/ -/*0064*/case GuiAlarmID::ALARM_ID_VENOUS_PRESSURE_SENSOR_FAULT : { result = QObject::tr("FPGA reports failure reading venous pressure sensor." ); break; } /* 64*/ -/*0065*/case GuiAlarmID::ALARM_ID_DG_COMMAND_INVALID_PARAMETER_FAULT : { result = QObject::tr("HD requests DG command with invalid parameter fault." ); break; } /* 65*/ -/*0066*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SENSOR_SET_POINT_SET_FAILURE : { result = QObject::tr("HD blood leak sensor set point set failure." ); break; } /* 66*/ -/*0067*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_SELF_TEST_FAILURE : { result = QObject::tr("HD blood pump occlusion self-test failure alarm." ); break; } /* 67*/ -/*0068*/case GuiAlarmID::ALARM_ID_HD_ACTIVE_RESERVOIR_RECIRCULATION_OUT_OF_RANGE : { result = QObject::tr("HD active reservoir recirculation out of range." ); break; } /* 68*/ -/*0069*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_INVALID_CAL_RECORD : { result = QObject::tr("HD blood leak sensor invalid calibration record." ); break; } /* 69*/ -/*0070*/case GuiAlarmID::ALARM_ID_HD_ARTERIAL_PRESSURE_SELF_TEST_FAILURE : { result = QObject::tr("HD arterial pressure self-test failure alarm." ); break; } /* 70*/ -/*0071*/case GuiAlarmID::ALARM_ID_HD_VENOUS_PRESSURE_SELF_TEST_FAILURE : { result = QObject::tr("HD venous pressure self-test failure alarm." ); break; } /* 71*/ -/*0072*/case GuiAlarmID::ALARM_ID_HD_BLOOD_FLOW_STATUS_SELF_TEST_FAILURE : { result = QObject::tr("HD blood flow meter status check self-test failure alarm." ); break; } /* 72*/ -/*0073*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_FLOW_STATUS_SELF_TEST_FAILURE : { result = QObject::tr("HD dialysate flow meter status check self-test failure alarm." ); break; } /* 73*/ -/*0074*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SELF_TEST_SEND_TIMEOUT : { result = QObject::tr("HD blood leak detector self-test transmit timeout." ); break; } /* 74*/ -/*0075*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SELF_TEST_FAILURE : { result = QObject::tr("HD syringe pump self-test failure alarm." ); break; } /* 75*/ -/*0076*/case GuiAlarmID::ALARM_ID_HD_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("HD monitored voltage is out of range." ); break; } /* 76*/ -/*0077*/case GuiAlarmID::ALARM_ID_DG_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG monitored voltage is out of range." ); break; } /* 77*/ -/*0078*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_ENCODER_DIRECTION_ERROR : { result = QObject::tr("HD syringe pump direction (from encoder) error." ); break; } /* 78*/ -/*0079*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_CONTROLLER_DIRECTION_ERROR : { result = QObject::tr("HD syringe pump direction (from controller) error." ); break; } /* 79*/ -/*0080*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_FAULT : { result = QObject::tr("HD syringe pump fault reported by FPGA." ); break; } /* 80*/ -/*0081*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_OVER_TRAVEL_ERROR : { result = QObject::tr("HD syringe pump over travel error." ); break; } /* 81*/ -/*0082*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_DAC_WRITE_ERROR : { result = QObject::tr("HD syringe pump DAC write failure." ); break; } /* 82*/ -/*0083*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_RUNNING_WHILE_BP_OFF_ERROR : { result = QObject::tr("HD syringe pump is running while the BP is off." ); break; } /* 83*/ -/*0084*/case GuiAlarmID::ALARM_ID_HD_VENOUS_PRESSURE_READ_TIMEOUT_ERROR : { result = QObject::tr("HD venous pressure sensor not being read." ); break; } /* 84*/ -/*0085*/case GuiAlarmID::ALARM_ID_PUMP_TRACK_LATCH_OPENED : { result = QObject::tr("HD pump track latch opened alarm." ); break; } /* 85*/ -/*0086*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_READ_TIMEOUT_ERROR : { result = QObject::tr("HD BP occlusion sensor not being read." ); break; } /* 86*/ -/*0087*/case GuiAlarmID::ALARM_ID_DG_HEATING_INVALID_CAL_RECORD : { result = QObject::tr("DG heating invalid calibration record." ); break; } /* 87*/ -/*0088*/case GuiAlarmID::ALARM_ID_DG_CONC_PUMP_HALL_SENSOR_OUT_OF_RANGE : { result = QObject::tr("DG concentrate pumps hall sensor out of range." ); break; } /* 88*/ -/*0089*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_SENSOR_ERROR : { result = QObject::tr("HD BP occlusion sensor error." ); break; } /* 89*/ -/*0090*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_FPGA_READ_ERROR : { result = QObject::tr("DG load cells FPGA read error." ); break; } /* 90*/ -/*0091*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_FLOW_DATA_NOT_RECEIVE : { result = QObject::tr("HD No dialysate flow data receive in the last 3 seconds." ); break; } /* 91*/ -/*0092*/case GuiAlarmID::ALARM_ID_DG_CONDUCTIVITY_SENSOR_BAD_STATUS : { result = QObject::tr("DG conductivity sensor bad status." ); break; } /* 92*/ -/*0093*/case GuiAlarmID::ALARM_ID_DG_OUTLET_PRIMARY_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("DG outlet primary conductivity out of range." ); break; } /* 93*/ -/*0094*/case GuiAlarmID::ALARM_ID_DG_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("DG pressure out of range." ); break; } /* 94*/ -/*0095*/case GuiAlarmID::ALARM_ID_DG_WATCHDOG_EXPIRED : { result = QObject::tr("DG watchdog expired." ); break; } /* 95*/ -/*0096*/case GuiAlarmID::ALARM_ID_INLET_WATER_TEMPERATURE_IN_HIGH_RANGE : { result = QObject::tr("Inlet water temperature in high range." ); break; } /* 96*/ -/*0097*/case GuiAlarmID::ALARM_ID_FILL_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("Fill conductivity out of range." ); break; } /* 97*/ -/*0098*/case GuiAlarmID::ALARM_ID_HD_BATTERY_COMM_FAULT : { result = QObject::tr("HD battery communication fault." ); break; } /* 98*/ -/*0099*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_STALL : { result = QObject::tr("HD syringe pump stall alarm." ); break; } /* 99*/ -/*0100*/case GuiAlarmID::ALARM_ID_HD_NO_CART_SELF_TEST_TIMEOUT : { result = QObject::tr("HD no cartridge self-test timeout." ); break; } /* 100*/ -/*0101*/case GuiAlarmID::ALARM_ID_HD_DRY_SELF_TEST_TIMEOUT : { result = QObject::tr("HD dry self-test timeout." ); break; } /* 101*/ -/*0102*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_TEMP_GRAD_OUT_OF_RANAGE : { result = QObject::tr("DG heat disinfect temperature gradient out of range." ); break; } /* 102*/ -/*0103*/case GuiAlarmID::ALARM_ID_HD_NVDATAMGMT_CAL_GROUP_RECORD_CRC_INVALID : { result = QObject::tr("HD non-volatile calibration group invalid record CRC." ); break; } /* 103*/ -/*0104*/case GuiAlarmID::ALARM_ID_AIR_TRAP_ILLEGAL_LEVELS : { result = QObject::tr("Air trap level sensors reporting illegal combination of air/fluid." ); break; } /* 104*/ -/*0105*/case GuiAlarmID::ALARM_ID_DG_NVDATAMGMT_CAL_GROUP_RECORD_CRC_INVALID : { result = QObject::tr("DG non-volatile system group invalid record CRC." ); break; } /* 105*/ -/*0106*/case GuiAlarmID::ALARM_ID__AVAILABLE_12 : { result = QObject::tr("Unused." ); break; } /* 106*/ -/*0107*/case GuiAlarmID::ALARM_ID_DG_RESTARTED_FAULT : { result = QObject::tr("HD reports DG restarted fault." ); break; } /* 107*/ -/*0108*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_ADC_ERROR : { result = QObject::tr("HD syringe pump ADC error." ); break; } /* 108*/ -/*0109*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_VOLUME_ERROR : { result = QObject::tr("HD syringe pump volume check error." ); break; } /* 109*/ -/*0110*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SPEED_ERROR : { result = QObject::tr("HD syringe pump speed check error." ); break; } /* 110*/ -/*0111*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_NOT_STOPPED_ERROR : { result = QObject::tr("HD syringe pump not stopped in off state error." ); break; } /* 111*/ -/*0112*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_ZERO_CMD_SEND_TIMEOUT : { result = QObject::tr("HD blood leak zero command transmit timeout." ); break; } /* 112*/ -/*0113*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_ZERO_CMD_FAULT : { result = QObject::tr("HD blood leak zero command fault." ); break; } /* 113*/ -/*0114*/case GuiAlarmID::ALARM_ID_HD_VENOUS_BUBBLE_SELF_TEST_FAILURE : { result = QObject::tr("HD venous air bubble detector self-test failure." ); break; } /* 114*/ -/*0115*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSOR_OUT_OF_RANGE : { result = QObject::tr("DG temperature sensor out of range." ); break; } /* 115*/ -/*0116*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSOR_ADC_OUT_OF_RANGE : { result = QObject::tr("DG temperature sensor ADC out of range." ); break; } /* 116*/ -/*0117*/case GuiAlarmID::ALARM_ID_DG_CAN_MESSAGE_NOT_ACKED : { result = QObject::tr("DG CAN message not acked." ); break; } /* 117*/ -/*0118*/case GuiAlarmID::ALARM_ID_DG_RTC_CONFIG_ERROR : { result = QObject::tr("DG RTC config error." ); break; } /* 118*/ -/*0119*/case GuiAlarmID::ALARM_ID_DG_RTC_BATTERY_LOW : { result = QObject::tr("DG RTC battery low error." ); break; } /* 119*/ -/*0120*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_WET_PRIME_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode wet self-test prime check failure." ); break; } /* 120*/ -/*0121*/case GuiAlarmID::ALARM_ID_DG_MAIN_PRIMARY_HEATER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG main primary heater voltage out of range." ); break; } /* 121*/ -/*0122*/case GuiAlarmID::ALARM_ID_DG_SMALL_PRIMARY_HEATER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG small primary heater voltage out of range." ); break; } /* 122*/ -/*0123*/case GuiAlarmID::ALARM_ID_DG_TRIMMER_HEATER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG trimmer heater voltage out of range." ); break; } /* 123*/ -/*0124*/case GuiAlarmID::ALARM_ID_END_OF_TREATMENT_HIGH : { result = QObject::tr("HD end of treatment alarm (high priority)." ); break; } /* 124*/ -/*0125*/case GuiAlarmID::ALARM_ID_TREATMENT_STOPPED_NO_RINSEBACK : { result = QObject::tr("Blood sitting too long after treatment stopped by user alarm (>5 min)." ); break; } /* 125*/ -/*0126*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_DETECTED : { result = QObject::tr("HD blood leak detected alarm." ); break; } /* 126*/ -/*0127*/case GuiAlarmID::ALARM_ID_VENOUS_PRESSURE_LOW : { result = QObject::tr("Venous pressure too low during treatment." ); break; } /* 127*/ -/*0128*/case GuiAlarmID::ALARM_ID_HD_VENOUS_BUBBLE_DETECTED : { result = QObject::tr("HD venous air bubble detected alarm." ); break; } /* 128*/ -/*0129*/case GuiAlarmID::ALARM_ID_HD_VENOUS_BUBBLE_DETECTED_RINSEBACK : { result = QObject::tr("HD venous air bubble detected rinseback alarm." ); break; } /* 129*/ -/*0130*/case GuiAlarmID::ALARM_ID_VENOUS_PRESSURE_HIGH : { result = QObject::tr("Venous pressure too high during treatment." ); break; } /* 130*/ -/*0131*/case GuiAlarmID::ALARM_ID_ARTERIAL_PRESSURE_LOW : { result = QObject::tr("Arterial pressure too low during treatment." ); break; } /* 131*/ -/*0132*/case GuiAlarmID::ALARM_ID_ARTERIAL_PRESSURE_HIGH : { result = QObject::tr("Arterial pressure too high during treatment." ); break; } /* 132*/ -/*0133*/case GuiAlarmID::ALARM_ID_DG_FLUID_LEAK_DETECTED : { result = QObject::tr("DG fluid leak detected alarm." ); break; } /* 133*/ -/*0134*/case GuiAlarmID::ALARM_ID_HD_FLUID_LEAK_DETECTED : { result = QObject::tr("HD fluid leak detected alarm." ); break; } /* 134*/ -/*0135*/case GuiAlarmID::ALARM_ID_HD_SHOCK : { result = QObject::tr("HD experienced large acceleration." ); break; } /* 135*/ -/*0136*/case GuiAlarmID::ALARM_ID_DG_SHOCK : { result = QObject::tr("DG experienced large acceleration." ); break; } /* 136*/ -/*0137*/case GuiAlarmID::ALARM_ID_HD_EXCESSIVE_TILT : { result = QObject::tr("HD tilt exceeds maximum." ); break; } /* 137*/ -/*0138*/case GuiAlarmID::ALARM_ID_DG_EXCESSIVE_TILT : { result = QObject::tr("DG tilt exceeds maximum." ); break; } /* 138*/ -/*0139*/case GuiAlarmID::ALARM_ID_HD_AC_POWER_LOST : { result = QObject::tr("HD AC power lost alarm." ); break; } /* 139*/ -/*0140*/case GuiAlarmID::ALARM_ID_DG_COMM_TIMEOUT : { result = QObject::tr("Dialysate generator communication timeout." ); break; } /* 140*/ -/*0141*/case GuiAlarmID::ALARM_ID_AIR_TRAP_FILL_DURING_TREATMENT : { result = QObject::tr("Air trap fill timeout during treatment." ); break; } /* 141*/ -/*0142*/case GuiAlarmID::ALARM_ID_OCCLUSION_BLOOD_PUMP : { result = QObject::tr("Blood pump occlusion detected." ); break; } /* 142*/ -/*0143*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_TEMPERATURE_SENSORS_OUT_OF_RANGE : { result = QObject::tr("DG dialysate temperature sensors out of range." ); break; } /* 143*/ -/*0144*/case GuiAlarmID::ALARM_ID__AVAILABLE_5 : { result = QObject::tr("Alarm ID available for use." ); break; } /* 144*/ -/*0145*/case GuiAlarmID::ALARM_ID_ACID_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("Concentrate conductivity after adding acid out of range alarm." ); break; } /* 145*/ -/*0146*/case GuiAlarmID::ALARM_ID_DG_RTC_OR_TIMER_ACCURACY_FAILURE : { result = QObject::tr("DG RTC or timer accuracy failure." ); break; } /* 146*/ -/*0147*/case GuiAlarmID::ALARM_ID_CREATING_DIALYSATE_PLEASE_WAIT : { result = QObject::tr("Wait for the DG to produce dialysate." ); break; } /* 147*/ -/*0148*/case GuiAlarmID::ALARM_ID_INLET_WATER_HIGH_TEMPERATURE : { result = QObject::tr("Inlet water temperature too high." ); break; } /* 148*/ -/*0149*/case GuiAlarmID::ALARM_ID_HD_WATCHDOG_EXPIRED : { result = QObject::tr("HD watchdog expired." ); break; } /* 149*/ -/*0150*/case GuiAlarmID::ALARM_ID_INLET_WATER_CONDUCTIVITY_IN_HIGH_RANGE : { result = QObject::tr("Inlet water conductivity in high range." ); break; } /* 150*/ -/*0151*/case GuiAlarmID::ALARM_ID_INLET_WATER_CONDUCTIVITY_IN_LOW_RANGE : { result = QObject::tr("Inlet water conductivity in low range." ); break; } /* 151*/ -/*0152*/case GuiAlarmID::ALARM_ID_INLET_WATER_PRESSURE_IN_LOW_RANGE : { result = QObject::tr("Inlet water pressure in low range." ); break; } /* 152*/ -/*0153*/case GuiAlarmID::ALARM_ID_PRIME_COMPLETED_HIGH : { result = QObject::tr("HD prime completed high priority alarm." ); break; } /* 153*/ -/*0154*/case GuiAlarmID::ALARM_ID_NVDATA_EEPROM_OPS_FAILURE : { result = QObject::tr("EEPROM operations (read, write, erase) failure." ); break; } /* 154*/ -/*0155*/case GuiAlarmID::ALARM_ID__AVAILABLE_6 : { result = QObject::tr("Alarm ID available for use." ); break; } /* 155*/ -/*0156*/case GuiAlarmID::ALARM_ID__AVAILABLE_20 : { result = QObject::tr("Alarm ID available for use." ); break; } /* 156*/ -/*0157*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_PRIME_ACID_LINE_TIME_OUT : { result = QObject::tr("DG chemical disinfect prime acid line timeout." ); break; } /* 157*/ -/*0158*/case GuiAlarmID::ALARM_ID_INLET_WATER_TEMPERATURE_IN_LOW_RANGE : { result = QObject::tr("Inlet water temperature is in the low range." ); break; } /* 158*/ -/*0159*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_FLOW_VS_MOTOR_SPEED_CHECK : { result = QObject::tr("Dialysate inlet pump failed flow vs motor speed check." ); break; } /* 159*/ -/*0160*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH : { result = QObject::tr("Blood pump rotor speed too high." ); break; } /* 160*/ -/*0161*/case GuiAlarmID::ALARM_ID_DG_COMM_TOO_MANY_BAD_CRCS : { result = QObject::tr("DG comm too many bad CRCs." ); break; } /* 161*/ -/*0162*/case GuiAlarmID::ALARM_ID_DG_FPGA_CLOCK_SPEED_CHECK_FAILURE : { result = QObject::tr("DG FPGA clock speed check failure." ); break; } /* 162*/ -/*0163*/case GuiAlarmID::ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_1_ALARM : { result = QObject::tr("HD sees primary load cell for reservoir 1 change too much too fast." ); break; } /* 163*/ -/*0164*/case GuiAlarmID::ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_2_ALARM : { result = QObject::tr("HD sees primary load cell for reservoir 2 change too much too fast." ); break; } /* 164*/ -/*0165*/case GuiAlarmID::ALARM_ID_TREATMENT_RINSEBACK_TIMEOUT_ALARM : { result = QObject::tr("HD in treatment rinseback operation timeout." ); break; } /* 165*/ -/*0166*/case GuiAlarmID::ALARM_ID_TREATMENT_RECIRC_TIMEOUT_ALARM : { result = QObject::tr("HD in treatment re-circ sub-mode for too long." ); break; } /* 166*/ -/*0167*/case GuiAlarmID::ALARM_ID_CARTRIDGE_DOOR_OPENED : { result = QObject::tr("HD cartridge door opened alarm." ); break; } /* 167*/ -/*0168*/case GuiAlarmID::ALARM_ID_HD_ACTIVE_RESERVOIR_DEPLETION_TIME_OUT : { result = QObject::tr("HD active reservoir depletion timeout." ); break; } /* 168*/ -/*0169*/case GuiAlarmID::ALARM_ID_DIALYSATE_FLOW_RATE_OUT_OF_RANGE : { result = QObject::tr("Dialysate flow rate out of range." ); break; } /* 169*/ -/*0170*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SYRINGE_EMPTY : { result = QObject::tr("HD syringe empty alarm." ); break; } /* 170*/ -/*0171*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_OCCLUSION : { result = QObject::tr("HD syringe pump occlusion alarm." ); break; } /* 171*/ -/*0172*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_NOT_ENOUGH_HEPARIN_ALARM : { result = QObject::tr("HD syringe pump not enough Heparin alarm." ); break; } /* 172*/ -/*0173*/case GuiAlarmID::ALARM_ID_HD_RTC_CONFIG_ERROR : { result = QObject::tr("HD RTC configuration error." ); break; } /* 173*/ -/*0174*/case GuiAlarmID::ALARM_ID_HD_RTC_OR_TIMER_ACCURACY_FAILURE : { result = QObject::tr("HD RTC or timer accuracy failure." ); break; } /* 174*/ -/*0175*/case GuiAlarmID::ALARM_ID_HD_PUMP_DIRECTION_STATUS_ERROR : { result = QObject::tr("HD pump direction status error." ); break; } /* 175*/ -/*0176*/case GuiAlarmID::ALARM_ID_HD_RESERVOIR_FULL_AND_DG_NOT_READY_TO_SWITCH : { result = QObject::tr("HD active reservoir is full during treatment and DG not ready to switch reservoirs." ); break; } /* 176*/ -/*0177*/case GuiAlarmID::ALARM_ID_DG_SOFTWARE_FAULT : { result = QObject::tr("DG software fault.\nSoftware found itself in an unexpected state." ); break; } /* 177*/ -/*0178*/case GuiAlarmID::ALARM_ID_HD_COMM_TIMEOUT : { result = QObject::tr("HD communication timeout." ); break; } /* 178*/ -/*0179*/case GuiAlarmID::ALARM_ID_DG_FPGA_COMM_TIMEOUT : { result = QObject::tr("DG FPGA communication down for too long." ); break; } /* 179*/ -/*0180*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_ADC_ERROR : { result = QObject::tr("DG load cell ADC error." ); break; } /* 180*/ -/*0181*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELLS_TARE_WEIGHT_OUT_OF_RANGE : { result = QObject::tr("DG load cells weight out of range for tare." ); break; } /* 181*/ -/*0182*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELLS_INVALID_CAL_RECORD : { result = QObject::tr("DG load cells invalid calibration." ); break; } /* 182*/ -/*0183*/case GuiAlarmID::ALARM_ID_DG_INVALID_LOAD_CELL_VALUE : { result = QObject::tr("DG invalid load cell value." ); break; } /* 183*/ -/*0184*/case GuiAlarmID::ALARM_ID_UV_REACTOR_NOT_HEALTHY : { result = QObject::tr("Inlet or Outlet UV reactor not healthy." ); break; } /* 184*/ -/*0185*/case GuiAlarmID::ALARM_ID_DG_FAN_RPM_OUT_OF_RANGE : { result = QObject::tr("DG fan RPM out of range." ); break; } /* 185*/ -/*0186*/case GuiAlarmID::ALARM_ID_DG_CONCENTRATE_PUMP_FAULT : { result = QObject::tr("DG concentrate pump fault." ); break; } /* 186*/ -/*0187*/case GuiAlarmID::ALARM_ID_CP1_SPEED_CONTROL_ERROR : { result = QObject::tr("DG concentrate pump CP1 speed control error." ); break; } /* 187*/ -/*0188*/case GuiAlarmID::ALARM_ID_CP2_SPEED_CONTROL_ERROR : { result = QObject::tr("DG concentrate pump CP2 speed control error." ); break; } /* 188*/ -/*0189*/case GuiAlarmID::ALARM_ID_DRAIN_PUMP_RPM_OUT_OF_RANGE : { result = QObject::tr("DG drain pump RPM out of range." ); break; } /* 189*/ -/*0190*/case GuiAlarmID::ALARM_ID_DRAIN_PUMP_OFF_FAULT : { result = QObject::tr("DG drain pump off fault." ); break; } /* 190*/ -/*0191*/case GuiAlarmID::ALARM_ID_FLOW_RATE_OUT_OF_UPPER_RANGE : { result = QObject::tr("DG flow rate out of upper range." ); break; } /* 191*/ -/*0192*/case GuiAlarmID::ALARM_ID_FLOW_RATE_OUT_OF_LOWER_RANGE : { result = QObject::tr("DG flow rate out of lower range." ); break; } /* 192*/ -/*0193*/case GuiAlarmID::ALARM_ID__AVAILABLE_13 : { result = QObject::tr("." ); break; } /* 193*/ -/*0194*/case GuiAlarmID::ALARM_ID_RO_PUMP_DUTY_CYCLE_OUT_OF_RANGE : { result = QObject::tr("DG RO pump duty cycle out of range." ); break; } /* 194*/ -/*0195*/case GuiAlarmID::ALARM_ID_RO_PUMP_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("DG RO pump pressure out of range." ); break; } /* 195*/ -/*0196*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSOR_FAULT : { result = QObject::tr("DG temperature sensor error flag fault." ); break; } /* 196*/ -/*0197*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSORS_ADC_FAULT : { result = QObject::tr("DG temperature sensors ADC fault." ); break; } /* 197*/ -/*0198*/case GuiAlarmID::ALARM_ID__AVAILABLE_10 : { result = QObject::tr("Alarm ID available for use." ); break; } /* 198*/ -/*0199*/case GuiAlarmID::ALARM_ID__AVAILABLE_14 : { result = QObject::tr("." ); break; } /* 199*/ -/*0200*/case GuiAlarmID::ALARM_ID_DG_THERMISTORS_TEMPERATURE_OUT_OF_RANGE : { result = QObject::tr("DG thermistors/sensors temperature out of range." ); break; } /* 200*/ -/*0201*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_WET_FLOW_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode wet self-test lc vs FMD failure." ); break; } /* 201*/ -/*0202*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_DRY_PRESSURE_NORMAL_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode dry pressure normal self-test failure." ); break; } /* 202*/ -/*0203*/case GuiAlarmID::ALARM_ID_PRESSURE_SENSOR_FAULT : { result = QObject::tr("Pressure sensor fault." ); break; } /* 203*/ -/*0204*/case GuiAlarmID::ALARM_ID_RO_REJECTION_RATIO_OUT_OF_RANGE : { result = QObject::tr("RO rejection ratio out of range." ); break; } /* 204*/ -/*0205*/case GuiAlarmID::ALARM_ID_CONDUCTIVITY_SENSOR_FAULT : { result = QObject::tr("Conductivity sensor fault." ); break; } /* 205*/ -/*0206*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_FILL_OUT_OF_TIME : { result = QObject::tr("DG dialysate fill runs out of time." ); break; } /* 206*/ -/*0207*/case GuiAlarmID::ALARM_ID_DG_FLOW_METER_CHECK_FAILURE : { result = QObject::tr("DG flow meter check failure alarm." ); break; } /* 207*/ -/*0208*/case GuiAlarmID::ALARM_ID__AVAILABLE_7 : { result = QObject::tr("Alarm ID available for use." ); break; } /* 208*/ -/*0209*/case GuiAlarmID::ALARM_ID_DG_DRAIN_CIRCULATION_LINE_TIMEOUT : { result = QObject::tr("DG drain circulation line timeout." ); break; } /* 209*/ -/*0210*/case GuiAlarmID::ALARM_ID_HD_BATTERY_PACK_ERROR_DETECTED : { result = QObject::tr("HD battery pack detected an error." ); break; } /* 210*/ -/*0211*/case GuiAlarmID::ALARM_ID_BLOOD_SITTING_WARNING : { result = QObject::tr("Blood sitting too long warning (>4 min)." ); break; } /* 211*/ -/*0212*/case GuiAlarmID::ALARM_ID_END_OF_TREATMENT_ALARM : { result = QObject::tr("HD end of treatment alarm (user not acting to end treatment)." ); break; } /* 212*/ -/*0213*/case GuiAlarmID::ALARM_ID_PRIME_COMPLETED_MEDIUM : { result = QObject::tr("HD prime completed medium priority alarm." ); break; } /* 213*/ -/*0214*/case GuiAlarmID::ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE : { result = QObject::tr("HD Saline bolus volume check failure." ); break; } /* 214*/ -/*0215*/case GuiAlarmID::ALARM_ID_RINSEBACK_VOLUME_CHECK_FAILURE : { result = QObject::tr("HD rinseback volume check failure." ); break; } /* 215*/ -/*0216*/case GuiAlarmID::ALARM_ID_END_TREATMENT_TIMEOUT_ALARM : { result = QObject::tr("HD end treatment sub-mode timeout alarm." ); break; } /* 216*/ -/*0217*/case GuiAlarmID::ALARM_ID_BLOOD_PRIME_VOLUME_CHECK_FAILURE : { result = QObject::tr("HD blood prime volume check failure." ); break; } /* 217*/ -/*0218*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_DETECTED : { result = QObject::tr("HD syringe detected alarm." ); break; } /* 218*/ -/*0219*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SYRINGE_REMOVED : { result = QObject::tr("HD syringe pump syringe removed alarm." ); break; } /* 219*/ -/*0220*/case GuiAlarmID::ALARM_ID_HD_BATTERY_PACK_CHARGE_TOO_LOW : { result = QObject::tr("HD battery pack SOC is too low." ); break; } /* 220*/ -/*0221*/case GuiAlarmID::ALARM_ID_EMPTY_SALINE_BAG : { result = QObject::tr("HD Saline bag is empty." ); break; } /* 221*/ -/*0222*/case GuiAlarmID::ALARM_ID_DIALYSATE_TEMPERATURE_HIGH : { result = QObject::tr("HD dialysate temperature too high alarm." ); break; } /* 222*/ -/*0223*/case GuiAlarmID::ALARM_ID_DIALYSATE_TEMPERATURE_LOW : { result = QObject::tr("HD dialysate temperature too low alarm." ); break; } /* 223*/ -/*0224*/case GuiAlarmID::ALARM_ID_TREATMENT_STOPPED_BY_USER : { result = QObject::tr("Treatment stopped by user action." ); break; } /* 224*/ -/*0225*/case GuiAlarmID::ALARM_ID_END_OF_TREATMENT_WARNING : { result = QObject::tr("HD end of treatment warning." ); break; } /* 225*/ -/*0226*/case GuiAlarmID::ALARM_ID_PRIME_COMPLETED_LOW_PRIORITY : { result = QObject::tr("HD prime completed low priority alarm." ); break; } /* 226*/ -/*0227*/case GuiAlarmID::ALARM_ID_PRIME_OUT_OF_TIME : { result = QObject::tr("HD prime out of time alarm." ); break; } /* 227*/ -/*0228*/case GuiAlarmID::ALARM_ID_HD_PRIME_PURGE_AIR_TIME_OUT : { result = QObject::tr("HD time out on prime sub-mode purge air state." ); break; } /* 228*/ -/*0229*/case GuiAlarmID::ALARM_ID_PRIME_DIALYSATE_DIALYZER_TIME_OUT : { result = QObject::tr("HD prime dialysate dialyzer time out alarm." ); break; } /* 229*/ -/*0230*/case GuiAlarmID::ALARM_ID_PRIME_DIALYSATE_BYPASS_TIME_OUT : { result = QObject::tr("HD prime dialysate bypass time out alarm." ); break; } /* 230*/ -/*0231*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_DRY_PRESSURE_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode dry pressure self-test failure." ); break; } /* 231*/ -/*0232*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_WET_LC_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode wet self-test LC vs LC failure." ); break; } /* 232*/ -/*0233*/case GuiAlarmID::ALARM_ID__AVAILABLE_8 : { result = QObject::tr("Alarm ID available for use." ); break; } /* 233*/ -/*0234*/case GuiAlarmID::ALARM_ID_RTC_RAM_OPS_ERROR : { result = QObject::tr("RTC (i.e read time) or RAM operations failure (read or write)." ); break; } /* 234*/ -/*0235*/case GuiAlarmID::ALARM_ID_TREATMENT_STOPPED_AFTER_RINSEBACK : { result = QObject::tr("HD in treatment stopped sub-mode after rinseback completed (no escalation)." ); break; } /* 235*/ -/*0236*/case GuiAlarmID::ALARM_ID_INSTALL_NEW_CARTRIDGE : { result = QObject::tr("HD needs new cartridge to be installed." ); break; } /* 236*/ -/*0237*/case GuiAlarmID::ALARM_ID_PRIME_SALINE_DIALYZER_TIME_OUT : { result = QObject::tr("HD prime saline dialyzer time out alarm." ); break; } /* 237*/ -/*0238*/case GuiAlarmID::ALARM_ID_NO_CARTRIDGE_LOADED : { result = QObject::tr("HD no cartridge loaded or installed improperly alarm." ); break; } /* 238*/ -/*0239*/case GuiAlarmID::ALARM_ID_CARTRIDGE_REMOVAL_FAILURE : { result = QObject::tr("HD fail to remove cartridge alarm." ); break; } /* 239*/ -/*0240*/case GuiAlarmID::ALARM_ID_BICARB_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("Bicarb conductivity out of range during bicarb pump check alarm." ); break; } /* 240*/ -/*0241*/case GuiAlarmID::ALARM_ID_DG_RESERVOIR_DRAIN_TIMEOUT : { result = QObject::tr("DG reservoir drain time out." ); break; } /* 241*/ -/*0242*/case GuiAlarmID::ALARM_ID_DG_RESERVOIR_FILL_TIMEOUT : { result = QObject::tr("DG reservoir fill time out." ); break; } /* 242*/ -/*0243*/case GuiAlarmID::ALARM_ID_DG_RESERVOIR_LEAK_TIMEOUT : { result = QObject::tr("DG reservoir leak time out." ); break; } /* 243*/ -/*0244*/case GuiAlarmID::ALARM_ID_DG_TEMP_SENSORS_DIFF_OUT_OF_RANGE : { result = QObject::tr("DG temperature sensors difference out of range." ); break; } /* 244*/ -/*0245*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_TARGET_TEMP_TIMEOUT : { result = QObject::tr("DG heat disinfect target temperature time out (could not reach to temperature)." ); break; } /* 245*/ -/*0246*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_INLET_PRES_AND_TEMP_SNSRS_OUT: { result = QObject::tr("DG heat disinfect inlet pressure and temperature sensors out of range." ); break; } /* 246*/ -/*0247*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_INLET_COND_AND_TEMP_OUT : { result = QObject::tr("DG heat disinfect inlet conductivity and temperature out of range." ); break; } /* 247*/ -/*0248*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_TARGET_TEMP_TIMEOUT : { result = QObject::tr("DG chemical disinfect could not reach to target temperature." ); break; } /* 248*/ -/*0249*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_INLET_PRES_AND_TEMP_SNSRS_OUT: { result = QObject::tr("DG chemical disinfect inlet pressure and temperature sensors out of range." ); break; } /* 249*/ -/*0250*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_INLET_COND_AND_TEMP_OUT : { result = QObject::tr("DG chemical disinfect inlet conductivity and temperature out of range." ); break; } /* 250*/ -/*0251*/case GuiAlarmID::ALARM_ID_HD_INVALID_SYSTEM_RECORD_CRC : { result = QObject::tr("HD invalid system record." ); break; } /* 251*/ -/*0252*/case GuiAlarmID::ALARM_ID_HD_INVALID_SERVICE_RECORD_CRC : { result = QObject::tr("HD invalid service record." ); break; } /* 252*/ -/*0253*/case GuiAlarmID::ALARM_ID_DG_INVALID_SYSTEM_RECORD_CRC : { result = QObject::tr("DG invalid system record." ); break; } /* 253*/ -/*0254*/case GuiAlarmID::ALARM_ID_DG_INVALID_SERVICE_RECORD_CRC : { result = QObject::tr("DG invalid service record." ); break; } /* 254*/ -/*0255*/case GuiAlarmID::ALARM_ID_HD_UI_COMPATIBILITY_ERROR : { result = QObject::tr("HD and UI software builds are not compatible." ); break; } /* 255*/ -/*0256*/case GuiAlarmID::ALARM_ID_HD_DG_COMPATIBILITY_ERROR : { result = QObject::tr("HD and DG software builds are not compatible." ); break; } /* 256*/ -/*0257*/case GuiAlarmID::ALARM_ID_DG_FPGA_POWER_OUT_TIMEOUT : { result = QObject::tr("DG FPGA power out timeout." ); break; } /* 257*/ -/*0258*/case GuiAlarmID::ALARM_ID_HD_FPGA_POWER_OUT_TIMEOUT : { result = QObject::tr("HD FPGA power out timeout." ); break; } /* 258*/ -/*0259*/case GuiAlarmID::ALARM_ID_HD_TEMPERATURES_OUT_OF_RANGE : { result = QObject::tr("HD temperatures out of range." ); break; } /* 259*/ -/*0260*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_SHASUM : { result = QObject::tr("UI POST Application Integrity (Sha256Sum) failure." ); break; } /* 260*/ -/*0261*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_CANBUS : { result = QObject::tr("UI POST CANBus failure." ); break; } /* 261*/ -/*0262*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_DISPLAY : { result = QObject::tr("UI POST Display failure." ); break; } /* 262*/ -/*0263*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_TOUCH : { result = QObject::tr("UI POST Touch failure." ); break; } /* 263*/ -/*0264*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_SDCARD : { result = QObject::tr("UI POST SD-Card failure." ); break; } /* 264*/ -/*0265*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_RTC : { result = QObject::tr("UI POST RTC failure." ); break; } /* 265*/ -/*0266*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_WIFI : { result = QObject::tr("UI POST WiFi failure." ); break; } /* 266*/ -/*0267*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_BLUETOOTH : { result = QObject::tr("UI POST Bluetooth failure." ); break; } /* 267*/ -/*0268*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_ETHERNET : { result = QObject::tr("UI POST Ethernet failure." ); break; } /* 268*/ -/*0269*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_SOUND : { result = QObject::tr("UI POST Sound failure." ); break; } /* 269*/ -/*0270*/case GuiAlarmID::ALARM_ID_HD_SAFETY_SHUTDOWN_POST_TEST_FAILED : { result = QObject::tr("HD POST Safety Shutdown failure." ); break; } /* 270*/ -/*0271*/case GuiAlarmID::ALARM_ID_DG_SAFETY_SHUTDOWN_POST_TEST_FAILED : { result = QObject::tr("DG POST Safety Shutdown failure." ); break; } /* 271*/ -/*0272*/case GuiAlarmID::ALARM_ID_HD_FAN_RPM_OUT_OF_RANGE : { result = QObject::tr("HD Fan RPM out of range." ); break; } /* 272*/ -/*0273*/case GuiAlarmID::ALARM_ID_HD_BLOOD_FLOW_OUT_OF_RANGE : { result = QObject::tr("HD measured blood pump flow rate is out of range." ); break; } /* 273*/ -/*0274*/case GuiAlarmID::ALARM_ID_HD_DIAL_IN_FLOW_OUT_OF_RANGE : { result = QObject::tr("HD measured dialysate inlet pump flow rate is out of range." ); break; } /* 274*/ -/*0275*/case GuiAlarmID::ALARM_ID_HD_ARTERIAL_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("HD arterial pressure sensor is reading out of range." ); break; } /* 275*/ -/*0276*/case GuiAlarmID::ALARM_ID_HD_VENOUS_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("HD venous pressure sensor is reading out of range." ); break; } /* 276*/ -/*0277*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_OUT_OF_RANGE : { result = QObject::tr("HD BP occlusion sensor is reading out of range." ); break; } /* 277*/ -/*0278*/case GuiAlarmID::ALARM_ID_HD_ACTIVE_RESERVOIR_WEIGHT_OUT_OF_RANGE : { result = QObject::tr("HD active reservoir weight out of range." ); break; } /* 278*/ -/*0279*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_DRAIN_TIME_OUT : { result = QObject::tr("DG dialysate drain time out." ); break; } /* 279*/ -/*0280*/case GuiAlarmID::ALARM_ID_HD_ARTERIAL_PRESSURE_READ_TIMEOUT_ERROR : { result = QObject::tr("HD arterial pressure sensor read timeout error." ); break; } /* 280*/ -/*0281*/case GuiAlarmID::ALARM_ID_DG_ACID_BOTTLE_LOW_VOLUME : { result = QObject::tr("Acid concentration bottle low volume alarm." ); break; } /* 281*/ -/*0282*/case GuiAlarmID::ALARM_ID_DG_BICARB_BOTTLE_LOW_VOLUME : { result = QObject::tr("Bicarbonate concentration bottle low volume alarm." ); break; } /* 282*/ -/*0283*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_WEIGHT_OUT_OF_RANGE : { result = QObject::tr("DG load cells weight out of range." ); break; } /* 283*/ -/*0284*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_PRIMARY_BACKUP_DRIFT_OUT_OF_RANGE : { result = QObject::tr("DG load cells primary/back up drift out of range." ); break; } /* 284*/ -/*0285*/case GuiAlarmID::ALARM_ID_HD_TREATMENT_RECIRC_TIMEOUT_WARNING : { result = QObject::tr("HD treatment recirculate timeout warning." ); break; } /* 285*/ -/*0286*/case GuiAlarmID::ALARM_ID_HD_TREATMENT_RINSEBACK_TIMEOUT_WARNING : { result = QObject::tr("HD treatment rinseback complete timeout warning." ); break; } /* 286*/ -/*0287*/case GuiAlarmID::ALARM_ID_HD_FPGA_CLOCK_SPEED_CHECK_FAILURE : { result = QObject::tr("HD processor clock speed checks against FPGA clock failure." ); break; } /* 287*/ -/*0288*/case GuiAlarmID::ALARM_ID_HD_LOAD_CELL_PRIMARY_BACKUP_DRIFT_OUT_OF_RANGE : { result = QObject::tr("HD load cells primary/back up drift out of range." ); break; } /* 288*/ -/*0289*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_OR_CONC_CAP_NOT_IN_PROPER_POSITION: { result = QObject::tr("DG dialysate or concentrate caps not closed." ); break; } /* 289*/ -/*0290*/case GuiAlarmID::ALARM_ID_DG_FLOW_TOO_LOW_WHILE_HEATER_ON : { result = QObject::tr("DG flow too low while heater is on." ); break; } /* 290*/ -/*0291*/case GuiAlarmID::NUM_OF_ALARM_IDS : { result = QObject::tr("Total number of alarms." ); break; } /* 291*/ +/*0000*/case GuiAlarmID::ALARM_ID_NO_ALARM : { result = QObject::tr("Indication for when no alarms is a possible situation." ); break; } /* 0*/ +/*0001*/case GuiAlarmID::ALARM_ID_STUCK_BUTTON_TEST_FAILED : { result = QObject::tr("Stuck button POST failure.\nStop or Off button detected to be pressed for at least 1 second during test shortly after power up." ); break; } /* 1*/ +/*0002*/case GuiAlarmID::ALARM_ID_HD_FPGA_POST_TEST_FAILED : { result = QObject::tr("HD FPGA POST failure." ); break; } /* 2*/ +/*0003*/case GuiAlarmID::ALARM_ID_DG_FPGA_POST_TEST_FAILED : { result = QObject::tr("DG FPGA POST failure." ); break; } /* 3*/ +/*0004*/case GuiAlarmID::ALARM_ID_HD_WATCHDOG_POST_TEST_FAILED : { result = QObject::tr("HD Watchdog POST failure." ); break; } /* 4*/ +/*0005*/case GuiAlarmID::ALARM_ID_DG_WATCHDOG_POST_TEST_FAILED : { result = QObject::tr("DG Watchdog POST failure." ); break; } /* 5*/ +/*0006*/case GuiAlarmID::ALARM_ID_UI_COMM_POST_FAILED : { result = QObject::tr("UI communication POST failure.\nUI failed to communicate within a reasonable time after power up." ); break; } /* 6*/ +/*0007*/case GuiAlarmID::ALARM_ID_HD_RTC_BATTERY_LOW : { result = QObject::tr("HD RTC battery low." ); break; } /* 7*/ +/*0008*/case GuiAlarmID::ALARM_ID_HD_ACCELEROMETER_SELF_TEST_FAILURE : { result = QObject::tr("HD accelerometer failed POST." ); break; } /* 8*/ +/*0009*/case GuiAlarmID::ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE : { result = QObject::tr("DG accelerometer failed POST." ); break; } /* 9*/ +/*0010*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SENSOR_EMBEDDED_MODE_FAILURE : { result = QObject::tr("HD blood leak sensor setting embedded mode failure." ); break; } /* 10*/ +/*0011*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_TEMP_BELOW_TARGET_TEMP : { result = QObject::tr("HD dialysate temperature below target temperature." ); break; } /* 11*/ +/*0012*/case GuiAlarmID::ALARM_ID_HD_INTEGRITY_POST_TEST_FAILED : { result = QObject::tr("HD firmware image integrity POST test failed." ); break; } /* 12*/ +/*0013*/case GuiAlarmID::ALARM_ID_DG_INTEGRITY_POST_TEST_FAILED : { result = QObject::tr("DG firmware image integrity POST test failed." ); break; } /* 13*/ +/*0014*/case GuiAlarmID::ALARM_ID_DG_INVALID_USAGE_RECORD_CRC : { result = QObject::tr("DG invalid usage record CRC." ); break; } /* 14*/ +/*0015*/case GuiAlarmID::ALARM_ID_HD_INVALID_USAGE_RECORD : { result = QObject::tr("HD invalid usage record CRC." ); break; } /* 15*/ +/*0016*/case GuiAlarmID::ALARM_ID_HD_ALARM_AUDIO_SELF_TEST_FAILURE : { result = QObject::tr("HD alarm audio failed POST." ); break; } /* 16*/ +/*0017*/case GuiAlarmID::ALARM_ID_HD_UI_POST_FAILED : { result = QObject::tr("HD UI POST failed." ); break; } /* 17*/ +/*0018*/case GuiAlarmID::ALARM_ID_DG_PRESSURE_SENSORS_INVALID_CAL_RECORD : { result = QObject::tr("DG load cells invalid calibration record." ); break; } /* 18*/ +/*0019*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_TEMP_ABOVE_TARGET_TEMP : { result = QObject::tr("HD dialysate temperature above target temperature." ); break; } /* 19*/ +/*0020*/case GuiAlarmID::ALARM_ID_DG_COND_SENSORS_INVALID_CAL_RECORD : { result = QObject::tr("DG conductivity sensors invalid calibration record." ); break; } /* 20*/ +/*0021*/case GuiAlarmID::ALARM_ID_DG_DRAIN_LINE_VOLUME_INVALID_CAL_RECORD : { result = QObject::tr("DG drain line volume invalid calibration record." ); break; } /* 21*/ +/*0022*/case GuiAlarmID::ALARM_ID_DG_RESERVOIRS_INVALID_CAL_RECORD : { result = QObject::tr("DG reservoirs invalid calibration record." ); break; } /* 22*/ +/*0023*/case GuiAlarmID::ALARM_ID_DG_ACID_CONCENTRATE_INVALID_CAL_RECORD : { result = QObject::tr("DG acid concentrate calibration record." ); break; } /* 23*/ +/*0024*/case GuiAlarmID::ALARM_ID_DG_BICARB_CONCENTRATE_INVALID_CAL_RECORD : { result = QObject::tr("DG bicarb concentrate calibration record." ); break; } /* 24*/ +/*0025*/case GuiAlarmID::ALARM_ID_DG_ACCELEROMETERS_INVALID_CAL_RECORD : { result = QObject::tr("DG accelerometer invalid calibration record." ); break; } /* 25*/ +/*0026*/case GuiAlarmID::ALARM_ID_HD_ACCELEROMETERS_INVALID_CAL_RECORD : { result = QObject::tr("HD accelerometer invalid calibration record." ); break; } /* 26*/ +/*0027*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SENSOR_ZERO_SEQUENCE_FAILED : { result = QObject::tr("HD blood leak sensor zero and self test sequence failed." ); break; } /* 27*/ +/*0028*/case GuiAlarmID::ALARM_ID_DG_TWO_WIRE_SENSORS_FPGA_FAULT : { result = QObject::tr("DG two wire sensors FPGA fault." ); break; } /* 28*/ +/*0029*/case GuiAlarmID::ALARM_ID_HD_HEPARIN_FORCE_SENSOR_INVALID_CAL_RECORD : { result = QObject::tr("HD heparin force sensor invalid calibration record." ); break; } /* 29*/ +/*0030*/case GuiAlarmID::ALARM_ID_HD_SOFTWARE_FAULT : { result = QObject::tr("HD Software fault.\nSoftware found itself in an unexpected state." ); break; } /* 30*/ +/*0031*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_MC_CURRENT_CHECK : { result = QObject::tr("Blood pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." ); break; } /* 31*/ +/*0032*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_OFF_CHECK : { result = QObject::tr("Blood pump failed motor off check.\nMeasured speed while commanded off." ); break; } /* 32*/ +/*0033*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_MC_DIRECTION_CHECK : { result = QObject::tr("Blood pump failed motor direction check.\nMeasured vs commanded." ); break; } /* 33*/ +/*0034*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_CHECK : { result = QObject::tr("Blood pump failed rotor speed check.\nMismatch with rotor and motor speeds." ); break; } /* 34*/ +/*0035*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_MC_CURRENT_CHECK : { result = QObject::tr("Dialysis inlet pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." ); break; } /* 35*/ +/*0036*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_OFF_CHECK : { result = QObject::tr("Dialysis inlet pump failed motor off check.\nMeasured speed while commanded off." ); break; } /* 36*/ +/*0037*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_MC_DIRECTION_CHECK : { result = QObject::tr("Dialysis inlet pump failed motor direction check.\nMeasured vs commanded." ); break; } /* 37*/ +/*0038*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_ROTOR_SPEED_CHECK : { result = QObject::tr("Dialysis inlet pump failed rotor speed check.\nMismatch with rotor and motor speeds." ); break; } /* 38*/ +/*0039*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_MC_CURRENT_CHECK : { result = QObject::tr("Dialysis outlet pump failed motor controller current check.\nToo high when pump should be off or out of range when pump should be running." ); break; } /* 39*/ +/*0040*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_OFF_CHECK : { result = QObject::tr("Dialysis outlet pump failed motor off check.\nMeasured speed while commanded off." ); break; } /* 40*/ +/*0041*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_MC_DIRECTION_CHECK : { result = QObject::tr("Dialysis outlet pump failed motor direction check.\nMeasured vs commanded." ); break; } /* 41*/ +/*0042*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_ROTOR_SPEED_CHECK : { result = QObject::tr("Dialysis outlet pump failed rotor speed check.\nMismatch with rotor and motor speeds." ); break; } /* 42*/ +/*0043*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SELF_TEST_FAULT : { result = QObject::tr("HD blood leak self test fault." ); break; } /* 43*/ +/*0044*/case GuiAlarmID::ALARM_ID_UI_COMM_TIMEOUT : { result = QObject::tr("User interface communication timeout." ); break; } /* 44*/ +/*0045*/case GuiAlarmID::ALARM_ID_HD_COMM_TOO_MANY_BAD_CRCS : { result = QObject::tr("HD too many bad communications CRC." ); break; } /* 45*/ +/*0046*/case GuiAlarmID::ALARM_ID_CAN_MESSAGE_NOT_ACKED : { result = QObject::tr("System message that required acknowledgment was not acknowledged." ); break; } /* 46*/ +/*0047*/case GuiAlarmID::ALARM_ID_UF_RATE_TOO_HIGH_ERROR : { result = QObject::tr("Ultrafiltration rate is too high error during treatment." ); break; } /* 47*/ +/*0048*/case GuiAlarmID::ALARM_ID_UF_VOLUME_ACCURACY_ERROR : { result = QObject::tr("Ultrafiltration volume accuracy error during treatment." ); break; } /* 48*/ +/*0049*/case GuiAlarmID::ALARM_ID_HD_FPGA_COMM_TIMEOUT : { result = QObject::tr("HD FPGA communication down for too long." ); break; } /* 49*/ +/*0050*/case GuiAlarmID::ALARM_ID_VALVE_CONTROL_FAILURE : { result = QObject::tr("FPGA not accepting commanded valve states." ); break; } /* 50*/ +/*0051*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_MOTOR_SPEED_CHECK : { result = QObject::tr("Blood pump failed motor speed check.\nMeasured vs commanded." ); break; } /* 51*/ +/*0052*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_MOTOR_SPEED_CHECK : { result = QObject::tr("Dialysate inlet pump failed motor speed check.\nMeasured vs commanded." ); break; } /* 52*/ +/*0053*/case GuiAlarmID::ALARM_ID_DIAL_OUT_PUMP_MOTOR_SPEED_CHECK : { result = QObject::tr("Dialysate outlet pump failed motor speed check.\nMeasured vs commanded." ); break; } /* 53*/ +/*0054*/case GuiAlarmID::ALARM_ID_HD_CRITICAL_DATA_ERROR : { result = QObject::tr("HD critical data integrity check failed." ); break; } /* 54*/ +/*0055*/case GuiAlarmID::ALARM_ID_DG_CRITICAL_DATA_ERROR : { result = QObject::tr("DG critical data integrity check failed." ); break; } /* 55*/ +/*0056*/case GuiAlarmID::ALARM_ID_HD_ACCELEROMETER_FAILURE : { result = QObject::tr("HD accelerometer error (no readings or FPGA reports error)." ); break; } /* 56*/ +/*0057*/case GuiAlarmID::ALARM_ID_DG_ACCELEROMETER_FAILURE : { result = QObject::tr("DG accelerometer error (no readings or FPGA reports error)." ); break; } /* 57*/ +/*0058*/case GuiAlarmID::ALARM_ID_HD_VALVE_HOMING_FAILED : { result = QObject::tr("HD valve homing failed." ); break; } /* 58*/ +/*0059*/case GuiAlarmID::ALARM_ID_HD_VALVE_TRANSITION_TIMEOUT : { result = QObject::tr("HD valve transition time out." ); break; } /* 59*/ +/*0060*/case GuiAlarmID::ALARM_ID_HD_VALVE_NOT_FUNCTIONAL : { result = QObject::tr("HD valve not functional." ); break; } /* 60*/ +/*0061*/case GuiAlarmID::ALARM_ID_HD_VALVE_CURRENT_OUT_OF_RANGE : { result = QObject::tr("HD valve current out of range." ); break; } /* 61*/ +/*0062*/case GuiAlarmID::ALARM_ID_HD_VALVE_POSITION_OUT_OF_RANGE : { result = QObject::tr("HD valve position out of target." ); break; } /* 62*/ +/*0063*/case GuiAlarmID::ALARM_ID_ARTERIAL_PRESSURE_SENSOR_FAULT : { result = QObject::tr("FPGA reports failure reading arterial pressure sensor." ); break; } /* 63*/ +/*0064*/case GuiAlarmID::ALARM_ID_VENOUS_PRESSURE_SENSOR_FAULT : { result = QObject::tr("FPGA reports failure reading venous pressure sensor." ); break; } /* 64*/ +/*0065*/case GuiAlarmID::ALARM_ID_DG_COMMAND_INVALID_PARAMETER_FAULT : { result = QObject::tr("HD requests DG command with invalid parameter fault." ); break; } /* 65*/ +/*0066*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SENSOR_SET_POINT_SET_FAILURE : { result = QObject::tr("HD blood leak sensor set point set failure." ); break; } /* 66*/ +/*0067*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_SELF_TEST_FAILURE : { result = QObject::tr("HD blood pump occlusion self-test failure alarm." ); break; } /* 67*/ +/*0068*/case GuiAlarmID::ALARM_ID_HD_ACTIVE_RESERVOIR_RECIRCULATION_OUT_OF_RANGE : { result = QObject::tr("HD active reservoir recirculation out of range." ); break; } /* 68*/ +/*0069*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_INVALID_CAL_RECORD : { result = QObject::tr("HD blood leak sensor invalid calibration record." ); break; } /* 69*/ +/*0070*/case GuiAlarmID::ALARM_ID_HD_ARTERIAL_PRESSURE_SELF_TEST_FAILURE : { result = QObject::tr("HD arterial pressure self-test failure alarm." ); break; } /* 70*/ +/*0071*/case GuiAlarmID::ALARM_ID_HD_VENOUS_PRESSURE_SELF_TEST_FAILURE : { result = QObject::tr("HD venous pressure self-test failure alarm." ); break; } /* 71*/ +/*0072*/case GuiAlarmID::ALARM_ID_HD_NEW_LOAD_CELL_DATA_MESSAGE_NOT_RECEIVE : { result = QObject::tr("HD No load cell data message receive at least once every 2 seconds." ); break; } /* 72*/ +/*0073*/case GuiAlarmID::ALARM_ID_HD_NEW_DIALYSATE_TEMPERATURE_DATA_MESSAGE_NOT_RECEIVE: { result = QObject::tr("HD No dialysate temperature data message receive at least once every 2 seconds." ); break; } /* 73*/ +/*0074*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_SELF_TEST_SEND_TIMEOUT : { result = QObject::tr("HD blood leak detector self-test transmit timeout." ); break; } /* 74*/ +/*0075*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SELF_TEST_FAILURE : { result = QObject::tr("HD syringe pump self-test failure alarm." ); break; } /* 75*/ +/*0076*/case GuiAlarmID::ALARM_ID_HD_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("HD monitored voltage is out of range." ); break; } /* 76*/ +/*0077*/case GuiAlarmID::ALARM_ID_DG_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG monitored voltage is out of range." ); break; } /* 77*/ +/*0078*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_ENCODER_DIRECTION_ERROR : { result = QObject::tr("HD syringe pump direction (from encoder) error." ); break; } /* 78*/ +/*0079*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_CONTROLLER_DIRECTION_ERROR : { result = QObject::tr("HD syringe pump direction (from controller) error." ); break; } /* 79*/ +/*0080*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_FAULT : { result = QObject::tr("HD syringe pump fault reported by FPGA." ); break; } /* 80*/ +/*0081*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_OVER_TRAVEL_ERROR : { result = QObject::tr("HD syringe pump over travel error." ); break; } /* 81*/ +/*0082*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_DAC_WRITE_ERROR : { result = QObject::tr("HD syringe pump DAC write failure." ); break; } /* 82*/ +/*0083*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_RUNNING_WHILE_BP_OFF_ERROR : { result = QObject::tr("HD syringe pump is running while the BP is off." ); break; } /* 83*/ +/*0084*/case GuiAlarmID::ALARM_ID_HD_VENOUS_PRESSURE_READ_TIMEOUT_ERROR : { result = QObject::tr("HD venous pressure sensor not being read." ); break; } /* 84*/ +/*0085*/case GuiAlarmID::ALARM_ID_PUMP_TRACK_LATCH_OPENED : { result = QObject::tr("HD pump track latch opened alarm." ); break; } /* 85*/ +/*0086*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_READ_TIMEOUT_ERROR : { result = QObject::tr("HD BP occlusion sensor not being read." ); break; } /* 86*/ +/*0087*/case GuiAlarmID::ALARM_ID_DG_HEATING_INVALID_CAL_RECORD : { result = QObject::tr("DG heating invalid calibration record." ); break; } /* 87*/ +/*0088*/case GuiAlarmID::ALARM_ID_DG_CONC_PUMP_HALL_SENSOR_OUT_OF_RANGE : { result = QObject::tr("DG concentrate pumps hall sensor out of range." ); break; } /* 88*/ +/*0089*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_SENSOR_ERROR : { result = QObject::tr("HD BP occlusion sensor error." ); break; } /* 89*/ +/*0090*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_FPGA_READ_ERROR : { result = QObject::tr("DG load cells FPGA read error." ); break; } /* 90*/ +/*0091*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_FLOW_DATA_NOT_RECEIVE : { result = QObject::tr("HD No dialysate flow data receive in the last 3 seconds." ); break; } /* 91*/ +/*0092*/case GuiAlarmID::ALARM_ID_DG_CONDUCTIVITY_SENSOR_BAD_STATUS : { result = QObject::tr("DG conductivity sensor bad status." ); break; } /* 92*/ +/*0093*/case GuiAlarmID::ALARM_ID_DG_OUTLET_PRIMARY_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("DG outlet primary conductivity out of range." ); break; } /* 93*/ +/*0094*/case GuiAlarmID::ALARM_ID_DG_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("DG pressure out of range." ); break; } /* 94*/ +/*0095*/case GuiAlarmID::ALARM_ID_DG_WATCHDOG_EXPIRED : { result = QObject::tr("DG watchdog expired." ); break; } /* 95*/ +/*0096*/case GuiAlarmID::ALARM_ID_INLET_WATER_TEMPERATURE_IN_HIGH_RANGE : { result = QObject::tr("Inlet water temperature in high range." ); break; } /* 96*/ +/*0097*/case GuiAlarmID::ALARM_ID_FILL_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("Fill conductivity out of range." ); break; } /* 97*/ +/*0098*/case GuiAlarmID::ALARM_ID_HD_BATTERY_COMM_FAULT : { result = QObject::tr("HD battery communication fault." ); break; } /* 98*/ +/*0099*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_STALL : { result = QObject::tr("HD syringe pump stall alarm." ); break; } /* 99*/ +/*0100*/case GuiAlarmID::ALARM_ID_HD_NO_CART_SELF_TEST_TIMEOUT : { result = QObject::tr("HD no cartridge self-test timeout." ); break; } /* 100*/ +/*0101*/case GuiAlarmID::ALARM_ID_HD_DRY_SELF_TEST_TIMEOUT : { result = QObject::tr("HD dry self-test timeout." ); break; } /* 101*/ +/*0102*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_TEMP_GRAD_OUT_OF_RANAGE : { result = QObject::tr("DG heat disinfect temperature gradient out of range." ); break; } /* 102*/ +/*0103*/case GuiAlarmID::ALARM_ID_HD_NVDATAMGMT_CAL_GROUP_RECORD_CRC_INVALID : { result = QObject::tr("HD invalid calibration CRC." ); break; } /* 103*/ +/*0104*/case GuiAlarmID::ALARM_ID_AIR_TRAP_ILLEGAL_LEVELS : { result = QObject::tr("Air trap level sensors reporting illegal combination of air/fluid." ); break; } /* 104*/ +/*0105*/case GuiAlarmID::ALARM_ID_DG_NVDATAMGMT_CAL_GROUP_RECORD_CRC_INVALID : { result = QObject::tr("DG invalid calibration CRC." ); break; } /* 105*/ +/*0106*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_FLOW_SENSOR_INVALID_CAL_RECORD : { result = QObject::tr("DG dialysate flow sensor invalid calibration record." ); break; } /* 106*/ +/*0107*/case GuiAlarmID::ALARM_ID_DG_RESTARTED_FAULT : { result = QObject::tr("HD reports DG restarted fault." ); break; } /* 107*/ +/*0108*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_ADC_ERROR : { result = QObject::tr("HD syringe pump ADC error." ); break; } /* 108*/ +/*0109*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_VOLUME_ERROR : { result = QObject::tr("HD syringe pump volume check error." ); break; } /* 109*/ +/*0110*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SPEED_ERROR : { result = QObject::tr("HD syringe pump speed check error." ); break; } /* 110*/ +/*0111*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_NOT_STOPPED_ERROR : { result = QObject::tr("HD syringe pump not stopped in off state error." ); break; } /* 111*/ +/*0112*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_ZERO_CMD_SEND_TIMEOUT : { result = QObject::tr("HD blood leak zero command transmit timeout." ); break; } /* 112*/ +/*0113*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_ZERO_CMD_FAULT : { result = QObject::tr("HD blood leak zero command fault." ); break; } /* 113*/ +/*0114*/case GuiAlarmID::ALARM_ID_HD_VENOUS_BUBBLE_SELF_TEST_FAILURE : { result = QObject::tr("HD venous air bubble detector self-test failure." ); break; } /* 114*/ +/*0115*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSOR_OUT_OF_RANGE : { result = QObject::tr("DG temperature sensor out of range." ); break; } /* 115*/ +/*0116*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSORS_ADC_FAULT : { result = QObject::tr("DG temperature sensor ADC fault." ); break; } /* 116*/ +/*0117*/case GuiAlarmID::ALARM_ID_DG_CAN_MESSAGE_NOT_ACKED : { result = QObject::tr("DG CAN message not acked." ); break; } /* 117*/ +/*0118*/case GuiAlarmID::ALARM_ID_DG_RTC_CONFIG_ERROR : { result = QObject::tr("DG RTC config error." ); break; } /* 118*/ +/*0119*/case GuiAlarmID::ALARM_ID_DG_RTC_BATTERY_LOW : { result = QObject::tr("DG RTC battery low error." ); break; } /* 119*/ +/*0120*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_WET_PRIME_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode wet self-test prime check failure." ); break; } /* 120*/ +/*0121*/case GuiAlarmID::ALARM_ID_DG_MAIN_PRIMARY_HEATER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG main primary heater voltage out of range." ); break; } /* 121*/ +/*0122*/case GuiAlarmID::ALARM_ID_DG_SMALL_PRIMARY_HEATER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG small primary heater voltage out of range." ); break; } /* 122*/ +/*0123*/case GuiAlarmID::ALARM_ID_DG_TRIMMER_HEATER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG trimmer heater voltage out of range." ); break; } /* 123*/ +/*0124*/case GuiAlarmID::ALARM_ID_END_OF_TREATMENT_HIGH : { result = QObject::tr("HD end of treatment alarm (high priority)." ); break; } /* 124*/ +/*0125*/case GuiAlarmID::ALARM_ID_TREATMENT_STOPPED_NO_RINSEBACK : { result = QObject::tr("Blood sitting too long after treatment stopped by user alarm (>5 min)." ); break; } /* 125*/ +/*0126*/case GuiAlarmID::ALARM_ID_HD_BLOOD_LEAK_DETECTED : { result = QObject::tr("HD blood leak detected alarm." ); break; } /* 126*/ +/*0127*/case GuiAlarmID::ALARM_ID_VENOUS_PRESSURE_LOW : { result = QObject::tr("Venous pressure too low during treatment." ); break; } /* 127*/ +/*0128*/case GuiAlarmID::ALARM_ID_HD_VENOUS_BUBBLE_DETECTED : { result = QObject::tr("HD venous air bubble detected alarm." ); break; } /* 128*/ +/*0129*/case GuiAlarmID::ALARM_ID_HD_VENOUS_BUBBLE_DETECTED_RINSEBACK : { result = QObject::tr("HD venous air bubble detected rinseback alarm." ); break; } /* 129*/ +/*0130*/case GuiAlarmID::ALARM_ID_VENOUS_PRESSURE_HIGH : { result = QObject::tr("Venous pressure too high during treatment." ); break; } /* 130*/ +/*0131*/case GuiAlarmID::ALARM_ID_ARTERIAL_PRESSURE_LOW : { result = QObject::tr("Arterial pressure too low during treatment." ); break; } /* 131*/ +/*0132*/case GuiAlarmID::ALARM_ID_ARTERIAL_PRESSURE_HIGH : { result = QObject::tr("Arterial pressure too high during treatment." ); break; } /* 132*/ +/*0133*/case GuiAlarmID::ALARM_ID_DG_FLUID_LEAK_DETECTED : { result = QObject::tr("DG fluid leak detected alarm." ); break; } /* 133*/ +/*0134*/case GuiAlarmID::ALARM_ID_HD_FLUID_LEAK_DETECTED : { result = QObject::tr("HD fluid leak detected alarm." ); break; } /* 134*/ +/*0135*/case GuiAlarmID::ALARM_ID_HD_SHOCK : { result = QObject::tr("HD experienced large acceleration." ); break; } /* 135*/ +/*0136*/case GuiAlarmID::ALARM_ID_DG_SHOCK : { result = QObject::tr("DG experienced large acceleration." ); break; } /* 136*/ +/*0137*/case GuiAlarmID::ALARM_ID_HD_EXCESSIVE_TILT : { result = QObject::tr("HD tilt exceeds maximum." ); break; } /* 137*/ +/*0138*/case GuiAlarmID::ALARM_ID_DG_EXCESSIVE_TILT : { result = QObject::tr("DG tilt exceeds maximum." ); break; } /* 138*/ +/*0139*/case GuiAlarmID::ALARM_ID_HD_AC_POWER_LOST : { result = QObject::tr("HD AC power lost alarm." ); break; } /* 139*/ +/*0140*/case GuiAlarmID::ALARM_ID_DG_COMM_TIMEOUT : { result = QObject::tr("Dialysate generator communication timeout." ); break; } /* 140*/ +/*0141*/case GuiAlarmID::ALARM_ID_AIR_TRAP_FILL_DURING_TREATMENT : { result = QObject::tr("Air trap fill timeout during treatment." ); break; } /* 141*/ +/*0142*/case GuiAlarmID::ALARM_ID_OCCLUSION_BLOOD_PUMP : { result = QObject::tr("Blood pump occlusion detected." ); break; } /* 142*/ +/*0143*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_TEMPERATURE_SENSORS_OUT_OF_RANGE : { result = QObject::tr("DG dialysate temperature sensors out of range." ); break; } /* 143*/ +/*0144*/case GuiAlarmID::ALARM_ID_DG_RO_FLOW_SENSOR_INVALID_CAL_RECORD : { result = QObject::tr("DG RO flow sensor invalid calibration record." ); break; } /* 144*/ +/*0145*/case GuiAlarmID::ALARM_ID_ACID_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("Concentrate conductivity after adding acid out of range alarm." ); break; } /* 145*/ +/*0146*/case GuiAlarmID::ALARM_ID_DG_RTC_OR_TIMER_ACCURACY_FAILURE : { result = QObject::tr("DG RTC or timer accuracy failure." ); break; } /* 146*/ +/*0147*/case GuiAlarmID::ALARM_ID_CREATING_DIALYSATE_PLEASE_WAIT : { result = QObject::tr("Wait for the DG to produce dialysate." ); break; } /* 147*/ +/*0148*/case GuiAlarmID::ALARM_ID_INLET_WATER_HIGH_TEMPERATURE : { result = QObject::tr("Inlet water temperature too high." ); break; } /* 148*/ +/*0149*/case GuiAlarmID::ALARM_ID_HD_WATCHDOG_EXPIRED : { result = QObject::tr("HD watchdog expired." ); break; } /* 149*/ +/*0150*/case GuiAlarmID::ALARM_ID_INLET_WATER_CONDUCTIVITY_IN_HIGH_RANGE : { result = QObject::tr("Inlet water conductivity in high range." ); break; } /* 150*/ +/*0151*/case GuiAlarmID::ALARM_ID_INLET_WATER_CONDUCTIVITY_IN_LOW_RANGE : { result = QObject::tr("Inlet water conductivity in low range." ); break; } /* 151*/ +/*0152*/case GuiAlarmID::ALARM_ID_INLET_WATER_PRESSURE_IN_LOW_RANGE : { result = QObject::tr("Inlet water pressure in low range." ); break; } /* 152*/ +/*0153*/case GuiAlarmID::ALARM_ID_PRIME_COMPLETED_HIGH : { result = QObject::tr("HD prime completed high priority alarm." ); break; } /* 153*/ +/*0154*/case GuiAlarmID::ALARM_ID_NVDATA_EEPROM_OPS_FAILURE : { result = QObject::tr("EEPROM operations (read, write, erase) failure." ); break; } /* 154*/ +/*0155*/case GuiAlarmID::ALARM_ID_HD_NEW_RESERVOIRS_DATA_MESSAGE_NOT_RECEIVE : { result = QObject::tr("HD No reservoirs data message receive at least once every 2 seconds." ); break; } /* 155*/ +/*0156*/case GuiAlarmID::ALARM_ID_HD_NEW_DG_OPERATION_MODE_MESSAGE_NOT_RECEIVE : { result = QObject::tr("HD No DG operation mode message receive at least once every 2 seconds." ); break; } /* 156*/ +/*0157*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_PRIME_ACID_LINE_TIME_OUT : { result = QObject::tr("DG chemical disinfect prime acid line timeout." ); break; } /* 157*/ +/*0158*/case GuiAlarmID::ALARM_ID_INLET_WATER_TEMPERATURE_IN_LOW_RANGE : { result = QObject::tr("Inlet water temperature is in the low range." ); break; } /* 158*/ +/*0159*/case GuiAlarmID::ALARM_ID_DIAL_IN_PUMP_FLOW_VS_MOTOR_SPEED_CHECK : { result = QObject::tr("Dialysate inlet pump failed flow vs motor speed check." ); break; } /* 159*/ +/*0160*/case GuiAlarmID::ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH : { result = QObject::tr("Blood pump rotor speed too high." ); break; } /* 160*/ +/*0161*/case GuiAlarmID::ALARM_ID_DG_COMM_TOO_MANY_BAD_CRCS : { result = QObject::tr("DG comm too many bad CRCs." ); break; } /* 161*/ +/*0162*/case GuiAlarmID::ALARM_ID_DG_FPGA_CLOCK_SPEED_CHECK_FAILURE : { result = QObject::tr("DG FPGA clock speed check failure." ); break; } /* 162*/ +/*0163*/case GuiAlarmID::ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_1_ALARM : { result = QObject::tr("HD sees primary load cell for reservoir 1 change too much too fast." ); break; } /* 163*/ +/*0164*/case GuiAlarmID::ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_2_ALARM : { result = QObject::tr("HD sees primary load cell for reservoir 2 change too much too fast." ); break; } /* 164*/ +/*0165*/case GuiAlarmID::ALARM_ID_TREATMENT_RINSEBACK_TIMEOUT_ALARM : { result = QObject::tr("HD in treatment rinseback operation timeout." ); break; } /* 165*/ +/*0166*/case GuiAlarmID::ALARM_ID_TREATMENT_RECIRC_TIMEOUT_ALARM : { result = QObject::tr("HD in treatment re-circ sub-mode for too long." ); break; } /* 166*/ +/*0167*/case GuiAlarmID::ALARM_ID_CARTRIDGE_DOOR_OPENED : { result = QObject::tr("HD cartridge door opened alarm." ); break; } /* 167*/ +/*0168*/case GuiAlarmID::ALARM_ID_HD_ACTIVE_RESERVOIR_DEPLETION_TIME_OUT : { result = QObject::tr("HD active reservoir depletion timeout." ); break; } /* 168*/ +/*0169*/case GuiAlarmID::ALARM_ID_DIALYSATE_FLOW_RATE_OUT_OF_RANGE : { result = QObject::tr("Dialysate flow rate out of range." ); break; } /* 169*/ +/*0170*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SYRINGE_EMPTY : { result = QObject::tr("HD syringe empty alarm." ); break; } /* 170*/ +/*0171*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_OCCLUSION : { result = QObject::tr("HD syringe pump occlusion alarm." ); break; } /* 171*/ +/*0172*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_NOT_ENOUGH_HEPARIN_ALARM : { result = QObject::tr("HD syringe pump not enough Heparin alarm." ); break; } /* 172*/ +/*0173*/case GuiAlarmID::ALARM_ID_HD_RTC_CONFIG_ERROR : { result = QObject::tr("HD RTC configuration error." ); break; } /* 173*/ +/*0174*/case GuiAlarmID::ALARM_ID_HD_RTC_OR_TIMER_ACCURACY_FAILURE : { result = QObject::tr("HD RTC or timer accuracy failure." ); break; } /* 174*/ +/*0175*/case GuiAlarmID::ALARM_ID_HD_PUMP_DIRECTION_STATUS_ERROR : { result = QObject::tr("HD pump direction status error." ); break; } /* 175*/ +/*0176*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_TEMP_OUT_OF_HIGH_SAFETY_RANGE : { result = QObject::tr("HD dialysate temperature out of high safety range." ); break; } /* 176*/ +/*0177*/case GuiAlarmID::ALARM_ID_DG_SOFTWARE_FAULT : { result = QObject::tr("DG software fault.\nSoftware found itself in an unexpected state." ); break; } /* 177*/ +/*0178*/case GuiAlarmID::ALARM_ID_HD_COMM_TIMEOUT : { result = QObject::tr("HD communication timeout." ); break; } /* 178*/ +/*0179*/case GuiAlarmID::ALARM_ID_DG_FPGA_COMM_TIMEOUT : { result = QObject::tr("DG FPGA communication down for too long." ); break; } /* 179*/ +/*0180*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_ADC_ERROR : { result = QObject::tr("DG load cell ADC error." ); break; } /* 180*/ +/*0181*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELLS_TARE_WEIGHT_OUT_OF_RANGE : { result = QObject::tr("DG load cells weight out of range for tare." ); break; } /* 181*/ +/*0182*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELLS_INVALID_CAL_RECORD : { result = QObject::tr("DG load cells invalid calibration." ); break; } /* 182*/ +/*0183*/case GuiAlarmID::ALARM_ID_DG_INVALID_LOAD_CELL_VALUE : { result = QObject::tr("DG invalid load cell value." ); break; } /* 183*/ +/*0184*/case GuiAlarmID::ALARM_ID_UV_REACTOR_NOT_HEALTHY : { result = QObject::tr("Inlet or Outlet UV reactor not healthy." ); break; } /* 184*/ +/*0185*/case GuiAlarmID::ALARM_ID_DG_FAN_RPM_OUT_OF_RANGE : { result = QObject::tr("DG fan RPM out of range." ); break; } /* 185*/ +/*0186*/case GuiAlarmID::ALARM_ID_DG_CONCENTRATE_PUMP_FAULT : { result = QObject::tr("DG concentrate pump fault." ); break; } /* 186*/ +/*0187*/case GuiAlarmID::ALARM_ID_CP1_SPEED_CONTROL_ERROR : { result = QObject::tr("DG concentrate pump CP1 speed control error." ); break; } /* 187*/ +/*0188*/case GuiAlarmID::ALARM_ID_CP2_SPEED_CONTROL_ERROR : { result = QObject::tr("DG concentrate pump CP2 speed control error." ); break; } /* 188*/ +/*0189*/case GuiAlarmID::ALARM_ID_DRAIN_PUMP_RPM_OUT_OF_RANGE : { result = QObject::tr("DG drain pump RPM out of range." ); break; } /* 189*/ +/*0190*/case GuiAlarmID::ALARM_ID_DRAIN_PUMP_OFF_FAULT : { result = QObject::tr("DG drain pump off fault." ); break; } /* 190*/ +/*0191*/case GuiAlarmID::ALARM_ID_FLOW_RATE_OUT_OF_UPPER_RANGE : { result = QObject::tr("DG flow rate out of upper range." ); break; } /* 191*/ +/*0192*/case GuiAlarmID::ALARM_ID_FLOW_RATE_OUT_OF_LOWER_RANGE : { result = QObject::tr("DG flow rate out of lower range." ); break; } /* 192*/ +/*0193*/case GuiAlarmID::ALARM_ID_HD_DIALYSATE_TEMP_OUT_OF_LOW_SAFETY_RANGE : { result = QObject::tr("HD dialysate temperature out of low safety range." ); break; } /* 193*/ +/*0194*/case GuiAlarmID::ALARM_ID_RO_PUMP_DUTY_CYCLE_OUT_OF_RANGE : { result = QObject::tr("DG RO pump duty cycle out of range." ); break; } /* 194*/ +/*0195*/case GuiAlarmID::ALARM_ID_RO_PUMP_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("DG RO pump pressure out of range." ); break; } /* 195*/ +/*0196*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSOR_ERROR_BIT_FAULT : { result = QObject::tr("DG temperature sensor error bit fault." ); break; } /* 196*/ +/*0197*/case GuiAlarmID::ALARM_ID_DG_TEMPERATURE_SENSORS_FPGA_FAULT : { result = QObject::tr("DG temperature sensors FPGA fault." ); break; } /* 197*/ +/*0198*/case GuiAlarmID::ALARM_ID_RO_FLOW_TOO_LOW_WHILE_PRIMARY_HEATER_IS_ON : { result = QObject::tr("RO flow too low while primary heater is on." ); break; } /* 198*/ +/*0199*/case GuiAlarmID::ALARM_ID_DIALYSATE_FLOW_TOO_LOW_WHILE_TRIMMER_HEATER_IS_ON : { result = QObject::tr("Dialysate flow too low while trimmer heater is on." ); break; } /* 199*/ +/*0200*/case GuiAlarmID::ALARM_ID_DG_THERMISTORS_TEMPERATURE_OUT_OF_RANGE : { result = QObject::tr("DG thermistors/sensors temperature out of range." ); break; } /* 200*/ +/*0201*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_WET_FLOW_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode wet self-test lc vs FMD failure." ); break; } /* 201*/ +/*0202*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_DRY_PRESSURE_NORMAL_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode dry pressure normal self-test failure." ); break; } /* 202*/ +/*0203*/case GuiAlarmID::ALARM_ID_PRESSURE_SENSOR_FAULT : { result = QObject::tr("Pressure sensor fault." ); break; } /* 203*/ +/*0204*/case GuiAlarmID::ALARM_ID_RO_REJECTION_RATIO_OUT_OF_RANGE : { result = QObject::tr("RO rejection ratio out of range." ); break; } /* 204*/ +/*0205*/case GuiAlarmID::ALARM_ID_CONDUCTIVITY_SENSOR_FAULT : { result = QObject::tr("Conductivity sensor fault." ); break; } /* 205*/ +/*0206*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_FILL_OUT_OF_TIME : { result = QObject::tr("DG dialysate fill runs out of time." ); break; } /* 206*/ +/*0207*/case GuiAlarmID::ALARM_ID_DG_FLOW_METER_CHECK_FAILURE : { result = QObject::tr("DG flow meter check failure alarm." ); break; } /* 207*/ +/*0208*/case GuiAlarmID::ALARM_ID_HD_VENOUS_LINE_OCCLUSION : { result = QObject::tr("HD venous pressure occlusion alarm." ); break; } /* 208*/ +/*0209*/case GuiAlarmID::ALARM_ID_DG_DRAIN_CIRCULATION_LINE_TIMEOUT : { result = QObject::tr("DG drain circulation line timeout." ); break; } /* 209*/ +/*0210*/case GuiAlarmID::ALARM_ID_HD_BATTERY_PACK_ERROR_DETECTED : { result = QObject::tr("HD battery pack detected an error." ); break; } /* 210*/ +/*0211*/case GuiAlarmID::ALARM_ID_BLOOD_SITTING_WARNING : { result = QObject::tr("Blood sitting too long warning (>4 min)." ); break; } /* 211*/ +/*0212*/case GuiAlarmID::ALARM_ID_END_OF_TREATMENT_ALARM : { result = QObject::tr("HD end of treatment alarm (user not acting to end treatment)." ); break; } /* 212*/ +/*0213*/case GuiAlarmID::ALARM_ID_PRIME_COMPLETED_MEDIUM : { result = QObject::tr("HD prime completed medium priority alarm." ); break; } /* 213*/ +/*0214*/case GuiAlarmID::ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE : { result = QObject::tr("HD Saline bolus volume check failure." ); break; } /* 214*/ +/*0215*/case GuiAlarmID::ALARM_ID_RINSEBACK_VOLUME_CHECK_FAILURE : { result = QObject::tr("HD rinseback volume check failure." ); break; } /* 215*/ +/*0216*/case GuiAlarmID::ALARM_ID_END_TREATMENT_TIMEOUT_ALARM : { result = QObject::tr("HD end treatment sub-mode timeout alarm." ); break; } /* 216*/ +/*0217*/case GuiAlarmID::ALARM_ID_BLOOD_PRIME_VOLUME_CHECK_FAILURE : { result = QObject::tr("HD blood prime volume check failure." ); break; } /* 217*/ +/*0218*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_DETECTED : { result = QObject::tr("HD syringe detected alarm." ); break; } /* 218*/ +/*0219*/case GuiAlarmID::ALARM_ID_HD_SYRINGE_PUMP_SYRINGE_REMOVED : { result = QObject::tr("HD syringe pump syringe removed alarm." ); break; } /* 219*/ +/*0220*/case GuiAlarmID::ALARM_ID_DG_THD_SENSORS_FPGA_FAULT : { result = QObject::tr("DG THd sensors FPGA fault." ); break; } /* 220*/ +/*0221*/case GuiAlarmID::ALARM_ID_EMPTY_SALINE_BAG : { result = QObject::tr("HD Saline bag is empty." ); break; } /* 221*/ +/*0222*/case GuiAlarmID::ALARM_ID_DIALYSATE_TEMPERATURE_HIGH : { result = QObject::tr("HD dialysate temperature too high alarm." ); break; } /* 222*/ +/*0223*/case GuiAlarmID::ALARM_ID_DIALYSATE_TEMPERATURE_LOW : { result = QObject::tr("HD dialysate temperature too low alarm." ); break; } /* 223*/ +/*0224*/case GuiAlarmID::ALARM_ID_TREATMENT_STOPPED_BY_USER : { result = QObject::tr("Treatment stopped by user action." ); break; } /* 224*/ +/*0225*/case GuiAlarmID::ALARM_ID_END_OF_TREATMENT_WARNING : { result = QObject::tr("HD end of treatment warning." ); break; } /* 225*/ +/*0226*/case GuiAlarmID::ALARM_ID_PRIME_COMPLETED_LOW_PRIORITY : { result = QObject::tr("HD prime completed low priority alarm." ); break; } /* 226*/ +/*0227*/case GuiAlarmID::ALARM_ID_PRIME_OUT_OF_TIME : { result = QObject::tr("HD prime out of time alarm." ); break; } /* 227*/ +/*0228*/case GuiAlarmID::ALARM_ID_HD_PRIME_SALINE_PURGE_AIR_TIME_OUT : { result = QObject::tr("HD time out on prime saline purge air state." ); break; } /* 228*/ +/*0229*/case GuiAlarmID::ALARM_ID_PRIME_DIALYSATE_DIALYZER_TIME_OUT : { result = QObject::tr("HD prime dialysate dialyzer time out alarm." ); break; } /* 229*/ +/*0230*/case GuiAlarmID::ALARM_ID_PRIME_DIALYSATE_BYPASS_TIME_OUT : { result = QObject::tr("HD prime dialysate bypass time out alarm." ); break; } /* 230*/ +/*0231*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_DRY_PRESSURE_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode dry pressure self-test failure." ); break; } /* 231*/ +/*0232*/case GuiAlarmID::ALARM_ID_PRE_TREATMENT_WET_LC_TEST_FAILURE : { result = QObject::tr("HD pre-treatment mode wet self-test LC vs LC failure." ); break; } /* 232*/ +/*0233*/case GuiAlarmID::ALARM_ID_DG_BAROMETRIC_SENSOR_COEFFS_BAD_CRC : { result = QObject::tr("DG barometric sensor coefficients bad CRC." ); break; } /* 233*/ +/*0234*/case GuiAlarmID::ALARM_ID_RTC_RAM_OPS_ERROR : { result = QObject::tr("RTC (i.e read time) or RAM operations failure (read or write)." ); break; } /* 234*/ +/*0235*/case GuiAlarmID::ALARM_ID_TREATMENT_STOPPED_AFTER_RINSEBACK : { result = QObject::tr("HD in treatment stopped sub-mode after rinseback completed (no escalation)." ); break; } /* 235*/ +/*0236*/case GuiAlarmID::ALARM_ID_INSTALL_NEW_CARTRIDGE : { result = QObject::tr("HD needs new cartridge to be installed." ); break; } /* 236*/ +/*0237*/case GuiAlarmID::ALARM_ID_PRIME_SALINE_DIALYZER_TIME_OUT : { result = QObject::tr("HD prime saline dialyzer time out alarm." ); break; } /* 237*/ +/*0238*/case GuiAlarmID::ALARM_ID_NO_CARTRIDGE_LOADED : { result = QObject::tr("HD no cartridge loaded or installed improperly alarm." ); break; } /* 238*/ +/*0239*/case GuiAlarmID::ALARM_ID_CARTRIDGE_REMOVAL_FAILURE : { result = QObject::tr("HD fail to remove cartridge alarm." ); break; } /* 239*/ +/*0240*/case GuiAlarmID::ALARM_ID_BICARB_CONDUCTIVITY_OUT_OF_RANGE : { result = QObject::tr("Bicarb conductivity out of range during bicarb pump check alarm." ); break; } /* 240*/ +/*0241*/case GuiAlarmID::ALARM_ID_DG_RESERVOIR_DRAIN_TIMEOUT : { result = QObject::tr("DG reservoir drain time out." ); break; } /* 241*/ +/*0242*/case GuiAlarmID::ALARM_ID_DG_RESERVOIR_FILL_TIMEOUT : { result = QObject::tr("DG reservoir fill time out." ); break; } /* 242*/ +/*0243*/case GuiAlarmID::ALARM_ID_DG_RESERVOIR_LEAK_TIMEOUT : { result = QObject::tr("DG reservoir leak time out." ); break; } /* 243*/ +/*0244*/case GuiAlarmID::ALARM_ID_DG_TEMP_SENSORS_DIFF_OUT_OF_RANGE : { result = QObject::tr("DG temperature sensors difference out of range." ); break; } /* 244*/ +/*0245*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_TARGET_TEMP_TIMEOUT : { result = QObject::tr("DG heat disinfect target temperature time out (could not reach to temperature)." ); break; } /* 245*/ +/*0246*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_INLET_PRES_AND_TEMP_SNSRS_OUT : { result = QObject::tr("DG heat disinfect inlet pressure and temperature sensors out of range." ); break; } /* 246*/ +/*0247*/case GuiAlarmID::ALARM_ID_DG_HEAT_DISINFECT_INLET_COND_AND_TEMP_OUT : { result = QObject::tr("DG heat disinfect inlet conductivity and temperature out of range." ); break; } /* 247*/ +/*0248*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_TARGET_TEMP_TIMEOUT : { result = QObject::tr("DG chemical disinfect could not reach to target temperature." ); break; } /* 248*/ +/*0249*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_INLET_PRES_AND_TEMP_SNSRS_OUT : { result = QObject::tr("DG chemical disinfect inlet pressure and temperature sensors out of range." ); break; } /* 249*/ +/*0250*/case GuiAlarmID::ALARM_ID_DG_CHEM_DISINFECT_INLET_COND_AND_TEMP_OUT : { result = QObject::tr("DG chemical disinfect inlet conductivity and temperature out of range." ); break; } /* 250*/ +/*0251*/case GuiAlarmID::ALARM_ID_HD_INVALID_SYSTEM_RECORD_CRC : { result = QObject::tr("HD invalid system record." ); break; } /* 251*/ +/*0252*/case GuiAlarmID::ALARM_ID_HD_INVALID_SERVICE_RECORD_CRC : { result = QObject::tr("HD invalid service record." ); break; } /* 252*/ +/*0253*/case GuiAlarmID::ALARM_ID_DG_INVALID_SYSTEM_RECORD_CRC : { result = QObject::tr("DG invalid system record." ); break; } /* 253*/ +/*0254*/case GuiAlarmID::ALARM_ID_DG_INVALID_SERVICE_RECORD_CRC : { result = QObject::tr("DG invalid service record." ); break; } /* 254*/ +/*0255*/case GuiAlarmID::ALARM_ID_HD_UI_COMPATIBILITY_ERROR : { result = QObject::tr("HD and UI software builds are not compatible." ); break; } /* 255*/ +/*0256*/case GuiAlarmID::ALARM_ID_HD_DG_COMPATIBILITY_ERROR : { result = QObject::tr("HD and DG software builds are not compatible." ); break; } /* 256*/ +/*0257*/case GuiAlarmID::ALARM_ID_DG_FPGA_POWER_OUT_TIMEOUT : { result = QObject::tr("DG FPGA power out timeout." ); break; } /* 257*/ +/*0258*/case GuiAlarmID::ALARM_ID_HD_FPGA_POWER_OUT_TIMEOUT : { result = QObject::tr("HD FPGA power out timeout." ); break; } /* 258*/ +/*0259*/case GuiAlarmID::ALARM_ID_HD_TEMPERATURES_OUT_OF_RANGE : { result = QObject::tr("HD temperatures out of range." ); break; } /* 259*/ +/*0260*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_SHASUM : { result = QObject::tr("UI POST Application Integrity (Sha256Sum) failure." ); break; } /* 260*/ +/*0261*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_CANBUS : { result = QObject::tr("UI POST CANBus failure." ); break; } /* 261*/ +/*0262*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_DISPLAY : { result = QObject::tr("UI POST Display failure." ); break; } /* 262*/ +/*0263*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_TOUCH : { result = QObject::tr("UI POST Touch failure." ); break; } /* 263*/ +/*0264*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_SDCARD : { result = QObject::tr("UI POST SD-Card failure." ); break; } /* 264*/ +/*0265*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_RTC : { result = QObject::tr("UI POST RTC failure." ); break; } /* 265*/ +/*0266*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_WIFI : { result = QObject::tr("UI POST WiFi failure." ); break; } /* 266*/ +/*0267*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_BLUETOOTH : { result = QObject::tr("UI POST Bluetooth failure." ); break; } /* 267*/ +/*0268*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_ETHERNET : { result = QObject::tr("UI POST Ethernet failure." ); break; } /* 268*/ +/*0269*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_SOUND : { result = QObject::tr("UI POST Sound failure." ); break; } /* 269*/ +/*0270*/case GuiAlarmID::ALARM_ID_HD_SAFETY_SHUTDOWN_POST_TEST_FAILED : { result = QObject::tr("HD POST Safety Shutdown failure." ); break; } /* 270*/ +/*0271*/case GuiAlarmID::ALARM_ID_DG_SAFETY_SHUTDOWN_POST_TEST_FAILED : { result = QObject::tr("DG POST Safety Shutdown failure." ); break; } /* 271*/ +/*0272*/case GuiAlarmID::ALARM_ID_HD_FAN_RPM_OUT_OF_RANGE : { result = QObject::tr("HD Fan RPM out of range." ); break; } /* 272*/ +/*0273*/case GuiAlarmID::ALARM_ID_HD_BLOOD_FLOW_OUT_OF_RANGE : { result = QObject::tr("HD measured blood pump flow rate is out of range." ); break; } /* 273*/ +/*0274*/case GuiAlarmID::ALARM_ID_HD_DIAL_IN_FLOW_OUT_OF_RANGE : { result = QObject::tr("HD measured dialysate inlet pump flow rate is out of range." ); break; } /* 274*/ +/*0275*/case GuiAlarmID::ALARM_ID_HD_ARTERIAL_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("HD arterial pressure sensor is reading out of range." ); break; } /* 275*/ +/*0276*/case GuiAlarmID::ALARM_ID_HD_VENOUS_PRESSURE_OUT_OF_RANGE : { result = QObject::tr("HD venous pressure sensor is reading out of range." ); break; } /* 276*/ +/*0277*/case GuiAlarmID::ALARM_ID_HD_BP_OCCLUSION_OUT_OF_RANGE : { result = QObject::tr("HD BP occlusion sensor is reading out of range." ); break; } /* 277*/ +/*0278*/case GuiAlarmID::ALARM_ID_HD_ACTIVE_RESERVOIR_WEIGHT_OUT_OF_RANGE : { result = QObject::tr("HD active reservoir weight out of range." ); break; } /* 278*/ +/*0279*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_DRAIN_TIME_OUT : { result = QObject::tr("DG dialysate drain time out." ); break; } /* 279*/ +/*0280*/case GuiAlarmID::ALARM_ID_HD_ARTERIAL_PRESSURE_READ_TIMEOUT_ERROR : { result = QObject::tr("HD arterial pressure sensor read timeout error." ); break; } /* 280*/ +/*0281*/case GuiAlarmID::ALARM_ID_DG_ACID_BOTTLE_LOW_VOLUME : { result = QObject::tr("Acid concentration bottle low volume alarm." ); break; } /* 281*/ +/*0282*/case GuiAlarmID::ALARM_ID_DG_BICARB_BOTTLE_LOW_VOLUME : { result = QObject::tr("Bicarbonate concentration bottle low volume alarm." ); break; } /* 282*/ +/*0283*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_WEIGHT_OUT_OF_RANGE : { result = QObject::tr("DG load cells weight out of range." ); break; } /* 283*/ +/*0284*/case GuiAlarmID::ALARM_ID_DG_LOAD_CELL_PRIMARY_BACKUP_DRIFT_OUT_OF_RANGE : { result = QObject::tr("DG load cells primary/back up drift out of range." ); break; } /* 284*/ +/*0285*/case GuiAlarmID::ALARM_ID_HD_TREATMENT_RECIRC_TIMEOUT_WARNING : { result = QObject::tr("HD treatment recirculate timeout warning." ); break; } /* 285*/ +/*0286*/case GuiAlarmID::ALARM_ID_HD_TREATMENT_RINSEBACK_TIMEOUT_WARNING : { result = QObject::tr("HD treatment rinseback complete timeout warning." ); break; } /* 286*/ +/*0287*/case GuiAlarmID::ALARM_ID_HD_FPGA_CLOCK_SPEED_CHECK_FAILURE : { result = QObject::tr("HD processor clock speed checks against FPGA clock failure." ); break; } /* 287*/ +/*0288*/case GuiAlarmID::ALARM_ID_HD_LOAD_CELL_PRIMARY_BACKUP_DRIFT_OUT_OF_RANGE : { result = QObject::tr("HD load cells primary/back up drift out of range." ); break; } /* 288*/ +/*0289*/case GuiAlarmID::ALARM_ID_DG_DIALYSATE_OR_CONC_CAP_NOT_IN_PROPER_POSITION : { result = QObject::tr("DG dialysate or concentrate caps not closed." ); break; } /* 289*/ +/*0290*/case GuiAlarmID::ALARM_ID_DG_FLOW_TOO_LOW_WHILE_HEATER_ON : { result = QObject::tr("DG flow too low while heater is on." ); break; } /* 290*/ +/*0291*/case GuiAlarmID::ALARM_ID_HD_DISINFECT_FLUSH : { result = QObject::tr("HD processor is in Disinfect Flush mode." ); break; } /* 291*/ +/*0292*/case GuiAlarmID::ALARM_ID_HD_DISINFECT_HEAT : { result = QObject::tr("HD processor is in Disinfect Heat mode." ); break; } /* 292*/ +/*0293*/case GuiAlarmID::ALARM_ID_HD_DISINFECT_CHEM : { result = QObject::tr("HD processor is in Disinfect Chemical mode." ); break; } /* 293*/ +/*0294*/case GuiAlarmID::ALARM_ID_HD_DISINFECT_CHEM_INSTRUCTION1 : { result = QObject::tr("HD processor Disinfect Chemical mode instructions to user." ); break; } /* 294*/ +/*0295*/case GuiAlarmID::ALARM_ID_UI_POST_FAILURE_CLOUDSYNC : { result = QObject::tr("UI POST CloudSync failure." ); break; } /* 295*/ +/*0296*/case GuiAlarmID::ALARM_ID_DG_TDI_SENSORS_FPGA_FAULT : { result = QObject::tr("DG TDi sensors FPGA fault." ); break; } /* 296*/ +/*0297*/case GuiAlarmID::ALARM_ID_DG_TRO_SENSORS_FPGA_FAULT : { result = QObject::tr("DG TRo sensors FPGA fault." ); break; } /* 297*/ +/*0298*/case GuiAlarmID::ALARM_ID_DG_BARO_SENSOR_FPGA_FAULT : { result = QObject::tr("DG baro sensor FPGA fault." ); break; } /* 298*/ +/*0299*/case GuiAlarmID::ALARM_ID_DG_DISINFECT_HAS_BEEN_EXPIRED : { result = QObject::tr("DG disinfect has been expired." ); break; } /* 299*/ +/*0300*/case GuiAlarmID::ALARM_ID_DG_SERIVCE_TIME_INTERVAL_HAS_ELAPSED : { result = QObject::tr("DG service time interval has elapsed." ); break; } /* 300*/ +/*0301*/case GuiAlarmID::ALARM_ID_DG_PRIMARY_HEATER_POWER_VOLTAGE_OUT_OF_RANGE : { result = QObject::tr("DG primary heater power voltage out of range." ); break; } /* 301*/ +/*0302*/case GuiAlarmID::ALARM_ID_DG_CPU_RAM_ERROR : { result = QObject::tr("DG processor RAM error." ); break; } /* 302*/ +/*0303*/case GuiAlarmID::NUM_OF_ALARM_IDS : { result = QObject::tr("Total number of alarms." ); break; } /* 303*/ default: result = QObject::tr("ALARM_ID_UNDEFINED [%1]").arg(int(vAlarmID)); Index: sources/view/hd/adjustment/treatment/VTreatmentAdjustmentUltrafiltrationState.cpp =================================================================== diff -u -r27cc308ff5113a9386899d3c8f8b29962a8498e1 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/view/hd/adjustment/treatment/VTreatmentAdjustmentUltrafiltrationState.cpp (.../VTreatmentAdjustmentUltrafiltrationState.cpp) (revision 27cc308ff5113a9386899d3c8f8b29962a8498e1) +++ sources/view/hd/adjustment/treatment/VTreatmentAdjustmentUltrafiltrationState.cpp (.../VTreatmentAdjustmentUltrafiltrationState.cpp) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -29,7 +29,7 @@ adjustment_Accepted ( vData.mAccepted ); adjustment_Reason ( vData.mReason ); - state ( vData.mState ); + state ( vData.mUFState ); // *** has to be the last to let the information to be set and then emit the signal *** // *** otherwise will use the previous values before being set. *** Index: sources/view/hd/data/pretreatment/VPreTreatmentStatesData.cpp =================================================================== diff -u -r79a6cfcb10472261f3ec26eaf0baf6f1245cd311 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/view/hd/data/pretreatment/VPreTreatmentStatesData.cpp (.../VPreTreatmentStatesData.cpp) (revision 79a6cfcb10472261f3ec26eaf0baf6f1245cd311) +++ sources/view/hd/data/pretreatment/VPreTreatmentStatesData.cpp (.../VPreTreatmentStatesData.cpp) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -94,7 +94,9 @@ selfTestDry_usedCartridge ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_USED_CARTRIDGE_CHECK_STATE ); selfTestDry_occlusionSensors ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE ); selfTestDry_pressureSensorsSetup ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_PRESSURE_SENSORS_SETUP_STATE ); - selfTestDry_pressureSensors ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_PRESSURE_SENSORS_STATE ); + selfTestDry_pressureSensorsPressurized ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_PRESSURE_SENSORS_PRESSURIZED_STATE ); + selfTestDry_pressureSensorsDecay ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_PRESSURE_SENSORS_DECAY_STATE ); + selfTestDry_pressureSensorsStability ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_PRESSURE_SENSORS_STABILITY_STATE ); selfTestDry_pressureSensorsNormal ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE ); selfTestDry_syringePump ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE ); selfTestDry_syringePumpOcclusionDetection ( vData.mSelfTestDryState == GuiPreTreatmentSelfTestDryStates ::DRY_SELF_TESTS_SYRINGE_PUMP_OCCLUSION_DETECTION_STATE ); Index: sources/view/hd/data/pretreatment/VPreTreatmentStatesData.h =================================================================== diff -u -r79a6cfcb10472261f3ec26eaf0baf6f1245cd311 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/view/hd/data/pretreatment/VPreTreatmentStatesData.h (.../VPreTreatmentStatesData.h) (revision 79a6cfcb10472261f3ec26eaf0baf6f1245cd311) +++ sources/view/hd/data/pretreatment/VPreTreatmentStatesData.h (.../VPreTreatmentStatesData.h) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -92,7 +92,9 @@ STATE ( bool , selfTestDry_usedCartridge , false ) ///< DRY_SELF_TESTS_USED_CARTRIDGE_CHECK_STATE , Used Cartridge self-test state. STATE ( bool , selfTestDry_occlusionSensors , false ) ///< DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE , Occlusion sensors dry self-test state. STATE ( bool , selfTestDry_pressureSensorsSetup , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_SETUP_STATE , Pressure sensors dry self-test setup valves and pump state. - STATE ( bool , selfTestDry_pressureSensors , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_STATE , Pressure sensors verify pressure readings state. + STATE ( bool , selfTestDry_pressureSensorsPressurized , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_PRESSURIZED_STATE, Pressure sensors verify pressure readings state + STATE ( bool , selfTestDry_pressureSensorsDecay , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_DECAY_STATE , Pressure sensors verify pressure loss state + STATE ( bool , selfTestDry_pressureSensorsStability , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_STABILITY_STATE , Pressure sensors verify pressure stability state STATE ( bool , selfTestDry_pressureSensorsNormal , false ) ///< DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE , Pressure sensors verify normal pressure readings state. STATE ( bool , selfTestDry_syringePump , false ) ///< DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE , Prime syringe pump state STATE ( bool , selfTestDry_syringePumpOcclusionDetection, false ) ///< DRY_SELF_TESTS_SYRINGE_PUMP_OCCLUSION_DETECTION_STATE , Occlusion detection state Index: sources/view/hd/data/treatment/VHDTreatmentStatesData.cpp =================================================================== diff -u -r79a6cfcb10472261f3ec26eaf0baf6f1245cd311 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/view/hd/data/treatment/VHDTreatmentStatesData.cpp (.../VHDTreatmentStatesData.cpp) (revision 79a6cfcb10472261f3ec26eaf0baf6f1245cd311) +++ sources/view/hd/data/treatment/VHDTreatmentStatesData.cpp (.../VHDTreatmentStatesData.cpp) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -13,10 +13,21 @@ * */ #include "VHDTreatmentStatesData.h" +#include // Project #include "GuiController.h" +//ENUM Checks +//TODO: ---------- Improve me ---------- +// This part of the code is a WIP example to fail the build if the enum is changed but UI doesn't aware. +#define ENUM_PRINT( vTYPE ) {} // qDebug() << v##vTYPE +#define ENUM_CHECK_O( vTYPE, vVALUE ) vTYPE v##vTYPE = static_cast(vVALUE); switch(v##vTYPE) +#define ENUM_CHECK( vTYPE, vENUM ) case vTYPE::vENUM : { if ( vTYPE::vENUM == v##vTYPE) ENUM_PRINT(vTYPE); } break; +#define ENUM_CHECK_C( vTYPE, vENUM ) case vTYPE::vENUM : break; +#define ENUM_READ( vTYPE, vENUM, vSTATE ) vSTATE( vTYPE::vENUM == v##vTYPE); + + VIEW_DEF_CLASS(VHDTreatmentStates) /*! @@ -50,41 +61,71 @@ salineState ( vData.mSalineState ); // Ultrafiltration states - ufStart ( vData.mUFState == GuiUFStates ::UF_START_STATE ); - ufPaused ( vData.mUFState == GuiUFStates ::UF_PAUSED_STATE ); - ufRunning ( vData.mUFState == GuiUFStates ::UF_RUNNING_STATE ); + ENUM_CHECK_O( GuiUFStates, vData.mUFState ) { + ENUM_CHECK ( GuiUFStates, UF_START_STATE ) + ENUM_CHECK ( GuiUFStates, UF_PAUSED_STATE ) + ENUM_CHECK ( GuiUFStates, UF_RUNNING_STATE ) + ENUM_CHECK_C( GuiUFStates, NUM_OF_UF_STATES ) } + ENUM_READ ( GuiUFStates, UF_START_STATE , ufStart ); + ENUM_READ ( GuiUFStates, UF_PAUSED_STATE , ufPaused ); + ENUM_READ ( GuiUFStates, UF_RUNNING_STATE, ufRunning ); // Saline Bolus states - sbIdle ( vData.mSalineState == GuiSalineStates ::SALINE_BOLUS_STATE_IDLE ); - sbWaitPump ( vData.mSalineState == GuiSalineStates ::SALINE_BOLUS_STATE_WAIT_FOR_PUMPS_STOP ); - sbRunning ( vData.mSalineState == GuiSalineStates ::SALINE_BOLUS_STATE_IN_PROGRESS ); - sbMaxReached ( vData.mSalineState == GuiSalineStates ::SALINE_BOLUS_STATE_MAX_DELIVERED ); + ENUM_CHECK_O( GuiSalineStates, vData.mSalineState ) { + ENUM_CHECK ( GuiSalineStates, SALINE_BOLUS_STATE_IDLE ) + ENUM_CHECK ( GuiSalineStates, SALINE_BOLUS_STATE_WAIT_FOR_PUMPS_STOP ) + ENUM_CHECK ( GuiSalineStates, SALINE_BOLUS_STATE_IN_PROGRESS ) + ENUM_CHECK ( GuiSalineStates, SALINE_BOLUS_STATE_MAX_DELIVERED ) + ENUM_CHECK_C( GuiSalineStates, NUM_OF_SALINE_BOLUS_STATES ) } + ENUM_READ ( GuiSalineStates, SALINE_BOLUS_STATE_IDLE , sbIdle ); + ENUM_READ ( GuiSalineStates, SALINE_BOLUS_STATE_WAIT_FOR_PUMPS_STOP , sbWaitPump ); + ENUM_READ ( GuiSalineStates, SALINE_BOLUS_STATE_IN_PROGRESS , sbRunning ); + ENUM_READ ( GuiSalineStates, SALINE_BOLUS_STATE_MAX_DELIVERED , sbMaxReached ); // Heparin States _heparin = false; - hpOff ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_OFF ); _heparin = _heparin || _hpOff ; - hpStopped ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_STOPPED ); _heparin = _heparin || _hpStopped ; - hpPaused ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_PAUSED ); _heparin = _heparin || _hpPaused ; - hpInitial_bolus ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_INITIAL_BOLUS ); _heparin = _heparin || _hpInitial_bolus ; - hpDispensing ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_DISPENSING ); _heparin = _heparin || _hpDispensing ; - hpCompleted ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_COMPLETED ); _heparin = _heparin || _hpCompleted ; - hpEmpty ( vData.mHeparinState == GuiHeparinStates ::HEPARIN_STATE_EMPTY ); _heparin = _heparin || _hpEmpty ; + ENUM_CHECK_O( GuiHeparinStates, vData.mHeparinState ) { + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_OFF ) + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_STOPPED ) + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_PAUSED ) + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_INITIAL_BOLUS ) + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_DISPENSING ) + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_COMPLETED ) + ENUM_CHECK ( GuiHeparinStates, HEPARIN_STATE_EMPTY ) + ENUM_CHECK_C( GuiHeparinStates, NUM_OF_HEPARIN_STATES ) } + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_OFF , hpOff ); _heparin = _heparin || _hpOff ; + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_STOPPED , hpStopped ); _heparin = _heparin || _hpStopped ; + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_PAUSED , hpPaused ); _heparin = _heparin || _hpPaused ; + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_INITIAL_BOLUS , hpInitial_bolus ); _heparin = _heparin || _hpInitial_bolus ; + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_DISPENSING , hpDispensing ); _heparin = _heparin || _hpDispensing ; + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_COMPLETED , hpCompleted ); _heparin = _heparin || _hpCompleted ; + ENUM_READ ( GuiHeparinStates, HEPARIN_STATE_EMPTY , hpEmpty ); _heparin = _heparin || _hpEmpty ; emit heparinChanged(_heparin); // Treatment states + ENUM_CHECK_O( GuiTreatmentStates, vData.mSubMode ) { + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_START_STATE ) + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_BLOOD_PRIME_STATE ) + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_DIALYSIS_STATE ) + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_STOP_STATE ) + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_RINSEBACK_STATE ) + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_RECIRC_STATE ) + ENUM_CHECK ( GuiTreatmentStates, TREATMENT_END_STATE ) + ENUM_CHECK_C( GuiTreatmentStates, NUM_OF_TREATMENT_STATES ) } // Treatment states - Basics - txStart ( vData.mSubMode == GuiTreatmentStates ::TREATMENT_START_STATE ); + ENUM_READ ( GuiTreatmentStates, TREATMENT_START_STATE , txStart ); // Treatment states - Dialysis - txDialysis ( vData.mSubMode == GuiTreatmentStates ::TREATMENT_DIALYSIS_STATE ); + ENUM_READ ( GuiTreatmentStates, TREATMENT_DIALYSIS_STATE , txDialysis ); + // TODO : Check with Qt.5.15.10 // NOTE : For Rinseback and Recirculate // 1 - it seems we may never need the txRinseback // since in the Rinseback state parameter of the Treatment State the first state of each has the same meaning // it may only be used to know when those parameters have valid values to update the properties. // Kept for now because cannot be sure that it will change later or not. // 2 - if there could be a way to export enums to qml and qml can raise an error if an incorrect enum used, - // then it would is absolutely preferred to use enum instead of properties + // then it would be absolutely preferred to use enum instead of properties // currently if just one property being defined/used to send the current state to the qml, there is no way to make sure if incorrect/undefined // enum is used or not. // in Qt user/developer can literally type GuiActions.abcdefg and qml will never complain and only if compared with the state will return false. @@ -93,42 +134,68 @@ // Rinseback states bool mRinseback = vData.mSubMode == GuiTreatmentStates ::TREATMENT_RINSEBACK_STATE ; if ( mRinseback ) { - rbInit ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_STOP_INIT_STATE ); - rbRun ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_RUN_STATE ); - rbPaused ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_PAUSED_STATE ); - rbStop ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_STOP_STATE ); - rbAdditional ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_RUN_ADDITIONAL_STATE ); + ENUM_CHECK_O( GuiRinsebackStates, vData.mRinsebackState ) { + ENUM_CHECK ( GuiRinsebackStates, RINSEBACK_STOP_INIT_STATE ) + ENUM_CHECK ( GuiRinsebackStates, RINSEBACK_RUN_STATE ) + ENUM_CHECK ( GuiRinsebackStates, RINSEBACK_PAUSED_STATE ) + ENUM_CHECK ( GuiRinsebackStates, RINSEBACK_STOP_STATE ) + ENUM_CHECK ( GuiRinsebackStates, RINSEBACK_RUN_ADDITIONAL_STATE ) + ENUM_CHECK_C( GuiRinsebackStates, NUM_OF_RINSEBACK_STATES ) } + ENUM_READ ( GuiRinsebackStates, RINSEBACK_STOP_INIT_STATE , rbInit ); + ENUM_READ ( GuiRinsebackStates, RINSEBACK_RUN_STATE , rbRun ); + ENUM_READ ( GuiRinsebackStates, RINSEBACK_PAUSED_STATE , rbPaused ); + ENUM_READ ( GuiRinsebackStates, RINSEBACK_STOP_STATE , rbStop ); + ENUM_READ ( GuiRinsebackStates, RINSEBACK_RUN_ADDITIONAL_STATE , rbAdditional ); } txRinseback ( mRinseback ); // it's the main rinseback even so moved last to have all the sub-rinseback-states updated prior to. // Recirculate states bool mRecirculate = vData.mSubMode == GuiTreatmentStates ::TREATMENT_RECIRC_STATE ; if ( mRecirculate ) { - rcStarted ( vData.mRecirculateState == GuiRecirculateStates ::TREATMENT_RECIRC_RECIRC_STATE ); - rcStopped ( vData.mRecirculateState == GuiRecirculateStates ::TREATMENT_RECIRC_STOPPED_STATE ); + ENUM_CHECK_O( GuiRecirculateStates, vData.mRecirculateState ) { + ENUM_CHECK ( GuiRecirculateStates, TREATMENT_RECIRC_RECIRC_STATE ) + ENUM_CHECK ( GuiRecirculateStates, TREATMENT_RECIRC_STOPPED_STATE ) + ENUM_CHECK_C( GuiRecirculateStates, NUM_OF_TREATMENT_RECIRC_STATES ) } + ENUM_READ ( GuiRecirculateStates, TREATMENT_RECIRC_RECIRC_STATE , rcStarted ); + ENUM_READ ( GuiRecirculateStates, TREATMENT_RECIRC_STOPPED_STATE , rcStopped ); } txRecirculate ( mRecirculate ); // it's the main recirculate even so moved last to have all the sub-recirculate-states updated prior to. // Blood Prime states bool mBloodPrime = vData.mSubMode == GuiTreatmentStates ::TREATMENT_BLOOD_PRIME_STATE ; if ( mBloodPrime ) { - bpRamp ( vData.mBloodPrimeState == GuiBloodPrimeStates ::BLOOD_PRIME_RAMP_STATE ); + ENUM_CHECK_O( GuiBloodPrimeStates, vData.mBloodPrimeState ) { + ENUM_CHECK ( GuiBloodPrimeStates, BLOOD_PRIME_RAMP_STATE ) + ENUM_CHECK_C( GuiBloodPrimeStates, NUM_OF_BLOOD_PRIME_STATES ) } + ENUM_READ ( GuiBloodPrimeStates, BLOOD_PRIME_RAMP_STATE , bpRamp ); } txBloodPrime ( mBloodPrime ); // Treatment End states bool mTreatmentEnd = vData.mSubMode == GuiTreatmentStates ::TREATMENT_END_STATE ; if ( mTreatmentEnd ) { - teWaitRinseback ( vData.mTreatmentEndState == GuiTreatmentEndStates ::TREATMENT_END_WAIT_FOR_RINSEBACK_STATE ); - tePaused ( vData.mTreatmentEndState == GuiTreatmentEndStates ::TREATMENT_END_PAUSED_STATE ); + ENUM_CHECK_O( GuiTreatmentEndStates, vData.mTreatmentEndState ) { + ENUM_CHECK ( GuiTreatmentEndStates, TREATMENT_END_WAIT_FOR_RINSEBACK_STATE ) + ENUM_CHECK ( GuiTreatmentEndStates, TREATMENT_END_PAUSED_STATE ) + ENUM_CHECK_C( GuiTreatmentEndStates, NUM_OF_TREATMENT_END_STATES ) } + ENUM_READ ( GuiTreatmentEndStates, TREATMENT_END_WAIT_FOR_RINSEBACK_STATE , teWaitRinseback ); + ENUM_READ ( GuiTreatmentEndStates, TREATMENT_END_PAUSED_STATE , tePaused ); } txEnd ( mTreatmentEnd ); // Treatment Stop states bool mTreatmentStop = vData.mSubMode == GuiTreatmentStates ::TREATMENT_STOP_STATE ; if ( mTreatmentStop ) { - tsRecirculate ( vData.mTreatmentStopState == GuiTreatmentStopStates ::TREATMENT_STOP_RECIRC_STATE ); - tsRecirculateNo ( vData.mTreatmentStopState == GuiTreatmentStopStates ::TREATMENT_STOP_NO_RECIRC_STATE ); + ENUM_CHECK_O( GuiTreatmentStopStates , vData.mTreatmentStopState ) { + ENUM_CHECK ( GuiTreatmentStopStates , TREATMENT_STOP_RECIRC_STATE ) + ENUM_CHECK ( GuiTreatmentStopStates , TREATMENT_STOP_RECIRC_DIALYSATE_ONLY_STATE ) + ENUM_CHECK ( GuiTreatmentStopStates , TREATMENT_STOP_RECIRC_BLOOD_ONLY_STATE ) + ENUM_CHECK ( GuiTreatmentStopStates , TREATMENT_STOP_NO_RECIRC_STATE ) + ENUM_CHECK_C( GuiTreatmentStopStates , NUM_OF_TREATMENT_STOP_STATES ) } + ENUM_READ ( GuiTreatmentStopStates , TREATMENT_STOP_RECIRC_STATE , tsRecirculate ) + ENUM_READ ( GuiTreatmentStopStates , TREATMENT_STOP_RECIRC_DIALYSATE_ONLY_STATE, tsRecirculateDialysate ) + ENUM_READ ( GuiTreatmentStopStates , TREATMENT_STOP_RECIRC_BLOOD_ONLY_STATE , tsRecirculateBlood ) + ENUM_READ ( GuiTreatmentStopStates , TREATMENT_STOP_NO_RECIRC_STATE , tsRecirculateNo ) } txStop ( mTreatmentStop ); } @@ -141,7 +208,12 @@ void VHDTreatmentStates::onActionReceive(const AdjustUltrafiltrationStateResponseData &vData) { // Ultrafiltration states - ufStart ( vData.mState == GuiUFStates ::UF_START_STATE ); - ufPaused ( vData.mState == GuiUFStates ::UF_PAUSED_STATE ); - ufRunning ( vData.mState == GuiUFStates ::UF_RUNNING_STATE ); + ENUM_CHECK_O( GuiUFStates, vData.mUFState ) { + ENUM_CHECK ( GuiUFStates, UF_START_STATE ) + ENUM_CHECK ( GuiUFStates, UF_PAUSED_STATE ) + ENUM_CHECK ( GuiUFStates, UF_RUNNING_STATE ) + ENUM_CHECK_C( GuiUFStates, NUM_OF_UF_STATES ) } + ENUM_READ ( GuiUFStates, UF_START_STATE , ufStart ); + ENUM_READ ( GuiUFStates, UF_PAUSED_STATE , ufPaused ); + ENUM_READ ( GuiUFStates, UF_RUNNING_STATE, ufRunning ); } Index: sources/view/hd/data/treatment/VHDTreatmentStatesData.h =================================================================== diff -u -r79a6cfcb10472261f3ec26eaf0baf6f1245cd311 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- sources/view/hd/data/treatment/VHDTreatmentStatesData.h (.../VHDTreatmentStatesData.h) (revision 79a6cfcb10472261f3ec26eaf0baf6f1245cd311) +++ sources/view/hd/data/treatment/VHDTreatmentStatesData.h (.../VHDTreatmentStatesData.h) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -114,8 +114,10 @@ PROPERTY( bool , tePaused , false) ///< TREATMENT_END_PAUSED_STATE = 1 # Paused state of the treatment end sub-mode state machine // Treatment Stop - PROPERTY( bool , tsRecirculate , true ) ///< TREATMENT_STOP_RECIRC_STATE = 0 # Dialysate re-circulation state of the treatment stop sub-mode state machine - PROPERTY( bool , tsRecirculateNo , false) ///< TREATMENT_STOP_NO_RECIRC_STATE = 1 # No dialysate re-circulation state of the treatment stop sub-mode state machine + PROPERTY( bool , tsRecirculate , true ) ///< TREATMENT_STOP_RECIRC_STATE = 0, Dialysate and Blood re-circulation state of the treatment stop sub-mode state machine + PROPERTY( bool , tsRecirculateDialysate , false) ///< TREATMENT_STOP_RECIRC_DIALYSATE_ONLY_STATE= 1, Re-circulate Dialysate only state of the treatment re-circulate sub-mode state machine + PROPERTY( bool , tsRecirculateBlood , false) ///< TREATMENT_STOP_RECIRC_BLOOD_ONLY_STATE = 2, Re-circulate Blood only state of the treatment re-circulate sub-mode state machine + PROPERTY( bool , tsRecirculateNo , false) ///< TREATMENT_STOP_NO_RECIRC_STATE = 3, No re-circulation state of the treatment stop sub-mode state machine // class definition VIEW_DEC_CLASS(VHDTreatmentStates) Index: unittests/tst_models.cpp =================================================================== diff -u -r27cc308ff5113a9386899d3c8f8b29962a8498e1 -rb3a919eb1696079530d537fb2bf8b7e526178997 --- unittests/tst_models.cpp (.../tst_models.cpp) (revision 27cc308ff5113a9386899d3c8f8b29962a8498e1) +++ unittests/tst_models.cpp (.../tst_models.cpp) (revision b3a919eb1696079530d537fb2bf8b7e526178997) @@ -316,7 +316,7 @@ case 0: { index = 0 ; QVERIFY ( mData.fromByteArray(data)); QCOMPARE( index, startIndex ); } break; case 1: { index = index * sizeof mData._data.mAccepted ; QVERIFY (! mData.fromByteArray(data)); QCOMPARE( index, startIndex ); } break; case 2: { index = index * sizeof mData._data.mReason ; QVERIFY (! mData.fromByteArray(data)); QCOMPARE( index, startIndex ); } break; - case 3: { index = index * sizeof mData._data.mState ; QVERIFY (! mData.fromByteArray(data)); QCOMPARE( index, startIndex ); } break; + case 3: { index = index * sizeof mData._data.mUFState ; QVERIFY (! mData.fromByteArray(data)); QCOMPARE( index, startIndex ); } break; default: QVERIFY2(false, "Incorrect Test"); break;