Index: denali.pro.user =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- denali.pro.user (.../denali.pro.user) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ denali.pro.user (.../denali.pro.user) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -1,6 +1,6 @@ - + EnvironmentId Index: denali.qrc =================================================================== diff -u -r3345651cca9723989785801ee25001dc3e4f28a1 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- denali.qrc (.../denali.qrc) (revision 3345651cca9723989785801ee25001dc3e4f28a1) +++ denali.qrc (.../denali.qrc) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -96,6 +96,7 @@ sources/gui/qml/components/RangeSlider.qml sources/gui/qml/components/MuteButton.qml sources/gui/qml/components/UpDownButton.qml + sources/gui/qml/components/ImageText.qml sources/gui/qml/compounds/PressureRangeSlider.qml Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -56,7 +56,7 @@ {Gui::GuiActionType::ID_PressureOcclusion , 5 * 4 }, // 5 parameters each 4bytes {Gui::GuiActionType::ID_Saline , 3 * 4 }, // 3 parameters each 4bytes {Gui::GuiActionType::ID_Heparin , 1 * 4 }, // 1 parameters each 4bytes - {Gui::GuiActionType::ID_Rinseback , 2 * 4 }, // 2 parameters each 4bytes + {Gui::GuiActionType::ID_Rinseback , 3 * 4 }, // 3 parameters each 4bytes // ---- {Gui::GuiActionType::ID_HDOperationModeData , 1 * 4 }, // 1 parameter each 4bytes Index: sources/gui/qml/components/ImageText.qml =================================================================== diff -u --- sources/gui/qml/components/ImageText.qml (revision 0) +++ sources/gui/qml/components/ImageText.qml (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -0,0 +1,52 @@ +/*! + * + * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. + * \copyright + * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN + * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. + * + * \file PostTreatmentRinseback.qml + * \author (last) Behrouz NematiPour + * \date (last) 08-Feb-2021 + * \author (original) Behrouz NematiPour + * \date (original) 29-Jan-2021 + * + */ + +// Qt +import QtQuick 2.12 + +// Qml imports +import "qrc:/globals" + +/*! + * \brief an image with text under it. + * \details it has been mainly created for the rinseback screen + */ + +Image { id: _root + property int diameter : 100 + property string text : "" + property int fontSize : 26 + + signal clicked + + width : _root.diameter + height : _root.diameter + source : _root.image + Text { id: _label + anchors { + top: parent.bottom + topMargin: 15 + horizontalCenter: parent.horizontalCenter + } + color : _root.enabled ? Colors.textButton : Colors.textDisableButton + text : _root.text + font.pixelSize: _root.fontSize + } + + MouseArea { + anchors.fill: _root + onClicked: _root.clicked() + } +} Index: sources/gui/qml/globals/Fonts.qml =================================================================== diff -u -r76f632ce5a9039ae662d9a52286079b772f8ae7f -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/gui/qml/globals/Fonts.qml (.../Fonts.qml) (revision 76f632ce5a9039ae662d9a52286079b772f8ae7f) +++ sources/gui/qml/globals/Fonts.qml (.../Fonts.qml) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -66,6 +66,8 @@ readonly property int fontPixelUltrafiltrationAdjustmentConfirmButton : fontPixelUltrafiltrationAdjustmentButton readonly property int fontPixelUltrafiltrationAdjustmentEditValue : 46 + readonly property int fontPixelRinsebackAdjustmentButton : 26 + readonly property int fontPixelPriming : 20 readonly property int fontPixelCreateTreatment : 30 readonly property int fonstPixelCreateTreatmentTable : 24 Index: sources/gui/qml/pages/postTreatment/PostTreatmentRecirculate.qml =================================================================== diff -u -r3345651cca9723989785801ee25001dc3e4f28a1 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/gui/qml/pages/postTreatment/PostTreatmentRecirculate.qml (.../PostTreatmentRecirculate.qml) (revision 3345651cca9723989785801ee25001dc3e4f28a1) +++ sources/gui/qml/pages/postTreatment/PostTreatmentRecirculate.qml (.../PostTreatmentRecirculate.qml) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -30,7 +30,7 @@ property alias reasonText : _notification.text signal resumeClicked() - signal endClicked() + signal endClicked () Text { id: _title anchors { @@ -61,6 +61,7 @@ text.text : qsTr("RESUME") width : _buttonGroup.buttonsWidth borderColor : Colors.white + onClicked : resumeClicked() } TouchRect { id : _endTouchRect @@ -69,6 +70,7 @@ text.text : qsTr("END") width : _buttonGroup.buttonsWidth borderColor : Colors.white + onClicked : endClicked() } } Index: sources/gui/qml/pages/postTreatment/PostTreatmentRinseback.qml =================================================================== diff -u -r3345651cca9723989785801ee25001dc3e4f28a1 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/gui/qml/pages/postTreatment/PostTreatmentRinseback.qml (.../PostTreatmentRinseback.qml) (revision 3345651cca9723989785801ee25001dc3e4f28a1) +++ sources/gui/qml/pages/postTreatment/PostTreatmentRinseback.qml (.../PostTreatmentRinseback.qml) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -47,138 +47,104 @@ font.pixelSize: Fonts.fontPixelTitle } - Image { id: _imageEnd + ImageText { id: _imageEnd anchors { right : _root.right top : _root.top rightMargin : 45 topMargin : 45 } - - width : Variables.rinsebackIconDiameterDefault - height : Variables.rinsebackIconDiameterDefault - source : "qrc:/images/iRedCrossWCircle" - Text { id: _labelEnd - anchors { - top: parent.bottom - topMargin: 15 - horizontalCenter: parent.horizontalCenter - } - color: "white" - text: qsTr("End") - font.pixelSize: 26 - } + diameter : Variables.rinsebackIconDiameterDefault + source : "qrc:/images/iRedCrossWCircle" + text : qsTr("End") + fontSize : Fonts.fontPixelRinsebackAdjustmentButton + onClicked : endClicked() } ProgressCircle { id: _circle diameter: 335 anchors { horizontalCenter: parent.horizontalCenter top : parent.top - topMargin : 175 + topMargin : 170 } minimum : 0 - maximum : 100 - value : 25 + maximum : vTreatmentRinseback.target + value : vTreatmentRinseback.current Text { id: _textVolume anchors.centerIn: parent color: "white" - text: 300 + " "+ qsTr(Variables.unitTextFluid) + text: vTreatmentRinseback.target.toFixed(0) + " " + qsTr(Variables.unitTextFluid) font.pixelSize: 76 font.weight: Font.ExtraLight } - Text { id: _labelState + Text { id: _labelRate anchors { top: parent.bottom topMargin: 20 horizontalCenter: parent.horizontalCenter } color: "white" - text: qsTr("Resume") + text: vTreatmentRinseback.rate.toFixed(0) + " " + qsTr(Variables.unitTextFlowRate) font.pixelSize: 23 } } Row { id: _buttonRow spacing: 175 anchors { - horizontalCenter: parent.horizontalCenter - bottom : parent.bottom - bottomMargin : 45 + 45 // + the texts height + horizontalCenter: _root.horizontalCenter + bottom : _root.bottom + bottomMargin : Variables.notificationHeight + 55 // + the texts height } - Image { id: _imageDecelerate - anchors.verticalCenter: parent.verticalCenter - - width : Variables.rinsebackIconDiameterDefault - height: Variables.rinsebackIconDiameterDefault - source: "qrc:/images/iDecelerate" + ImageText { id: _imageDecelerate + visible : vHDTreatmentStates.rbRun || vHDTreatmentStates.rbPaused + enabled : vHDTreatmentStates.rbRun + anchors.bottom : _buttonRow.bottom + diameter : Variables.rinsebackIconDiameterDefault + source : "qrc:/images/iDecelerate" + text : qsTr("Decelerate") + fontSize : Fonts.fontPixelRinsebackAdjustmentButton + onClicked : deccelerateClicked() } - Image { id: _imageResume - anchors.verticalCenter: parent.verticalCenter - - visible: false - width : Variables.rinsebackIconDiameterResumePause - height: Variables.rinsebackIconDiameterResumePause - source: "qrc:/images/iResume" + ImageText { id: _imageResume + visible : vHDTreatmentStates.rbPaused + anchors.bottom : _buttonRow.bottom + diameter : Variables.rinsebackIconDiameterResumePause + source : "qrc:/images/iResume" + text : qsTr("Resume") + fontSize : Fonts.fontPixelRinsebackAdjustmentButton + onClicked : resumeClicked() } - Image { id: _imagePause - anchors.verticalCenter: parent.verticalCenter - - width : Variables.rinsebackIconDiameterResumePause - height: Variables.rinsebackIconDiameterResumePause - source: "qrc:/images/iPauseLightBlue" + ImageText { id: _imagePause + visible : vHDTreatmentStates.rbRun // not sure if it's possible || vHDTreatmentStates.rbRun_Additional + anchors.bottom : _buttonRow.bottom + diameter : Variables.rinsebackIconDiameterResumePause + source : "qrc:/images/iPauseLightBlue" + text : qsTr("Pause") + fontSize : Fonts.fontPixelRinsebackAdjustmentButton + onClicked : pauseClicked() } - Image { id: _imageAccelerate - anchors.verticalCenter: parent.verticalCenter - - width : Variables.rinsebackIconDiameterDefault - height: Variables.rinsebackIconDiameterDefault - source: "qrc:/images/iAccelerate" + ImageText { id: _imageAccelerate + visible : vHDTreatmentStates.rbRun || vHDTreatmentStates.rbPaused + enabled : vHDTreatmentStates.rbRun + anchors.bottom : _buttonRow.bottom + diameter : Variables.rinsebackIconDiameterDefault + source : "qrc:/images/iAccelerate" + text : qsTr("Accelerate") + fontSize : Fonts.fontPixelRinsebackAdjustmentButton + onClicked : accelerateClicked() } } - // A separate row for text created because in design texts are aligned in a line but images are in different size. - Row { id: _labelRow - spacing: 175 - anchors { - horizontalCenter: parent.horizontalCenter - bottom : parent.bottom - bottomMargin : 45 - } - Text { id: _labelDecelerate - color: "white" - text: qsTr("Decelerate") - font.pixelSize: 26 - } - Text { id: _labelResume - visible: false - color: "white" - text: qsTr("Resume") - font.pixelSize: 26 - } - Text { id: _labelPause - color: "white" - text: qsTr("Pause") - font.pixelSize: 26 - } - Text { id: _labelAccelerate - color: "white" - text: qsTr("Accelerate") - font.pixelSize: 26 - } - - } - - - NotificationBar { id: _notification iconVisible: false } Index: sources/gui/qml/pages/postTreatment/PostTreatmentRinsebackComplete.qml =================================================================== diff -u -r3345651cca9723989785801ee25001dc3e4f28a1 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/gui/qml/pages/postTreatment/PostTreatmentRinsebackComplete.qml (.../PostTreatmentRinsebackComplete.qml) (revision 3345651cca9723989785801ee25001dc3e4f28a1) +++ sources/gui/qml/pages/postTreatment/PostTreatmentRinsebackComplete.qml (.../PostTreatmentRinsebackComplete.qml) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -29,9 +29,9 @@ property alias reasonText : _notification.text - signal additionalClicked() - signal recirculateClicked() - signal endClicked() + signal additionalClicked () + signal recirculateClicked () + signal endClicked () Text { id: _title anchors { @@ -58,26 +58,26 @@ TouchRect { id : _additionalTouchRect visible : true - button.onPressed: additionalClicked() text.text : qsTr("ADDITIONAL") width : _buttonGroup.buttonsWidth borderColor : Colors.white + onClicked : additionalClicked() } TouchRect { id : _recirculateTouchRect visible : true - button.onPressed: recirculateClicked() text.text : qsTr("RECIRCULATE") width : _buttonGroup.buttonsWidth borderColor : Colors.white + onClicked : recirculateClicked() } TouchRect { id : _disposablesTouchRect visible : true // true if only treatment is not already complete - button.onPressed: endClicked() text.text : qsTr("END") width : _buttonGroup.buttonsWidth borderColor : Colors.white + onClicked : endClicked() } } Index: sources/gui/qml/pages/treatment/TreatmentStack.qml =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -26,6 +26,9 @@ import VTreatmentAdjustmentUltrafiltrationConfirm 0.1 import VTreatmentAdjustmentPressuresLimits 0.1 import VTreatmentAdjustmentHeparin 0.1 +import VTreatmentRinseback 0.1 +import VTreatmentAdjustmentRinseback 0.1 +import VTreatmentAdjustmentRecirculate 0.1 // Qml imports import "qrc:/globals" @@ -46,14 +49,18 @@ stackView.initialItem : _treatmentHome // Views + VHDTreatmentStates { id: vHDTreatmentStates } + VTreatmentRanges { id: vTreatmentRanges } VTreatmentAdjustmentSaline { id: vTreatmentAdjustmentSaline } - VHDTreatmentStates { id: vHDTreatmentStates } VTreatmentAdjustmentUltrafiltrationState { id: vTreatmentAdjustmentUltrafiltrationState } VTreatmentAdjustmentUltrafiltrationEdit { id: vTreatmentAdjustmentUltrafiltrationEdit } VTreatmentAdjustmentUltrafiltrationConfirm { id: vTreatmentAdjustmentUltrafiltrationConfirm } VTreatmentAdjustmentPressuresLimits { id: vTreatmentAdjustmentPressuresLimits } VTreatmentAdjustmentHeparin { id: vTreatmentAdjustmentHeparin } + VTreatmentRinseback { id: vTreatmentRinseback } + VTreatmentAdjustmentRinseback { id: vTreatmentAdjustmentRinseback } + VTreatmentAdjustmentRecirculate { id: vTreatmentAdjustmentRecirculate } // ultrafiltration state information bar properties readonly property bool isUFPaused : vHDTreatmentStates.ufPaused @@ -222,12 +229,35 @@ } } - PostTreatmentRinseback { id: _postTreatmentRinseback } - PostTreatmentRinsebackComplete { id: _postTreatmentRinsebackComplete } - PostTreatmentRecirculate { id: _postTreatmentRecirculate } - PostTreatmentComplete { id: _postTreatmentComplete } + PostTreatmentRinseback { id: _postTreatmentRinseback + onResumeClicked : vTreatmentAdjustmentRinseback .doResume () + onPauseClicked : vTreatmentAdjustmentRinseback .doPause () + onAccelerateClicked : vTreatmentAdjustmentRinseback .doIncrement () + onDeccelerateClicked : vTreatmentAdjustmentRinseback .doDecrement () + onEndClicked : vTreatmentAdjustmentRinseback .doEnd () + } + PostTreatmentRinsebackComplete { id: _postTreatmentRinsebackComplete + onAdditionalClicked : vTreatmentAdjustmentRinseback .doAdditional () + onEndClicked : vTreatmentAdjustmentRinseback .doTreatmentEnd () + onRecirculateClicked :{ /*?*/ } + } + + PostTreatmentRecirculate { id: _postTreatmentRecirculate + onResumeClicked : { /*?*/ } + onEndClicked : vTreatmentAdjustmentRecirculate .doTreatmentEnd () + } + + PostTreatmentComplete { id: _postTreatmentComplete } + // ---------- Manages Responses ---------- + Connections { target: vTreatmentAdjustmentRinseback + onAdjustmentTriggered: { + console.debug(vTreatmentAdjustmentRinseback.text()) + _postTreatmentRinseback.reasonText = vTreatmentAdjustmentRinseback.text(); + } + } + Connections { target: vTreatmentAdjustmentDuration onAdjustmentTriggered : { if ( vTreatmentAdjustmentDuration.adjustment_Accepted ) { @@ -337,8 +367,8 @@ // and is more optimized and will never leave screen empty // also with what ever order they have been push with the reverse/correct animation will be poped or pushed. Connections { target: vHDTreatmentStates - onTxStartChanged: { - if ( vHDTreatmentStates.txStart ) { + onTxDialysisRunningChanged: { + if ( vHDTreatmentStates.txDialysisRunning ) { back( _treatmentStart ) } } @@ -354,6 +384,12 @@ } } + onTxStopChanged: { + if ( vHDTreatmentStates.txStop ) { + back( _postTreatmentComplete ) + } + } + onTxRinsebackChanged: { if ( vHDTreatmentStates.txRinseback ) { // it may be navigated from complete or stop alarm dialog, @@ -363,6 +399,21 @@ } } + onRbStopChanged: { + if ( vHDTreatmentStates.rbStop ) { + back( _postTreatmentRinsebackComplete ) + } + } + + onRbAdditionalChanged: { + if ( vHDTreatmentStates.rbAdditional ) { + // it may be navigated from complete or stop alarm dialog, + // which in the later case it can't be replaced with main treatment + // since user is able to go back to main treament if it's not timed out. + back( _postTreatmentRinseback ) + } + } + onTxRecirculateChanged: { if ( vHDTreatmentStates.txRecirculate ) { // application state by design is navigating always from Rinseback to recirculate Index: sources/model/hd/data/MTreatmentRinsebackData.cpp =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/model/hd/data/MTreatmentRinsebackData.cpp (.../MTreatmentRinsebackData.cpp) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/model/hd/data/MTreatmentRinsebackData.cpp (.../MTreatmentRinsebackData.cpp) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -20,16 +20,19 @@ return { _data.mTarget .value, _data.mCurrent.value, + _data.mRate .value, }; } bool MTreatmentRinseback::fromByteArray(const QByteArray &vByteArray, int *vIndex) { int index = 0; // message data start position if (GetValue(vByteArray, index, _data.mTarget )) if (GetValue(vByteArray, index, _data.mCurrent)) + if (GetValue(vByteArray, index, _data.mRate )) return true ; else { if(vIndex) *vIndex = index; return false; } else { if(vIndex) *vIndex = index; return false; } + else { if(vIndex) *vIndex = index; return false; } } /*! @@ -41,5 +44,6 @@ Data data; data.mTarget = _data.mTarget .value; data.mCurrent = _data.mCurrent.value; + data.mRate = _data.mRate .value; return data; } Index: sources/model/hd/data/MTreatmentRinsebackData.h =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/model/hd/data/MTreatmentRinsebackData.h (.../MTreatmentRinsebackData.h) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/model/hd/data/MTreatmentRinsebackData.h (.../MTreatmentRinsebackData.h) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -38,6 +38,7 @@ * | || * | #1:(F32) | \ref Data::mTarget | * | #2:(F32) | \ref Data::mCurrent | + * | #3:(U32) | \ref Data::mRate | * * \sa Data * \sa MAdjustRinsebackReq : Rinseback Request @@ -61,6 +62,7 @@ struct { Types::F32 mTarget ; Types::F32 mCurrent; + Types::U32 mRate ; } _data; public: @@ -70,8 +72,9 @@ QString infoText() const override { return QString("RinsebackData") ; } struct Data { - float mTarget = 0; ///< Target volume of rinseback delivery - float mCurrent = 0; ///< Current volume of rinseback delivery + float mTarget = 0; ///< Target volume of rinseback delivery + float mCurrent = 0; ///< Current volume of rinseback delivery + quint32 mRate = 0; ///< Current flow rate of rinseback delivery }; public: Index: sources/view/hd/adjustment/VTreatmentAdjustmentRecirculate.cpp =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/adjustment/VTreatmentAdjustmentRecirculate.cpp (.../VTreatmentAdjustmentRecirculate.cpp) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/adjustment/VTreatmentAdjustmentRecirculate.cpp (.../VTreatmentAdjustmentRecirculate.cpp) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -43,3 +43,38 @@ _data.requestedState = vRequestedState; emit didAdjustment(_data); // notify the controllers to do the adjustment } + +/*! + * \brief View::VTreatmentAdjustmentRecirculate::doReconnect + * \details User requests to re-connect to system (stop re-circulating, clamp arterial and venous lines) + */ +void View::VTreatmentAdjustmentRecirculate::doReconnect() { + doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_RECONNECT ); +} + +/*! + * \brief View::VTreatmentAdjustmentRecirculate::doReconnectConfirm + * \details User confirms patient connected, lines un-shunted to return to treatment + */ +void View::VTreatmentAdjustmentRecirculate::doReconnectConfirm() { + doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_CONFIRM_RECONNECT ); +} + +/*! + * \brief View::VTreatmentAdjustmentRecirculate::doResume + * \details User requests to resume re-circulation + */ +void View::VTreatmentAdjustmentRecirculate::doResume() { + doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_RESUME_RC ); +} + +/*! + * \brief View::VTreatmentAdjustmentRecirculate::doTreatmentEnd + * \details User requests to end treatment + */ +void View::VTreatmentAdjustmentRecirculate::doTreatmentEnd() { + doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_END_TREATMENT ); +} + + + Index: sources/view/hd/adjustment/VTreatmentAdjustmentRecirculate.h =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/adjustment/VTreatmentAdjustmentRecirculate.h (.../VTreatmentAdjustmentRecirculate.h) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/adjustment/VTreatmentAdjustmentRecirculate.h (.../VTreatmentAdjustmentRecirculate.h) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -52,10 +52,10 @@ void doAdjustment(const GuiRecirculateCommands &vRequestedState); public slots: - void doReconnect () { doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_RECONNECT ); } - void doReconnectConfirm () { doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_CONFIRM_RECONNECT ); } - void doResume () { doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_RESUME_RC ); } - void doTreatmentEnd () { doAdjustment( GuiRecirculateCommands::REQUESTED_USER_ACTION_TX_RECIRC_END_TREATMENT ); } + void doReconnect (); + void doReconnectConfirm (); + void doResume (); + void doTreatmentEnd (); signals: /*! Index: sources/view/hd/adjustment/VTreatmentAdjustmentRinseback.cpp =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/adjustment/VTreatmentAdjustmentRinseback.cpp (.../VTreatmentAdjustmentRinseback.cpp) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/adjustment/VTreatmentAdjustmentRinseback.cpp (.../VTreatmentAdjustmentRinseback.cpp) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -35,11 +35,11 @@ } /*! - * \brief View::VTreatmentAdjustmentRinseback::doAdjustment + * \brief View::VTreatmentAdjustmentRinseback::adjustment * \details the invocable slot to adjust the rinseback state * \param vRequestedState - the requested state */ -void View::VTreatmentAdjustmentRinseback::doAdjustment(const GuiRinsebackCommands &vRequestedState) +void View::VTreatmentAdjustmentRinseback::adjustment(const GuiRinsebackCommands &vRequestedState) { _data.requestedState = vRequestedState; emit didAdjustment(_data); // notify the controllers to do the adjustment Index: sources/view/hd/adjustment/VTreatmentAdjustmentRinseback.h =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/adjustment/VTreatmentAdjustmentRinseback.h (.../VTreatmentAdjustmentRinseback.h) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/adjustment/VTreatmentAdjustmentRinseback.h (.../VTreatmentAdjustmentRinseback.h) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -48,20 +48,20 @@ VIEW_DEC_CLASS_ADJUSTMENT(VTreatmentAdjustmentRinseback, AdjustRinsebackResponseData) // ---------- Start/Stop Rinseback -private slots: - void doAdjustment (const GuiRinsebackCommands &vRequestedState); +private: + void adjustment (const GuiRinsebackCommands &vRequestedState); public slots: - void doStart () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_CONFIRM_START ); } - void doIncrement () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_INCREASE_RATE ); } - void doDecrement () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_DECREASE_RATE ); } - void doPause () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_PAUSE ); } - void doResume () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_RESUME ); } - void doEnd () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_END ); } - void doAdditional () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_ADDITIONAL ); } - void doDisconnected () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_CONFIRM_DISCONNECT ); } - void doTreatmentEnd () { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_END_TREATMENT ); } - void doTreatmentBack() { doAdjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_BACK_TO_TREATMENT ); } + void doStart () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_CONFIRM_START ); } + void doIncrement () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_INCREASE_RATE ); } + void doDecrement () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_DECREASE_RATE ); } + void doPause () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_PAUSE ); } + void doResume () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_RESUME ); } + void doEnd () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_END ); } + void doAdditional () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_ADDITIONAL ); } + void doDisconnected () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_CONFIRM_DISCONNECT ); } + void doTreatmentEnd () { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_END_TREATMENT ); } + void doTreatmentBack() { adjustment( GuiRinsebackCommands::REQUESTED_USER_ACTION_RINSEBACK_BACK_TO_TREATMENT ); } signals: /*! Index: sources/view/hd/data/VHDTreatmentStatesData.cpp =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/data/VHDTreatmentStatesData.cpp (.../VHDTreatmentStatesData.cpp) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/data/VHDTreatmentStatesData.cpp (.../VHDTreatmentStatesData.cpp) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -101,7 +101,7 @@ rbRun ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_RUN_STATE ); rbPaused ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_PAUSED_STATE ); rbStop ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_STOP_STATE ); - rbRun_Additional ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_RUN_ADDITIONAL_STATE ); + rbAdditional ( vData.mRinsebackState == GuiRinsebackStates ::RINSEBACK_RUN_ADDITIONAL_STATE ); } // NOTE: refer to the note above // Treatment states - Recirculate Index: sources/view/hd/data/VHDTreatmentStatesData.h =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/data/VHDTreatmentStatesData.h (.../VHDTreatmentStatesData.h) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/data/VHDTreatmentStatesData.h (.../VHDTreatmentStatesData.h) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -103,7 +103,7 @@ PROPERTY( bool , rbRun , false) ///< Rinseback running state of the rinseback sub-mode state machine PROPERTY( bool , rbPaused , false) ///< Rinseback paused state of the rinseback sub-mode state machine PROPERTY( bool , rbStop , false) ///< Rinseback stopped (done) state of the rinseback sub-mode state machine - PROPERTY( bool , rbRun_Additional , false) ///< Additional rinseback volume (10 mL) state of the rinseback sub-mode state machine + PROPERTY( bool , rbAdditional , false) ///< Additional rinseback volume (10 mL) state of the rinseback sub-mode state machine // ---- Treatment states - Recirculate PROPERTY( bool , txRecirculate , false) ///< TREATMENT_RECIRC_STATE Recirculate saline and dialysate while patient disconnected. Blood lines open and shunted. Dialyzer is bypassed Index: sources/view/hd/data/VTreatmentRinsebackData.cpp =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/data/VTreatmentRinsebackData.cpp (.../VTreatmentRinsebackData.cpp) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/data/VTreatmentRinsebackData.cpp (.../VTreatmentRinsebackData.cpp) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -7,7 +7,7 @@ * * \file VTreatmentRinsebackData.cpp * \author (last) Behrouz NematiPour - * \date (last) 07-Feb-2021 + * \date (last) 08-Feb-2021 * \author (original) Behrouz NematiPour * \date (original) 20-Nov-2020 * @@ -23,4 +23,5 @@ { target (vData.mTarget ); current(vData.mCurrent); + rate (vData.mRate ); } Index: sources/view/hd/data/VTreatmentRinsebackData.h =================================================================== diff -u -r58014dae52ee6357e88b9b03bcad457ddcb432e8 -rfd25d67f37410037f22be9c6e958b100e3790de9 --- sources/view/hd/data/VTreatmentRinsebackData.h (.../VTreatmentRinsebackData.h) (revision 58014dae52ee6357e88b9b03bcad457ddcb432e8) +++ sources/view/hd/data/VTreatmentRinsebackData.h (.../VTreatmentRinsebackData.h) (revision fd25d67f37410037f22be9c6e958b100e3790de9) @@ -7,7 +7,7 @@ * * \file VTreatmentRinsebackData.h * \author (last) Behrouz NematiPour - * \date (last) 07-Feb-2021 + * \date (last) 08-Feb-2021 * \author (original) Behrouz NematiPour * \date (original) 20-Nov-2020 * @@ -38,6 +38,7 @@ PROPERTY( float , target , 0) PROPERTY( float , current , 0) + PROPERTY( quint32 , rate , 0) VIEW_DEC(VTreatmentRinseback, TreatmentRinsebackData) };