Index: sources/drydemo/StateController.h =================================================================== diff -u -rbb80bbccaf1c911be48493868c18c656d84b2ec1 -rfb3e70cb47f3d22f31f68358c1bda69cce9cd248 --- sources/drydemo/StateController.h (.../StateController.h) (revision bb80bbccaf1c911be48493868c18c656d84b2ec1) +++ sources/drydemo/StateController.h (.../StateController.h) (revision fb3e70cb47f3d22f31f68358c1bda69cce9cd248) @@ -63,15 +63,21 @@ float rinsebackTgtVolPlusAddVolML; // Recirculation variables bool hasRecircBeenRequested; + quint32 recircTimerCounter; + quint32 recircTimeoutS; + bool hasResumeTxBeenRequested; + bool hasRecircWarnAlarmBeenTrig; + bool hasRecircTimeoutAlarmBeenTrig; }; struct Treatment_Sub_State_Vars { - Treatment_States txStates; - Blood_Prime_States bloodPrimeStates; - Fluid_Bolus_States fluidBolusState; - Dialysis_States dialysisSubState; - Rinseback_States rinsebackState; - Recirculate_States recircState; + Treatment_States txState; + Blood_Prime_States bloodPrimeState; + Fluid_Bolus_States fluidBolusState; + Dialysis_States dialysisSubState; + Rinseback_States rinsebackState; + Recirculate_States recircState; + Treatment_End_States txEndState; }; struct Treatment_Params { @@ -139,7 +145,7 @@ quint32 extractU32DataFromReceivedMessage(const Can::Message_ID_Enum msgID, qint32 index); float extractF32DataFromReceivedMessage(const Can::Message_ID_Enum msgID, qint32 index); void triggerAnAlarm(Alarm_List alarmID); - void handleAlarmUserAction(State_Status &status); + void handleAlarmUserAction(State_Status &status, bool isFromTxPause = false); // Standby methods void handleInitiateTreatmentRequestMessage(State_Status &status); @@ -186,6 +192,7 @@ // Treatment recirculation methods void initializeRecirc(); void handleRecircRequestMessage(); + void handleRecircTimeout(); void handleRecircBroadcastData(const Broadcast_Type BCType); // Treatment end methods