Index: SDDs/Diagostics.puml =================================================================== diff -u --- SDDs/Diagostics.puml (revision 0) +++ SDDs/Diagostics.puml (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,33 @@ +@startuml DiagnosticsScreen + + + actor User as User + + rectangle "Main Screen" as mainui{ + together { + circle "SD" as sd + mainui -[hidden]right-> sd + mainui -[hidden]up-> sd + } + rectangle "Diagnostics Dialog"{ + + rectangle "Diagnostics Swipe"{ + together { + rectangle "Diagnostics TD" as td #line.dashed + circle "1" as s1 + td -[hidden]down->s1 + rectangle "Diagnostics DD" as dd #line.dashed + circle "2" as s2 + dd -[hidden]down->s2 + rectangle "Diagnostics FP" as fp #line.dashed + circle "3" as s3 + fp -[hidden]down->s3 + } + td -[hidden]right-> dd + dd -[hidden]right-> fp + } + + } + } + User --> sd : "Double Click" +@enduml Index: leahi.pro =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- leahi.pro (.../leahi.pro) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ leahi.pro (.../leahi.pro) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -145,6 +145,10 @@ sources/model/dd/adjustment/settings/MAdjustDDVersionsResponse.h \ sources/model/dd/data/MDDConductivityData.h \ sources/model/dd/data/MDDGenDialysateData.h \ + sources/model/dd/data/MDDHeatersData.h \ + sources/model/dd/data/MDDLevelData.h \ + sources/model/dd/data/MDDPressuresData.h \ + sources/model/dd/data/MDDTemperaturesData.h \ sources/model/td/adjustment/settings/MAdjustTDSerialNumberResponse.h \ sources/model/td/adjustment/settings/MAdjustTDVersionsRequest.h \ sources/model/td/adjustment/settings/MAdjustTDVersionsResponse.h \ @@ -176,6 +180,10 @@ \ # ---------- Views - TD - Data - States //// ----- @LEAHIZED sources/view/dd/data/VDDConductivityData.h \ sources/view/dd/data/VDDGenDialysateData.h \ + sources/view/dd/data/VDDHeatersData.h \ + sources/view/dd/data/VDDLevelData.h \ + sources/view/dd/data/VDDPressuresData.h \ + sources/view/dd/data/VDDTemperaturesData.h \ sources/view/hd/data/VTreatmentRanges.h \ sources/view/td/data/VTDAirTrapData.h \ sources/view/td/data/VTDBatteryData.h \ @@ -286,16 +294,12 @@ sources/model/dg/data/MDGDebugText.h \ sources/model/dg/data/MDGGeneralEvent.h \ sources/model/dg/data/MDGDrainPumpData.h \ - sources/model/dg/data/MDGHeatersData.h \ sources/model/dg/data/MDGLoadCellReadingsData.h \ sources/model/dg/data/MDGOperationModeData.h \ - sources/model/dg/data/MDGPressuresData.h \ sources/model/dg/data/MDGReservoirData.h \ sources/model/dg/data/MDGROPumpData.h \ - sources/model/dg/data/MDGTemperaturesData.h \ sources/model/dg/data/MDGValvesStatesData.h \ sources/model/dg/data/MDGAccelerometerData.h \ - sources/model/dg/data/MDDLevelData.h \ \ # CANBus sources/canbus/CanInterface.h \ sources/canbus/FrameInterface.h \ @@ -395,15 +399,11 @@ \ # ---------- Views - DG - Data sources/view/dg/data/VDGOperationModeData.h \ sources/view/dg/data/VDGDrainPumpData.h \ - sources/view/dg/data/VDGHeatersData.h \ sources/view/dg/data/VDGLoadCellReadingsData.h \ - sources/view/dg/data/VDGPressuresData.h \ sources/view/dg/data/VDGROPumpData.h \ sources/view/dg/data/VDGReservoirData.h \ - sources/view/dg/data/VDGTemperaturesData.h \ sources/view/dg/data/VDGValvesStatesData.h \ sources/view/dg/data/VDGAccelerometerData.h \ - sources/view/dg/data/VDDLevelData.h \ \ # Storage sources/storage/StorageGlobals.h \ sources/storage/Logger.h \ @@ -442,6 +442,10 @@ sources/model/dd/adjustment/settings/MAdjustDDVersionsResponse.cpp \ sources/model/dd/data/MDDConductivityData.cpp \ sources/model/dd/data/MDDGenDialysateData.cpp \ + sources/model/dd/data/MDDHeatersData.cpp \ + sources/model/dd/data/MDDLevelData.cpp \ + sources/model/dd/data/MDDPressuresData.cpp \ + sources/model/dd/data/MDDTemperaturesData.cpp \ sources/model/td/adjustment/settings/MAdjustTDSerialNumberResponse.cpp \ sources/model/td/adjustment/settings/MAdjustTDVersionsRequest.cpp \ sources/model/td/adjustment/settings/MAdjustTDVersionsResponse.cpp \ @@ -464,6 +468,10 @@ sources/storage/TreatmentLog.cpp \ sources/view/dd/data/VDDConductivityData.cpp \ sources/view/dd/data/VDDGenDialysateData.cpp \ + sources/view/dd/data/VDDHeatersData.cpp \ + sources/view/dd/data/VDDLevelData.cpp \ + sources/view/dd/data/VDDPressuresData.cpp \ + sources/view/dd/data/VDDTemperaturesData.cpp \ sources/view/hd/data/post/VHDPOSTData.cpp \ sources/bluetooth/BluetoothInterface.cpp \ sources/cloudsync/CloudSyncController.cpp \ @@ -569,16 +577,12 @@ sources/model/dg/data/MDGDebugText.cpp \ sources/model/dg/data/MDGGeneralEvent.cpp \ sources/model/dg/data/MDGDrainPumpData.cpp \ - sources/model/dg/data/MDGHeatersData.cpp \ sources/model/dg/data/MDGLoadCellReadingsData.cpp \ sources/model/dg/data/MDGOperationModeData.cpp \ - sources/model/dg/data/MDGPressuresData.cpp \ sources/model/dg/data/MDGReservoirData.cpp \ sources/model/dg/data/MDGROPumpData.cpp \ - sources/model/dg/data/MDGTemperaturesData.cpp \ sources/model/dg/data/MDGValvesStatesData.cpp \ sources/model/dg/data/MDGAccelerometerData.cpp \ - sources/model/dg/data/MDDLevelData.cpp \ \ # CANBus sources/canbus/CanInterface.cpp \ sources/canbus/FrameInterface.cpp \ @@ -682,16 +686,12 @@ \ # ---------- Views - DG - States \ # ---------- Views - DG - Data sources/view/dg/data/VDGDrainPumpData.cpp \ - sources/view/dg/data/VDGHeatersData.cpp \ sources/view/dg/data/VDGLoadCellReadingsData.cpp \ sources/view/dg/data/VDGOperationModeData.cpp \ - sources/view/dg/data/VDGPressuresData.cpp \ sources/view/dg/data/VDGROPumpData.cpp \ sources/view/dg/data/VDGReservoirData.cpp \ - sources/view/dg/data/VDGTemperaturesData.cpp \ sources/view/dg/data/VDGValvesStatesData.cpp \ sources/view/dg/data/VDGAccelerometerData.cpp \ - sources/view/dg/data/VDDLevelData.cpp \ \ # Storage sources/storage/StorageGlobals.cpp \ sources/storage/FileHandler.cpp \ Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -94,23 +94,28 @@ // DG Data Messages {Gui::GuiActionType::ID_DGROPumpData , 6 * 4 }, // 6 parameters each 4bytes - {Gui::GuiActionType::ID_DGPressuresData , 5 * 4 }, // 5 parameters each 4bytes {Gui::GuiActionType::ID_DGDrainPumpData , 8 * 4 }, // 8 parameters each 4bytes {Gui::GuiActionType::ID_DGOperationModeData , 2 * 4 }, // 2 parameter each 4bytes {Gui::GuiActionType::ID_DGReservoirData , 12 * 4 }, // 12 parameters each 4bytes - {Gui::GuiActionType::ID_DGValvesStatesData , 1 * 2 + 13 }, // 1 parameter 16bits & 13 parameters each 1 byte - {Gui::GuiActionType::ID_DGHeatersData , 13 * 4 }, // 13 parameters each 4bytes {Gui::GuiActionType::ID_DGLoadCellReadingsData , 4 * 4 }, // 4 parameters each 4bytes - {Gui::GuiActionType::ID_DGTemperaturesData , 23 * 4 }, // 23 parameters each 4bytes {Gui::GuiActionType::ID_DGAccelerometerData , 9 * 4 }, // 9 parameters each 4bytes + //DD Data Messages + {Gui::GuiActionType::ID_DDValvesStatesData , 1 * 2 + 13 }, // 1 parameter 16bits & 13 parameters each 1 byte + {Gui::GuiActionType::ID_DDPressuresData , 14 * 4 }, // 14 parameters each 4bytes {Gui::GuiActionType::ID_DDConductivityData , 5 * 4 }, // 5 parameters each 4bytes - {Gui::GuiActionType::ID_DDGenDialysateData , 9 * 4 }, // 9 parameters each 4bytes + {Gui::GuiActionType::ID_DDConcentratePumpData , 25 * 4 }, // 25 parameters each 4bytes + {Gui::GuiActionType::ID_DDTemperaturesData , 15 * 4 }, // 15 parameters each 4bytes + {Gui::GuiActionType::ID_DDDialysatePumpData , 25 * 4 }, // 25 parameters each 4bytes + {Gui::GuiActionType::ID_DDHeatersData , 8 * 4 }, // 8 parameters each 4bytes // NOTE: may contain optional 9 parameters each 4bytes {Gui::GuiActionType::ID_DDLevelData , 3 * 4 }, // 3 parameters each 4bytes + {Gui::GuiActionType::ID_DDGenDialysateData , 9 * 4 }, // 9 parameters each 4bytes + {Gui::GuiActionType::ID_DDBloodLeakData , 1 * 4 }, // 1 parameters each 4bytes // HD Data Messages {Gui::GuiActionType::ID_HDAccelerometerData , 9 * 4 }, // 9 parameters each 4bytes {Gui::GuiActionType::ID_HDSyringePumpData , 9 * 4 }, // 9 parameters each 4bytes {Gui::GuiActionType::ID_HDUsageInfoReq , 0 * 4 }, // 0 parameters each 4bytes {Gui::GuiActionType::ID_HDUsageInfoRsp , 4 * 4 + 2 }, // 4 parameters each 4bytes + 1 parameter 2 bytes + //TD Data Messages {Gui::GuiActionType::ID_TDVoltageData , 11 * 4 }, //11 parameters each 4bytes {Gui::GuiActionType::ID_TDValvesData , 3 * 4 + 2*2 }, // 5 parameters each 4bytes + 2 parametres 2 bytes {Gui::GuiActionType::ID_TDEjectorData , 2 * 4 }, // 2 parameters each 4bytes Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -587,14 +587,14 @@ // DG data messages case Gui::GuiActionType::ID_DGROPumpData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGROPumpData ); break; - case Gui::GuiActionType::ID_DGPressuresData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGPressuresData ); break; + case Gui::GuiActionType::ID_DDPressuresData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DDPressuresData ); break; case Gui::GuiActionType::ID_DGDrainPumpData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGDrainPumpData ); break; case Gui::GuiActionType::ID_DGOperationModeData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGOperationModeData ); break; case Gui::GuiActionType::ID_DGReservoirData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGReservoirData ); break; - case Gui::GuiActionType::ID_DGValvesStatesData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGValvesStatesData ); break; - case Gui::GuiActionType::ID_DGHeatersData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGHeatersData ); break; + case Gui::GuiActionType::ID_DDValvesStatesData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DDValvesStatesData ); break; + case Gui::GuiActionType::ID_DDHeatersData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DDHeatersData ); break; case Gui::GuiActionType::ID_DGLoadCellReadingsData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGLoadCellReadingsData ); break; - case Gui::GuiActionType::ID_DGTemperaturesData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGTemperaturesData ); break; + case Gui::GuiActionType::ID_DDTemperaturesData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DDTemperaturesData ); break; case Gui::GuiActionType::ID_DDDebugText : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DDDebugText ); break; case Gui::GuiActionType::ID_DGGeneralEvent : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGGeneralEvent ); break; case Gui::GuiActionType::ID_DGAccelerometerData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DGAccelerometerData ); break; Index: sources/gui/GuiGlobals.cpp =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -99,13 +99,13 @@ #include "VTDTemperatureData.h" // DG data #include "VDGDrainPumpData.h" -#include "VDGHeatersData.h" +#include "VDDHeatersData.h" #include "VDGLoadCellReadingsData.h" #include "VDGOperationModeData.h" -#include "VDGPressuresData.h" +#include "VDDPressuresData.h" #include "VDGROPumpData.h" #include "VDGReservoirData.h" -#include "VDGTemperaturesData.h" +#include "VDDTemperaturesData.h" #include "VDGValvesStatesData.h" #include "VDGAccelerometerData.h" #include "VDDConductivityData.h" Index: sources/gui/GuiGlobals.h =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -192,19 +192,22 @@ ID_AdjustStartTreatmentRsp = 0x7200, // 114 // DG Data Messages - ID_DGROPumpData = 0x1F0F, // 31 //// ----- @CRAPIZED: had to change to avoid duplication - ID_DGPressuresData = 0x2000, // 32 + ID_DGROPumpData = 0x1F0F, // 31 //// ----- @CRAPIZED: had to change to avoid duplication ID_DGDrainPumpData = 0x2400, // 36 ID_DGOperationModeData = 0x2700, // 39 - ID_DGReservoirData = 0x2800, // 40 - ID_DGValvesStatesData = 0x2A00, // 42 - ID_DGHeatersData = 0x2C00, // 44 + ID_DGReservoirData = 0x280F, // ?? //// ----- @CRAPIZED: had to change to avoid duplication ID_DGLoadCellReadingsData = 0x0C00, // 12 - ID_DGTemperaturesData = 0x2D00, // 45 - ID_DDLevelData = 0x2900, // 41 //// ----- @LEAHIZED ID_DGAccelerometerData = 0x3400, // 52 + ID_DDValvesStatesData = 0x1B00, // 27 //// ----- @LEAHIZED + ID_DDPressuresData = 0x1C00, // 28 //// ----- @LEAHIZED ID_DDConductivityData = 0x1F00, // 31 //// ----- @LEAHIZED + ID_DDConcentratePumpData = 0x2500, // 37 //// ----- @LEAHIZED + ID_DDTemperaturesData = 0x2600, // 38 //// ----- @LEAHIZED + ID_DDDialysatePumpData = 0x2700, // 39 //// ----- @LEAHIZED + ID_DDHeatersData = 0x2800, // 40 //// ----- @LEAHIZED + ID_DDLevelData = 0x2900, // 41 //// ----- @LEAHIZED ID_DDGenDialysateData = 0x2F00, // 47 //// ----- @LEAHIZED + ID_DDBloodLeakData = 0x5500, // 85 //// ----- TODO: Payload subject to change given FW implementation // HD Data Messages ID_HDAccelerometerData = 0x3300, // 51 Index: sources/gui/qml/dialogs/diagnostics/DiagnosticsBase.qml =================================================================== diff -u -r57f4e55fd9102dce870271ec379d44aa478128fe -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/qml/dialogs/diagnostics/DiagnosticsBase.qml (.../DiagnosticsBase.qml) (revision 57f4e55fd9102dce870271ec379d44aa478128fe) +++ sources/gui/qml/dialogs/diagnostics/DiagnosticsBase.qml (.../DiagnosticsBase.qml) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -17,7 +17,6 @@ import QtQuick 2.12 // Project -import Gui.Actions 0.1 import Gui.VEventSpy 0.1 // Qml imports Index: sources/gui/qml/dialogs/diagnostics/DiagnosticsDD.qml =================================================================== diff -u -rc253d3ca9ef234e04747565e500faf88b07fc04e -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/qml/dialogs/diagnostics/DiagnosticsDD.qml (.../DiagnosticsDD.qml) (revision c253d3ca9ef234e04747565e500faf88b07fc04e) +++ sources/gui/qml/dialogs/diagnostics/DiagnosticsDD.qml (.../DiagnosticsDD.qml) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -15,7 +15,7 @@ // Qt import QtQuick 2.12 - +import Gui.Actions 0.1 // Project // Qml imports import "qrc:/globals" @@ -30,10 +30,49 @@ title: "Dialysate Delivery" + DebugDataColumn { id: _DDPressureColumn + textObjectName :"_DDPressureData" + title : qsTr(" Pressure ") + x: col(0) + y: row(0) + model: [ + vDDPressures.waterInletPSI .toFixed(2), + vDDPressures.waterOutletPSI .toFixed(2), + vDDPressures.hydrolicOutletPSI .toFixed(2), + vDDPressures.bicarbBagPSI .toFixed(2), + vDDPressures.spentDialysatePSI .toFixed(2), + vDDPressures.freshDialysatePSI .toFixed(2), + vDDPressures.transmembranePSI .toFixed(2), + vDDPressures.waterInletTemp .toFixed(2), + vDDPressures.waterOutletTemp .toFixed(2), + vDDPressures.hydrolicOutletTemp .toFixed(2), + vDDPressures.bicarbBagTemp .toFixed(2), + vDDPressures.spentDialysateTemp .toFixed(2), + vDDPressures.freshDialysateTemp .toFixed(2), + vDDPressures.transmembraneTemp .toFixed(2), + ] + label: [ + "WInPSI (M1) ", + "WOutPSI (M3) ", + "HOutPSI (D9) ", + "BBagPSI (D66) ", + "SDialPSI (D51) ", + "FDialPSI (D18) ", + "TransPSI (D41) ", + "WInTmp (M1) ", + "WOutTmp (M3) ", + "HOutTmp (D9) ", + "BBagTmp (D66) ", + "SDialTmp (D51) ", + "FDialTmp (D18) ", + "TransTmp (D41) ", + ] + } + DebugDataColumn { id: _DDLevelColumn textObjectName :"_DDLevelData" title : qsTr(" Levels ") - x: col(0) + x: col(1.5) y: row(0) model: [ vDDLevel.floaterLevel , @@ -46,147 +85,146 @@ "sptDial ", ] } + DebugDataColumn { id: _DDCondColumn + textObjectName :"_DDCondlData" + title : qsTr(" Cond ") + x: col(3) + y: row(0) + model: [ + vDDConductivity.bicarbCondutivity1 , + vDDConductivity.acidBicarbCondutivity1 , + vDDConductivity.acidBicarbCondutivity2 , + vDDConductivity.spentCondutivity1 , + vDDConductivity.bicarbCondutivity2 , + ] + label: [ + "bicarb1 ", + "acidb1 ", + "acidb1 ", + "spent ", + "bicarb2 ", + ] + } + DebugDataColumn { id: _DDGenDialColumn + textObjectName :"_DDGenDialData" + title : qsTr(" GenDial ") + x: col(4.5) + y: row(0) -// DebugDataColumn { id: _TDAirTrapCoulumn -// textObjectName :"_TDAirTrapData" -// title : qsTr(" Air Trap ") -// x: col(1.5) -// y: row(0) -// model: [ -// vTDAirTrap.lowLevel , -// vTDAirTrap.upLevel , -// vTDAirTrap.lowLevelRaw , -// vTDAirTrap.upLevelRaw , -// vTDAirTrap.valveState , -// vTDAirTrap.controlling , -// ] -// label: [ -// "ATL", -// "ATU", -// "rATL", -// "rATU", -// "state", -// "ctrl", -// ] -// } + model: [ + vDDGenDialysate.genDialysateExec , + vDDGenDialysate.ddInProgress , + vDDGenDialysate.fltLevel1 , + vDDGenDialysate.bicarbLevel , + vDDGenDialysate.spentLevel , + vDDGenDialysate.hydNegativePressure .toFixed(2), + vDDGenDialysate.hydPositivePressure .toFixed(2), + vDDGenDialysate.spentPressure .toFixed(2), + vDDGenDialysate.isDialGood , + ] + label: [ + "Exec ", + "inProg ", + "fltLvL ", + "bicarbLvL ", + "spentLvL ", + "sptDial ", + "hydNeg ", + "hydPos ", + "spend ", + "isGood ", + ] + } -// DebugDataColumn { id: _TDValvesColumn -// textObjectName :"_TDValvesData" -// title : qsTr(" Vlv ") -// x: col(3) -// y: row(0) -// model: [ -// vTDValves.valveId , -// vTDValves.state , -// vTDValves.posName , -// vTDValves.posCount , -// vTDValves.nextPos , + DebugDataColumn { id: _DDTemperatureColumn + textObjectName :"_DDTemperatureData" + title : qsTr(" Temperature ") + x: col(6) + y: row(0) + model: [ + vDDTemperatures.inletHeatExchanger .toFixed(2) , + vDDTemperatures.outletHeatExchanger .toFixed(2) , + vDDTemperatures.hydraulicsPrimaryHeater .toFixed(2) , + vDDTemperatures.trimmerHeater .toFixed(2) , + vDDTemperatures.boardTemperature .toFixed(2) , + vDDTemperatures.barometricTemperature .toFixed(2) , + vDDTemperatures.D16Conductivity .toFixed(2) , + vDDTemperatures.D28Conductivity .toFixed(2) , + vDDTemperatures.D30Conductivity .toFixed(2) , + vDDTemperatures.D44Conductivity .toFixed(2) , + vDDTemperatures.D75Conductivity .toFixed(2) , + vDDTemperatures.D4MovingAverage .toFixed(2) , + vDDTemperatures.D50MovingAverage .toFixed(2) , + vDDTemperatures.D28MovingAverage .toFixed(2) , + vDDTemperatures.D30MovingAverage .toFixed(2) , + ] + label: [ + "inHE (D1) ", + "outHE (X6) ", + "hydr (D4) ", + "trim (D50) ", + "board ", + "baro ", + "Cond (D16) ", + "Cond (D28) ", + "Cond (D30) ", + "Cond (D44) ", + "Cond (D75) ", + "mAvg (D4) ", + "mAvg (D50) ", + "mAvg (D28) ", + "mAvg (D30) ", + ] + } -// ] -// label: [ -// "ID ", -// "state ", -// "Name ", -// "Cnt ", -// "nPos ", -// ] -// } + DebugDataColumn { id: _DDHeatersColumn + textObjectName :"_DDHeatersData" + title : qsTr(" Heaters ") + x: col(7.5) + y: row(0) + model: [ + vDDHeaters.mainPrimayHeaterDC .toFixed(2) , + vDDHeaters.trimmerHeaterDC .toFixed(2) , + vDDHeaters.primaryTargetTemp .toFixed(2) , + vDDHeaters.trimmerTargetTemp .toFixed(2) , + vDDHeaters.primaryHeaterState , + vDDHeaters.trimmerHeaterState , + vDDHeaters.primaryHeaterIntervalCount , + vDDHeaters.trimmerHeaterIntervalCount , + vDDHeaters.dbg1 .toFixed(2) , + vDDHeaters.dbg2 .toFixed(2) , + vDDHeaters.dbg3 .toFixed(2) , + vDDHeaters.dbg4 .toFixed(2) , + vDDHeaters.dbg5 .toFixed(2) , + vDDHeaters.dbg6 .toFixed(2) , + vDDHeaters.dbg7 .toFixed(2) , + vDDHeaters.dbg8 .toFixed(2) , + vDDHeaters.dbg9 .toFixed(2) , + ] + label: [ + "pHeat (D5) ", + "tHeat (D45) ", + "pTemp (D5) ", + "tTemp (D45) ", + "pState (D5) ", + "tstate (D45) ", + "pIC (D5) ", + "tIC (D45) ", + "dbg1 ", + "dbg2 ", + "dbg3 ", + "dbg4 ", + "dbg5 ", + "dbg6 ", + "dbg7 ", + "dbg8 ", + "dbg9 ", + ] + } -// DebugDataColumn { id: _TDEjectorColumn -// textObjectName :"_TDEjectorData" -// title : qsTr(" Ejt ") -// x: col(4.5) -// y: row(0) -// model: [ -// vTDEjector.state , -// vTDEjector.setSpeed .toFixed(2) , - -// ] -// label: [ -// "state ", -// "Spd " , -// ] -// } - -// DebugDataColumn { id: _TDSwitchesColumn -// textObjectName :"_TDSwitchesData" -// title : qsTr(" Switches ") -// x: col(6) -// y: row(0) -// model: [ -// vTDSwitches.door , - -// ] -// label: [ -// "door ", -// ] -// } - - -// DebugDataColumn { id: _TDBatteryCoulumn -// textObjectName :"_TDBatterypData" -// title : qsTr(" Battery ") -// x: col(0) -// y: row(3.5) -// model: [ -// vTDBattery.aCPower , -// vTDBattery.capacity , -// ] -// label: [ -// "AC ", -// "cap ", -// ] -// } - -// DebugDataColumn { id: _TDVoltageCoulumn -// textObjectName :"_TDVoltageData" -// title : qsTr(" Vol ") -// x: col(1.5) -// y: row(3.5) -// model: [ -// vTDVoltage.line_1_2V .toFixed(2) , -// vTDVoltage.line_3_3V .toFixed(2) , -// vTDVoltage.logic5V .toFixed(2) , -// vTDVoltage.sensors5V .toFixed(2) , -// vTDVoltage.line_24V .toFixed(2) , -// vTDVoltage.regen24V .toFixed(2) , -// vTDVoltage.fpgaAdcRef .toFixed(2) , -// vTDVoltage.presRef .toFixed(2) , -// vTDVoltage.fpgaVcc .toFixed(2) , -// vTDVoltage.fpgaVaux .toFixed(2) , -// vTDVoltage.fpgaVpvn .toFixed(2) -// ] -// label: [ -// "1.2V", -// "3.3V" , -// "L5V" , -// "S5V" , -// "24V" , -// "R24V" , -// "ADC" , -// "Ref" , -// "VCC" , -// "Vaux" , -// "VPN" -// ] -// } - -// DebugDataColumn { id: _TDTemperatureCoulumn -// textObjectName :"_TDTemperatureData" -// title : qsTr(" Temp ") -// x: col(3) -// y: row(3.5) -// model: [ -// vTDTemperature.boardTemp .toFixed(2) -// ] -// label: [ -// "board", -// ] -// } - - // TODO: The TouchRect should be unnecessary since the first communication message with UI/HD is the version. + // TODO: The TouchRect should be unnecessary since the first communication message with UI/TD is the version. TouchRect { - x : col(6.0) + x : col(9.0) y : row(6.4) width : 425 height : 80 Index: sources/gui/qml/dialogs/diagnostics/DiagnosticsDialog.qml =================================================================== diff -u -r4e521c1a06ac5ba8fa125f9efba8a1b3c91c525a -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/qml/dialogs/diagnostics/DiagnosticsDialog.qml (.../DiagnosticsDialog.qml) (revision 4e521c1a06ac5ba8fa125f9efba8a1b3c91c525a) +++ sources/gui/qml/dialogs/diagnostics/DiagnosticsDialog.qml (.../DiagnosticsDialog.qml) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -17,7 +17,6 @@ import QtQuick 2.12 // Project -import Gui.Actions 0.1 import Gui.VEventSpy 0.1 // Qml imports Index: sources/gui/qml/dialogs/diagnostics/DiagnosticsTD.qml =================================================================== diff -u -r9143dd9055ada50b3ec13e7ce0671727a784f38f -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/qml/dialogs/diagnostics/DiagnosticsTD.qml (.../DiagnosticsTD.qml) (revision 9143dd9055ada50b3ec13e7ce0671727a784f38f) +++ sources/gui/qml/dialogs/diagnostics/DiagnosticsTD.qml (.../DiagnosticsTD.qml) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -15,7 +15,7 @@ // Qt import QtQuick 2.12 - +import Gui.Actions 0.1 // Project // Qml imports import "qrc:/globals" @@ -138,10 +138,41 @@ } + DebugDataColumn { id: _TDTXStatesColumn + textObjectName :"_TDTxStatesData" + title : qsTr(" TXStates ") + x: col(0) + y: row(3.5) + model: [ + Number(vTDTreatmentStates.subMode ), + Number(vTDTreatmentStates.txBloodPrime ), + Number(vTDTreatmentStates.txDialysis ), + Number(vTDTreatmentStates.ufState ), + Number(vTDTreatmentStates.txStop ), + Number(vTDTreatmentStates.txRinseback ), + Number(vTDTreatmentStates.txRecirculate ), + Number(vTDTreatmentStates.txEnd ), + Number(vTDTreatmentStates.salineState ), + Number(vTDTreatmentStates.heparin ), + ] + label: [ + "subMode " , + "BPrime " , + "Dial " , + "UF " , + "Stop " , + "RB " , + "Recirc " , + "End " , + "Saline " , + "Hep " , + ] + } + DebugDataColumn { id: _TDBatteryCoulumn textObjectName :"_TDBatterypData" title : qsTr(" Battery ") - x: col(0) + x: col(1.5) y: row(3.5) model: [ vTDBattery.acPower , @@ -156,7 +187,7 @@ DebugDataColumn { id: _TDVoltageCoulumn textObjectName :"_TDVoltageData" title : qsTr(" Vol ") - x: col(1.5) + x: col(3) y: row(3.5) model: [ vTDVoltage.line_1_2V .toFixed(2) , @@ -189,7 +220,7 @@ DebugDataColumn { id: _TDTemperatureCoulumn textObjectName :"_TDTemperatureData" title : qsTr(" Temp ") - x: col(3) + x: col(4.5) y: row(3.5) model: [ vTDTemperature.boardTemp .toFixed(2) @@ -200,41 +231,9 @@ } - DebugDataColumn { id: _TDTXStatesColumn - textObjectName :"_TDTxStatesData" - title : qsTr(" TXStates ") - x: col(0) - y: row(7) - model: [ - vTDTreatmentStates.subMode , - vTDTreatmentStates.txBloodPrime , - vTDTreatmentStates.txDialysis , - vTDTreatmentStates.ufState , - vTDTreatmentStates.txStop , - vTDTreatmentStates.txRinseback , - vTDTreatmentStates.txRecirculate, - vTDTreatmentStates.txEnd , - vTDTreatmentStates.salineState , - vTDTreatmentStates.heparin , - ] - label: [ - "subMode " , - "BPrime " , - "Dial " , - "UF " , - "Stop " , - "RB " , - "Recirc " , - "End " , - "Saline " , - "Hep " , - ] - } - - - // TODO: The TouchRect should be unnecessary since the first communication message with UI/HD is the version. + // TODO: The TouchRect should be unnecessary since the first communication message with UI/TD is the version. TouchRect { - x : col(6.0) + x : col(9.0) y : row(6.4) width : 425 height : 80 Index: sources/gui/qml/main.qml =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/gui/qml/main.qml (.../main.qml) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/gui/qml/main.qml (.../main.qml) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -90,13 +90,13 @@ import VPreTreatmentAdjustmentStartTreatment 0.1 // --- import VDGDrainPump 0.1 -import VDGHeaters 0.1 +import VDDHeaters 0.1 import VDGLoadCellReadings 0.1 import VDGOperationMode 0.1 -import VDGPressures 0.1 +import VDDPressures 0.1 import VDGROPump 0.1 import VDGReservoir 0.1 -import VDGTemperatures 0.1 +import VDDTemperatures 0.1 import VDGValvesStates 0.1 import VTreatmentCreate 0.1 import VDGAccelerometer 0.1 @@ -211,13 +211,13 @@ VTreatmentStop { id: vTreatmentStop } // ---- DG VDGDrainPump { id: vDGDrainPump } - VDGHeaters { id: vDGHeaters } + VDDHeaters { id: vDDHeaters } VDGLoadCellReadings { id: vDGLoadCellReadings } VDGOperationMode { id: vDGOperationMode } - VDGPressures { id: vDGPressures } + VDDPressures { id: vDDPressures } VDGROPump { id: vDGROPump } VDGReservoir { id: vDGReservoir } - VDGTemperatures { id: vDGTemperatures } + VDDTemperatures { id: vDDTemperatures } VDGValvesStates { id: vDGValvesStates } VDGAccelerometer { id: vDGAccelerometer } VDDConductivity { id: vDDConductivity } Index: sources/model/MModel.h =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/model/MModel.h (.../MModel.h) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/model/MModel.h (.../MModel.h) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -98,13 +98,13 @@ // DG Data Messages #include "MDGDrainPumpData.h" -#include "MDGHeatersData.h" +#include "MDDHeatersData.h" #include "MDGLoadCellReadingsData.h" #include "MDGOperationModeData.h" -#include "MDGPressuresData.h" +#include "MDDPressuresData.h" #include "MDGReservoirData.h" #include "MDGROPumpData.h" -#include "MDGTemperaturesData.h" +#include "MDDTemperaturesData.h" #include "MDGValvesStatesData.h" #include "MDGAccelerometerData.h" #include "MDDConductivityData.h" @@ -362,14 +362,14 @@ REGISTER_METATYPE( AlarmTriggeredData ) \ REGISTER_METATYPE( AlarmClearedData ) \ REGISTER_METATYPE( DGROPumpData ) \ - REGISTER_METATYPE( DGPressuresData ) \ + REGISTER_METATYPE( DDPressuresData ) \ REGISTER_METATYPE( DGDrainPumpData ) \ REGISTER_METATYPE( DGOperationModeData ) \ REGISTER_METATYPE( DGReservoirData ) \ REGISTER_METATYPE( DGValvesStatesData ) \ - REGISTER_METATYPE( DGHeatersData ) \ + REGISTER_METATYPE( DDHeatersData ) \ REGISTER_METATYPE( DGLoadCellReadingsData ) \ - REGISTER_METATYPE( DGTemperaturesData ) \ + REGISTER_METATYPE( DDTemperaturesData ) \ REGISTER_METATYPE( DGAccelerometerData ) \ REGISTER_METATYPE( DDConductivityData ) \ REGISTER_METATYPE( DDGenDialysateData ) \ @@ -551,14 +551,14 @@ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AlarmTriggeredData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AlarmClearedData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGROPumpData ) \ - ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGPressuresData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DDPressuresData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGDrainPumpData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGOperationModeData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGReservoirData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGValvesStatesData ) \ - ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGHeatersData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DDHeatersData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGLoadCellReadingsData ) \ - ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGTemperaturesData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DDTemperaturesData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGAccelerometerData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DDConductivityData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DDGenDialysateData ) \ @@ -754,14 +754,14 @@ ACTION_RECEIVE_BRIDGE_DEFINITION( AlarmTriggeredData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AlarmClearedData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGROPumpData ) \ - ACTION_RECEIVE_BRIDGE_DEFINITION( DGPressuresData ) \ + ACTION_RECEIVE_BRIDGE_DEFINITION( DDPressuresData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGDrainPumpData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGOperationModeData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGReservoirData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGValvesStatesData ) \ - ACTION_RECEIVE_BRIDGE_DEFINITION( DGHeatersData ) \ + ACTION_RECEIVE_BRIDGE_DEFINITION( DDHeatersData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGLoadCellReadingsData ) \ - ACTION_RECEIVE_BRIDGE_DEFINITION( DGTemperaturesData ) \ + ACTION_RECEIVE_BRIDGE_DEFINITION( DDTemperaturesData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGAccelerometerData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DDConductivityData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DDGenDialysateData ) \ @@ -1062,14 +1062,14 @@ ACTION_RECEIVE_SIGNAL( TreatmentLogEventData ) \ \ ACTION_RECEIVE_SIGNAL( DGROPumpData ) \ - ACTION_RECEIVE_SIGNAL( DGPressuresData ) \ + ACTION_RECEIVE_SIGNAL( DDPressuresData ) \ ACTION_RECEIVE_SIGNAL( DGDrainPumpData ) \ ACTION_RECEIVE_SIGNAL( DGOperationModeData ) \ ACTION_RECEIVE_SIGNAL( DGReservoirData ) \ ACTION_RECEIVE_SIGNAL( DGValvesStatesData ) \ - ACTION_RECEIVE_SIGNAL( DGHeatersData ) \ + ACTION_RECEIVE_SIGNAL( DDHeatersData ) \ ACTION_RECEIVE_SIGNAL( DGLoadCellReadingsData ) \ - ACTION_RECEIVE_SIGNAL( DGTemperaturesData ) \ + ACTION_RECEIVE_SIGNAL( DDTemperaturesData ) \ ACTION_RECEIVE_SIGNAL( DGAccelerometerData ) \ ACTION_RECEIVE_SIGNAL( DDConductivityData ) \ ACTION_RECEIVE_SIGNAL( DDGenDialysateData ) \ Index: sources/model/dd/data/MDDGenDialysateData.cpp =================================================================== diff -u -r9d27f14c2b528c0f199004614f10d55589e08614 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/model/dd/data/MDDGenDialysateData.cpp (.../MDDGenDialysateData.cpp) (revision 9d27f14c2b528c0f199004614f10d55589e08614) +++ sources/model/dd/data/MDDGenDialysateData.cpp (.../MDDGenDialysateData.cpp) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -63,7 +63,7 @@ data.mSpentLevel = _data.mD46Level .value; data.mHydNegativePressure = _data.mD9Pressure .value; data.mHydPositivePressure = _data.mD18Pressure .value; - data.mSpendPressure = _data.mD51Pressure .value; + data.mSpentPressure = _data.mD51Pressure .value; data.mIsDialGood = _data.mIsDialGood .value; return data; } Index: sources/model/dd/data/MDDGenDialysateData.h =================================================================== diff -u -r5b0ca11dbb81526e44972b30c96f9e95a8a430a3 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/model/dd/data/MDDGenDialysateData.h (.../MDDGenDialysateData.h) (revision 5b0ca11dbb81526e44972b30c96f9e95a8a430a3) +++ sources/model/dd/data/MDDGenDialysateData.h (.../MDDGenDialysateData.h) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -42,7 +42,7 @@ * | #05:(U32) | \ref Data::mSpentLevel | * | #06:(F32) | \ref Data::mHydNegativePressure | * | #07:(F32) | \ref Data::mHydPositivePressure | - * | #08:(F32) | \ref Data::mSpendPressure | + * | #08:(F32) | \ref Data::mSpentPressure | * | #09:(U32) | \ref Data::mIsDialGood | * * @@ -89,7 +89,7 @@ quint32 mSpentLevel = 0; ///< Spent dialysate chamber level float mHydNegativePressure = 0; ///< Hydraulics chamber negative pressure float mHydPositivePressure = 0; ///< Hydraulics chamber positive pressure - float mSpendPressure = 0; ///< Spent Dialysate positive pressure + float mSpentPressure = 0; ///< Spent Dialysate positive pressure quint32 mIsDialGood = 0; ///< Ready to deliver dialysate or not }; Index: sources/model/dd/data/MDDHeatersData.cpp =================================================================== diff -u --- sources/model/dd/data/MDDHeatersData.cpp (revision 0) +++ sources/model/dd/data/MDDHeatersData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,99 @@ +/*! + * + * 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 MDDHeatersData.cpp + * \author (last) Dara Navaei + * \date (last) 08-May-2024 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "MDDHeatersData.h" + +using namespace Model; + +QVariantList MDDHeaters::parameters() const { + return { + _data.d5_HeaterDC .value, + _data.d45_HeaterDC .value, + _data.d5_HeaterTargetTemp .value, + _data.d45_HeaterTargetTemp .value, + _data.d5_HeaterState .value, + _data.d45_HeaterState .value, + _data.d5_HeaterControlCounter .value, + _data.d45_HeaterControlCounter .value, + _data.dbg1 .value, + _data.dbg2 .value, + _data.dbg3 .value, + _data.dbg4 .value, + _data.dbg5 .value, + _data.dbg6 .value, + _data.dbg7 .value, + _data.dbg8 .value, + _data.dbg9 .value, + }; + +} + +bool MDDHeaters::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if ( ! GetValue(vByteArray, index, _data.d5_HeaterDC )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d45_HeaterDC )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d5_HeaterTargetTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d45_HeaterTargetTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d5_HeaterState )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d45_HeaterState )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d5_HeaterControlCounter )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d45_HeaterControlCounter )) goto lError; + + ///< All the below payload will only be available during debug period and may be removed in the future + if ( ! GetValue(vByteArray, index, _data.dbg1 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg2 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg3 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg4 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg5 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg6 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg7 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg8 )) goto lOk ; + if ( ! GetValue(vByteArray, index, _data.dbg9 )) goto lOk ; + +lOk: + return true ; + +lError: + if(vIndex) { *vIndex = index; } + + return false ; + +} + +/*! + * \brief MDDHeaters::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +MDDHeaters::Data MDDHeaters::data() const { + Data data; + data.mMainPrimayHeaterDC = _data.d5_HeaterDC .value; + data.mTrimmerHeaterDC = _data.d45_HeaterDC .value; + data.mPrimaryTargetTemp = _data.d5_HeaterTargetTemp .value; + data.mTrimmerTargetTemp = _data.d45_HeaterTargetTemp .value; + data.mPrimaryHeaterState = _data.d5_HeaterState .value; + data.mTrimmerHeaterState = _data.d45_HeaterState .value; + data.mPrimaryHeaterIntervalCount = _data.d5_HeaterControlCounter .value; + data.mTrimmerHeaterIntervalCount = _data.d45_HeaterControlCounter .value; + data.dbg1 = _data.dbg1 .value; + data.dbg2 = _data.dbg2 .value; + data.dbg3 = _data.dbg3 .value; + data.dbg4 = _data.dbg4 .value; + data.dbg5 = _data.dbg5 .value; + data.dbg6 = _data.dbg6 .value; + data.dbg7 = _data.dbg7 .value; + data.dbg8 = _data.dbg8 .value; + data.dbg9 = _data.dbg9 .value; + return data; +} Index: sources/model/dd/data/MDDHeatersData.h =================================================================== diff -u --- sources/model/dd/data/MDDHeatersData.h (revision 0) +++ sources/model/dd/data/MDDHeatersData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,132 @@ +/*! + * + * 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 MDDHeatersData.h + * \author (last) Dara Navaei + * \date (last) 08-May-2024 + * \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 MDDHeaters class + * \details The DD heaters data model + * + * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | + * |0x2800| 0x101 | 8 | 2 Hz | N | DD | All | DD Heaters Data | + * + * | Payload || + * | || + * | #01:(F32) | \ref Data::mMainPrimayHeaterDC | + * | #02:(F32) | \ref Data::mTrimmerHeaterDC | + * | #03:(F32) | \ref Data::mPrimaryTargetTemp | + * | #04:(F32) | \ref Data::mTrimmerTargetTemp | + * | #05:(F32) | \ref Data::mPrimaryHeaterState | + * | #06:(F32) | \ref Data::mTrimmerHeaterState | + * | #07:(F32) | \ref Data::mPrimaryHeaterIntervalCount | + * | #08:(F32) | \ref Data::mTrimmerHeaterIntervalCount | + * + * | #09:(F32) | \ref Data::dbg1 | # All the below payload will only be available during debug period and may be removed in the future + * | #10:(F32) | \ref Data::dbg2 | + * | #11:(F32) | \ref Data::dbg3 | + * | #12:(F32) | \ref Data::dbg4 | + * | #13:(U32) | \ref Data::dbg5 | + * | #14:(U32) | \ref Data::dbg6 | + * | #15:(U32) | \ref Data::dbg7 | + * | #16:(U32) | \ref Data::dbg8 | + * | #17:(U32) | \ref Data::dbg9 | + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Datum | + * | unitText | DD | + * | infoText | Heaters | + * + */ +class MDDHeaters : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::F32 d5_HeaterDC ; ///< Main primary heater Duty Cycle + Types::F32 d45_HeaterDC ; ///< Trimmer heater Duty Cycle + Types::F32 d5_HeaterTargetTemp ; ///< Primary heater target temperature + Types::F32 d45_HeaterTargetTemp ; ///< Trimmer heater target temperature + Types::U32 d5_HeaterState ; ///< Primary heater state + Types::U32 d45_HeaterState ; ///< Trimmer heater state + Types::U32 d5_HeaterControlCounter ; ///< Primary heater control interval count + Types::U32 d45_HeaterControlCounter ; ///< Trimmer heater control interval count + + ///< All the below payload will only be available during debug period and may be removed in the future + Types::F32 dbg1 ; + Types::F32 dbg2 ; + Types::F32 dbg3 ; + Types::F32 dbg4 ; + Types::F32 dbg5 ; + Types::F32 dbg6 ; + Types::F32 dbg7 ; + Types::F32 dbg8 ; + Types::F32 dbg9 ; + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eDatum ; } + Unit_Enum unitText () const override { return Unit_Enum::eDD ; } + QString infoText () const override { return QString("Heaters"); } + + struct Data { + float mMainPrimayHeaterDC = 0; ///< Main primary heater Duty Cycle + float mTrimmerHeaterDC = 0; ///< Trimmer heater Duty Cycle + float mPrimaryTargetTemp = 0; ///< Primary heater target temperature + float mTrimmerTargetTemp = 0; ///< Trimmer heater target temperature + float mPrimaryHeaterState = 0; ///< Primary heater state + float mTrimmerHeaterState = 0; ///< Trimmer heater state + float mPrimaryHeaterIntervalCount = 0; ///< Primary heater control interval count + float mTrimmerHeaterIntervalCount = 0; ///< Trimmer heater control interval count + + ///< All the below payload will only be available during debug period and may be removed in the future + float dbg1 = 0; + float dbg2 = 0; + float dbg3 = 0; + float dbg4 = 0; + float dbg5 = 0; + float dbg6 = 0; + float dbg7 = 0; + float dbg8 = 0; + float dbg9 = 0; + }; + + MDDHeaters () {} + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MDDHeaters::Data DDHeatersData; Index: sources/model/dd/data/MDDLevelData.cpp =================================================================== diff -u --- sources/model/dd/data/MDDLevelData.cpp (revision 0) +++ sources/model/dd/data/MDDLevelData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,47 @@ +/*! + * + * Copyright (c) 2021-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 MDDLevelData.cpp + * \author (last) Behrouz NematiPour + * \date (last) 18-Apr-2022 + * \author (original) Behrouz NematiPour + * \date (original) 12-Feb-2021 + * + */ +#include "MDDLevelData.h" + +using namespace Model; + +QVariantList MDDLevelData::parameters() const { + return { + _data.d6Level .value, + _data.d63Level .value, + _data.d46Level .value, + }; +} + +bool MDDLevelData::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if ( ! GetValue(vByteArray, index, _data.d6Level )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d63Level )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d46Level )) goto lError; + + return true; + +lError: + if(vIndex) { *vIndex = index; } + + return false; +} + +MDDLevelData::Data MDDLevelData::data() const { + Data data; + data.mFloaterLevel = _data.d6Level .value; + data.mBicarbLevel = _data.d63Level .value; + data.mSpentDialysateLevel = _data.d46Level .value; + return data; +} Index: sources/model/dd/data/MDDLevelData.h =================================================================== diff -u --- sources/model/dd/data/MDDLevelData.h (revision 0) +++ sources/model/dd/data/MDDLevelData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,84 @@ +/*! + * + * 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 MDDLevelData.h + * \author (last) Behrouz NematiPour + * \date (last) 27-Mar-2023 + * \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 MDDLevel class + * \details The DD Level data model + * + * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | + * |0x2900| 0x101 | 8 | 1 Hz | N | DD | All | DD Level Data | + * + * | Payload || + * | || + * | #1:(U32) | \ref Data::d6Level | + * | #2:(U32) | \ref Data::d63Level | + * | #3:(U32) | \ref Data::d46Level | + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Datum | + * | unitText | DD | + * | infoText | Level | + * + */ +class MDDLevelData : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::U32 d6Level ; + Types::U32 d63Level ; + Types::U32 d46Level ; + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eDatum; } + Unit_Enum unitText () const override { return Unit_Enum::eDD ; } + QString infoText () const override { return QString("Level") ; } + + struct Data { + quint32 mFloaterLevel = 0; ///< floater switch low, medium and high status + quint32 mBicarbLevel = 0; ///< bicarb level low or high status + quint32 mSpentDialysateLevel = 0; ///< Spent dialysate air separation chamber level low or high status + }; + MDDLevelData () { } + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MDDLevelData::Data DDLevelData; Index: sources/model/dd/data/MDDPressuresData.cpp =================================================================== diff -u --- sources/model/dd/data/MDDPressuresData.cpp (revision 0) +++ sources/model/dd/data/MDDPressuresData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,85 @@ +/*! + * + * 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 MDDPressuresData.cpp + * \author (last) Behrouz NematiPour + * \date (last) 10-Feb-2023 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "MDDPressuresData.h" + +using namespace Model; + +QVariantList MDDPressures::parameters() const { + return { + _data.m1Pressure .value, + _data.m3Pressure .value, + _data.d9Pressure .value, + _data.d66Pressure .value, + _data.d51Pressure .value, + _data.d18Pressure .value, + _data.d41Pressure .value, + _data.m1PresTemp .value, + _data.m3PresTemp .value, + _data.d9PresTemp .value, + _data.d66PresTemp .value, + _data.d51PresTemp .value, + _data.d18PresTemp .value, + _data.d41PresTemp .value + }; +} + +bool MDDPressures::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if ( ! GetValue(vByteArray, index, _data.m1Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.m3Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d9Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d66Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d51Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d18Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d41Pressure )) goto lError; + if ( ! GetValue(vByteArray, index, _data.m1PresTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.m3PresTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d9PresTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d66PresTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d51PresTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d18PresTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d41PresTemp )) goto lError; + + return true ; + +lError: + if(vIndex) { *vIndex = index; } + + return false ; +} + +/*! + * \brief MDDPressures::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +MDDPressures::Data MDDPressures::data() const { + Data data; + data.mWaterInletPSI = _data.m1Pressure .value; + data.mWaterOutletPSI = _data.m3Pressure .value; + data.mHydrolicOutletPSI = _data.d9Pressure .value; + data.mBicarbBagPSI = _data.d66Pressure .value; + data.mSpentDialysatePSI = _data.d51Pressure .value; + data.mFreshDialysatePSI = _data.d18Pressure .value; + data.mTransmembranePSI = _data.d41Pressure .value; + data.mWaterInletTemp = _data.m1PresTemp .value; + data.mWaterOutletTemp = _data.m3PresTemp .value; + data.mHydrolicOutletTemp = _data.d9PresTemp .value; + data.mBicarbBagTemp = _data.d66PresTemp .value; + data.mSpentDialysateTemp = _data.d51PresTemp .value; + data.mFreshDialysateTemp = _data.d18PresTemp .value; + data.mTransmembraneTemp = _data.d41PresTemp .value; + return data; +} Index: sources/model/dd/data/MDDPressuresData.h =================================================================== diff -u --- sources/model/dd/data/MDDPressuresData.h (revision 0) +++ sources/model/dd/data/MDDPressuresData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,118 @@ +/*! + * + * 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 MDDPressuresData.h + * \author (last) Behrouz NematiPour + * \date (last) 10-Feb-2023 + * \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 MDDPressures class + * \details The DD pressures data model + * + * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | + * |0x1C00| 0x101 | 8 | 1 Hz | N | DD | All | DD Pressures Data | + * + * | Payload || + * | || + * | #01:(F32) | \ref Data::mWaterInletPSI | + * | #02:(F32) | \ref Data::mWaterOutletPSI | + * | #03:(F32) | \ref Data::mHydrolicOutletPSI | + * | #04:(F32) | \ref Data::mBicarbBagPSI | + * | #05:(F32) | \ref Data::mSpentDialysatePSI | + * | #06:(F32) | \ref Data::mFreshDialysatePSI | + * | #07:(F32) | \ref Data::mTransmembranePSI | + * | #08:(F32) | \ref Data::mWaterInletTemp | + * | #09:(F32) | \ref Data::mWaterOutletTemp | + * | #10:(F32) | \ref Data::mHydrolicOutletTemp | + * | #11:(F32) | \ref Data::mBicarbBagTemp | + * | #12:(F32) | \ref Data::mSpentDialysateTemp | + * | #13:(F32) | \ref Data::mFreshDialysateTemp | + * | #14:(F32) | \ref Data::mTransmembraneTemp | + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Datum | + * | unitText | DD | + * | infoText | Pressures | + * + */ +class MDDPressures : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::F32 m1Pressure ; ///< Water Inlet Input pressure + Types::F32 m3Pressure ; ///< Water Inlet Output pressure + Types::F32 d9Pressure ; ///< Hydraulics outlet pressure + Types::F32 d66Pressure ; ///< Bicarb bag pressure + Types::F32 d51Pressure ; ///< Spent Dialysate pressure + Types::F32 d18Pressure ; ///< Fresh Dialysate pressure + Types::F32 d41Pressure ; ///< Transmembrane pressure + Types::F32 m1PresTemp ; ///< Water Inlet Input temperature + Types::F32 m3PresTemp ; ///< Water Inlet Output temperature + Types::F32 d9PresTemp ; ///< Hydraulics outlet pressure temperature + Types::F32 d66PresTemp ; ///< Bicarb bag temperature + Types::F32 d51PresTemp ; ///< Spent Dialysate temperature + Types::F32 d18PresTemp ; ///< Fresh Dialysate temperature + Types::F32 d41PresTemp ; ///< Transmembrane temperature + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eDatum ; } + Unit_Enum unitText () const override { return Unit_Enum::eDD ; } + QString infoText () const override { return QString("Pressures"); } + + struct Data { + float mWaterInletPSI = 0; ///< Water Inlet Input pressure + float mWaterOutletPSI = 0; ///< Water Inlet Output pressure + float mHydrolicOutletPSI = 0; ///< Hydraulics outlet pressure + float mBicarbBagPSI = 0; ///< Bicarb bag pressure + float mSpentDialysatePSI = 0; ///< Spent Dialysate pressure + float mFreshDialysatePSI = 0; ///< Fresh Dialysate pressure + float mTransmembranePSI = 0; ///< Transmembrane pressure + float mWaterInletTemp = 0; ///< Water Inlet Input temperature + float mWaterOutletTemp = 0; ///< Water Inlet Output temperature + float mHydrolicOutletTemp = 0; ///< Hydraulics outlet pressure temperature + float mBicarbBagTemp = 0; ///< Bicarb bag temperature + float mSpentDialysateTemp = 0; ///< Spent Dialysate temperature + float mFreshDialysateTemp = 0; ///< Fresh Dialysate temperature + float mTransmembraneTemp = 0; ///< Transmembrane temperature + }; + + MDDPressures () {} + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MDDPressures::Data DDPressuresData; Index: sources/model/dd/data/MDDTemperaturesData.cpp =================================================================== diff -u --- sources/model/dd/data/MDDTemperaturesData.cpp (revision 0) +++ sources/model/dd/data/MDDTemperaturesData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,89 @@ +/*! + * + * 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 MDDTemperaturesData.cpp + * \author (last) Dara Navaei + * \date (last) 05-Feb-2024 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "MDDTemperaturesData.h" + +using namespace Model; + +QVariantList MDDTemperatures::parameters() const +{ + return { + _data.d1Temp .value, + _data.x6Temp .value, + _data.d4Temp .value, + _data.d50Temp .value, + _data.boardTemp .value, + _data.baroTemp .value, + _data.d16CondTemp .value, + _data.d28CondTemp .value, + _data.d30CondTemp .value, + _data.d44CondTemp .value, + _data.d75CondTemp .value, + _data.d4AvgTemp .value, + _data.d50AvgTemp .value, + _data.d28AvgTemp .value, + _data.d30AvgTemp .value, + }; +} + +bool MDDTemperatures::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if ( ! GetValue(vByteArray, index, _data.d1Temp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.x6Temp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d4Temp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d50Temp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.boardTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.baroTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d16CondTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d28CondTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d30CondTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d44CondTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d75CondTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d4AvgTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d50AvgTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d28AvgTemp )) goto lError; + if ( ! GetValue(vByteArray, index, _data.d30AvgTemp )) goto lError; + + return true ; + +lError: + if(vIndex) { *vIndex = index; } + + return false ; +} + +/*! + * \brief MDDTemperatures::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +MDDTemperatures::Data MDDTemperatures::data() const { + Data data; + data.mInletHeatExchanger = _data.d1Temp .value; + data.mOutletHeatExchanger = _data.x6Temp .value; + data.mHydraulicsPrimaryHeater = _data.d4Temp .value; + data.mTrimmerHeater = _data.d50Temp .value; + data.mBoardTemperature = _data.boardTemp .value; + data.mBarometricTemperature = _data.baroTemp .value; + data.mD16Conductivity = _data.d16CondTemp .value; + data.mD28Conductivity = _data.d28CondTemp .value; + data.mD30Conductivity = _data.d30CondTemp .value; + data.mD44Conductivity = _data.d44CondTemp .value; + data.mD75Conductivity = _data.d75CondTemp .value; + data.mD4MovingAverage = _data.d4AvgTemp .value; + data.mD50MovingAverage = _data.d50AvgTemp .value; + data.mD28MovingAverage = _data.d28AvgTemp .value; + data.mD30MovingAverage = _data.d30AvgTemp .value; + return data; +} Index: sources/model/dd/data/MDDTemperaturesData.h =================================================================== diff -u --- sources/model/dd/data/MDDTemperaturesData.h (revision 0) +++ sources/model/dd/data/MDDTemperaturesData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,149 @@ +/*! + * + * 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 MDDTemperaturesData.h + * \author (last) Dara Navaei + * \date (last) 05-Feb-2024 + * \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 MDDTemperatures class + * \details The DD temperatures data model + * + * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | + * |0x2600| 0x101 | 8 | 2 Hz | N | DD | All | DD Temperatures Data | + * + * | Payload || + * | || + * | #01:(F32) | \ref Data::mInletPrimaryHeater | + * | #02:(F32) | \ref Data::mHeatDisinfect | + * | #03:(F32) | \ref Data::mOutletPrimaryHeater | + * | #04:(F32) | \ref Data::mConductivitySensor1 | + * | #05:(F32) | \ref Data::mConductivitySensor2 | + * | #06:(F32) | \ref Data::mOutletRedundancy | + * | #07:(F32) | \ref Data::mInletDialysate | + * | #08:(F32) | \ref Data::mPrimaryHeaterThermoCouple | + * | #09:(F32) | \ref Data::mTrimmerHeaterThermoCouple | + * | #10:(F32) | \ref Data::mPrimaryHeaterColdJunction | + * | #11:(F32) | \ref Data::mTrimmerHeaterColdJunction | + * | #12:(F32) | \ref Data::mPrimaryHeaterInternal | + * | #13:(F32) | \ref Data::mTrimmerHeaterInternal | + * | #14:(F32) | \ref Data::mFpgaBoard | + * | #15:(F32) | \ref Data::mLoadCellA1B1 | + * | #16:(F32) | \ref Data::mLoadCellA2B2 | + * | #17:(F32) | \ref Data::mInternalTHDORTD | + * | #18:(F32) | \ref Data::mInternalTDIRTD | + * | #19:(F32) | \ref Data::mInteralTHDRTD | + * | #20:(F32) | \ref Data::mInternalCondSnsrTemp | + * | #21:(F32) | \ref Data::mBaroTempSensor | + * | #22:(F32) | \ref Data::mDialysateInletMvngAvg | + * | #23:(F32) | \ref Data::mRedundantOutletMvngAvg | + * + * F32 d1Temp ; ///< Inlet heat exchanger temperature sensor + F32 x6Temp ; ///< Outlet heat exchanger temperature sensor + F32 d4Temp ; ///< Hydraulics primary heater temperature sensor + F32 d50Temp ; ///< Trimmer heater temperature sensor + F32 boardTemp ; ///< Board temperature sensor + F32 baroTemp ; ///< Barometric temperature sensor + F32 d16CondTemp ; ///< D16 temperature value + F32 d28CondTemp ; ///< D28 temperature value + F32 d30CondTemp ; ///< D30 temperature value + F32 d44CondTemp ; ///< D44 temperature value + F32 d75CondTemp ; ///< D75 temperature value + F32 d4AvgTemp ; ///< D4 moving average temperature value + F32 d50AvgTemp ; ///< D50 moving average temperature value + F32 d28AvgTemp ; ///< D28 moving average temperature value + F32 d30AvgTemp ; ///< D30 moving average temperature value + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Datum | + * | unitText | DD | + * | infoText | Temperatures | + * + */ +class MDDTemperatures : public MAbstract { + + // friends + friend class ::tst_models; + + // DD Temperatures Data 1 - F32 Inlet primary heater 5 - F32 Outlet redundancy 9 - F32 Primary heater cold junction + // 2 - F32 Outlet primary heater 6 - F32 Inlet dialysate 10 - F32 Trimmer heater cold junction + // 3 - F32 Conductivity sensor 1 7 - F32 Primary heater thermo-couple 11 - F32 Primary heater internal temperature + // 4 - F32 Conductivity sensor 2 8 - F32 Trimmer heater thermo-couple 12 - F32 Trimmer heater internal temperature + QVariantList parameters() const override; + + struct { + Types::F32 d1Temp ; ///< Inlet heat exchanger temperature sensor + Types::F32 x6Temp ; ///< Outlet heat exchanger temperature sensor + Types::F32 d4Temp ; ///< Hydraulics primary heater temperature sensor + Types::F32 d50Temp ; ///< Trimmer heater temperature sensor + Types::F32 boardTemp ; ///< Board temperature sensor + Types::F32 baroTemp ; ///< Barometric temperature sensor + Types::F32 d16CondTemp; ///< D16 temperature value + Types::F32 d28CondTemp; ///< D28 temperature value + Types::F32 d30CondTemp; ///< D30 temperature value + Types::F32 d44CondTemp; ///< D44 temperature value + Types::F32 d75CondTemp; ///< D75 temperature value + Types::F32 d4AvgTemp ; ///< D4 moving average temperature value + Types::F32 d50AvgTemp ; ///< D50 moving average temperature value + Types::F32 d28AvgTemp ; ///< D28 moving average temperature value + Types::F32 d30AvgTemp ; ///< D30 moving average temperature value + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eDatum ; } + Unit_Enum unitText () const override { return Unit_Enum::eDD ; } + QString infoText () const override { return QString("Temperatures"); } + + struct Data { + float mInletHeatExchanger = 0; ///< Inlet heat exchanger temperature sensor + float mOutletHeatExchanger = 0; ///< Outlet heat exchanger temperature sensor + float mHydraulicsPrimaryHeater = 0; ///< Hydraulics primary heater temperature sensor + float mTrimmerHeater = 0; ///< Trimmer heater temperature sensor + float mBoardTemperature = 0; ///< Board temperature sensor + float mBarometricTemperature = 0; ///< Barometric temperature sensor + float mD16Conductivity = 0; ///< D16 temperature value + float mD28Conductivity = 0; ///< D28 temperature value + float mD30Conductivity = 0; ///< D30 temperature value + float mD44Conductivity = 0; ///< D44 temperature value + float mD75Conductivity = 0; ///< D75 temperature value + float mD4MovingAverage = 0; ///< D4 moving average temperature value + float mD50MovingAverage = 0; ///< D50 moving average temperature value + float mD28MovingAverage = 0; ///< D28 moving average temperature value + float mD30MovingAverage = 0; ///< D30 moving average temperature value + }; + + MDDTemperatures() { } + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MDDTemperatures::Data DDTemperaturesData; Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDDLevelData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDDLevelData.h'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDGHeatersData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDGHeatersData.h'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDGPressuresData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDGPressuresData.h'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDGTemperaturesData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/model/dg/data/MDGTemperaturesData.h'. Fisheye: No comparison available. Pass `N' to diff? Index: sources/view/VView.h =================================================================== diff -u -rb3f0f9afa498c5892f39745c36b9762ec957a468 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/view/VView.h (.../VView.h) (revision b3f0f9afa498c5892f39745c36b9762ec957a468) +++ sources/view/VView.h (.../VView.h) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -21,17 +21,17 @@ 1 - Look at the message structure in the "message list.xlsx" 2 - View Implementation : - Implement a view like VDGPressures by copy/paste the closest model .h/.cpp file + Implement a view like VDDPressures by copy/paste the closest model .h/.cpp file and adding it to project and modify to fit the new model. 3 - Register View : - Add the required lines like the other models in the VView.h file. - Also add the #include in the GuiGlobals.cpp 4 - Usage in UI : - Import : import VDGPressures 0.1; - Instantiate : VDGPressures { id: vDGPressures } - Access : value: vDGPressures.drainInletPSI + Import : import VDDPressures 0.1; + Instantiate : VDDPressures { id: vDDPressures } + Access : value: vDDPressures.drainInletPSI \endverbatim */ //--------------------------------------------------------------------------------// @@ -180,13 +180,13 @@ REGISTER_TYPE( VTDTemperature ) \ /* DG - Data */ \ REGISTER_TYPE( VDGDrainPump ) \ - REGISTER_TYPE( VDGHeaters ) \ + REGISTER_TYPE( VDDHeaters ) \ REGISTER_TYPE( VDGLoadCellReadings ) \ REGISTER_TYPE( VDGOperationMode ) \ - REGISTER_TYPE( VDGPressures ) \ + REGISTER_TYPE( VDDPressures ) \ REGISTER_TYPE( VDGROPump ) \ REGISTER_TYPE( VDGReservoir ) \ - REGISTER_TYPE( VDGTemperatures ) \ + REGISTER_TYPE( VDDTemperatures ) \ REGISTER_TYPE( VDGValvesStates ) \ REGISTER_TYPE( VDGAccelerometer ) \ REGISTER_TYPE( VDDConductivity ) \ Index: sources/view/dd/data/VDDGenDialysateData.cpp =================================================================== diff -u -r9d27f14c2b528c0f199004614f10d55589e08614 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/view/dd/data/VDDGenDialysateData.cpp (.../VDDGenDialysateData.cpp) (revision 9d27f14c2b528c0f199004614f10d55589e08614) +++ sources/view/dd/data/VDDGenDialysateData.cpp (.../VDDGenDialysateData.cpp) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -28,6 +28,6 @@ spentLevel ( vData. mSpentLevel ); hydNegativePressure ( vData. mHydNegativePressure ); hydPositivePressure ( vData. mHydPositivePressure ); - spendPressure ( vData. mSpendPressure ); + spentPressure ( vData. mSpentPressure ); isDialGood ( vData. mIsDialGood ); } Index: sources/view/dd/data/VDDGenDialysateData.h =================================================================== diff -u -r9d27f14c2b528c0f199004614f10d55589e08614 -r0cb2630813e6f7216adaf990f4129deb87b849bf --- sources/view/dd/data/VDDGenDialysateData.h (.../VDDGenDialysateData.h) (revision 9d27f14c2b528c0f199004614f10d55589e08614) +++ sources/view/dd/data/VDDGenDialysateData.h (.../VDDGenDialysateData.h) (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -42,7 +42,7 @@ PROPERTY( quint32 , spentLevel , 0) PROPERTY( float , hydNegativePressure , 0) PROPERTY( float , hydPositivePressure , 0) - PROPERTY( float , spendPressure , 0) + PROPERTY( float , spentPressure , 0) PROPERTY( quint32 , isDialGood , 0) VIEW_DEC(VDDGenDialysate, DDGenDialysateData) Index: sources/view/dd/data/VDDHeatersData.cpp =================================================================== diff -u --- sources/view/dd/data/VDDHeatersData.cpp (revision 0) +++ sources/view/dd/data/VDDHeatersData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,41 @@ +/*! + * + * 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 VDDHeatersData.cpp + * \author (last) Dara Navaei + * \date (last) 08-May-2024 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "VDDHeatersData.h" + +// Project +#include "GuiController.h" + +VIEW_DEF(VDDHeaters, DDHeatersData) + +void VDDHeaters::onActionReceive(const DDHeatersData &vData) +{ + mainPrimayHeaterDC ( vData.mMainPrimayHeaterDC ); + trimmerHeaterDC ( vData.mTrimmerHeaterDC ); + primaryTargetTemp ( vData.mPrimaryTargetTemp ); + trimmerTargetTemp ( vData.mTrimmerTargetTemp ); + primaryHeaterState ( vData.mPrimaryHeaterState ); + trimmerHeaterState ( vData.mTrimmerHeaterState ); + primaryHeaterIntervalCount ( vData.mPrimaryHeaterIntervalCount ); + trimmerHeaterIntervalCount ( vData.mTrimmerHeaterIntervalCount ); + dbg1 ( vData.dbg1 ); + dbg2 ( vData.dbg2 ); + dbg3 ( vData.dbg3 ); + dbg4 ( vData.dbg4 ); + dbg5 ( vData.dbg5 ); + dbg6 ( vData.dbg6 ); + dbg7 ( vData.dbg7 ); + dbg8 ( vData.dbg8 ); + dbg9 ( vData.dbg9 ); +} Index: sources/view/dd/data/VDDHeatersData.h =================================================================== diff -u --- sources/view/dd/data/VDDHeatersData.h (revision 0) +++ sources/view/dd/data/VDDHeatersData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,59 @@ +/*! + * + * 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 VDDHeatersData.h + * \author (last) Dara Navaei + * \date (last) 08-May-2024 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VView.h" +#include "MDDHeatersData.h" + +// namespace +namespace View { + +/*! + * \brief The VDDHeaters class + * \details View for Model's Data representation. + * + * \sa Model::MDDHeaters + * + */ +class VDDHeaters : public QObject +{ + Q_OBJECT + + PROPERTY( float , mainPrimayHeaterDC , 0) + PROPERTY( float , trimmerHeaterDC , 0) + PROPERTY( float , primaryTargetTemp , 0) + PROPERTY( float , trimmerTargetTemp , 0) + PROPERTY( quint32 , primaryHeaterState , 0) + PROPERTY( quint32 , trimmerHeaterState , 0) + PROPERTY( quint32 , primaryHeaterIntervalCount , 0) + PROPERTY( quint32 , trimmerHeaterIntervalCount , 0) + PROPERTY( float , dbg1 , 0) + PROPERTY( float , dbg2 , 0) + PROPERTY( float , dbg3 , 0) + PROPERTY( float , dbg4 , 0) + PROPERTY( float , dbg5 , 0) + PROPERTY( float , dbg6 , 0) + PROPERTY( float , dbg7 , 0) + PROPERTY( float , dbg8 , 0) + PROPERTY( float , dbg9 , 0) + + VIEW_DEC(VDDHeaters, DDHeatersData) +}; +} Index: sources/view/dd/data/VDDLevelData.cpp =================================================================== diff -u --- sources/view/dd/data/VDDLevelData.cpp (revision 0) +++ sources/view/dd/data/VDDLevelData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,26 @@ +/*! + * + * Copyright (c) 2021-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 VDDLevelData.cpp + * \author (last) Behrouz NematiPour + * \date (last) 18-Apr-2022 + * \author (original) Behrouz NematiPour + * \date (original) 12-Feb-2021 + * + */ +#include "VDDLevelData.h" + +// Project +#include "GuiController.h" + +VIEW_DEF(VDDLevel, DDLevelData) + +void VDDLevel::onActionReceive(const DDLevelData &vData) { + floaterLevel (vData.mFloaterLevel ); + bicarbLevel (vData.mBicarbLevel ); + spentDialysateLevel (vData.mSpentDialysateLevel ); +} Index: sources/view/dd/data/VDDLevelData.h =================================================================== diff -u --- sources/view/dd/data/VDDLevelData.h (revision 0) +++ sources/view/dd/data/VDDLevelData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,44 @@ +/*! + * + * Copyright (c) 2021-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 VDDLevelData.h + * \author (last) Behrouz NematiPour + * \date (last) 18-Apr-2022 + * \author (original) Behrouz NematiPour + * \date (original) 12-Feb-2021 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VView.h" +#include "MDDLevelData.h" + +// namespace +namespace View { + +/*! + * \brief The VDDLevel class + * \details View for Model's Data representation. + * + * \sa Model::MDDLevel + * + */ +class VDDLevel : public QObject { + Q_OBJECT + + PROPERTY( quint32 , floaterLevel , 0) + PROPERTY( quint32 , bicarbLevel , 0) + PROPERTY( quint32 , spentDialysateLevel , 0) + + VIEW_DEC(VDDLevel, DDLevelData) +}; +} Index: sources/view/dd/data/VDDPressuresData.cpp =================================================================== diff -u --- sources/view/dd/data/VDDPressuresData.cpp (revision 0) +++ sources/view/dd/data/VDDPressuresData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,38 @@ +/*! + * + * 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 VDDPressuresData.cpp + * \author (last) Behrouz NematiPour + * \date (last) 10-Feb-2023 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "VDDPressuresData.h" + +// Project +#include "GuiController.h" + +VIEW_DEF(VDDPressures, DDPressuresData) + +void VDDPressures::onActionReceive(const DDPressuresData &vData) +{ + waterInletPSI ( vData.mWaterInletPSI ); + waterOutletPSI ( vData.mWaterOutletPSI ); + hydrolicOutletPSI ( vData.mHydrolicOutletPSI ); + bicarbBagPSI ( vData.mBicarbBagPSI ); + spentDialysatePSI ( vData.mSpentDialysatePSI ); + freshDialysatePSI ( vData.mFreshDialysatePSI ); + transmembranePSI ( vData.mTransmembranePSI ); + waterInletTemp ( vData.mWaterInletTemp ); + waterOutletTemp ( vData.mWaterOutletTemp ); + hydrolicOutletTemp ( vData.mHydrolicOutletTemp ); + bicarbBagTemp ( vData.mBicarbBagTemp ); + spentDialysateTemp ( vData.mSpentDialysateTemp ); + freshDialysateTemp ( vData.mFreshDialysateTemp ); + transmembraneTemp ( vData.mTransmembraneTemp ); +} Index: sources/view/dd/data/VDDPressuresData.h =================================================================== diff -u --- sources/view/dd/data/VDDPressuresData.h (revision 0) +++ sources/view/dd/data/VDDPressuresData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,56 @@ +/*! + * + * 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 VDDPressuresData.h + * \author (last) Behrouz NematiPour + * \date (last) 10-Feb-2023 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VView.h" +#include "MDDPressuresData.h" + +// namespace +namespace View { + +/*! + * \brief The VDDPressures class + * \details View for Model's Data representation. + * + * \sa Model::MDDPressures + * + */ +class VDDPressures : public QObject +{ + Q_OBJECT + + PROPERTY( float , waterInletPSI , 0) + PROPERTY( float , waterOutletPSI , 0) + PROPERTY( float , hydrolicOutletPSI , 0) + PROPERTY( float , bicarbBagPSI , 0) + PROPERTY( float , spentDialysatePSI , 0) + PROPERTY( float , freshDialysatePSI , 0) + PROPERTY( float , transmembranePSI , 0) + PROPERTY( float , waterInletTemp , 0) + PROPERTY( float , waterOutletTemp , 0) + PROPERTY( float , hydrolicOutletTemp , 0) + PROPERTY( float , bicarbBagTemp , 0) + PROPERTY( float , spentDialysateTemp , 0) + PROPERTY( float , freshDialysateTemp , 0) + PROPERTY( float , transmembraneTemp , 0) + + VIEW_DEC(VDDPressures, DDPressuresData) +}; +} Index: sources/view/dd/data/VDDTemperaturesData.cpp =================================================================== diff -u --- sources/view/dd/data/VDDTemperaturesData.cpp (revision 0) +++ sources/view/dd/data/VDDTemperaturesData.cpp (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,39 @@ +/*! + * + * 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 VDDTemperaturesData.cpp + * \author (last) Dara Navaei + * \date (last) 05-Feb-2024 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#include "VDDTemperaturesData.h" + +// Project +#include "GuiController.h" + +VIEW_DEF(VDDTemperatures, DDTemperaturesData) + +void VDDTemperatures::onActionReceive(const DDTemperaturesData &vData) +{ + inletHeatExchanger ( vData.mInletHeatExchanger ); + outletHeatExchanger ( vData.mOutletHeatExchanger ); + hydraulicsPrimaryHeater ( vData.mHydraulicsPrimaryHeater ); + trimmerHeater ( vData.mTrimmerHeater ); + boardTemperature ( vData.mBoardTemperature ); + barometricTemperature ( vData.mBarometricTemperature ); + D16Conductivity ( vData.mD16Conductivity ); + D28Conductivity ( vData.mD28Conductivity ); + D30Conductivity ( vData.mD30Conductivity ); + D44Conductivity ( vData.mD44Conductivity ); + D75Conductivity ( vData.mD75Conductivity ); + D4MovingAverage ( vData.mD4MovingAverage ); + D50MovingAverage ( vData.mD50MovingAverage ); + D28MovingAverage ( vData.mD28MovingAverage ); + D30MovingAverage ( vData.mD30MovingAverage ); +} Index: sources/view/dd/data/VDDTemperaturesData.h =================================================================== diff -u --- sources/view/dd/data/VDDTemperaturesData.h (revision 0) +++ sources/view/dd/data/VDDTemperaturesData.h (revision 0cb2630813e6f7216adaf990f4129deb87b849bf) @@ -0,0 +1,56 @@ +/*! + * + * 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 VDDTemperaturesData.h + * \author (last) Dara Navaei + * \date (last) 05-Feb-2024 + * \author (original) Behrouz NemaiPour + * \date (original) 02-Jul-2020 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VView.h" +#include "MDDTemperaturesData.h" + +// namespace +namespace View { + +/*! + * \brief The VDDTemperatures class + * \details View for Model's Data representation. + * + * \sa Model::MDDTemperatures + * + */ +class VDDTemperatures : public QObject +{ + Q_OBJECT + + PROPERTY( float , inletHeatExchanger , 0) + PROPERTY( float , outletHeatExchanger , 0) + PROPERTY( float , hydraulicsPrimaryHeater , 0) + PROPERTY( float , trimmerHeater , 0) + PROPERTY( float , boardTemperature , 0) + PROPERTY( float , barometricTemperature , 0) + PROPERTY( float , D16Conductivity , 0) + PROPERTY( float , D28Conductivity , 0) + PROPERTY( float , D30Conductivity , 0) + PROPERTY( float , D44Conductivity , 0) + PROPERTY( float , D75Conductivity , 0) + PROPERTY( float , D4MovingAverage , 0) + PROPERTY( float , D50MovingAverage , 0) + PROPERTY( float , D28MovingAverage , 0) + PROPERTY( float , D30MovingAverage , 0) + VIEW_DEC(VDDTemperatures, DDTemperaturesData) +}; +} Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDDLevelData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDDLevelData.h'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDGHeatersData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDGHeatersData.h'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDGPressuresData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDGPressuresData.h'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDGTemperaturesData.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 0cb2630813e6f7216adaf990f4129deb87b849bf refers to a dead (removed) revision in file `sources/view/dg/data/VDGTemperaturesData.h'. Fisheye: No comparison available. Pass `N' to diff?