Index: sources/drydemo/StateControllerTreatmentBroadcasts.cpp =================================================================== diff -u -r4624d7657d342248336c1ff16edfae614c335728 -r521f29cb7dcd0de352dd744292488380e07cb9e3 --- sources/drydemo/StateControllerTreatmentBroadcasts.cpp (.../StateControllerTreatmentBroadcasts.cpp) (revision 4624d7657d342248336c1ff16edfae614c335728) +++ sources/drydemo/StateControllerTreatmentBroadcasts.cpp (.../StateControllerTreatmentBroadcasts.cpp) (revision 521f29cb7dcd0de352dd744292488380e07cb9e3) @@ -277,6 +277,25 @@ _isBroadcastListReady = true; } +void StateController::handleTreatmentPauseBroadcastData(const Broadcast_Type BCType) +{ + static quint32 broadcastCounter = 90; + if ((++broadcastCounter % NUM_OF_COUNTS_TIMER_BC_EMIT != 0) && (BCType == BC_DELAYED)) { return; } + + quint32 timeoutMS = MAX_TIME_BLOOD_SITTING / (MILLISECONDS_PER_SECOND / QOBJECT_TIMER_TIMEOUT_MS); + quint32 countdownMS = (_treatmentStatus.txPauseBloodSittingCounter >= MAX_TIME_BLOOD_SITTING ? 0 : + (MAX_TIME_BLOOD_SITTING - _treatmentStatus.txPauseBloodSittingCounter) / (MILLISECONDS_PER_SECOND / QOBJECT_TIMER_TIMEOUT_MS)); + + QVariantList msg; + msg.append(static_cast(ID_TD_TREATMENT_PAUSED_TIMER_DATA)); + msg.append(Can_Id::eChlid_TD_Sync); + msg.append(timeoutMS); + msg.append(countdownMS); + _isBroadcastListReady = false; + _broadcastMessages.append(msg); + _isBroadcastListReady = true; +} + // TREATMENT PAUSE void StateController::handleDryBicartBroadcastData(const Broadcast_Type BCType) { @@ -296,12 +315,13 @@ if ((++broadcastCounter % NUM_OF_COUNTS_TIMER_BC_EMIT != 0) && (BCType == BC_DELAYED)) { return; } - quint32 bicarbShowDialog = (_treatmentStatus.bicartAction == DRY_BICART_ACTION_DONE ? DRY_BICART_CLOSE_SCREEN : DRY_BICART_OPEN_SCREEN); + // Do not pop the dialog in post tx + if (getActiveStateName() == "Post_Tx") { _treatmentStatus.bicartShowDialog = DRY_BICART_CLOSE_SCREEN; } QVariantList msg; msg.append(static_cast(ID_TD_DRY_BICART_DISCONNECT_DATA)); msg.append(Can_Id::eChlid_TD_Sync); - msg.append(bicarbShowDialog); + msg.append(_treatmentStatus.bicartShowDialog); msg.append(_treatmentStatus.bicartTotal); msg.append(static_cast(_treatmentStatus.bicartProgress)); msg.append(_treatmentStatus.bicartDrainInProgress);