Index: sources/drydemo/StateControllerStandby.cpp =================================================================== diff -u -r4d0fc455e6307639e72db490721c7768a487c014 -r6c0428ed8c6430924d54d5a42c45c8ec0c16c7c2 --- sources/drydemo/StateControllerStandby.cpp (.../StateControllerStandby.cpp) (revision 4d0fc455e6307639e72db490721c7768a487c014) +++ sources/drydemo/StateControllerStandby.cpp (.../StateControllerStandby.cpp) (revision 6c0428ed8c6430924d54d5a42c45c8ec0c16c7c2) @@ -133,7 +133,7 @@ _treatmentStatus.bicartTotal = 100; } -void StateController::triggerAnAlarm(Alarm_List alarmID) +void StateController::triggerAnAlarm(const Alarm_List alarmID) { if (!_alarmTriggerSpecs.contains(alarmID)) { return; } @@ -367,3 +367,19 @@ _sendMessages.append(resp); _isSendListReady = true; } + +void StateController::handleTDWaterSampleResultRequest() +{ + if (_treatmentRcvdMessages[ID_UI_WATER_SAMPLE_RESULT_RQST].isNull()) { return; } + QVariantList reason; + quint32 acceptReject = ACCEPT_VALUE; + float chlorineLevel = extractF32DataFromReceivedMessage(ID_UI_WATER_SAMPLE_RESULT_RQST, 0); + + reason.append(REQUEST_REJECT_REASON_NONE); + reason.append(chlorineLevel); + + // TODO check range. + handleUIResponseMessage(ID_TD_WATER_SAMPLE_RESULT_RESP, acceptReject, reason); + _treatmentRcvdMessages[ID_UI_WATER_SAMPLE_RESULT_RQST].clear(); +} +