Index: leahi.pro =================================================================== diff -u -re07cde120d7476c4add90c4f86cf55af9ea830de -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- leahi.pro (.../leahi.pro) (revision e07cde120d7476c4add90c4f86cf55af9ea830de) +++ leahi.pro (.../leahi.pro) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -180,6 +180,7 @@ sources/model/td/adjustment/settings/MAdjustTDVersionsRequest.h \ sources/model/td/adjustment/settings/MAdjustTDVersionsResponse.h \ sources/model/td/adjustment/settings/MTDAdvancedInstitutionalRecordResponse.h \ + sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.h \ sources/model/td/adjustment/treatment/MTreatmentAdjustPressuresWideningResponse.h \ sources/model/td/adjustment/treatment/MTreatmentAdjustVitalsAlarmLimitsResponse.h \ sources/model/td/adjustment/treatment/MTreatmentAdjustVitalsResponse.h \ @@ -263,7 +264,6 @@ sources/view/fp/data/VFPTemperatureData.h \ sources/view/settings/VAdjustmentAdvancedInstitutionalRecord.h \ sources/view/settings/VAdvancedInstitutionalRecord.h \ - sources/view/td/adjustment/treatment/VTreatmentAdjustmentPressuresWidening.h \ sources/view/td/data/VTDAirBubbleData.h \ sources/view/td/data/VTDAirPumpData.h \ sources/view/td/data/VTDAirTrapData.h \ @@ -300,6 +300,8 @@ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFDurationEdit.h \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFVolumeEdit.h \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFConfirm.h \ + sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.h \ + sources/view/td/adjustment/treatment/VTreatmentAdjustmentPressuresWidening.h \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentPressuresLimits.h \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentSaline.h \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentSetPoints.h \ @@ -552,6 +554,7 @@ sources/model/td/adjustment/settings/MAdjustTDVersionsRequest.cpp \ sources/model/td/adjustment/settings/MAdjustTDVersionsResponse.cpp \ sources/model/td/adjustment/settings/MTDAdvancedInstitutionalRecordResponse.cpp \ + sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.cpp \ sources/model/td/adjustment/treatment/MTreatmentAdjustPressuresWideningResponse.cpp \ sources/model/td/adjustment/treatment/MTreatmentAdjustVitalsAlarmLimitsResponse.cpp \ sources/model/td/data/MTDAirBubbleData.cpp \ @@ -741,7 +744,6 @@ \ # ---------- Views - TD - States Data sources/view/settings/VAdjustmentAdvancedInstitutionalRecord.cpp \ sources/view/settings/VAdvancedInstitutionalRecord.cpp \ - sources/view/td/adjustment/treatment/VTreatmentAdjustmentPressuresWidening.cpp \ sources/view/td/data/VTDAirBubbleData.cpp \ sources/view/td/data/VTDAirPumpData.cpp \ sources/view/td/data/VTDAirTrapData.cpp \ @@ -778,6 +780,8 @@ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFDurationEdit.cpp \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFVolumeEdit.cpp \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFConfirm.cpp \ + sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.cpp \ + sources/view/td/adjustment/treatment/VTreatmentAdjustmentPressuresWidening.cpp \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentPressuresLimits.cpp \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentSaline.cpp \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentSetPoints.cpp \ Index: sources/canbus/MessageDispatcher.cpp =================================================================== diff -u -r5335f246461dfd5b9a48dcc8c01aa97778ae773b -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/canbus/MessageDispatcher.cpp (.../MessageDispatcher.cpp) (revision 5335f246461dfd5b9a48dcc8c01aa97778ae773b) +++ sources/canbus/MessageDispatcher.cpp (.../MessageDispatcher.cpp) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -371,6 +371,19 @@ /*! * \brief MessageDispatcher::onAdjustment + * \details This method transmits the Isolated Ultrafiltration State Adjustment Denali message. + * \param vData - Data model contains treatment ultrafiltration state adjustment + * \return void + */ +void MessageDispatcher::onAdjustment(const AdjustIsolatedUFStateRequestData &vData) +{ + QVariantList mData; + mData += vData.requestedState; + actionTransmit(GuiActionType::ID_AdjustIsoUFStateReq, mData); +} + +/*! + * \brief MessageDispatcher::onAdjustment * \details This method transmits the Ultrafiltration Adjustment Denali message. * \param vData - Data model contains treatment ultrafiltration adjustment volume * \return void Index: sources/canbus/MessageDispatcher.h =================================================================== diff -u -r5335f246461dfd5b9a48dcc8c01aa97778ae773b -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/canbus/MessageDispatcher.h (.../MessageDispatcher.h) (revision 5335f246461dfd5b9a48dcc8c01aa97778ae773b) +++ sources/canbus/MessageDispatcher.h (.../MessageDispatcher.h) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -145,6 +145,7 @@ GuiActionType::ID_AdjustIsolatedUFDurationEditReq , GuiActionType::ID_AdjustIsolatedUFVolumeEditReq , GuiActionType::ID_AdjustIsolatedUFConfirmReq , + GuiActionType::ID_AdjustIsoUFStateReq , GuiActionType::ID_AdjustSalineReq , GuiActionType::ID_AdjustVitalsReq , GuiActionType::ID_AdjustHeparinReq , Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -re7a8d5092cb499d6c6ed621eabde437bccbc1e0e -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision e7a8d5092cb499d6c6ed621eabde437bccbc1e0e) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -192,6 +192,10 @@ {Gui::GuiActionType::ID_AdjustUltrafiltrationStateRsp , 2 * 4 }, // 2 parameter each 4bytes // ---- + {Gui::GuiActionType::ID_AdjustIsoUFStateReq , 1 * 4 }, // 1 parameter each 4bytes + {Gui::GuiActionType::ID_AdjustIsoUFStateRsp , 2 * 4 }, // 2 parameter each 4bytes + + // ---- {Gui::GuiActionType::ID_AdjustUltrafiltrationEditReq , 1 * 4 }, // 1 parameter each 4bytes {Gui::GuiActionType::ID_AdjustUltrafiltrationEditRsp , 4 * 4 }, // 4 parameters each 4bytes Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -re7a8d5092cb499d6c6ed621eabde437bccbc1e0e -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision e7a8d5092cb499d6c6ed621eabde437bccbc1e0e) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -267,6 +267,7 @@ case Gui::GuiActionType::ID_AdjustIsolatedUFDurationEditReq : INTERPRET_TRANSMIT_MESSAGE(AdjustIsolatedUFDurationEditRequestData ); break; case Gui::GuiActionType::ID_AdjustIsolatedUFVolumeEditReq : INTERPRET_TRANSMIT_MESSAGE(AdjustIsolatedUFVolumeEditRequestData ); break; case Gui::GuiActionType::ID_AdjustIsolatedUFConfirmReq : INTERPRET_TRSMT_MT_MESSAGE(AdjustIsolatedUFConfirmRequestData ); break; + case Gui::GuiActionType::ID_AdjustIsoUFStateReq : INTERPRET_TRANSMIT_MESSAGE(AdjustIsolatedUFStateRequestData ); break; // End-Treatment case Gui::GuiActionType::ID_AdjustRinsebackReq : INTERPRET_TRANSMIT_MESSAGE(AdjustRinsebackRequestData ); break; case Gui::GuiActionType::ID_AdjustRecirculateReq : INTERPRET_TRANSMIT_MESSAGE(AdjustRecirculateRequestData ); break; @@ -555,6 +556,7 @@ case Gui::GuiActionType::ID_AdjustSalineRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustSalineRsp ); break; case Gui::GuiActionType::ID_AdjustVitalsRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustVitalsRsp ); break; case Gui::GuiActionType::ID_AdjustUltrafiltrationStateRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustUltrafiltrationStateRsp ); break; + case Gui::GuiActionType::ID_AdjustIsoUFStateRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustIsoUFStateRsp ); break; case Gui::GuiActionType::ID_AdjustHeparinRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustHeparinRsp ); break; case Gui::GuiActionType::ID_AdjustRinsebackRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustRinsebackRsp ); break; case Gui::GuiActionType::ID_AdjustRecirculateRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustRecirculateRsp ); break; Index: sources/gui/GuiGlobals.cpp =================================================================== diff -u -r59a1b4dceeb629ed08a434775d819ce108fe894b -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision 59a1b4dceeb629ed08a434775d819ce108fe894b) +++ sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -158,6 +158,7 @@ #include "VTreatmentAdjustmentIsolatedUFConfirm.h" #include "VTreatmentAdjustmentIsolatedUFDurationEdit.h" #include "VTreatmentAdjustmentIsolatedUFVolumeEdit.h" +#include "VTreatmentAdjustmentIsolatedUFState.h" #include "VTreatmentAdjustmentSetPoints.h" #include "VTreatmentAdjustmentVitalsAlarmLimits.h" // ----- Post-Treatment Adjustments Index: sources/gui/GuiGlobals.h =================================================================== diff -u -rbdf090c85ac9b272d1c693025542e8a5fac5a7e5 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision bdf090c85ac9b272d1c693025542e8a5fac5a7e5) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -302,6 +302,9 @@ ID_AdjustIsolatedUFConfirmReq = 0x9F00, // 159 //// ----- @LEAHIZED ID_AdjustIsolatedUFConfirmRsp = 0xA000, // 160 //// ----- @LEAHIZED + ID_AdjustIsoUFStateReq = 0xBA00, // 186 //// ----- @LEAHIZED + ID_AdjustIsoUFStateRsp = 0xBB00, // 187 //// ----- @LEAHIZED + // End-Treatment // Rinseback ID_AdjustRinsebackReq = 0x9000, // 144 //// ----- @LEAHIZED Index: sources/gui/qml/main.qml =================================================================== diff -u -re255d4633b338f4f46c3a2fad5a62f982ebfcd18 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/qml/main.qml (.../main.qml) (revision e255d4633b338f4f46c3a2fad5a62f982ebfcd18) +++ sources/gui/qml/main.qml (.../main.qml) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -143,6 +143,7 @@ import VTreatmentAdjustmentIsolatedUFVolumeEdit 0.1 import VTreatmentAdjustmentIsolatedUFConfirm 0.1 import VTreatmentAdjustmentUltrafiltrationState 0.1 +import VTreatmentAdjustmentIsolatedUFState 0.1 import VTreatmentAdjustmentUltrafiltrationEdit 0.1 import VTreatmentAdjustmentUltrafiltrationConfirm 0.1 import VTreatmentAdjustmentPressuresLimits 0.1 @@ -319,6 +320,7 @@ VTreatmentAdjustmentIsolatedUFDurationEdit { id: vTreatmentAdjustmentIsolatedUFDurationEdit } VTreatmentAdjustmentIsolatedUFVolumeEdit { id: vTreatmentAdjustmentIsolatedUFVolumeEdit } VTreatmentAdjustmentIsolatedUFConfirm { id: vTreatmentAdjustmentIsolatedUFConfirm } + VTreatmentAdjustmentIsolatedUFState { id: vTreatmentAdjustmentIsolatedUFState } VTreatmentAdjustmentSaline { id: vTreatmentAdjustmentSaline } VTreatmentAdjustmentVitals { id: vTreatmentAdjustmentVitals } VTreatmentAdjustmentUltrafiltrationState { id: vTreatmentAdjustmentUltrafiltrationState } Index: sources/gui/qml/pages/treatment/TreatmentHome.qml =================================================================== diff -u -re7a26aa8823fdabbfb21fe75ea9a581c7d0513b4 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/qml/pages/treatment/TreatmentHome.qml (.../TreatmentHome.qml) (revision e7a26aa8823fdabbfb21fe75ea9a581c7d0513b4) +++ sources/gui/qml/pages/treatment/TreatmentHome.qml (.../TreatmentHome.qml) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -226,4 +226,15 @@ } } } + + Connections { target: vTreatmentAdjustmentIsolatedUFState + function onAdjustmentTriggered ( vValue ) { + if (vTreatmentAdjustmentIsolatedUFState.adjustment_Accepted) { + _notification.text = "" + } + else { + _notification.text = vTreatmentAdjustmentIsolatedUFState.text() + } + } + } } Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStack.qml =================================================================== diff -u -r00c17b6d803722f8338cc3202257d361bb0ad186 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStack.qml (.../TreatmentAdjustmentUltrafiltrationStack.qml) (revision 00c17b6d803722f8338cc3202257d361bb0ad186) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStack.qml (.../TreatmentAdjustmentUltrafiltrationStack.qml) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -96,8 +96,11 @@ vTreatmentAdjustmentUltrafiltrationState.doResume() } onPauseIsoUfClicked : { - + vTreatmentAdjustmentIsolatedUFState.doPause() } + onResumeIsoUfClicked : { + vTreatmentAdjustmentIsolatedUFState.doResume() + } onEndIsoUfClicked : { _ufStack.page(_treatmentAdjustmentEndIsolatedUF) } @@ -112,7 +115,7 @@ _root.notificationText = "" } onEndIsoUfClicked : { - + vTreatmentAdjustmentIsolatedUFState.doEnd() } } @@ -272,5 +275,17 @@ } } } + + Connections { target: vTreatmentAdjustmentIsolatedUFState + function onAdjustmentTriggered ( vValue ) { + if (vTreatmentAdjustmentIsolatedUFState.adjustment_Accepted) { + notification.text = "" + close() + } + else { + notification.text = vTreatmentAdjustmentIsolatedUFState.text() + } + } + } } } Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml =================================================================== diff -u -r00c17b6d803722f8338cc3202257d361bb0ad186 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml (.../TreatmentAdjustmentUltrafiltrationStart.qml) (revision 00c17b6d803722f8338cc3202257d361bb0ad186) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml (.../TreatmentAdjustmentUltrafiltrationStart.qml) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -39,6 +39,7 @@ signal resumeClicked() signal pauseIsoUfClicked() + signal resumeIsoUfClicked() signal endIsoUfClicked() TreatmentAdjustmentUltrafiltrationMetrics { id: _ufMetrics @@ -97,8 +98,8 @@ font.weight : Font.Medium } isDefault : true - onClicked : isIsolatedUf ? isUFPaused ? _root.resumeClicked() : _root.pauseClicked() : - isUFPaused ? _root.resumeClicked() : _root.pauseClicked() + onClicked : isIsolatedUf ? isUFPaused ? _root.resumeIsoUfClicked() : _root.pauseIsoUfClicked() : + isUFPaused ? _root.resumeClicked() : _root.pauseClicked() } TouchRect { id: _editButton Index: sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml =================================================================== diff -u -re7a26aa8823fdabbfb21fe75ea9a581c7d0513b4 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision e7a26aa8823fdabbfb21fe75ea9a581c7d0513b4) +++ sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -53,8 +53,8 @@ header.title : qsTr("Ultrafiltration") + " (" + qsTr("UF") + ")" contentArea.anchors.topMargin : Variables.defaultMargin - onPauseResumeClicked: _root.paused ? vTreatmentAdjustmentUltrafiltrationState.doResume() : - vTreatmentAdjustmentUltrafiltrationState.doPause() + onPauseResumeClicked: _root.paused ? isIsolatedUf ? vTreatmentAdjustmentIsolatedUFState.doResume() : vTreatmentAdjustmentUltrafiltrationState.doResume() : + isIsolatedUf ? vTreatmentAdjustmentIsolatedUFState.doPause() : vTreatmentAdjustmentUltrafiltrationState.doPause() contentItem: Row { id: _row spacing : Variables.defaultMargin * 6 Index: sources/model/MModel.h =================================================================== diff -u -rd17a7a6adf72a6224280548e2341dfce22bf72c7 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/model/MModel.h (.../MModel.h) (revision d17a7a6adf72a6224280548e2341dfce22bf72c7) +++ sources/model/MModel.h (.../MModel.h) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -164,6 +164,7 @@ #include "MTreatmentAdjustIsolatedUFDurationEditResponse.h" #include "MTreatmentAdjustIsolatedUFVolumeEditResponse.h" #include "MTreatmentAdjustIsolatedUFConfirmResponse.h" +#include "MTreatmentAdjustIsolatedUFStateResponse.h" #include "MTreatmentAdjustSalineResponse.h" #include "MTreatmentAdjustVitalsResponse.h" #include "MTreatmentAdjustHeparinResponse.h" @@ -473,6 +474,7 @@ REGISTER_METATYPE( AdjustDialysateFlowRateRequestData ) \ REGISTER_METATYPE( AdjustDialysateTemperatureRequestData ) \ REGISTER_METATYPE( AdjustUltrafiltrationStateRequestData ) \ + REGISTER_METATYPE( AdjustIsolatedUFStateRequestData ) \ REGISTER_METATYPE( AdjustUltrafiltrationEditRequestData ) \ REGISTER_METATYPE( AdjustUltrafiltrationConfirmRequestData ) \ REGISTER_METATYPE( AdjustIsolatedUFDurationEditRequestData ) \ @@ -525,6 +527,7 @@ REGISTER_METATYPE( AdjustDialysateFlowRateResponseData ) \ REGISTER_METATYPE( AdjustDialysateTemperatureResponseData ) \ REGISTER_METATYPE( AdjustUltrafiltrationStateResponseData ) \ + REGISTER_METATYPE( AdjustIsolatedUFStateResponseData ) \ REGISTER_METATYPE( AdjustUltrafiltrationEditResponseData ) \ REGISTER_METATYPE( AdjustUltrafiltrationConfirmResponseData ) \ REGISTER_METATYPE( AdjustIsolatedUFDurationEditResponseData ) \ @@ -702,6 +705,7 @@ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustDialysateFlowRateResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustDialysateTemperatureResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustUltrafiltrationStateResponseData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustIsolatedUFStateResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustUltrafiltrationEditResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustUltrafiltrationConfirmResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustIsolatedUFDurationEditResponseData ) \ @@ -753,7 +757,7 @@ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustVitalsAlarmLimitsRequestData ) \ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustBloodFlowRateRequestData ) \ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustDialysateFlowRateRequestData ) \ - ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustDialysateTemperatureRequestData ) \ + ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustIsolatedUFStateRequestData ) \ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustUltrafiltrationStateRequestData ) \ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustUltrafiltrationEditRequestData ) \ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustUltrafiltrationConfirmRequestData ) \ @@ -951,6 +955,7 @@ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustDialysateFlowRateResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustDialysateTemperatureResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustUltrafiltrationStateResponseData ) \ + ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustIsolatedUFStateResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustUltrafiltrationEditResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustUltrafiltrationConfirmResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustIsolatedUFDurationEditResponseData ) \ @@ -1026,6 +1031,7 @@ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustDialysateFlowRateRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustDialysateTemperatureRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustUltrafiltrationStateRequestData ) \ + ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustIsolatedUFStateRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustUltrafiltrationEditRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustUltrafiltrationConfirmRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustIsolatedUFDurationEditRequestData ) \ @@ -1100,6 +1106,7 @@ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustDialysateFlowRateRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustDialysateTemperatureRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustUltrafiltrationStateRequestData ) \ + ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustIsolatedUFStateRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustUltrafiltrationEditRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustUltrafiltrationConfirmRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustIsolatedUFDurationEditRequestData ) \ @@ -1174,6 +1181,7 @@ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustDialysateFlowRateRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustDialysateTemperatureRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustUltrafiltrationStateRequestData ) \ + ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustIsolatedUFStateRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustUltrafiltrationEditRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustUltrafiltrationConfirmRequestData ) \ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustIsolatedUFDurationEditRequestData ) \ @@ -1333,6 +1341,7 @@ ACTION_RECEIVE_SIGNAL( AdjustDialysateFlowRateResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustDialysateTemperatureResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustUltrafiltrationStateResponseData ) \ + ACTION_RECEIVE_SIGNAL( AdjustIsolatedUFStateResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustUltrafiltrationEditResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustUltrafiltrationConfirmResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustIsolatedUFDurationEditResponseData ) \ Index: sources/model/hd/adjustment/treatment/MTreatmentAdjustRequests.h =================================================================== diff -u -rd17a7a6adf72a6224280548e2341dfce22bf72c7 -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/model/hd/adjustment/treatment/MTreatmentAdjustRequests.h (.../MTreatmentAdjustRequests.h) (revision d17a7a6adf72a6224280548e2341dfce22bf72c7) +++ sources/model/hd/adjustment/treatment/MTreatmentAdjustRequests.h (.../MTreatmentAdjustRequests.h) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -335,6 +335,33 @@ }; /*! + * \brief The MAdjustIsolatedUFStateReq class + * \details The Iso UF commands request model + * + * | MSG | CAN ID | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:------:|:---:|:---:|:---:|:-----------: | + * |0xBA00| 0x041 | Req | Y | UI | HD | Iso UF Pause/Resume/End | + * + * | Payload || + * | || + * | #1:(U32) | \ref requestedState | + * + */ +class MAdjustIsolatedUFStateReq : public MModel { +public: + +// GuiUFCommands requestedState = GuiUFCommands::UF_CMD_PAUSE; // the requested state. Initially it's running => paused. +// TODO UPDATE + quint32 requestedState = 0; // Pause/ resume/ end + QString toString() { + return toString({requestedState}); + } + static QString toString(const QVariantList &vParameters) { + return MModel::toString("AdjustIsoUFState", vParameters); + } +}; + +/*! * \brief The MAdjustUltrafiltrationEditReq class * \details The ultrafiltration volume change request model * @@ -794,6 +821,7 @@ typedef Model:: MAdjustDialysateFlowRateReq AdjustDialysateFlowRateRequestData; typedef Model:: MAdjustDialysateTemperatureReq AdjustDialysateTemperatureRequestData; typedef Model:: MAdjustUltrafiltrationStateReq AdjustUltrafiltrationStateRequestData; +typedef Model:: MAdjustIsolatedUFStateReq AdjustIsolatedUFStateRequestData; typedef Model:: MAdjustUltrafiltrationEditReq AdjustUltrafiltrationEditRequestData; typedef Model::MAdjustUltrafiltrationConfirmReq AdjustUltrafiltrationConfirmRequestData; typedef Model::MAdjustIsolatedUFDurationEditReq AdjustIsolatedUFDurationEditRequestData; @@ -807,7 +835,7 @@ typedef Model:: MAdjustTreatmentEndReq AdjustTreatmentEndRequestData; typedef Model:: MAdjustBloodPrimeReq AdjustBloodPrimeRequestData; typedef Model:: MAdjustPressuresLimitsReq AdjustPressuresLimitsRequestData; -typedef Model:: MAdjustPressuresWideningReq AdjustPressuresWideningRequestData; +typedef Model:: MAdjustPressuresWideningReq AdjustPressuresWideningRequestData; typedef Model:: MAdjustBolusVolumeReq AdjustBolusVolumeRequestData; // Alarms typedef Model:: MAlarmSilenceReq AlarmSilenceRequestData; Index: sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.cpp =================================================================== diff -u --- sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.cpp (revision 0) +++ sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.cpp (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -0,0 +1,35 @@ +#include "MTreatmentAdjustIsolatedUFStateResponse.h" + +using namespace Model; + +QVariantList MAdjustIsolatedUFStateResponse::parameters() const { + return { + _data.mAccepted.value, + _data.mReason .value, + }; +} + +bool MAdjustIsolatedUFStateResponse::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if ( ! GetValue(vByteArray, index, _data.mAccepted )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mReason )) goto lError; + + return true ; + +lError: + if(vIndex) { *vIndex = index; } + + return false ; +} + +/*! + * \brief MAdjustUltrafiltrationStateResponse::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +AdjustIsolatedUFStateResponseData MAdjustIsolatedUFStateResponse::data() const { + Data data; + data.mAccepted = _data.mAccepted.value; + data.mReason = _data.mReason .value; + return data; +} Index: sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.h =================================================================== diff -u --- sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.h (revision 0) +++ sources/model/td/adjustment/treatment/MTreatmentAdjustIsolatedUFStateResponse.h (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -0,0 +1,68 @@ +#pragma once + +// Qt +#include + +// Project +#include "MAbstract.h" +#include "types.h" + +// forward declarations +class tst_models; + +namespace Model { + +/*! + * \brief The MTreatmentAdjustIsolatedUFStateResponse class + * \details The isolated ultrafiltration adjustment state response model + * + * | MSG | CAN ID | M.Box | Type | Ack | Src | Dest | Description | + * |:----:|:------:|:-----:|:----:|:---:|:---:|:----:|:------------------------:| + * |0xBB00| 0x040 | 6 | Rsp | Y | HD | UI | ISO UF Pause/Resume/End Response | + * + * | Payload || + * | || + * | #1:(U32) | \ref Data::mAccepted | + * | #2:(U32) | \ref Data::mReason | + * + * \sa Data + * \sa MAdjustIsolatedUFStateResponse : Ultrafiltration state change Request + * + *

