Index: SDDs/CreateRx.puml =================================================================== diff -u --- SDDs/CreateRx.puml (revision 0) +++ SDDs/CreateRx.puml (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -0,0 +1,105 @@ +@startuml CreateRx + + participant TD as TD + participant SW as SW + participant UI as UI + control Wait_Retry as Wait_Retry + actor USER as US + collections Pre_Tx as Pre_Tx + + 'Possible actions and interaction tuypes + ' TD -> SW: MSG: Message + ' SW -> TD: MSG: Message + ' SW -> UI: CMD: command + ' UI -> SW: ACT: Action + ' US -> UI: User actions are: + ' ENT: User enters a value or string + ' TCH: User touches a button (RadioButton, CheckBox, ...) + ' SET: User sets/slides a slider + ' SCL: User scrolls a flipable area + ' + 'Messages conventions: + '[x \n ,] + '[x \n ,# certain amount of parameters according to the content] + '[x \n ,X The rest of the parameters do not matter.] + + == Normal Bootup == + TD -> SW: MSG: [x12: 3,1] \n OpMode - Standby Dat + SW -> UI: CMD: MainHome Screen + UI ->o Wait_Retry: ⟲: MainHome Screen + == Create Rx - Simplified == + TD -> UI: [x12] OpMode - Standby + UI -> TD: [x45] Create Treatment Req + TD -> UI: [x46] Create Treatment Rsp + UI -> TD: [x3F] Prameters Validation Req + TD -> UI: [x40] Prameters Validation Rsp + UI -> TD: [x44] Prameters Confirmation Req + TD -> UI: [x12] OpMode - Pre-Tx + + + + == Create Rx - Detailed == + US -> UI: TCH: Create Treatment Button + UI -> SW: ACT: Create Treatment + SW -> TD: MSG: [x45: 1] Req \n Initiate Treatment + alt Accepted: Initiate Treatment + TD -> SW: MSG: [x46: 1,X] Rsp \n Initiate Treatment + TD -> SW: MSG: [x12: 4,1] Dat \n OpMode - Parameters + SW -> UI: CMD: Patient ID Screen + UI ->o Wait_Retry: ⟲: Patient ID Screen + alt Canceled: Initiate Treatment + US -> UI: TCH: Back Button + UI -> SW: ACT: Back + SW -> TD: MSG: [x45: 0] Req \n Initiate Treatment Cancel + TD -> SW: MSG: [x12: 3,1] Dat \n OpMode - Standby + SW -> UI: CMD: MainHome Screen + UI ->o Wait_Retry: ⟲: MainHome Screen + end + US -> UI: ENT: Patinet ID Text + US -> UI: TCH: Confirm Button + UI -> SW: ACT: Patinet ID Confirm + SW -> SW: ACT: Patient ID Save + SW -> UI: CMD: Prescription Parameters Screen + UI ->o Wait_Retry: ⟲: Prescription Parameters Screen + group adjust + US -> UI: SET: Prescription Parameters + UI -> SW: ACT: Prescription Parameters: Save + end group + alt Confirm + US -> UI: TCH: Confirm Button + UI -> SW: ACT: Prescription Parameters + SW -> TD: MSG: [x3F: #(all the Rx Params)] Req \n Prescription Parameters: Validation + else Back + US -> UI: TCH: Back Button + UI ->o Wait_Retry: ⟲: Patient ID Screen + end + alt Accepted + TD -> SW: MSG: [x40: 1,X] Rsp \n Prescription Parameters: Validation + SW -> UI: CMD: Prescription Parameters Confimation Screen + UI ->o Wait_Retry: ⟲: Prescription Parameters Confimation Screen + alt Confirm + US -> UI: TCH: Confirm Button + UI -> SW: ACT: Prescription Parameters Confimation + SW -> TD: MSD: [x44: 1] Req \n Prescription Parameters Confimation + TD -> SW: MSG: [x12: 4,1] Dat \n OpMode - Pre-Treatment + SW -> UI: CMD: Pre-Treatment Stack + UI -[#Green]>o Pre_Tx + else Back + US -> UI: TCH: Back Button + UI -> SW: ACT: Prescription Parameters Confimation: Back + SW -> TD: MSD: [x44: 0] Req \n Prescription Parameters Confimation + SW -> UI: CMD: Prescription Parameters Screen + UI ->o Wait_Retry: ⟲: Prescription Parameters Screen + end + + else #Pink + TD -> SW: MSG: [x40: 0,#RR] Rsp \n Prescription Parameters: Validation + SW -> UI: CMD: Highlight Rejected Parameters + UI ->o Wait_Retry: ⟲: Prescription Parameters Screen + end + else #Pink Rejected x46: Initiate Treatment + TD -> SW: MSG: [x46: 0,RR] + SW -> UI: CMD: Rejection Reason (RR) Notification + UI ->o Wait_Retry: ⟲: MainHome Screen + end +@enduml \ No newline at end of file Index: leahi.pro =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- leahi.pro (.../leahi.pro) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ leahi.pro (.../leahi.pro) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -55,14 +55,23 @@ sources \ sources/device \ sources/storage \ - sources/gui \ sources/canbus \ + sources/model \ + sources/model/td \ + sources/model/td/data \ + sources/model/td/alarm \ + sources/view \ + sources/view/td \ + sources/view/td/data \ + sources/view/confirm \ + sources/view/settings \ + \ + sources/gui \ sources/utility \ sources/wifi \ sources/bluetooth \ sources/cloudsync \ sources/abstract \ - sources/model \ sources/model/confirm \ sources/model/settings \ sources/model/ui/data \ @@ -85,9 +94,6 @@ sources/model/dg/data/disinfect \ sources/model/dg/adjustment \ sources/model/dg/adjustment/settings \ - sources/view \ - sources/view/confirm \ - sources/view/settings \ sources/view/pretreatment \ sources/view/ui/data \ sources/view/hd/adjustment/common \ @@ -134,6 +140,10 @@ sources/model/MAbstract.h \ sources/model/MAbstractDynamic.h \ sources/device/DeviceModels.h \ + \ # ---------- Models - TD - Data //// ----- @LEAHIZED + sources/model/td/data/MTDOpModeData.h \ + \ # ---------- Views - TD - Data - States //// ----- @LEAHIZED + sources/view/td/data/VTDOpModeData.h \ \ # ---------- Models - confirm sources/model/confirm/MDuetConfirmHDi.h \ \ # ---------- Models - POST @@ -160,7 +170,6 @@ sources/model/hd/alarm/MAlarmCleared.h \ sources/model/hd/alarm/MAlarmActiveList.h \ \ # ---------- Models - States Data - sources/model/hd/data/MHDOperationModeData.h \ sources/model/hd/data/pretreatment/MPreTreatmentStatesData.h \ sources/model/hd/data/treatment/MTreatmentStatesData.h \ sources/model/hd/data/posttreatment/MPostTreatmentStatesData.h \ @@ -335,7 +344,6 @@ \ # ---------- Views - HD - Adjustment - Disinfection sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.h \ \ # ---------- Views - HD - Data - States - sources/view/hd/data/VHDOperationModeData.h \ sources/view/hd/data/pretreatment/VPreTreatmentStatesData.h \ sources/view/hd/data/treatment/VHDTreatmentStatesData.h \ sources/view/hd/data/posttreatment/VPostTreatmentStatesData.h \ @@ -411,6 +419,8 @@ sources/model/MAbstract.cpp \ sources/model/MAbstractDynamic.cpp \ sources/device/DeviceModels.cpp \ + \ # ---------- Models - TD - Data - States + sources/model/td/data/MTDOpModeData.cpp \ \ # ---------- Models - CONFIRM sources/model/confirm/MDuetConfirmHDi.cpp \ \ # ---------- Models - POST @@ -436,7 +446,6 @@ sources/model/hd/alarm/MAlarmCleared.cpp \ sources/model/hd/alarm/MAlarmActiveList.cpp \ \ # ---------- Models - Data - States - sources/model/hd/data/MHDOperationModeData.cpp \ sources/model/hd/data/pretreatment/MPreTreatmentStatesData.cpp \ sources/model/hd/data/treatment/MTreatmentStatesData.cpp \ sources/model/hd/data/posttreatment/MPostTreatmentStatesData.cpp \ @@ -546,6 +555,8 @@ sources/view/VEventSpy.cpp \ sources/view/VGeneralEvent.cpp \ sources/device/DeviceView.cpp \ + \ # ---------- Views - TD - States Data + sources/view/td/data/VTDOpModeData.cpp \ \ # ---------- Views - CONFIRM sources/view/confirm/VConfirm.cpp \ \ # ---------- Views - POST @@ -601,7 +612,6 @@ \ # ---------- Views - HD - Adjustment - Disinfection sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.cpp \ \ # ---------- Views - HD - States Data - sources/view/hd/data/VHDOperationModeData.cpp \ sources/view/hd/data/pretreatment/VPreTreatmentStatesData.cpp \ sources/view/hd/data/treatment/VHDTreatmentStatesData.cpp \ sources/view/hd/data/posttreatment/VPostTreatmentStatesData.cpp \ Index: leahi.pro.user =================================================================== diff -u -r5a3c8d31fb220eb82f4f1d5c1ea063f05cb43287 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- leahi.pro.user (.../leahi.pro.user) (revision 5a3c8d31fb220eb82f4f1d5c1ea063f05cb43287) +++ leahi.pro.user (.../leahi.pro.user) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -1,6 +1,6 @@ - + EnvironmentId @@ -81,7 +81,9 @@ Builtin.DefaultTidyAndClazy 1 false - + + /home/denali/Public/luis/application/leahi.pro + true @@ -479,42 +481,42 @@ /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali - /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali - /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali + /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali + /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali + /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Release/denali /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali - /home/denali/Projects/tmp/build/build-denali-Qt_5_15_10_iMX8-Debug/denali - 192.168.137.247 - 192.168.137.202 - 192.168.137.125 - 192.168.137.170 - 192.168.10.159 - 192.168.10.186 - 192.168.137.26 - 192.168.137.170 - 192.168.40.23 - 192.168.137.3 192.168.10.228 192.168.10.167 192.168.137.25 - 192.168.10.186 - 192.168.10.138 - 192.168.10.228 192.168.137.36 - 192.168.137.30 + 192.168.10.228 + 192.168.10.138 + 192.168.10.186 192.168.137.210 + 192.168.137.30 + 192.168.137.125 + 192.168.137.202 + 192.168.137.247 + 192.168.10.159 + 192.168.137.170 + 192.168.10.186 + 192.168.137.3 + 192.168.40.23 + 192.168.137.170 + 192.168.137.26 /home/root @@ -541,64 +543,64 @@ /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots + /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux + /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux /opt/b2qt/3.1.18/sysroots + /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots + /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux + /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots /opt/b2qt/3.1.18/sysroots - /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux /opt/b2qt/3.1.18/sysroots - /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux - /opt/b2qt/3.1.18/sysroots - /opt/b2qt/3.1.18/sysroots/x86_64-pokysdk-linux - /opt/b2qt/3.1.18/sysroots - 2023-02-02T02:26:33.738 - 2023-02-02T01:46:50.167 - 2023-02-02T02:07:25.922 - 2023-01-27T10:15:15.423 - 2023-01-24T18:19:13.179 - 2023-01-18T20:13:36.296 - 2023-02-01T05:00:56.449 - 2023-01-27T09:45:11.898 - 2023-01-24T17:29:54.849 - 2023-02-02T02:40:56.627 2023-01-17T18:06:25.579 2023-02-02T19:40:15.813 2023-02-02T02:13:54.596 - 2023-01-18T17:47:08.797 - 2023-02-02T09:06:00.862 - 2023-01-17T18:18:03.749 2023-02-01T03:23:15.710 - 2023-02-02T02:30:48.337 + 2023-01-17T18:18:03.749 + 2023-02-02T09:06:00.862 + 2023-01-18T17:47:08.797 2023-02-02T01:52:20.307 + 2023-02-02T02:30:48.337 + 2023-02-02T02:07:25.922 + 2023-02-02T01:46:50.167 + 2023-02-02T02:26:33.738 + 2023-01-24T18:19:13.179 + 2023-01-27T10:15:15.423 + 2023-01-18T20:13:36.296 + 2023-02-02T02:40:56.627 + 2023-01-24T17:29:54.849 + 2023-01-27T09:45:11.898 + 2023-02-01T05:00:56.449 - 2023-02-02T02:26:46.000 - 2023-02-02T01:47:02.000 - 2023-02-02T02:07:21.000 - 2023-01-27T10:15:08.000 - 2023-01-24T18:18:58.000 - 2023-01-18T20:13:33.000 - 2023-02-01T05:00:51.000 - 2023-01-27T09:44:58.000 - 2023-01-24T17:30:03.000 - 2023-02-02T02:41:10.000 2023-01-17T18:05:42.000 2023-02-02T19:39:36.000 2023-02-02T02:14:08.000 - 2023-01-18T17:47:04.000 - 2023-02-02T09:05:22.000 - 2023-01-17T18:17:25.000 2023-02-01T03:23:28.000 - 2023-02-02T02:31:01.000 + 2023-01-17T18:17:25.000 + 2023-02-02T09:05:22.000 + 2023-01-18T17:47:04.000 2023-02-02T01:52:16.000 + 2023-02-02T02:31:01.000 + 2023-02-02T02:07:21.000 + 2023-02-02T01:47:02.000 + 2023-02-02T02:26:46.000 + 2023-01-24T18:18:58.000 + 2023-01-27T10:15:08.000 + 2023-01-18T20:13:33.000 + 2023-02-02T02:41:10.000 + 2023-01-24T17:30:03.000 + 2023-01-27T09:44:58.000 + 2023-02-01T05:00:51.000 2 Index: sources/ApplicationController.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/ApplicationController.cpp (.../ApplicationController.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/ApplicationController.cpp (.../ApplicationController.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -180,8 +180,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! @@ -731,7 +731,7 @@ // HD POST // UI is done, let HD start the communication [ UI Check-in is the HD commjunication listener starter ] checkIn(); - emit didKeepAliveBegin (); + emit didCheckInBegin (); alarmTrigger (Gui::GuiAlarmID::ALARM_ID_NO_ALARM, true); // send queued fails postDoneRequest (); // send HD the POST result versionsRequest (); // send HD the version request Index: sources/ApplicationController.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/ApplicationController.h (.../ApplicationController.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/ApplicationController.h (.../ApplicationController.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -178,12 +178,11 @@ */ void didPOSTPass (bool vPass); /*! - * \brief didKeepAliveBegin + * \brief didCheckInBegin * \details this signal will be emitted by ApplicationController - * when it is done with all the messaging and has nothing to say - * just to keep the conversation alive and let HD know UI is alive. + * when it is done with all the POST to nitify the TD device to start the conversation. */ - void didKeepAliveBegin (); + void didCheckInBegin (); /*! * \brief didQuitApplication * \details this signal is a placeholder for any farther notification to any class which needs to close itself. Index: sources/MainTimer.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/MainTimer.cpp (.../MainTimer.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/MainTimer.cpp (.../MainTimer.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -52,8 +52,8 @@ */ void MainTimer::initConnections() { - connect(&_ApplicationController , SIGNAL(didKeepAliveBegin()), - this , SLOT( onKeepAliveBegin())); + connect(&_ApplicationController , SIGNAL(didCheckInBegin()), + this , SLOT( onCheckInBegin())); } /*! @@ -110,11 +110,11 @@ } /*! - * \brief MainTimer::onKeepAliveBegin - * \details the handler for the signal didKeepAliveBegin - * comming from ApplicationController + * \brief MainTimer::onCheckInBegin + * \details the handler for the signal didCheckInBegin + * emiited from ApplicationController */ -void MainTimer::onKeepAliveBegin() +void MainTimer::onCheckInBegin() { if ( ! gFakeInterval ) { startTimer(_interval); Index: sources/MainTimer.h =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/MainTimer.h (.../MainTimer.h) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/MainTimer.h (.../MainTimer.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -46,7 +46,7 @@ bool isDateChanged(bool vIncludeTime = false); private slots: - void onKeepAliveBegin(); + void onCheckInBegin(); signals: void didTimeout(); Index: sources/bluetooth/BluetoothInterface.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/bluetooth/BluetoothInterface.cpp (.../BluetoothInterface.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/bluetooth/BluetoothInterface.cpp (.../BluetoothInterface.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -108,8 +108,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! Index: sources/canbus/CanInterface.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/CanInterface.cpp (.../CanInterface.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/CanInterface.cpp (.../CanInterface.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -146,8 +146,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! Index: sources/canbus/FrameInterface.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/FrameInterface.cpp (.../FrameInterface.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/FrameInterface.cpp (.../FrameInterface.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -109,8 +109,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! Index: sources/canbus/MessageAcknowModel.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/MessageAcknowModel.cpp (.../MessageAcknowModel.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/MessageAcknowModel.cpp (.../MessageAcknowModel.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -102,8 +102,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! Index: sources/canbus/MessageDispatcher.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/MessageDispatcher.cpp (.../MessageDispatcher.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/MessageDispatcher.cpp (.../MessageDispatcher.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -123,8 +123,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! @@ -499,20 +499,22 @@ mData += vData.mBloodFlowRate ; mData += vData.mDialysateFlowRate ; mData += vData.mTreatmentDuration ; + mData += vData.mSalineBolusVolume ; mData += vData.mHeparinStopTime ; - mData += vData.mSalineBolus ; + mData += vData.mHeparinType ; mData += vData.mAcidConcentrate ; mData += vData.mBicarbonateConcentrate ; mData += vData.mDialyzerType ; - mData += vData.mHeparinType ; mData += vData.mBloodPressureMeasureInterval ; mData += vData.mRinsebackFlowRate ; + mData += vData.mRinsebackVolume ; mData += vData.mArterialPressureLimitWindow ; mData += vData.mVenousPressureLimitWindow ; mData += vData.mVenousPressureLimitAsymtrc ; + mData += vData.mTrancembrncPressureLimitWindow ; + mData += vData.mDialysateTemp ; mData += vData.mHeparinDispensingRate ; mData += vData.mHeparinBolusVolume ; - mData += vData.mDialysateTemp ; onActionTransmit(GuiActionType::ID_AdjustParametersValidationReq, mData); } Index: sources/canbus/MessageDispatcher.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/MessageDispatcher.h (.../MessageDispatcher.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/MessageDispatcher.h (.../MessageDispatcher.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -107,7 +107,6 @@ // List of the transmit(request) only, messages which require acknowledge back(AckBack). QList _needsAcknow { - // FIXME: check this on device first. It is not working with dialin. GuiActionType::ID_TDCheckIn , // CONFIRM GuiActionType::ID_DuetConfirmUIr , Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -51,7 +51,7 @@ // ---- {Gui::GuiActionType::ID_PowerOff , 1 }, // 1 byte {Gui::GuiActionType::ID_ShuttingDown , 0 }, - {Gui::GuiActionType::ID_TDCheckIn , 255 }, // 0 => 255 to be able to run a multi-frame test. + {Gui::GuiActionType::ID_TDCheckIn , 0 }, //// ----- @LEAHIZED // Generic Confirm {Gui::GuiActionType::ID_DuetConfirmHDi , 3 * 4 }, // 3 parameters each 4bytes @@ -86,7 +86,7 @@ {Gui::GuiActionType::ID_HDAirTrapData , 4 * 4 }, // 4 parameters each 4bytes {Gui::GuiActionType::ID_HDBloodLeakData , 4 * 4 }, // 4 parameters each 4bytes // ---- - {Gui::GuiActionType::ID_HDOperationModeData , 2 * 4 }, // 2 parameter each 4bytes + {Gui::GuiActionType::ID_TDOpModeData , 2 * 4 }, // 2 parameter each 4bytes {Gui::GuiActionType::ID_PreTreatmentStates , 11 * 4 }, //11 parameters each 4bytes {Gui::GuiActionType::ID_TreatmentStates , 10 * 4 }, //10 parameters each 4bytes {Gui::GuiActionType::ID_PostTreatmentStates , 2 * 4 }, // 2 parameter each 4bytes Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -469,7 +469,7 @@ case Gui::GuiActionType::ID_HDUsageInfoRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDUsageInfoRsp ); break; case Gui::GuiActionType::ID_AdjustInstitutionalRecordRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustInstitutionalRecordRsp ); break; // ----- States - case Gui::GuiActionType::ID_HDOperationModeData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDOperationModeData ); break; + case Gui::GuiActionType::ID_TDOpModeData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TDOpModeData ); break; case Gui::GuiActionType::ID_PreTreatmentStates : ok = notify(vMessage, vData, Gui::GuiActionType::ID_PreTreatmentStates ); break; case Gui::GuiActionType::ID_TreatmentStates : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TreatmentStates ); break; case Gui::GuiActionType::ID_PostTreatmentStates : ok = notify(vMessage, vData, Gui::GuiActionType::ID_PostTreatmentStates ); break; @@ -572,7 +572,7 @@ vData.clear(); switch (vMessage.actionId) { // notice we are in receive mode case Gui::GuiActionType::ID_Acknow : ok = true; /* TODO : implement notify<>() */ break; - LOG_APPED(QString("DG,CheckIn," + QVariant(vData).toStringList().join(','))); break; + LOG_APPED(QString("DD,CheckIn," + QVariant(vData).toStringList().join(','))); break; // ----- POST case Gui::GuiActionType::ID_DGPostSingleResultData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGPostSingleResultData ); break; case Gui::GuiActionType::ID_DGPostFinalResultData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGPostFinalResultData ); break; Index: sources/cloudsync/CloudSyncController.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/cloudsync/CloudSyncController.cpp (.../CloudSyncController.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/cloudsync/CloudSyncController.cpp (.../CloudSyncController.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -134,8 +134,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! @@ -763,7 +763,7 @@ // Same parameters will be sent for these messages for now, so data is not changed. switch (vAction) { - case GuiActionType::ID_HDOperationModeData : { + case GuiActionType::ID_TDOpModeData : { // ---------------------------------------------------------------------------------------- // DEBUG : disable the HD HW message on the device on CloudSync integration testing. // currently it is always on fault and resets CloudSync inp log Index: sources/device/DeviceController.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/device/DeviceController.cpp (.../DeviceController.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/device/DeviceController.cpp (.../DeviceController.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -145,8 +145,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); emit didEventThreadChange( QPrivateSignal() ); } Index: sources/gui/GuiController.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/GuiController.cpp (.../GuiController.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/gui/GuiController.cpp (.../GuiController.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -123,8 +123,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! Index: sources/gui/GuiGlobals.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -52,7 +52,7 @@ #include "VHDUsageInfo.h" #include "VAdjustmentInstitutionalRecord.h" // states data -#include "VHDOperationModeData.h" +#include "VTDOpModeData.h" #include "VPreTreatmentStatesData.h" #include "VHDTreatmentStatesData.h" #include "VPostTreatmentStatesData.h" Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r5a3c8d31fb220eb82f4f1d5c1ea063f05cb43287 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 5a3c8d31fb220eb82f4f1d5c1ea063f05cb43287) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -120,7 +120,7 @@ ID_HDRTCEpochData = 0x0A00, // 10 // State Messages - ID_HDOperationModeData = 0x1200, // 18 //// ----- @LEAHIZED + ID_TDOpModeData = 0x1200, // 18 //// ----- @LEAHIZED ID_PreTreatmentStates = 0x5C00, // 92 ID_TreatmentStates = 0x0F00, // 15 ID_PostTreatmentStates = 0x7700, // 119 @@ -154,12 +154,12 @@ // Pre-Treatment // Pre-Treatment Initiate Treatment - ID_AdjustInitTreatmentReq = 0x3800, // 56 - ID_AdjustInitTreatmentRsp = 0x3900, // 57 + ID_AdjustInitTreatmentReq = 0x4500, // 69 //// ----- @LEAHIZED + ID_AdjustInitTreatmentRsp = 0x4600, // 70 //// ----- @LEAHIZED // Pre-Treatment Parameters Validation/Confirm - ID_AdjustParametersValidationReq = 0x3500, // 53 - ID_AdjustParametersValidationRsp = 0x3600, // 54 - ID_AdjustParametersConfirmReq = 0x3B00, // 59 + ID_AdjustParametersValidationReq = 0x3F00, // 63 //// ----- @LEAHIZED + ID_AdjustParametersValidationRsp = 0x4000, // 64 //// ----- @LEAHIZED + ID_AdjustParametersConfirmReq = 0x4400, // 68 //// ----- @LEAHIZED // Pre-Treatment Water Sample ID_DGFilterFlushData = 0x6000, // 96 ID_AdjustWaterSampleReq = 0x5D00, // 93 Index: sources/gui/qml/AlarmItem.qml =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/AlarmItem.qml (.../AlarmItem.qml) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/gui/qml/AlarmItem.qml (.../AlarmItem.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -131,9 +131,9 @@ rinsebackVisible : ! vAlarmStatus.alarm_Flag_noRinseback endVisible : ! vAlarmStatus.alarm_Flag_noEndTreatment minVisible : ! vAlarmStatus.alarm_Flag_noMinimize - titleFading : vHDOperationMode.fault + titleFading : vTDOpMode.fault countDown : vTreatmentStop.countDown - countDownVisible : vHDOperationMode.inTreatment + countDownVisible : vTDOpMode.inTreatment && ( vHDTreatmentStates.txStop || vHDTreatmentStates.txRinseback @@ -153,7 +153,7 @@ timeout : vAlarmStatus.alarm_MuteTimeout minVisible : ! vAlarmStatus.alarm_Flag_noMinimize onMuteClicked : vAlarmStatus.doSilence() - titleFading : vHDOperationMode.fault + titleFading : vTDOpMode.fault } Connections { target: vAlarmStatus Index: sources/gui/qml/dialogs/DiagnosticsDialog.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/dialogs/DiagnosticsDialog.qml (.../DiagnosticsDialog.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/dialogs/DiagnosticsDialog.qml (.../DiagnosticsDialog.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -482,12 +482,12 @@ } DebugDataColumn { id: _HDOperationModeColumn - textObjectName :"_HDOperationModeData" + textObjectName :"_TDOpModeData" title : qsTr(" HD Mode ") x: col(0.5) y: row(1.9) model: [ - vHDOperationMode.text , + vTDOpMode.text , ] fontPixelSizeText: Fonts.fontPixelDebugTitle } Index: sources/gui/qml/main.qml =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/main.qml (.../main.qml) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/gui/qml/main.qml (.../main.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -49,7 +49,7 @@ import VHDUsageInfo 0.1 import VAdjustmentInstitutionalRecord 0.1 // States views -import VHDOperationMode 0.1 +import VTDOpMode 0.1 //// ----- @LEAHIZED import VPreTreatmentStates 0.1 import VHDTreatmentStates 0.1 import VPostTreatmentStates 0.1 @@ -152,9 +152,9 @@ VAdjustmentInstitutionalRecord { id: vAdjustmentInstitutionalRecord } //VAdjustIn // ---- States - VHDOperationMode { id: vHDOperationMode + VTDOpMode { id: vTDOpMode onStandbyChanged: { - if(vHDOperationMode.standby) { + if(vTDOpMode.standby) { vTreatmentVitals.doReset() } } @@ -166,7 +166,7 @@ VTreatmentBloodFlow { id: vTreatmentBloodFlow } VTreatmentVitals { id: vTreatmentVitals interval : vTreatmentCreate.bloodPressureMeasureInterval - enableDialog: vHDOperationMode.inTreatment && vHDTreatmentStates.txTreatment + enableDialog: vTDOpMode.inTreatment && vHDTreatmentStates.txTreatment // As long as UI is in In-Tx BP/HR is updated and the dialog will pop up on interval. onEnableDialogChanged : { if ( vTreatmentVitals.enableDialog ) { @@ -280,7 +280,7 @@ } } - Connections { target: vHDOperationMode + Connections { target: vTDOpMode function onStandbyWaitDisinfectChanged ( vValue ) { _mainMenu.isTreatment() } } @@ -425,7 +425,7 @@ textPixelSize : Fonts.fontPixelAlarmBarTitle isSilenced : _alarmItem.isSilenced timeout : _alarmItem.timeout - backgroundFading : vHDOperationMode.fault + backgroundFading : vTDOpMode.fault } GuiView { id: _GuiView Index: sources/gui/qml/pages/MainStack.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -108,7 +108,7 @@ } MainHome { id: _mainHome - onStartTreatment : { page( _treatmentStack )} + onStartTreatment : { } onCreateTreatment : { vPreTreatmentAdjustmentInitTreatment.doInitiate( )} onVisibleChanged: { if (visible) { @@ -120,7 +120,7 @@ } } - Connections { target: vHDOperationMode + Connections { target: vTDOpMode function onIsTreatmentChanged ( vValue ) { if( vValue ) _mainMenu.isTreatment() } function onIsManagerChanged ( vValue ) { if( vValue ) _mainMenu.isManager () } function onIsSettingsChanged ( vValue ) { if( vValue ) _mainMenu.isSettings () } Index: sources/gui/qml/pages/disinfect/DisinfectStack.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/disinfect/DisinfectStack.qml (.../DisinfectStack.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/disinfect/DisinfectStack.qml (.../DisinfectStack.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -152,7 +152,7 @@ } // ----- Navigation - Connections { target: vHDOperationMode + Connections { target: vTDOpMode function onStandbyWaitDisinfectChanged ( vValue ) { page( _disinfectHome , vValue )} // initialItem } Index: sources/gui/qml/pages/posttreatment/PostTreatmentStack.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/posttreatment/PostTreatmentStack.qml (.../PostTreatmentStack.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/posttreatment/PostTreatmentStack.qml (.../PostTreatmentStack.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -99,7 +99,7 @@ function onVerifyChanged ( vValue ) { console.debug("verify ", vValue )} } - Connections { target: vHDOperationMode + Connections { target: vTDOpMode function onPostTreatmentChanged ( vValue ) { page( _patientDisconnectionConfirm , vValue )} } Index: sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateStack.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateStack.qml (.../PreTreatmentCreateStack.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateStack.qml (.../PreTreatmentCreateStack.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -103,7 +103,7 @@ title.text : qsTr("Confirm Treatment") } - Connections { target: vHDOperationMode + Connections { target: vTDOpMode function onValidateParametersChanged ( vValue ) { pagePatientID ( vValue )} } Index: sources/gui/qml/pages/settings/SettingsExportLogs.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/settings/SettingsExportLogs.qml (.../SettingsExportLogs.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/settings/SettingsExportLogs.qml (.../SettingsExportLogs.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -177,13 +177,13 @@ anchors.leftMargin : parent. sidesMarginContent anchors.horizontalCenter : parent.horizontalCenter - readonly property int columnWidthProgress : 350 - readonly property int columnWidthFolder : _root.horizontalLayout ? 840 : 420 - readonly property int columnWidthFileName : _root.horizontalLayout ? 685 : 285 // best combination + readonly property int columnWidthProgress : 375 + readonly property int columnWidthFolder : _root.horizontalLayout ? 840 : 725 + readonly property int columnWidthFileName : _root.horizontalLayout ? 685 : 575 // best combination readonly property int columnWidthFileSize : _root.horizontalLayout ? 105 : 105 // best combination Column { id : _progressColumn - property int progressWidth : 125 + property int progressWidth : 170 property int progressHeight : height - _logTypeCombo.height - _logTypeExportButton.height spacing : 10 @@ -267,7 +267,7 @@ height : parent.height / 2 SDCProgressItem { id: _SDC_progressItem - thickness : 2 + thickness : 10 displayInformation : false anchors.fill : parent } @@ -289,7 +289,7 @@ height : parent.height / 2 USBProgressItem { id: _USB_progressItem - thickness : 2 + thickness : 10 displayInformation : false anchors.fill : parent } Index: sources/gui/qml/pages/settings/SettingsServicePassword.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/settings/SettingsServicePassword.qml (.../SettingsServicePassword.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/settings/SettingsServicePassword.qml (.../SettingsServicePassword.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -61,7 +61,7 @@ page(_settingsHome) // in case of debugging that the HD is in service mode already check and call the gotoServiceMode - if ( vHDOperationMode.service ) gotoServiceMode(true) + if ( vTDOpMode.service ) gotoServiceMode(true) } function checkPassword() { Index: sources/gui/qml/pages/settings/SettingsStack.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/settings/SettingsStack.qml (.../SettingsStack.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/settings/SettingsStack.qml (.../SettingsStack.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -316,7 +316,7 @@ } } - Connections { target: vHDOperationMode + Connections { target: vTDOpMode function onServiceChanged ( vValue ) { gotoServiceMode( vValue )} function onStandbyWaitDisinfectChanged ( vValue ) { page( _settingsHome , vValue )} } Index: sources/gui/qml/pages/treatment/TreatmentStack.qml =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -201,7 +201,7 @@ } } - Connections { target: vHDOperationMode + Connections { target: vTDOpMode // The initail screen should be the Blood Prime, since that one is the earlier state in the list. // also since it is being used in two stacks In-Treatment and also in End-Treatmet is has been defined in the MainStack. function onInTreatmentChanged ( vValue ) { page( _treatmentBloodPrime , vValue )} Index: sources/model/MModel.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/MModel.h (.../MModel.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/MModel.h (.../MModel.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -39,7 +39,7 @@ #include "MUIPostFinalResultHDRequest.h" // States Messages -#include "MHDOperationModeData.h" +#include "MTDOpModeData.h" #include "MPreTreatmentStatesData.h" #include "MTreatmentStatesData.h" #include "MPostTreatmentStatesData.h" @@ -195,22 +195,22 @@ * and assign a correct message value to it. * Note that it needs to be in little endian so if you have a message Id of 37 your enum should have a value of 0x2500 in hex. * \code{.cpp} - * ID_HDOperationModeData = 0x2500, // 37 // little endian + * ID_TDOpModeData = 0x1200, // 18 // little endian * \endcode * * 02 - MessageGlobals.h : add len * \code{.cpp} - * {Gui::GuiActionType::ID_HDOperationModeData , 2 * 4 }, // 2 parameter each 4bytes + * {Gui::GuiActionType::ID_TDOpModeData , 2 * 4 }, // 2 parameter each 4bytes * \endcode * * 03 - Implement the model by copy/paste of the closest model, fit to your need. - * \sa MHDOperationMode - * \sa MHDOperationModeData.h - * \sa MHDOperationModeData.cpp + * \sa MTDOpMode + * \sa MTDOpModeData.h + * \sa MTDOpModeData.cpp * * 04 - Added #include in MModel.h for the implemented model * \code{.cpp} - * #include "MHDOperationModeData.h" + * #include "MTDOpModeData.h" * \endcode * * 05 - Register the model in MModel.h by adding it to the macro lists : @@ -227,30 +227,30 @@ * * View : * 07 - Implement the view by copy/paste of the closest view, fit to your need. - * \sa VHDOperationMode - * \sa VHDOperationModeData.h - * \sa VHDOperationModeData.cpp + * \sa VTDOpMode + * \sa VTDOpModeData.h + * \sa VTDOpModeData.cpp * * 08 - Register the view in VView.h in macro list * \sa REGISTER_VIEW_TYPES * \sa VView.h * * 09 - Include the view header in the GuiGlobals.cpp * \code{.cpp} - * #include "VHDOperationModeData.h" + * #include "VTDOpModeData.h" * \endcode * \sa GuiGlobals.cpp * * QML : * 10 - Import the registered view * \code{.js} - * import VHDOperationMode 0.1; + * import VTDOpMode 0.1; * \endcode * \sa main.qml * * 11 - Create an object * \code{.js} - * VHDOperationMode { id: vHDOperationMode } + * VTDOpMode { id: vTDOpMode } * \endcode * \sa main.qml * @@ -306,7 +306,7 @@ REGISTER_METATYPE( BluetoothData ) \ REGISTER_METATYPE( BluetoothDeviceData ) \ /* Data */ \ - REGISTER_METATYPE( HDOperationModeData ) \ + REGISTER_METATYPE( TDOpModeData ) \ REGISTER_METATYPE( PreTreatmentStatesData ) \ REGISTER_METATYPE( TreatmentStatesData ) \ REGISTER_METATYPE( PostTreatmentStatesData ) \ @@ -487,7 +487,7 @@ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, HDRTCEpochData ) \ /* */ \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, SettingsData ) \ - ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, HDOperationModeData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TDOpModeData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, PreTreatmentStatesData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TreatmentStatesData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, PostTreatmentStatesData ) \ @@ -680,7 +680,7 @@ ACTION_RECEIVE_SIGNAL ( UIPostFinalResultHDRequestData ) \ \ ACTION_RECEIVE_BRIDGE_DEFINITION( SettingsData ) \ - ACTION_RECEIVE_BRIDGE_DEFINITION( HDOperationModeData ) \ + ACTION_RECEIVE_BRIDGE_DEFINITION( TDOpModeData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( PreTreatmentStatesData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( TreatmentStatesData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( PostTreatmentStatesData ) \ @@ -977,7 +977,7 @@ /* Received signals */ \ /* NO RESPONSE message model here */ \ ACTION_RECEIVE_SIGNAL( SettingsData ) \ - ACTION_RECEIVE_SIGNAL( HDOperationModeData ) \ + ACTION_RECEIVE_SIGNAL( TDOpModeData ) \ ACTION_RECEIVE_SIGNAL( PreTreatmentStatesData ) \ ACTION_RECEIVE_SIGNAL( TreatmentStatesData ) \ ACTION_RECEIVE_SIGNAL( PostTreatmentStatesData ) \ Index: sources/model/dg/adjustment/settings/MAdjustDGRequests.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/dg/adjustment/settings/MAdjustDGRequests.h (.../MAdjustDGRequests.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/dg/adjustment/settings/MAdjustDGRequests.h (.../MAdjustDGRequests.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -47,9 +47,6 @@ class MAdjustDGDateTimeReq : public MModel { public: quint32 mEpoch; - QString toString() { - return toString({mEpoch}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("AdjustDGDateTime", vParameters); } @@ -71,10 +68,6 @@ */ class MAdjustDGCleaningUsageReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("DGCleaningUsage", vParameters); } Index: sources/model/dg/adjustment/settings/MDuetRoWaterDG.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/dg/adjustment/settings/MDuetRoWaterDG.h (.../MDuetRoWaterDG.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/dg/adjustment/settings/MDuetRoWaterDG.h (.../MDuetRoWaterDG.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -149,11 +149,6 @@ class MDuetRoWaterModeUIi : public MModel { public: quint32 mStatus; - - QString toString() { - return toString({mStatus}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("AdjustRoWater", vParameters); } Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h (.../MDisinfectAdjustModeRequests.h) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h (.../MDisinfectAdjustModeRequests.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -55,11 +55,6 @@ }; quint32 mInititate = eInitiate; - - QString toString() { - return toString({mInititate}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("DisinfectMode", vParameters); } Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartRequests.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartRequests.h (.../MDisinfectAdjustStartRequests.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartRequests.h (.../MDisinfectAdjustStartRequests.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -50,11 +50,6 @@ class MAdjustDisinfectStartReq : public MModel { public: GuiDisinfectDGStates mState = GuiDisinfectDGStates::DD_DISINFECT_NOT_RUNNING_STATE; - - QString toString() { - return toString({mState}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("DisinfectStart", vParameters); } Index: sources/model/hd/adjustment/posttreatment/MPostTreatmentAdjustRequests.h =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/posttreatment/MPostTreatmentAdjustRequests.h (.../MPostTreatmentAdjustRequests.h) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/model/hd/adjustment/posttreatment/MPostTreatmentAdjustRequests.h (.../MPostTreatmentAdjustRequests.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -48,9 +48,6 @@ */ class MAdjustPatientDisconnectionNotifyReq : public MModel { public: - QString toString() { - return toString({}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("PatientDisconnectionNotify", vParameters); } @@ -71,9 +68,6 @@ */ class MAdjustPatientDisconnectionConfirmReq : public MModel { public: - QString toString() { - return toString({}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("PatientDisconnectionConfirm", vParameters); } @@ -94,9 +88,6 @@ */ class MAdjustDisposablesRemovalConfirmReq : public MModel { public: - QString toString() { - return toString({}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("DisposablesRemovalConfirm", vParameters); } @@ -117,9 +108,6 @@ */ class MAdjustTreatmentLogReq : public MModel { public: - QString toString() { - return toString({}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("TreatmentLog", vParameters); } Index: sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustInitTreatmentResponse.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustInitTreatmentResponse.h (.../MPreTreatmentAdjustInitTreatmentResponse.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustInitTreatmentResponse.h (.../MPreTreatmentAdjustInitTreatmentResponse.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -30,9 +30,9 @@ * \brief The MAdjustInitTreatmentResponse class * \details The start treamtent response model * - * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | - * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:----------------------: | - * |0x3900| 0x020 | 6 | Rsp | Y | HD | UI | Init Treatment Response | + * | MSG | CAN ID | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:------:|:---:|:---:|:---:|:----------------------: | + * |0x7000| 0x040 | Rsp | Y | TD | UI | Init Treatment Response | * * | Payload || * | || @@ -45,7 +45,7 @@ * | || * | || * | typeText | Event | - * | unitText | HD | + * | unitText | TD | * | infoText | InitTreatment | * */ Index: sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustParametersValidationResponse.cpp =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustParametersValidationResponse.cpp (.../MPreTreatmentAdjustParametersValidationResponse.cpp) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustParametersValidationResponse.cpp (.../MPreTreatmentAdjustParametersValidationResponse.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -18,75 +18,81 @@ QVariantList MAdjustParametersValidationResponse::parameters() const { return { - _data.mAccepted .value, - _data.mBloodFlowRate .value, - _data.mDialysateFlowRate .value, - _data.mDuration .value, - _data.mHeparinStopTime .value, - _data.mSalineBolus .value, - _data.mAcidConcentrate .value, - _data.mBicarbonateConcentrate .value, - _data.mDialyzerType .value, - _data.mHeparinType .value, - _data.mBloodPressureMeasureInterval .value, - _data.mRinsebackFlowRate .value, - _data.mArterialPressureLimitWindow .value, - _data.mVenousPressureLimitWindow .value, - _data.mVenousPressureLimitAsymtrc .value, - _data.mHeparinDispensingRate .value, - _data.mHeparinBolusVolume .value, - _data.mDialysateTemp .value + _data.mAccepted .value, + _data.mBloodFlowRateRejectReason .value, + _data.mDialysateFlowRateRejectReason .value, + _data.mTreatmentDurationRejectReason .value, + _data.mSalineBolusVolumeRejectReason .value, + _data.mHeparinStopTimeRejectReason .value, + _data.mHeparinTypeRejectReason .value, + _data.mAcidConcentrateRejectReason .value, + _data.mBicarbonateConcentrateRejectReason .value, + _data.mDialyzerTypeRejectReason .value, + _data.mBloodPressureMeasureIntervalRejectReason .value, + _data.mRinsebackFlowRateRejectReason .value, + _data.mRinsebackVolumeRejectReason .value, + _data.mArterialPressureLimitWindowRejectReason .value, + _data.mVenousPressureLimitWindowRejectReason .value, + _data.mVenousPressureLimitAsymtrcRejectReason .value, + _data.mTrancembrncPressureLimitWindowRejectReason .value, + _data.mDialysateTempRejectReason .value, + _data.mHeparinDispensingRateRejectReason .value, + _data.mHeparinBolusVolumeRejectReason .value }; } bool MAdjustParametersValidationResponse::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.mBloodFlowRate )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mDialysateFlowRate )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mDuration )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mHeparinStopTime )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mSalineBolus )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mAcidConcentrate )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mBicarbonateConcentrate )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mDialyzerType )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mHeparinType )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mBloodPressureMeasureInterval )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mRinsebackFlowRate )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mArterialPressureLimitWindow )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVenousPressureLimitWindow )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVenousPressureLimitAsymtrc )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mHeparinDispensingRate )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mHeparinBolusVolume )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mDialysateTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mAccepted )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mBloodFlowRateRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mDialysateFlowRateRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mTreatmentDurationRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mSalineBolusVolumeRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mHeparinStopTimeRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mHeparinTypeRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mAcidConcentrateRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mBicarbonateConcentrateRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mDialyzerTypeRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mBloodPressureMeasureIntervalRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mRinsebackFlowRateRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mRinsebackVolumeRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mArterialPressureLimitWindowRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mVenousPressureLimitWindowRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mVenousPressureLimitAsymtrcRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mTrancembrncPressureLimitWindowRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mDialysateTempRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mHeparinDispensingRateRejectReason )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mHeparinBolusVolumeRejectReason )) goto lError; return true ; - + lError: if(vIndex) { *vIndex = index; } - + return false ; } MAdjustParametersValidationResponse::Data MAdjustParametersValidationResponse::data() const { Data data; - data.mAccepted = _data.mAccepted .value; - data.mBloodFlowRate = _data.mBloodFlowRate .value; - data.mDialysateFlowRate = _data.mDialysateFlowRate .value; - data.mDuration = _data.mDuration .value; - data.mHeparinStopTime = _data.mHeparinStopTime .value; - data.mSalineBolus = _data.mSalineBolus .value; - data.mAcidConcentrate = _data.mAcidConcentrate .value; - data.mBicarbonateConcentrate = _data.mBicarbonateConcentrate .value; - data.mDialyzerType = _data.mDialyzerType .value; - data.mHeparinType = _data.mHeparinType .value; - data.mBloodPressureMeasureInterval = _data.mBloodPressureMeasureInterval .value; - data.mRinsebackFlowRate = _data.mRinsebackFlowRate .value; - data.mArterialPressureLimitWindow = _data.mArterialPressureLimitWindow .value; - data.mVenousPressureLimitWindow = _data.mVenousPressureLimitWindow .value; - data.mVenousPressureLimitAsymtrc = _data.mVenousPressureLimitAsymtrc .value; - data.mHeparinDispensingRate = _data.mHeparinDispensingRate .value; - data.mHeparinBolusVolume = _data.mHeparinBolusVolume .value; - data.mDialysateTemp = _data.mDialysateTemp .value; + data.mAccepted = _data.mAccepted .value; + data.mBloodFlowRateRejectReason = _data.mBloodFlowRateRejectReason .value; + data.mDialysateFlowRateRejectReason = _data.mDialysateFlowRateRejectReason .value; + data.mTreatmentDurationRejectReason = _data.mTreatmentDurationRejectReason .value; + data.mSalineBolusVolumeRejectReason = _data.mSalineBolusVolumeRejectReason .value; + data.mHeparinStopTimeRejectReason = _data.mHeparinStopTimeRejectReason .value; + data.mHeparinTypeRejectReason = _data.mHeparinTypeRejectReason .value; + data.mAcidConcentrateRejectReason = _data.mAcidConcentrateRejectReason .value; + data.mBicarbonateConcentrateRejectReason = _data.mBicarbonateConcentrateRejectReason .value; + data.mDialyzerTypeRejectReason = _data.mDialyzerTypeRejectReason .value; + data.mBloodPressureMeasureIntervalRejectReason = _data.mBloodPressureMeasureIntervalRejectReason .value; + data.mRinsebackFlowRateRejectReason = _data.mRinsebackFlowRateRejectReason .value; + data.mRinsebackVolumeRejectReason = _data.mRinsebackVolumeRejectReason .value; + data.mArterialPressureLimitWindowRejectReason = _data.mArterialPressureLimitWindowRejectReason .value; + data.mVenousPressureLimitWindowRejectReason = _data.mVenousPressureLimitWindowRejectReason .value; + data.mVenousPressureLimitAsymtrcRejectReason = _data.mVenousPressureLimitAsymtrcRejectReason .value; + data.mTrancembrncPressureLimitWindowRejectReason = _data.mTrancembrncPressureLimitWindowRejectReason .value; + data.mDialysateTempRejectReason = _data.mDialysateTempRejectReason .value; + data.mHeparinDispensingRateRejectReason = _data.mHeparinDispensingRateRejectReason .value; + data.mHeparinBolusVolumeRejectReason = _data.mHeparinBolusVolumeRejectReason .value; return data; } Index: sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustParametersValidationResponse.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustParametersValidationResponse.h (.../MPreTreatmentAdjustParametersValidationResponse.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustParametersValidationResponse.h (.../MPreTreatmentAdjustParametersValidationResponse.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -29,30 +29,32 @@ * \brief The MAdjustParametersValidationResponse class * \details The treatment parameters response model * - * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | - * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:------------------------------: | - * |0x3600| 0x020 | 6 | Rsp | Y | HD | UI | Treatment Parameters Response | + * | MSG | CAN ID | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:------:|:---:|:---:|:---:|:------------------------------: | + * |0x4000| 0x040 | Rsp | Y | TD | UI | Treatment Parameters Response | * * | Payload || * | || - * | #01:(U32) | \ref Data::mAccepted | - * | #02:(U32) | \ref Data::mBloodFlowRate | - * | #03:(U32) | \ref Data::mDialysateFlowRate | - * | #04:(U32) | \ref Data::mDuration | - * | #05:(U32) | \ref Data::mHeparinStopTime | - * | #06:(U32) | \ref Data::mSalineBolus | - * | #07:(U32) | \ref Data::mAcidConcentrate | - * | #08:(U32) | \ref Data::mBicarbonateConcentrate | - * | #09:(U32) | \ref Data::mDialyzerType | - * | #10:(U32) | \ref Data::mHeparinType | - * | #11:(U32) | \ref Data::mBloodPressureMeasureInterval | - * | #12:(U32) | \ref Data::mRinsebackFlowRate | - * | #13:(U32) | \ref Data::mArterialPressureLimitWindow | - * | #14:(U32) | \ref Data::mVenousPressureLimitWindow | - * | #15:(U32) | \ref Data::mVenousPressureLimitAsymtrc | - * | #16:(U32) | \ref Data::mHeparinDispensingRate | - * | #17:(U32) | \ref Data::mHeparinBolusVolume | - * | #18:(U32) | \ref Data::mDialysateTemp | + * | #01:(U32) | \ref Data::mAccepted | + * | #02:(U32) | \ref Data::mBloodFlowRateRejectReason | + * | #03:(U32) | \ref Data::mDialysateFlowRateRejectReason | + * | #04:(U32) | \ref Data::mTreatmentDurationRejectReason | + * | #05:(U32) | \ref Data::mSalineBolusVolumeRejectReason | + * | #06:(U32) | \ref Data::mHeparinStopTimeRejectReason | + * | #07:(U32) | \ref Data::mHeparinTypeRejectReason | + * | #08:(U32) | \ref Data::mAcidConcentrateRejectReason | + * | #09:(U32) | \ref Data::mBicarbonateConcentrateRejectReason | + * | #10:(U32) | \ref Data::mDialyzerTypeRejectReason | + * | #11:(U32) | \ref Data::mBloodPressureMeasureIntervalRejectReason | + * | #12:(U32) | \ref Data::mRinsebackFlowRateRejectReason | + * | #13:(U32) | \ref Data::mRinsebackVolumeRejectReason | + * | #14:(U32) | \ref Data::mArterialPressureLimitWindowRejectReason | + * | #15:(U32) | \ref Data::mVenousPressureLimitWindowRejectReason | + * | #16:(U32) | \ref Data::mVenousPressureLimitAsymtrcRejectReason | + * | #17:(U32) | \ref Data::mTrancembrncPressureLimitWindowRejectReason | + * | #18:(U32) | \ref Data::mDialysateTempRejectReason | + * | #19:(U32) | \ref Data::mHeparinDispensingRateRejectReason | + * | #20:(U32) | \ref Data::mHeparinBolusVolumeRejectReason | * * \sa Data * @@ -71,24 +73,26 @@ QVariantList parameters() const override; struct { - Types::U32 mAccepted ; - Types::U32 mBloodFlowRate ; ///< User set blood flow rate (in mL/min) - Types::U32 mDialysateFlowRate ; ///< User set dialysate flow rate (in mL/min) - Types::U32 mDuration ; ///< User set treatment duration (in min) - Types::U32 mHeparinStopTime ; ///< User set heparin pre-stop time (in min) - Types::U32 mSalineBolus ; ///< User set saline bolus volume (in mL) - Types::U32 mAcidConcentrate ; ///< User set acid concentrate option - Types::U32 mBicarbonateConcentrate ; ///< User set bicarbonate concentrate option - Types::U32 mDialyzerType ; ///< User set dialyzer type option - Types::U32 mHeparinType ; ///< User set heparin type option - Types::U32 mBloodPressureMeasureInterval ; ///< User set blood pressure measurement interval (in min) - Types::U32 mRinsebackFlowRate ; ///< User set rinseback flow rate (in mL/min) - Types::U32 mArterialPressureLimitWindow ; ///< User set window alarm limit for arterial pressure (in mmHg) - Types::U32 mVenousPressureLimitWindow ; ///< User set window alarm limit for venous pressure (in mmHg) - Types::U32 mVenousPressureLimitAsymtrc ; ///< User set asymtrc alarm limit for venous pressure (in mmHg) - Types::U32 mHeparinDispensingRate ; ///< User set heparin dispense rate (in mL/hr) - Types::U32 mHeparinBolusVolume ; ///< User set heparin bolus volume (in mL) - Types::U32 mDialysateTemp ; ///< User set dialysate temperature (in deg C) + Types::U32 mAccepted ; + Types::U32 mBloodFlowRateRejectReason ; + Types::U32 mDialysateFlowRateRejectReason ; + Types::U32 mTreatmentDurationRejectReason ; + Types::U32 mSalineBolusVolumeRejectReason ; + Types::U32 mHeparinStopTimeRejectReason ; + Types::U32 mHeparinTypeRejectReason ; + Types::U32 mAcidConcentrateRejectReason ; + Types::U32 mBicarbonateConcentrateRejectReason ; + Types::U32 mDialyzerTypeRejectReason ; + Types::U32 mBloodPressureMeasureIntervalRejectReason ; + Types::U32 mRinsebackFlowRateRejectReason ; + Types::U32 mRinsebackVolumeRejectReason ; + Types::U32 mArterialPressureLimitWindowRejectReason ; + Types::U32 mVenousPressureLimitWindowRejectReason ; + Types::U32 mVenousPressureLimitAsymtrcRejectReason ; + Types::U32 mTrancembrncPressureLimitWindowRejectReason ; + Types::U32 mDialysateTempRejectReason ; + Types::U32 mHeparinDispensingRateRejectReason ; + Types::U32 mHeparinBolusVolumeRejectReason ; } _data; public: @@ -98,24 +102,26 @@ QString infoText () const override { return QString("ParametersValidation"); } struct Data { - quint32 mAccepted = 0; - quint32 mBloodFlowRate = 0; - quint32 mDialysateFlowRate = 0; - quint32 mDuration = 0; - quint32 mHeparinStopTime = 0; - quint32 mSalineBolus = 0; - quint32 mAcidConcentrate = 0; - quint32 mBicarbonateConcentrate = 0; - quint32 mDialyzerType = 0; - quint32 mHeparinType = 0; - quint32 mBloodPressureMeasureInterval = 0; - quint32 mRinsebackFlowRate = 0; - quint32 mArterialPressureLimitWindow = 0; - quint32 mVenousPressureLimitWindow = 0; - quint32 mVenousPressureLimitAsymtrc = 0; - quint32 mHeparinDispensingRate = 0; - quint32 mHeparinBolusVolume = 0; - quint32 mDialysateTemp = 0; + quint32 mAccepted = 0; + quint32 mBloodFlowRateRejectReason = 0; + quint32 mDialysateFlowRateRejectReason = 0; + quint32 mTreatmentDurationRejectReason = 0; + quint32 mSalineBolusVolumeRejectReason = 0; + quint32 mHeparinStopTimeRejectReason = 0; + quint32 mHeparinTypeRejectReason = 0; + quint32 mAcidConcentrateRejectReason = 0; + quint32 mBicarbonateConcentrateRejectReason = 0; + quint32 mDialyzerTypeRejectReason = 0; + quint32 mBloodPressureMeasureIntervalRejectReason = 0; + quint32 mRinsebackFlowRateRejectReason = 0; + quint32 mRinsebackVolumeRejectReason = 0; + quint32 mArterialPressureLimitWindowRejectReason = 0; + quint32 mVenousPressureLimitWindowRejectReason = 0; + quint32 mVenousPressureLimitAsymtrcRejectReason = 0; + quint32 mTrancembrncPressureLimitWindowRejectReason = 0; + quint32 mDialysateTempRejectReason = 0; + quint32 mHeparinDispensingRateRejectReason = 0; + quint32 mHeparinBolusVolumeRejectReason = 0; }; MAdjustParametersValidationResponse () {} Index: sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustRequests.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustRequests.h (.../MPreTreatmentAdjustRequests.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/adjustment/pretreatment/MPreTreatmentAdjustRequests.h (.../MPreTreatmentAdjustRequests.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -37,9 +37,9 @@ * \brief The MAdjustInitiateTreatmentReq class * \details The model to request starting a treatment * - * | MSG | CAN ID | M.Box | Type | Ack | Src | Dest | Description | - * |:----:|:------:|:-----:|:----:|:---:|:---:|:----:|:-------------------------:| - * |0x3800| 0x100 | 9 | Req | Y | UI | HD | Initiate Treatment Request | + * | MSG | CAN ID | Type | Ack | Src | Dest | Description | + * |:----:|:------:|:----:|:---:|:---:|:----:|:-------------------------:| + * |0x4500| 0x041 | Req | Y | UI | TD | Initiate Treatment Request| * * | Payload || * | || @@ -72,65 +72,70 @@ * * | Payload || * | || - * | #01:(U32) | \ref mBloodFlowRate | - * | #02:(U32) | \ref mDialysateFlowRate | - * | #03:(U32) | \ref mTreatmentDuration | - * | #04:(U32) | \ref mHeparinStopTime | - * | #05:(U32) | \ref mSalineBolus | - * | #06:(U32) | \ref mAcidConcentrate | - * | #07:(U32) | \ref mBicarbonateConcentrate | - * | #08:(U32) | \ref mDialyzerType | - * | #09:(U32) | \ref mHeparinType | - * | #10:(U32) | \ref mBloodPressureMeasureInterval | - * | #11:(U32) | \ref mRinsebackFlowRate | - * | #12:(S32) | \ref mArterialPressureLimitWindow | - * | #13:(S32) | \ref mVenousPressureLimitWindow | - * | #14:(S32) | \ref mVenousPressureLimitAsymtrc | - * | #15:(F32) | \ref mHeparinDispensingRate | - * | #16:(F32) | \ref mHeparinBolusVolume | - * | #17:(F32) | \ref mDialysateTemp | + * | #01:(U32) | \ref mBloodFlowRate | + * | #02:(U32) | \ref mDialysateFlowRate | + * | #03:(U32) | \ref mTreatmentDuration | + * | #04:(U32) | \ref mSalineBolusVolume | + * | #05:(U32) | \ref mHeparinStopTime | + * | #06:(U32) | \ref mHeparinType | + * | #07:(U32) | \ref mAcidConcentrate | + * | #08:(U32) | \ref mBicarbonateConcentrate | + * | #09:(U32) | \ref mDialyzerType | + * | #10:(U32) | \ref mBloodPressureMeasureInterval | + * | #11:(U32) | \ref mRinsebackFlowRate | + * | #12:(U32) | \ref mRinsebackVolume | + * | #13:(S32) | \ref mArterialPressureLimitWindow | + * | #14:(S32) | \ref mVenousPressureLimitWindow | + * | #15:(S32) | \ref mVenousPressureLimitAsymtrc | + * | #16:(S32) | \ref mTrancembrncPressureLimitWindow | + * | #17:(F32) | \ref mDialysateTemp | + * | #18:(F32) | \ref mHeparinDispensingRate | + * | #19:(F32) | \ref mHeparinBolusVolume | * */ class MAdjustParametersValidationReq : public MModel { public: + quint32 mBloodFlowRate = 0; // mL/min + quint32 mDialysateFlowRate = 0; // mL/min + quint32 mTreatmentDuration = 0; // minutes + quint32 mSalineBolusVolume = 0; // mL + quint32 mHeparinStopTime = 0; // min + quint32 mHeparinType = 0; // + quint32 mAcidConcentrate = 0; // + quint32 mBicarbonateConcentrate = 0; // + quint32 mDialyzerType = 0; // + quint32 mBloodPressureMeasureInterval = 0; // minutes + quint32 mRinsebackFlowRate = 0; // mL/min + quint32 mRinsebackVolume = 0; // mL + qint32 mArterialPressureLimitWindow = 0; // mmHg + qint32 mVenousPressureLimitWindow = 0; // mmHg + qint32 mVenousPressureLimitAsymtrc = 0; // mmHg + qint32 mTrancembrncPressureLimitWindow = 0; // mmHg + float mDialysateTemp = 0; // Celsius + float mHeparinDispensingRate = 0; // mL/hr + float mHeparinBolusVolume = 0; // mL - quint32 mBloodFlowRate = 0; // mL/min - quint32 mDialysateFlowRate = 0; // mL/min - quint32 mTreatmentDuration = 0; // minutes - quint32 mHeparinStopTime = 0; // min - quint32 mSalineBolus = 0; // mL - quint32 mAcidConcentrate = 0; // - quint32 mBicarbonateConcentrate = 0; // - quint32 mDialyzerType = 0; // - quint32 mHeparinType = 0; // - quint32 mBloodPressureMeasureInterval = 0; // minutes - quint32 mRinsebackFlowRate = 0; // mL/min - qint32 mArterialPressureLimitWindow = 0; // mmHg - qint32 mVenousPressureLimitWindow = 0; // mmHg - qint32 mVenousPressureLimitAsymtrc = 0; // mmHg - float mHeparinDispensingRate = 0; // mL/hr - float mHeparinBolusVolume = 0; // mL - float mDialysateTemp = 0; // Celsius - QString toString() { return toString({ - mBloodFlowRate , - mDialysateFlowRate , - mTreatmentDuration , - mHeparinStopTime , - mSalineBolus , - mAcidConcentrate , - mBicarbonateConcentrate , - mDialyzerType , - mHeparinType , //FIXME: DEN-15377: to set the heparintype to not selected (-1) is used which is incorrect, since the type is unsigned. (No issue for now but is not correct.) - mBloodPressureMeasureInterval , - mRinsebackFlowRate , - mArterialPressureLimitWindow , - mVenousPressureLimitWindow , - mVenousPressureLimitAsymtrc , - mHeparinDispensingRate , - mHeparinBolusVolume , - mDialysateTemp , + mBloodFlowRate , + mDialysateFlowRate , + mTreatmentDuration , + mSalineBolusVolume , + mHeparinStopTime , + mHeparinType , + mAcidConcentrate , + mBicarbonateConcentrate , + mDialyzerType , + mBloodPressureMeasureInterval , + mRinsebackFlowRate , + mRinsebackVolume , + mArterialPressureLimitWindow , + mVenousPressureLimitWindow , + mVenousPressureLimitAsymtrc , + mTrancembrncPressureLimitWindow , + mDialysateTemp , + mHeparinDispensingRate , + mHeparinBolusVolume , }); } static QString toString(const QVariantList &vParameters) { @@ -142,9 +147,9 @@ * \brief The MAdjustParametersConfirmReq class * \details The model to tell HD treatment parameters have been confirmed * - * | MSG | CAN ID | M.Box | Type | Ack | Src | Dest | Description | - * |:----:|:------:|:-----:|:----:|:---:|:---:|:----:|:-----------------------------------:| - * |0x3B00| 0x100 | 9 | Req | Y | UI | HD | Confirm Treatment Parameter Request | + * | MSG | CAN ID | Type | Ack | Src | Dest | Description | + * |:----:|:------:|:----:|:---:|:---:|:----:|:-----------------------------------:| + * |0x4400| 0x041 | Req | Y | UI | TD | Confirm Treatment Parameter Request | * * | Payload || * | || @@ -241,10 +246,6 @@ */ class MAdjustConsumablesConfirmReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("ConsumablesConfirm", vParameters); } @@ -265,10 +266,6 @@ */ class MAdjustDisposablesConfirmReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("DisposablesConfirm", vParameters); } @@ -289,10 +286,6 @@ */ class MAdjustDisposablesPrimeReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("DisposablesPrime", vParameters); } @@ -313,10 +306,6 @@ */ class MAdjustPatientConnectionBeginReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("PatientConnectionBegin", vParameters); } @@ -338,10 +327,6 @@ class MAdjustUltrafiltrationInitReq : public MModel { public: float volume = 0; - QString toString() { - return toString({volume}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("AdjustUFInit", vParameters); } @@ -362,10 +347,6 @@ */ class MAdjustPatientConnectionConfirmReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("PatientConnectionConfirm", vParameters); } @@ -386,10 +367,6 @@ */ class MAdjustStartTreatmentReq : public MModel { public: - QString toString() { - return toString({}); - } - static QString toString(const QVariantList &vParameters) { return MModel::toString("StartTreatment", vParameters); } Index: sources/model/hd/adjustment/treatment/MTreatmentAdjustRequests.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/adjustment/treatment/MTreatmentAdjustRequests.h (.../MTreatmentAdjustRequests.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/adjustment/treatment/MTreatmentAdjustRequests.h (.../MTreatmentAdjustRequests.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -419,7 +419,7 @@ return toString({silence}); } static QString toString(const QVariantList &vParameters) { - return MModel::toString("AlarmSilence", vParameters); + return MModel::toString("", vParameters); } }; @@ -439,9 +439,6 @@ class MAlarmUserActionReq : public MModel { public: GuiAlarmUserActions action; - QString toString() { - return toString({action}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("AlarmUserAction", vParameters); } Index: sources/model/hd/alarm/MAlarmActiveList.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/alarm/MAlarmActiveList.h (.../MAlarmActiveList.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/alarm/MAlarmActiveList.h (.../MAlarmActiveList.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -43,9 +43,6 @@ */ class MAlarmActiveListReq : public MModel { public: - QString toString() { - return toString({}); - } static QString toString(const QVariantList &vParameters) { return MModel::toString("AlarmActiveList", vParameters); } Index: sources/model/hd/alarm/MAlarmTriggered.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/alarm/MAlarmTriggered.h (.../MAlarmTriggered.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/alarm/MAlarmTriggered.h (.../MAlarmTriggered.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -62,7 +62,7 @@ friend class ::tst_models; protected: - QVariantList parameters() const; + QVariantList parameters() const override; public: Type_Enum typeText() const override { return Type_Enum::eEvent ; } Index: sources/model/hd/data/MHDAccelerometerData.h =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/model/hd/data/MHDAccelerometerData.h (.../MHDAccelerometerData.h) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/model/hd/data/MHDAccelerometerData.h (.../MHDAccelerometerData.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -84,15 +84,15 @@ QString infoText() const override { return QString("Accel") ; } struct Data { - float mX = 0; /*!< x Magnitude of acceleration vector in x axis in g units */ - float mY = 0; /*!< y Magnitude of acceleration vector in y axis in g units */ - float mZ = 0; /*!< z Magnitude of acceleration vector in z axis in g units */ - float mXMax = 0; /*!< x Max Maximum magnitude of acceleration vector in x axis in g units */ - float mYMax = 0; /*!< y Max Maximum magnitude of acceleration vector in y axis in g units */ - float mZMax = 0; /*!< z Max Maximum magnitude of acceleration vector in z axis in g units */ - float mXTilt = 0; /*!< x Tilt Tilt angle in the x axis in degrees */ - float mYTilt = 0; /*!< y Tilt Tilt angle in the y axis in degrees */ - float mZTilt = 0; /*!< z Tilt Tilt angle in the z axis in degrees */ + float mX = 0; /*!< x Magnitude of acceleration vector in x axis in g units */ + float mY = 0; /*!< y Magnitude of acceleration vector in y axis in g units */ + float mZ = 0; /*!< z Magnitude of acceleration vector in z axis in g units */ + float mXMax = 0; /*!< x Max Maximum magnitude of acceleration vector in x axis in g units */ + float mYMax = 0; /*!< y Max Maximum magnitude of acceleration vector in y axis in g units */ + float mZMax = 0; /*!< z Max Maximum magnitude of acceleration vector in z axis in g units */ + float mXTilt = 0; /*!< x Tilt Tilt angle in the x axis in degrees */ + float mYTilt = 0; /*!< y Tilt Tilt angle in the y axis in degrees */ + float mZTilt = 0; /*!< z Tilt Tilt angle in the z axis in degrees */ }; public: Fisheye: Tag f2e4eba6e85c5d36537be782926f23cc9dc01037 refers to a dead (removed) revision in file `sources/model/hd/data/MHDOperationModeData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag f2e4eba6e85c5d36537be782926f23cc9dc01037 refers to a dead (removed) revision in file `sources/model/hd/data/MHDOperationModeData.h'. Fisheye: No comparison available. Pass `N' to diff? Index: sources/model/td/data/MTDOpModeData.cpp =================================================================== diff -u --- sources/model/td/data/MTDOpModeData.cpp (revision 0) +++ sources/model/td/data/MTDOpModeData.cpp (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -0,0 +1,49 @@ +/*! + * + * Copyright (c) 2020-2024 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 MTDOpModeData.cpp + * \author (last) Behrouz NematiPour + * \date (last) 17-Apr-2021 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "MTDOpModeData.h" + +using namespace Model; + +QVariantList MTDOpMode::parameters() const { + return { + _data.mOpMode .value, + _data.mSubMode .value, + }; +} + +bool MTDOpMode::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if ( ! GetValue(vByteArray, index, _data.mOpMode )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mSubMode )) goto lError; + + return true ; + +lError: + if(vIndex) { *vIndex = index; } + + return false ; +} + +/*! + * \brief MTDOpMode::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +MTDOpMode::Data MTDOpMode::data() const { + Data data; + data.mOpMode = _data.mOpMode .value; + data.mSubMode = _data.mSubMode .value; + return data; +} Index: sources/model/td/data/MTDOpModeData.h =================================================================== diff -u --- sources/model/td/data/MTDOpModeData.h (revision 0) +++ sources/model/td/data/MTDOpModeData.h (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -0,0 +1,82 @@ +/*! + * + * Copyright (c) 2020-2024 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 MTDOpModeData.h + * \author (last) Behrouz NematiPour + * \date (last) 18-May-2021 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "MAbstract.h" +#include "types.h" + +// forward declarations +class tst_models; + +namespace Model { + +/*! + * \brief The MTDOpMode class + * \details The HD operation mode data model + * + * | MSG | CAN ID | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:------:|:---:|:---:|:---:|:-----------: | + * |0x2500| 0x040 | 1 Hz | N | HD | All | HD Operation Mode Data | + * + * | Payload || + * | || + * | #1:(U32) | \ref Data::mOpMode | + * | #2:(U32) | \ref Data::mSubMode | + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Datum | + * | unitText | HD | + * | infoText | OpMode | + * + */ +class MTDOpMode : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::U32 mOpMode ; + Types::U32 mSubMode ; + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eDatum; } + Unit_Enum unitText () const override { return Unit_Enum::eTD ; } + QString infoText () const override { return QString("OpMode"); } + + struct Data { + quint32 mOpMode = 0; ///< HD operation mode + quint32 mSubMode = 0; ///< HD operation sub mode. In each OpMode sub mode has different meaning regarding the OpMode. + }; + + MTDOpMode () {} + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MTDOpMode::Data TDOpModeData; Index: sources/storage/Logger.cpp =================================================================== diff -u -ra58f91b077c8131bea3dbde0fc338adb113fc9f3 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/storage/Logger.cpp (.../Logger.cpp) (revision a58f91b077c8131bea3dbde0fc338adb113fc9f3) +++ sources/storage/Logger.cpp (.../Logger.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -169,8 +169,8 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); moveToThread(_thread); + _thread->start(); } /*! @@ -531,7 +531,7 @@ void Logger::onActionReceive(GuiActionType vAction, const QVariantList &vData) { switch (vAction) { - case GuiActionType::ID_HDOperationModeData : { + case GuiActionType::ID_TDOpModeData : { if ( vData.length() >= 2 ) { bool ok = true; quint32 opMode = vData[0].toUInt(&ok); if ( ! ok ) return; Index: sources/storage/StorageGlobals.cpp =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/storage/StorageGlobals.cpp (.../StorageGlobals.cpp) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/storage/StorageGlobals.cpp (.../StorageGlobals.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -110,8 +110,8 @@ #endif #else // should be in the project application folder. [is tracking by git] - const char *Settings_Path_Init = "/home/denali/Projects/application/config/"; - const char *Settings_Path_Name = "/home/denali/Projects/application/config/"; + const char *Settings_Path_Init = "/home/denali/Public/luis/application/config/configurations/"; + const char *Settings_Path_Name = "/home/denali/Public/luis/application/config/configurations/"; #endif const char *Settings_Category_Instructions = "Instructions/Instructions" ; const char *Settings_Category_InstructionsImagesLoc = "%1/Instructions/" ; Index: sources/view/VTreatmentCreate.cpp =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/view/VTreatmentCreate.cpp (.../VTreatmentCreate.cpp) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/view/VTreatmentCreate.cpp (.../VTreatmentCreate.cpp) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -43,23 +43,25 @@ AdjustParametersValidationRequestData data; - data.mBloodFlowRate = _bloodFlowRate ; - data.mDialysateFlowRate = _dialysateFlowRate ; - data.mTreatmentDuration = _treatmentDuration ; - data.mHeparinDispensingRate = _heparinDispensingRate ; - data.mHeparinBolusVolume = _heparinBolusVolume ; - data.mHeparinStopTime = _heparinStopTime ; - data.mSalineBolus = _salineBolusVolume ; - data.mHeparinType = _heparinType ; - data.mAcidConcentrate = _acidConcentrate ; - data.mBicarbonateConcentrate = _bicarbonateConcentrate ; - data.mDialyzerType = _dialyzerType ; - data.mDialysateTemp = _dialysateTemp ; - data.mArterialPressureLimitWindow = _arterialPressureLimitWindow ; - data.mVenousPressureLimitWindow = _venousPressureLimitWindow ; - data.mVenousPressureLimitAsymtrc = _venousPressureLimitAsymtrc ; - data.mBloodPressureMeasureInterval = _bloodPressureMeasureInterval ; - data.mRinsebackFlowRate = _rinsebackFlowRate ; + data.mBloodFlowRate = _bloodFlowRate ; + data.mDialysateFlowRate = _dialysateFlowRate ; + data.mTreatmentDuration = _treatmentDuration ; + data.mSalineBolusVolume = _salineBolusVolume ; + data.mHeparinStopTime = _heparinStopTime ; + data.mHeparinType = _heparinType ; + data.mAcidConcentrate = _acidConcentrate ; + data.mBicarbonateConcentrate = _bicarbonateConcentrate ; + data.mDialyzerType = _dialyzerType ; + data.mBloodPressureMeasureInterval = _bloodPressureMeasureInterval ; + data.mRinsebackFlowRate = _rinsebackFlowRate ; + data.mRinsebackVolume = _rinsebackVolume ; + data.mArterialPressureLimitWindow = _arterialPressureLimitWindow ; + data.mVenousPressureLimitWindow = _venousPressureLimitWindow ; + data.mVenousPressureLimitAsymtrc = _venousPressureLimitAsymtrc ; + data.mTrancembrncPressureLimitWindow = _trancembrncPressureLimitWindow ; + data.mDialysateTemp = _dialysateTemp ; + data.mHeparinDispensingRate = _heparinDispensingRate ; + data.mHeparinBolusVolume = _heparinBolusVolume ; emit didAdjustment(data); } @@ -108,26 +110,26 @@ */ void VTreatmentCreate::onActionReceive(const AdjustParametersValidationResponseData &data) { if (! data.mAccepted) { - bloodFlowRateRejectReason (data.mBloodFlowRate ); - dialysateFlowRateRejectReason (data.mDialysateFlowRate ); - treatmentDurationRejectReason (data.mDuration ); - heparinDispensingRateRejectReason (data.mHeparinDispensingRate ); - heparinBolusVolumeRejectReason (data.mHeparinBolusVolume ); - heparinStopTimeRejectReason (data.mHeparinStopTime ); - salineBolusVolumeRejectReason (data.mSalineBolus ); + bloodFlowRateRejectReason (data.mBloodFlowRateRejectReason ); + dialysateFlowRateRejectReason (data.mDialysateFlowRateRejectReason ); + treatmentDurationRejectReason (data.mTreatmentDurationRejectReason ); + heparinDispensingRateRejectReason (data.mHeparinDispensingRateRejectReason ); + heparinBolusVolumeRejectReason (data.mHeparinBolusVolumeRejectReason ); + heparinStopTimeRejectReason (data.mHeparinStopTimeRejectReason ); + salineBolusVolumeRejectReason (data.mSalineBolusVolumeRejectReason ); + heparinTypeRejectReason (data.mHeparinTypeRejectReason ); + acidConcentrateRejectReason (data.mAcidConcentrateRejectReason ); + bicarbonateConcentrateRejectReason (data.mBicarbonateConcentrateRejectReason ); + dialyzerTypeRejectReason (data.mDialyzerTypeRejectReason ); + dialysateTempRejectReason (data.mDialysateTempRejectReason ); + arterialPressureLimitWindowRejectReason (data.mArterialPressureLimitWindowRejectReason ); + venousPressureLimitWindowRejectReason (data.mVenousPressureLimitWindowRejectReason ); + venousPressureLimitAsymtrcRejectReason (data.mVenousPressureLimitAsymtrcRejectReason ); + bloodPressureMeasureIntervalRejectReason (data.mBloodPressureMeasureIntervalRejectReason ); + rinsebackFlowRateRejectReason (data.mRinsebackFlowRateRejectReason ); + rinsebackVolumeRejectReason (data.mRinsebackVolumeRejectReason ); + trancembrncPressureLimitWindowRejectReason (data.mTrancembrncPressureLimitWindowRejectReason ); - heparinTypeRejectReason (data.mHeparinType ); - acidConcentrateRejectReason (data.mAcidConcentrate ); - bicarbonateConcentrateRejectReason (data.mBicarbonateConcentrate ); - dialyzerTypeRejectReason (data.mDialyzerType ); - - dialysateTempRejectReason (data.mDialysateTemp ); - arterialPressureLimitWindowRejectReason (data.mArterialPressureLimitWindow ); - venousPressureLimitWindowRejectReason (data.mVenousPressureLimitWindow ); - venousPressureLimitAsymtrcRejectReason (data.mVenousPressureLimitAsymtrc ); - bloodPressureMeasureIntervalRejectReason (data.mBloodPressureMeasureInterval); - rinsebackFlowRateRejectReason (data.mRinsebackFlowRate ); - emit didValidationFail(); } else { Index: sources/view/VTreatmentCreate.h =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/view/VTreatmentCreate.h (.../VTreatmentCreate.h) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/view/VTreatmentCreate.h (.../VTreatmentCreate.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -76,55 +76,55 @@ QString _HDSerialNumber = ""; - PROPERTY(bool , heparinDispensingRateOff , true) - PROPERTY(bool , heparinBolusVolumeOff , true) + PROPERTY(bool , heparinDispensingRateOff , true) + PROPERTY(bool , heparinBolusVolumeOff , true) - VALUESET(quint32 , bloodFlowRate , 0) - VALUESET(quint32 , dialysateFlowRate , 0) - VALUESET(quint32 , treatmentDuration , 0) - VALUESET(float , heparinDispensingRate , 0) - VALUESET(float , heparinBolusVolume , 0) - VALUESET(quint32 , heparinStopTime , 0) - VALUESET(quint32 , salineBolusVolume , 0) + VALUESET(quint32 , bloodFlowRate , 0) + VALUESET(quint32 , dialysateFlowRate , 0) + VALUESET(quint32 , treatmentDuration , 0) + VALUESET(quint32 , salineBolusVolume , 0) + VALUESET(quint32 , heparinStopTime , 0) + VALUESET(quint32 , heparinType , 0) + VALUESET(quint32 , acidConcentrate , 0) + VALUESET(quint32 , bicarbonateConcentrate , 0) + VALUESET(quint32 , dialyzerType , 0) + VALUESET(quint32 , bloodPressureMeasureInterval , 0) + VALUESET(quint32 , rinsebackFlowRate , 0) + VALUESET(quint32 , rinsebackVolume , 0) + VALUESET(qint32 , arterialPressureLimitWindow , 0) + VALUESET(qint32 , venousPressureLimitWindow , 0) + VALUESET(qint32 , venousPressureLimitAsymtrc , 0) + VALUESET(qint32 , trancembrncPressureLimitWindow , 0) + VALUESET(float , dialysateTemp , 0) + VALUESET(float , heparinDispensingRate , 0) + VALUESET(float , heparinBolusVolume , 0) - VALUESET(quint32 , heparinType , 0) - VALUESET(quint32 , acidConcentrate , 0) - VALUESET(quint32 , bicarbonateConcentrate , 0) - VALUESET(quint32 , dialyzerType , 0) + VALUESET(QString , patientID ,"") + VALUESET(bool , continueEnabled , 0) - VALUESET(qreal , dialysateTemp , 0) - VALUESET(qint32 , arterialPressureLimitWindow , 0) - VALUESET(qint32 , venousPressureLimitWindow , 0) - VALUESET(qint32 , venousPressureLimitAsymtrc , 0) - VALUESET(quint32 , bloodPressureMeasureInterval , 0) - VALUESET(quint32 , rinsebackFlowRate , 0) + PROPERTY(QString , txCode ,"") - VALUESET(QString , patientID ,"") - VALUESET(bool , continueEnabled , 0) + TRIGGER(quint32 , bloodFlowRateRejectReason , 0) + TRIGGER(quint32 , dialysateFlowRateRejectReason , 0) + TRIGGER(quint32 , treatmentDurationRejectReason , 0) + TRIGGER(quint32 , heparinDispensingRateRejectReason , 0) + TRIGGER(quint32 , heparinBolusVolumeRejectReason , 0) + TRIGGER(quint32 , heparinStopTimeRejectReason , 0) + TRIGGER(quint32 , salineBolusVolumeRejectReason , 0) + TRIGGER(quint32 , heparinTypeRejectReason , 0) + TRIGGER(quint32 , acidConcentrateRejectReason , 0) + TRIGGER(quint32 , bicarbonateConcentrateRejectReason , 0) + TRIGGER(quint32 , dialyzerTypeRejectReason , 0) + TRIGGER(quint32 , dialysateTempRejectReason , 0) + TRIGGER(quint32 , arterialPressureLimitWindowRejectReason , 0) + TRIGGER(quint32 , venousPressureLimitWindowRejectReason , 0) + TRIGGER(quint32 , venousPressureLimitAsymtrcRejectReason , 0) + TRIGGER(quint32 , bloodPressureMeasureIntervalRejectReason , 0) + TRIGGER(quint32 , rinsebackFlowRateRejectReason , 0) + TRIGGER(quint32 , rinsebackVolumeRejectReason , 0) + TRIGGER(quint32 , trancembrncPressureLimitWindowRejectReason , 0) - PROPERTY(QString , txCode , "") - TRIGGER (quint32 , bloodFlowRateRejectReason , 0 ) - TRIGGER (quint32 , dialysateFlowRateRejectReason , 0 ) - TRIGGER (quint32 , treatmentDurationRejectReason , 0 ) - TRIGGER (quint32 , heparinDispensingRateRejectReason , 0 ) - TRIGGER (quint32 , heparinBolusVolumeRejectReason , 0 ) - TRIGGER (quint32 , heparinStopTimeRejectReason , 0 ) - TRIGGER (quint32 , salineBolusVolumeRejectReason , 0 ) - - TRIGGER(quint32 , heparinTypeRejectReason , 0 ) - TRIGGER(quint32 , acidConcentrateRejectReason , 0 ) - TRIGGER(quint32 , bicarbonateConcentrateRejectReason , 0 ) - TRIGGER(quint32 , dialyzerTypeRejectReason , 0 ) - - TRIGGER (quint32 , dialysateTempRejectReason , 0 ) - TRIGGER (quint32 , arterialPressureLimitWindowRejectReason , 0 ) - TRIGGER (quint32 , venousPressureLimitWindowRejectReason , 0 ) - TRIGGER (quint32 , venousPressureLimitAsymtrcRejectReason , 0 ) - TRIGGER (quint32 , bloodPressureMeasureIntervalRejectReason , 0 ) - TRIGGER (quint32 , rinsebackFlowRateRejectReason , 0 ) - - VIEW_DEC_CLASS(VTreatmentCreate) VIEW_DEC_SLOT(AdjustParametersValidationResponseData) VIEW_DEC_SLOT(AdjustSerialNumberHDResponseData) Index: sources/view/VView.h =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -rf2e4eba6e85c5d36537be782926f23cc9dc01037 --- sources/view/VView.h (.../VView.h) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/view/VView.h (.../VView.h) (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -147,7 +147,7 @@ /* Treatment Common */ \ REGISTER_TYPE( VTreatmentVitals ) \ /* Data - States */ \ - REGISTER_TYPE( VHDOperationMode ) \ + REGISTER_TYPE( VTDOpMode ) \ REGISTER_TYPE( VPreTreatmentStates ) \ REGISTER_TYPE( VHDTreatmentStates ) \ REGISTER_TYPE( VPostTreatmentStates ) \ Fisheye: Tag f2e4eba6e85c5d36537be782926f23cc9dc01037 refers to a dead (removed) revision in file `sources/view/hd/data/VHDOperationModeData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag f2e4eba6e85c5d36537be782926f23cc9dc01037 refers to a dead (removed) revision in file `sources/view/hd/data/VHDOperationModeData.h'. Fisheye: No comparison available. Pass `N' to diff? Index: sources/view/td/data/VTDOpModeData.cpp =================================================================== diff -u --- sources/view/td/data/VTDOpModeData.cpp (revision 0) +++ sources/view/td/data/VTDOpModeData.cpp (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -0,0 +1,76 @@ +/*! + * + * Copyright (c) 2020-2024 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 VTDOpModeData.cpp + * \author (last) Behrouz NematiPour + * \date (last) 14-Jun-2023 + * \author (original) Behrouz NematiPour + * \date (original) 13-Aug-2020 + * + */ +#include "VTDOpModeData.h" + +// Project +#include "GuiController.h" + +VIEW_DEF(VTDOpMode, TDOpModeData) + +void VTDOpMode::onActionReceive(const TDOpModeData &vData) +{ + opMode ( vData.mOpMode ); + subMode( vData.mSubMode ); + + fault ( vData.mOpMode == GuiTDOpModes ::MODE_FAUL ); + service ( vData.mOpMode == GuiTDOpModes ::MODE_SERV ); + init ( vData.mOpMode == GuiTDOpModes ::MODE_INIT ); + standby ( vData.mOpMode == GuiTDOpModes ::MODE_STAN ); + validateParameters ( vData.mOpMode == GuiTDOpModes ::MODE_TPAR ); + preTreatment ( vData.mOpMode == GuiTDOpModes ::MODE_PRET ); + inTreatment ( vData.mOpMode == GuiTDOpModes ::MODE_TREA ); + postTreatment ( vData.mOpMode == GuiTDOpModes ::MODE_POST ); + invalidMode ( vData.mOpMode == GuiTDOpModes ::MODE_NLEG ); + + if ( _standby ) { + standbyStart ( vData.mSubMode == GuiTDStandbyStates ::STANDBY_START_STATE ); + standbyWaitTreatment ( vData.mSubMode == GuiTDStandbyStates ::STANDBY_WAIT_FOR_TREATMENT_STATE ); + standbyWaitDisinfect ( vData.mSubMode == GuiTDStandbyStates ::STANDBY_WAIT_FOR_DISINFECT_STATE ); + } + + // isTreatment ( ! _service ); // if enabled goes to home, fault from service, which shouldn't since the service is dead end. Maybe later investigate more when fault enabled. + isSettings ( _service ); + // isManager ( false ); // Always false, not used/implemented for now. + + // Go to home is kind of tricky and needs to be managed here in the backend. + // It seems we need more states. + // It can be handled in the QML but two things will happen that none of which are good. + // Problem : The issue is for example FW may change the opMode state to TPAR <=> STAN but during that, subMode is not changing. + // and when it comes back to the opMode STAN again only opMode is changing which is not enough, + // because we still need to know when we are in STAN what subMode of STAN we need to be in + // and because that does not change QML, since FW change opMode STAN <=> TPAR then UI is doing nothing. + // The solutions on QML side are: + // 1 - On each standby change STAN <=> TPAR which is not good because if in STAN we need to go to anything other than Start/waitTreatment. + // Issue : But then the home screen would jump. + // 2 - And we can also check that if subMode is Start/WaitTreatment go to home in QML. + // 3 - Make the sub PROPERTY as TRIGGER and if standby is true trigger them. + // Issue : None of the two later ideas are good either, because FW is sending the HDOpMode message each second(maybe on higher freq later) + // and then QML is updating itself on a high frequency, which is absolutely incorrect on UI side, + // Final Solution: # - The solution though is to have a special state in backend C++ that checks if opMode is standby and subMode is state/waitTreatment + // and if these conditions changed since the last time then signal emits. + // Brief : *** So actually we have a mixed condition property *** + home ( _standby && + ( // op_mode of standby is a must for the home screen + ( _standbyStart || _standbyWaitTreatment ) // actual standby and ready to start a treatment + // disinfection state but getting to home screen to do what allowed in disinfection + ) + ); +} + +QString View::VTDOpMode::text() +{ + QString text = Gui::enumString(static_cast(opMode())); + return text; +} Index: sources/view/td/data/VTDOpModeData.h =================================================================== diff -u --- sources/view/td/data/VTDOpModeData.h (revision 0) +++ sources/view/td/data/VTDOpModeData.h (revision f2e4eba6e85c5d36537be782926f23cc9dc01037) @@ -0,0 +1,72 @@ +/*! + * + * Copyright (c) 2020-2024 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 VTDOpModeData.h + * \author (last) Behrouz NematiPour + * \date (last) 14-Jun-2023 + * \author (original) Behrouz NematiPour + * \date (original) 13-Aug-2020 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VView.h" +#include "MTDOpModeData.h" +#include "GuiGlobals.h" + +// namespace +using namespace Gui; +namespace View { + +/*! + * \brief The VTDOpMode class + * \details View for Model's data representation. + * + * \sa Model::MTDOpMode + * + */ +class VTDOpMode : public QObject +{ + Q_OBJECT + + PROPERTY( quint32 , opMode , 0 ) + PROPERTY( quint32 , subMode , 0 ) + + PROPERTY( bool , fault , false ) ///< Fault mode + PROPERTY( bool , service , false ) ///< Service mode + PROPERTY( bool , init , false ) ///< Initialization & POST mode + PROPERTY( bool , standby , false ) ///< Standby mode + PROPERTY( bool , validateParameters , false ) ///< Treatment Parameters mode + PROPERTY( bool , preTreatment , false ) ///< Pre-Treatment mode + PROPERTY( bool , inTreatment , false ) ///< Treatment mode + PROPERTY( bool , postTreatment , false ) ///< Post-Treatment mode + PROPERTY( bool , invalidMode , false ) ///< Not legal - an illegal mode transition occurred + + // these are triggers but shall only be triggered when in standby mode. + PROPERTY( bool , standbyStart , false ) ///< Start standby , STANDBY_START_STATE = 0 + PROPERTY( bool , standbyWaitTreatment , false ) ///< Wait for treatment , STANDBY_WAIT_FOR_TREATMENT_STATE + PROPERTY( bool , standbyWaitDisinfect , false ) ///< Wait for disinfect , STANDBY_WAIT_FOR_DISINFECT_STATE + + PROPERTY( bool , home , false ) ///< Special Home mode // see in the cpp file. + + PROPERTY( bool , isTreatment , false ) + PROPERTY( bool , isManager , false ) + PROPERTY( bool , isSettings , false ) + + Q_PROPERTY(QString text READ text NOTIFY opModeChanged) + + VIEW_DEC(VTDOpMode, TDOpModeData) + +public slots: + QString text(); +}; +}