Index: sources/drydemo/StateController.cpp =================================================================== diff -u -r6c0428ed8c6430924d54d5a42c45c8ec0c16c7c2 -r4624d7657d342248336c1ff16edfae614c335728 --- sources/drydemo/StateController.cpp (.../StateController.cpp) (revision 6c0428ed8c6430924d54d5a42c45c8ec0c16c7c2) +++ sources/drydemo/StateController.cpp (.../StateController.cpp) (revision 4624d7657d342248336c1ff16edfae614c335728) @@ -166,16 +166,18 @@ { _elapsedTimeCtr++; - if (!_dryDemo.isRunning()){ _dryDemo.start(); } + if (!_dryDemo.isRunning()) { _dryDemo.start(); } _dryDemo.submitEvent("TimeoutEvent"); - if (_isBroadcastListReady){ sendMessages(true); } + if (_isBroadcastListReady) { sendMessages(true); } - if (_isSendListReady){ sendMessages(false); } + if (_isSendListReady) { sendMessages(false); } // Ack UI check in message once received. This is to prevent alarm 100 from UI handleUICheckInMessage(); + // Broadcast alarm status all the time + handleAlarmStatusBroadcastData(BC_DELAYED); } // ---------------------- Private methods ------------------ // @@ -478,7 +480,8 @@ void StateController::onTreatmentPauseStateChange(bool active) { - static State_Status status = STATE_ON_ENTRY; + static State_Status status = STATE_ON_ENTRY; + static bool hasFlowChngeRequested = false; auto onEntry = [=](){ // Start with UF state in dialysis @@ -504,14 +507,22 @@ handleTDPressureBroadcastData(BC_DELAYED); handleDeterminePressureLimits(); handleWidenPressureLimitsMessage(); - // Dialysate is in bypass - handleDDGenDialysateModeBroadcastData(BC_DELAYED); + // Dialysate is in bypass (set the flag to true because we in tx pause and we have to baypas dialysate) + handleDDGenDialysateModeBroadcastData(BC_DELAYED, true); // UF is in pause handleUltrafiltrationBroadcastData(BC_DELAYED); // Vitals methods handleVitalsDataRquest(); // Water sample methods handleTDWaterSampleResultRequest(); + // Dialysate edit methods + handleSetPointBloodFlowChange(_treatmentParams.bloodFlowRateMLPM, hasFlowChngeRequested); + handleSetPointDialysateFlowChange(); + handleSetPointDialysateTemperatureChange(); + handleSetPointDialysateTemperatureChange(); + // UI confirm message methods + handleUIConfirmMessage(GENERIC_CONFIRM_ID_RINSEBACK, status); + handleUIConfirmMessage(GENERIC_CONFIRM_ID_TREATMENT_END, status); }; auto onExit = [=](){