Logging info

+ * | || + * | || + * | typeText | Event | + * | unitText | TD | + * | infoText | AdjustISOUFState | + * + */ +class MAdjustIsolatedUFStateResponse : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::U32 mAccepted; + Types::U32 mReason ; + } _data; + +public: + Type_Enum typeText () const override { return Type_Enum::eEvent ; } + Unit_Enum unitText () const override { return Unit_Enum::eTD ; } + QString infoText () const override { return QString("AdjustIsoUFState"); } + + struct Data { + bool mAccepted = 0; /*!< Accepted value of type quint32 extracted out */ + quint32 mReason = 0; /*!< Reason value of type quint32 extracted out */ + }; + + MAdjustIsolatedUFStateResponse() { } + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MAdjustIsolatedUFStateResponse::Data AdjustIsolatedUFStateResponseData; Index: sources/view/VView.h =================================================================== diff -u -r59a1b4dceeb629ed08a434775d819ce108fe894b -r8d7a40bfbd30d596b4450965597d2e3f2f61326d --- sources/view/VView.h (.../VView.h) (revision 59a1b4dceeb629ed08a434775d819ce108fe894b) +++ sources/view/VView.h (.../VView.h) (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -248,6 +248,7 @@ REGISTER_TYPE( VTreatmentAdjustmentIsolatedUFConfirm ) \ REGISTER_TYPE( VTreatmentAdjustmentIsolatedUFDurationEdit ) \ REGISTER_TYPE( VTreatmentAdjustmentIsolatedUFVolumeEdit ) \ + REGISTER_TYPE( VTreatmentAdjustmentIsolatedUFState ) \ REGISTER_TYPE( VTreatmentAdjustmentSetPoints ) \ REGISTER_TYPE( VTreatmentAdjustmentVitalsAlarmLimits ) \ REGISTER_TYPE( VTreatmentCreate ) \ Index: sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.cpp =================================================================== diff -u --- sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.cpp (revision 0) +++ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.cpp (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -0,0 +1,54 @@ +#include "VTreatmentAdjustmentIsolatedUFState.h" + +// Project +#include "GuiController.h" + +VIEW_DEF_CLASS_ADJUSTMENT(VTreatmentAdjustmentIsolatedUFState) + +void VTreatmentAdjustmentIsolatedUFState::initConnections() { + ACTION_VIEW_CONNECTION(AdjustIsolatedUFStateResponseData); + ADJUST_VIEW_CONNECTION( AdjustIsolatedUFStateRequestData); +} + +void VTreatmentAdjustmentIsolatedUFState::onActionReceive(const AdjustIsolatedUFStateResponseData &vData) +{ + adjustment_Accepted ( vData.mAccepted ); + adjustment_Reason ( vData.mReason ); + + // *** has to be the last to let the information to be set and then emit the signal *** + // *** otherwise will use the previous values before being set. *** + // *** use this trigger to make sure you have all the properties with updated values *** + adjustment ( true ); +} + +/*! + * \brief View::VTreatmentAdjustmentIsolatedUFState::doPause + * \details request to pause the ultrafiltration + */ +void View::VTreatmentAdjustmentIsolatedUFState::doPause() +{ + _data.requestedState = 0; // TODO Update during integration +// _data.requestedState = GuiUFCommands::UF_CMD_PAUSE; + emit didAdjustment(_data); // notify the controllers to do the adjustment +} + +/*! + * \brief View::VTreatmentAdjustmentIsolatedUFState::doResume + * \details request to resume the ultrafiltration + */ +void View::VTreatmentAdjustmentIsolatedUFState::doResume() +{ + _data.requestedState = 1; // TODO Update during integration + emit didAdjustment(_data); // notify the controllers to do the adjustment +} + +/*! + * \brief View::VTreatmentAdjustmentIsolatedUFState::doResume + * \details request to resume the ultrafiltration + */ +void View::VTreatmentAdjustmentIsolatedUFState::doEnd() +{ + _data.requestedState = 2; // TODO Update during integration +// _data.requestedState = GuiUFCommands::UF_CMD_RESUME; + emit didAdjustment(_data); // notify the controllers to do the adjustment +} Index: sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.h =================================================================== diff -u --- sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.h (revision 0) +++ sources/view/td/adjustment/treatment/VTreatmentAdjustmentIsolatedUFState.h (revision 8d7a40bfbd30d596b4450965597d2e3f2f61326d) @@ -0,0 +1,42 @@ +#pragma once + +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VAdjustmentResponseBase.h" +#include "MTreatmentAdjustIsolatedUFStateResponse.h" + +namespace View { + +/*! + * \brief The VTreatmentAdjustmentIsolatedUFState class + * \details View for Model's Data representation. + * + * \sa Model::MAdjustIsolatedUFStateResponse + * + */ +class VTreatmentAdjustmentIsolatedUFState : public VAdjustmentResponseBase +{ + Q_OBJECT + + // friends + friend class ::tst_views; + + AdjustIsolatedUFStateRequestData _data; + + // The property adjustment_Triggered has to be always true + // and to always trigger the change event to work as a notifier for GUI + TRIGGER( bool , adjustment , 0) + + VIEW_DEC_CLASS_ADJUSTMENT(VTreatmentAdjustmentIsolatedUFState, AdjustIsolatedUFStateResponseData) + +public slots: + void doPause (); + void doResume(); + void doEnd(); + +signals: + void didAdjustment(const AdjustIsolatedUFStateRequestData &vData); +}; +}