Index: sources/drydemo/StateControllerTreatment.cpp =================================================================== diff -u -r6fa9c0ad6983354e16a32086f4cda496bf426219 -r7094c1e2387d63fc7fb9d6d9a09ea0aee3c71420 --- sources/drydemo/StateControllerTreatment.cpp (.../StateControllerTreatment.cpp) (revision 6fa9c0ad6983354e16a32086f4cda496bf426219) +++ sources/drydemo/StateControllerTreatment.cpp (.../StateControllerTreatment.cpp) (revision 7094c1e2387d63fc7fb9d6d9a09ea0aee3c71420) @@ -185,8 +185,8 @@ _treatmentParams.dialysateTemperatureC = f32Var.value; resp.append(0); - GetValue(payload.toByteArray(), index, u32Var); - if (_treatmentParams.acidConcentrate != u32Var.value) { triggerAnAlarm(ALARM_ID_TD_REPLACE_ACID_JUG); } + GetValue(payload.toByteArray(), index, u32Var); // If the acid is different, set the sequence to trigger the acid + if (_treatmentParams.acidConcentrate != u32Var.value) { _treatmentStatus.txPauseSeqAlarmState = SEQ_ALARM_TRIGGER_RPLC_ACID; } _treatmentParams.acidConcentrate = u32Var.value; resp.append(0); @@ -511,8 +511,8 @@ break; } - qDebug() << "Pres Steat" << _pressureVars.presLimitState << _treatmentStatus.isBloodPumpRunning << _pressureVars.presStabilizeTimeoutMS - << _pressureVars.presStabilizationTimerCtr * QOBJECT_TIMER_TIMEOUT_MS << _treatmentSubStates.txState ; + //qDebug() << "Pres Steat" << _pressureVars.presLimitState << _treatmentStatus.isBloodPumpRunning << _pressureVars.presStabilizeTimeoutMS + // << _pressureVars.presStabilizationTimerCtr * QOBJECT_TIMER_TIMEOUT_MS << _treatmentSubStates.txState ; } void StateController::handleUpdatePressureLimitWindows() @@ -552,27 +552,27 @@ _pressureVars.arterialMaxLimitMMHG = _pressureVars.arterialStableMMHG + artOffsetMMHG; _pressureVars.arterialMaxLimitMMHG = qMin(_pressureVars.arterialMaxLimitMMHG, static_cast(MAX_ART_PRES_LIMIT_MMHG)); - _pressureVars.venousMinLimitMMHG = _pressureVars.venousStableMMHG - venMinOffsetMMHG; - _pressureVars.venousMinLimitMMHG = qMax(_pressureVars.venousMinLimitMMHG, static_cast(MIN_VEN_PRES_LIMIT_MMHG)); + _pressureVars.venousMinLimitMMHG = _pressureVars.venousStableMMHG - venMinOffsetMMHG; + _pressureVars.venousMinLimitMMHG = qMax(_pressureVars.venousMinLimitMMHG, static_cast(MIN_VEN_PRES_LIMIT_MMHG)); - _pressureVars.venousMaxLimitMMHG = _pressureVars.venousStableMMHG + venMaxOffsetMMHG; - _pressureVars.venousMaxLimitMMHG = qMin(_pressureVars.venousMaxLimitMMHG, static_cast(MAX_VEN_PRES_LIMIT_MMHG)); + _pressureVars.venousMaxLimitMMHG = _pressureVars.venousStableMMHG + venMaxOffsetMMHG; + _pressureVars.venousMaxLimitMMHG = qMin(_pressureVars.venousMaxLimitMMHG, static_cast(MAX_VEN_PRES_LIMIT_MMHG)); - _pressureVars.tmpMinLimitMMHG = _pressureVars.tmpStableMMHG - tmpOffsetMMHG; - _pressureVars.tmpMinLimitMMHG = qMax(_pressureVars.tmpMinLimitMMHG, static_cast(MIN_TMP_PRES_LIMIT_MMHG)); + _pressureVars.tmpMinLimitMMHG = _pressureVars.tmpStableMMHG - tmpOffsetMMHG; + _pressureVars.tmpMinLimitMMHG = qMax(_pressureVars.tmpMinLimitMMHG, static_cast(MIN_TMP_PRES_LIMIT_MMHG)); - _pressureVars.tmpMaxLimitMMHG = _pressureVars.tmpStableMMHG + tmpOffsetMMHG; - _pressureVars.tmpMaxLimitMMHG = qMin(_pressureVars.tmpMaxLimitMMHG, static_cast(MAX_TMP_PRES_LIMIT_MMHG)); + _pressureVars.tmpMaxLimitMMHG = _pressureVars.tmpStableMMHG + tmpOffsetMMHG; + _pressureVars.tmpMaxLimitMMHG = qMin(_pressureVars.tmpMaxLimitMMHG, static_cast(MAX_TMP_PRES_LIMIT_MMHG)); } else { - _pressureVars.arterialMinLimitMMHG = MIN_ART_PRES_LIMIT_MMHG; - _pressureVars.arterialMaxLimitMMHG = MAX_ART_PRES_LIMIT_MMHG; + _pressureVars.arterialMinLimitMMHG = MIN_ART_PRES_LIMIT_MMHG; + _pressureVars.arterialMaxLimitMMHG = MAX_ART_PRES_LIMIT_MMHG; - _pressureVars.venousMinLimitMMHG = MIN_VEN_PRES_LIMIT_MMHG; - _pressureVars.venousMaxLimitMMHG = MAX_VEN_PRES_LIMIT_MMHG; + _pressureVars.venousMinLimitMMHG = MIN_VEN_PRES_LIMIT_MMHG; + _pressureVars.venousMaxLimitMMHG = MAX_VEN_PRES_LIMIT_MMHG; - _pressureVars.tmpMinLimitMMHG = MIN_TMP_PRES_LIMIT_MMHG; - _pressureVars.tmpMaxLimitMMHG = MAX_TMP_PRES_LIMIT_MMHG; + _pressureVars.tmpMinLimitMMHG = MIN_TMP_PRES_LIMIT_MMHG; + _pressureVars.tmpMaxLimitMMHG = MAX_TMP_PRES_LIMIT_MMHG; } } @@ -589,19 +589,18 @@ } } else if (_pressureVars.presLimitState == PRESSURE_LIMITS_STATE_STABLE) { - _pressureVars.presStabilizeTimePeriod = period; + _pressureVars.presStabilizeTimePeriod = period; _pressureVars.presLimitState = PRESSURE_LIMITS_STATE_STABILIZATION; _pressureVars.presStabilizationTimerCtr = 0; } } void StateController::handleWidenPressureLimitsMessage() { - if (! _treatmentRcvdMessages[ID_UI_PRESSURE_LIMIT_WIDEN_RQST].isNull()) { - _treatmentRcvdMessages[ID_UI_PRESSURE_LIMIT_WIDEN_RQST].clear(); - // TODo address the increase per request - handleUIResponseMessage(ID_TD_PRESSURE_LIMIT_WIDEN_RESP, ACCEPT_VALUE); - } + if (_treatmentRcvdMessages[ID_UI_PRESSURE_LIMIT_WIDEN_RQST].isNull()) { return; } + handleSignalInitiatePressureStabilization(USE_NORMAL_STABILIZATION_PERIOD); + _treatmentRcvdMessages[ID_UI_PRESSURE_LIMIT_WIDEN_RQST].clear(); + handleUIResponseMessage(ID_TD_PRESSURE_LIMIT_WIDEN_RESP, ACCEPT_VALUE); }