Index: sources/canbus/messageinterpreter.cpp =================================================================== diff -u -rb798668f16ad0967ab97e96f5f9a2cdd821e899f -ra159e12630645a9a35fb0a5585cc7b639cfe6aa6 --- sources/canbus/messageinterpreter.cpp (.../messageinterpreter.cpp) (revision b798668f16ad0967ab97e96f5f9a2cdd821e899f) +++ sources/canbus/messageinterpreter.cpp (.../messageinterpreter.cpp) (revision a159e12630645a9a35fb0a5585cc7b639cfe6aa6) @@ -111,6 +111,12 @@ } break; + case Gui::GuiActionType::UltrafiltrationState: + if (count) { + vPayload = Format::fromVariant(vData); + } + break; + default: QString mActionIdHexString = Format::toHexString(vActionId); LOG_ERROR(tr("Unknown Message ID (UI) '%1'").arg(mActionIdHexString)); @@ -243,7 +249,11 @@ ok = adjustDurationData (vMessage, vData); break; - // unhandles messages: these will only be logged as received message + case Gui::GuiActionType::UltrafiltrationState: // AcknowGeneric : Generic Acknow respose + ok = ultrafiltrationState (vMessage, vData); + break; + + // unhandles messages: these will only be logged as received message // there has nothing been defined for these messages. case Gui::GuiActionType::AlarmTriggered: printUnhandled (vMessage); @@ -711,3 +721,28 @@ return ok; } +/*! + * \brief MessageInterpreter::ultrafiltrationState + * \details This method interprets Treatment Ultrafiltration state change Response message data + * in vMessage of type Message. + * \param vMessage - The vMessage of type Message which contains all the data, + * require to be interpreted. + * \param vData - Treatment Ultrafiltration state change Response data + * \return true if the data can be extracted as defined for Treatment Duration Adjustment Response Message ID + */ +bool MessageInterpreter::ultrafiltrationState(const Message &vMessage, QVariantList &vData) +{ + bool ok = false; + if ( ! isType (vMessage, Gui::GuiActionType::UltrafiltrationState) ) return ok; + if ( ! isPayloadLenValid(vMessage, Gui::GuiActionType::AcknowGeneric ) ) return ok; + + Model::MTreatmentUltrafiltrationState mData; + ok = mData.fromByteArray(vMessage.data); + LOG_DATUM(mData.toString()); + + mData.toVariantList(vData); + emit didActionReceive(mData.data()); + + return ok; +} +