Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -r3c07dc803109f716937b692cb4a67a5324bb9ca3 -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 3c07dc803109f716937b692cb4a67a5324bb9ca3) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -101,7 +101,7 @@ {Gui::GuiActionType::ID_DGLoadCellReadingsData , 4 * 4 }, // 4 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_DDValvesStatesData , 4 * 1 + 28 }, // 1 parameter 32bits & 28 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_DDConcentratePumpData , 25 * 4 }, // 25 parameters each 4bytes Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r3c07dc803109f716937b692cb4a67a5324bb9ca3 -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 3c07dc803109f716937b692cb4a67a5324bb9ca3) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -388,6 +388,7 @@ Q_ENUM(DD_Op_Modes) Q_ENUM(DD_Disinfect_States) Q_ENUM(DD_Heat_UI_States) + Q_ENUM(DD_Valves) }; // to be able to use the enum as signal/slot parameter @@ -460,6 +461,9 @@ typedef GuiActions::DD_Disinfect_States GuiDisinfectDGStates; typedef GuiActions::DD_Heat_UI_States GuiDisinfectDGHeatStates; + // DD Valves + typedef GuiActions::DD_Valves GuiDDValves; + typedef QMap GuiStringIndexMap; typedef QPair GuiStringIndexMapItem; typedef QMapIterator GuiStringIndexMapIterator; Index: sources/gui/qml/dialogs/diagnostics/DiagnosticsDD.qml =================================================================== diff -u -r3c07dc803109f716937b692cb4a67a5324bb9ca3 -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/gui/qml/dialogs/diagnostics/DiagnosticsDD.qml (.../DiagnosticsDD.qml) (revision 3c07dc803109f716937b692cb4a67a5324bb9ca3) +++ sources/gui/qml/dialogs/diagnostics/DiagnosticsDD.qml (.../DiagnosticsDD.qml) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -36,58 +36,58 @@ x: col(0) y: row(0) model: [ - vDDConcentratePump.D11PumpCurrentSetSpeed .toFixed(2) , - vDDConcentratePump.D11PumpMeasuredSpeed .toFixed(2) , vDDConcentratePump.D10PumpCurrentSetSpeed .toFixed(2) , vDDConcentratePump.D10PumpMeasuredSpeed .toFixed(2) , - vDDConcentratePump.D11PumpTargetRevCount , - vDDConcentratePump.D11PumpMeasuredRevCount , vDDConcentratePump.D10PumpTargetRevCount , vDDConcentratePump.D10PumpMeasuredRevCount , - vDDConcentratePump.D11PumpState , vDDConcentratePump.D10PumpState , - vDDConcentratePump.D11PumpPulseUS .toFixed(2) , vDDConcentratePump.D10PumpPulseUS .toFixed(2) , - vDDConcentratePump.D11PumpTargetSpeed .toFixed(2) , vDDConcentratePump.D10PumpTargetSpeed .toFixed(2) , - vDDConcentratePump.D11PumpParked , vDDConcentratePump.D10PumpParked , - vDDConcentratePump.D11PumpParkFault , vDDConcentratePump.D10PumpParkFault , - vDDConcentratePump.D76PumpTargetSpeed .toFixed(2) , + vDDConcentratePump.D11PumpCurrentSetSpeed .toFixed(2) , + vDDConcentratePump.D11PumpMeasuredSpeed .toFixed(2) , + vDDConcentratePump.D11PumpTargetRevCount , + vDDConcentratePump.D11PumpMeasuredRevCount , + vDDConcentratePump.D11PumpState , + vDDConcentratePump.D11PumpPulseUS .toFixed(2) , + vDDConcentratePump.D11PumpTargetSpeed .toFixed(2) , + vDDConcentratePump.D11PumpParked , + vDDConcentratePump.D11PumpParkFault , vDDConcentratePump.D76PumpCurrentSetSpeed .toFixed(2) , vDDConcentratePump.D76PumpMeasuredSpeed .toFixed(2) , vDDConcentratePump.D76PumpTargetRevCount , vDDConcentratePump.D76PumpMeasuredRevCount , vDDConcentratePump.D76PumpState , vDDConcentratePump.D76PumpPulseUS .toFixed(2) , + vDDConcentratePump.D76PumpTargetSpeed .toFixed(2) , ] label: [ - "sSpd (D11) ", - "mSpd (D11) ", "sSpd (D10) ", "mSpd (D10) ", - "rCnt (D11) ", - "mCnt (D11) ", "rCnt (D10) ", "mCnt (D10) ", - "State (D11) ", "State (D10) ", - "Plse (D11) ", "Plse (D10) ", - "tSpd (D11) ", "tSpd (D10) ", - "park (D11) ", "park (D10) ", - "pfault (D11) ", "pfault (D10) ", - "tSpd (D76) ", + "sSpd (D11) ", + "mSpd (D11) ", + "rCnt (D11) ", + "mCnt (D11) ", + "State (D11) ", + "Plse (D11) ", + "tSpd (D11) ", + "park (D11) ", + "pfault (D11) ", "sSpd (D76) ", "mSpd (D76) ", "rCnt (D76) ", "mCnt (D76) ", "State (D76) ", "Plse (D76) ", + "tSpd (D76) ", ] } @@ -98,46 +98,46 @@ y: row(0) model: [ vDDDialysatePump.D12PumpTargetRPM .toFixed(2) , - vDDDialysatePump.D48PumpTargetRPM .toFixed(2) , vDDDialysatePump.D12PumpMeasuredSpeed .toFixed(2) , - vDDDialysatePump.D48PumpMeasuredSpeed .toFixed(2) , vDDDialysatePump.D12PumpCurrentSpeed .toFixed(2) , - vDDDialysatePump.D48PumpCurrentSpeed .toFixed(2) , vDDDialysatePump.D12PumpState , - vDDDialysatePump.D48PumpState , vDDDialysatePump.D12PumpTargetPressure .toFixed(2) , - vDDDialysatePump.D48PumpTargetPressure .toFixed(2) , vDDDialysatePump.D12PumpMeasuredPressure .toFixed(2) , - vDDDialysatePump.D48PumpMeasuredPressure .toFixed(2) , vDDDialysatePump.D12PumpMeasuredCurrent .toFixed(2) , - vDDDialysatePump.D48PumpMeasuredCurrent .toFixed(2) , vDDDialysatePump.D12PumpControl , - vDDDialysatePump.D48PumpControl , vDDDialysatePump.D12PumpDirErrCnt , - vDDDialysatePump.D48PumpDirErrCnt , vDDDialysatePump.D12PumpMeasuredDir , + vDDDialysatePump.D48PumpTargetRPM .toFixed(2) , + vDDDialysatePump.D48PumpMeasuredSpeed .toFixed(2) , + vDDDialysatePump.D48PumpCurrentSpeed .toFixed(2) , + vDDDialysatePump.D48PumpState , + vDDDialysatePump.D48PumpTargetPressure .toFixed(2) , + vDDDialysatePump.D48PumpMeasuredPressure .toFixed(2) , + vDDDialysatePump.D48PumpMeasuredCurrent .toFixed(2) , + vDDDialysatePump.D48PumpControl , + vDDDialysatePump.D48PumpDirErrCnt , vDDDialysatePump.D48PumpMeasuredDir , ] label: [ "tRPM (D12) ", - "tRPM (D48) ", "mSpd (D12) ", - "mSpd (D48) ", "cSpd (D12) ", - "cSpd (D48) ", "State (D12) ", - "State (D48) ", "tPres (D12) ", - "tPres (D48) ", "mPres (D12) ", - "mPres (D48) ", + "Ctrl (D12) ", + "eCnt (D12) ", "mCurr (D12) ", + "mDir (D12) ", + "tRPM (D48) ", + "mSpd (D48) ", + "cSpd (D48) ", + "State (D48) ", + "tPres (D48) ", + "mPres (D48) ", "mCurr (D48) ", - "Ctrl (D12) ", "Ctrl (D48) ", - "eCnt (D12) ", "eCnt (D48) ", - "mDir (D12) ", "mDir (D48) ", ] } @@ -149,12 +149,12 @@ 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.trimmerHeaterDC .toFixed(2) , + vDDHeaters.trimmerTargetTemp .toFixed(2) , + vDDHeaters.trimmerHeaterState , vDDHeaters.trimmerHeaterIntervalCount , vDDHeaters.dbg1 .toFixed(2) , vDDHeaters.dbg2 .toFixed(2) , @@ -168,12 +168,12 @@ ] label: [ "pHeat (D5) ", - "tHeat (D45) ", "pTemp (D5) ", - "tTemp (D45) ", "pState (D5) ", - "tstate (D45) ", "pIC (D5) ", + "tHeat (D45) ", + "tTemp (D45) ", + "tstate (D45) ", "tIC (D45) ", "dbg1 ", "dbg2 ", @@ -276,28 +276,67 @@ model: [ vDDGenDialysate.genDialysateExec , vDDGenDialysate.ddInProgress , + vDDGenDialysate.isDialGood , 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 ", + "Exec ", + "inProg ", + "isGood ", + "fltLvL (D6) ", + "bicarbLvL (D63)", + "sptLvL (D46) ", + "hydNeg (D19) ", + "hydPos (D18) ", + "sptPres (D51) ", ] } + DebugDataColumn { id: _DDHydraulicsValveColumn + textObjectName :"_DDHydraulicValveData" + title : qsTr(" Hyd Valve ") + x: col(7.8) + y: row(3.1) + + model: [ + Number(vDDValvesStates.hydraulicsOutletValve ) , + Number(vDDValvesStates.thermalDisinfectValve ) , + Number(vDDValvesStates.HydraulicsBypassValve ) , + Number(vDDValvesStates.rinsePortValve ) , + Number(vDDValvesStates.drainValve ) , + Number(vDDValvesStates.dialyzerBypassValve ) , + Number(vDDValvesStates.purgeValve1 ) , + Number(vDDValvesStates.pressureTestValve ) , + Number(vDDValvesStates.dryBicarbInletValve ) , + Number(vDDValvesStates.dialyzerInletValve ) , + Number(vDDValvesStates.dialyzerOutletValve ) , + Number(vDDValvesStates.purgeValve2 ) , + Number(vDDValvesStates.hydraulicsInletValve ) , + Number(vDDValvesStates.waterInletValve ) , + ] + label: [ + "HydOut (D14) ", + "ThemD (D52) ", + "HydByP (D8) ", + "RinseP (D54) ", + "Drain (D53) ", + "DialByP (D34) ", + "PurgV1 (D64) ", + "PresT (D31) ", + "DryBic (D65) ", + "DialIn (D35) ", + "DialOut (D40) ", + "PurgV2 (D47) ", + "HydIn (D3) ", + "WaterIn (M4) ", + ] + } + DebugDataColumn { id: _DDCondColumn textObjectName :"_DDCondlData" title : qsTr(" Cond ") @@ -311,11 +350,11 @@ vDDConductivity.bicarbCondutivity2 .toFixed(2), ] label: [ - "bicarb1 ", - "acidb1 ", - "acidb1 ", - "spent ", - "bicarb2 ", + "bicarb1 (D17) ", + "acidb1 (D27) ", + "acidb1 (D29) ", + "spent (D43) ", + "bicarb2 (D74) ", ] } @@ -330,12 +369,39 @@ vDDLevel.spentDialysateLevel , ] label: [ - "float ", - "bicarb ", - "sptDial ", + "floater (D6) ", + "bicarb (D63) ", + "sptDial (D46) ", ] } + DebugDataColumn { id: _DDBCValvesColumn + textObjectName :"_DDBCValvesData" + title : qsTr(" BC Valves ") + x: col(9.5) + y: row(3.3) + model: [ + Number(vDDValvesStates.balancingChamberValve1 ) , + Number(vDDValvesStates.balancingChamberValve2 ) , + Number(vDDValvesStates.balancingChamberValve3 ) , + Number(vDDValvesStates.balancingChamberValve7 ) , + Number(vDDValvesStates.balancingChamberValve5 ) , + Number(vDDValvesStates.balancingChamberValve6 ) , + Number(vDDValvesStates.balancingChamberValve4 ) , + Number(vDDValvesStates.balancingChamberValve8 ) , + ] + label: [ + "BC1 (D23) ", + "BC2 (D19) ", + "BC3 (D25) ", + "BC7 (D26) ", + "BC5 (D24) ", + "BC6 (D20) ", + "BC4 (D21) ", + "BC8 (D22) ", + ] + } + DebugDataColumn { id: _DDBloodLeakColumn textObjectName :"_DDBloodLeakData" title : qsTr(" Blood Leak ") Index: sources/model/dd/data/MDDValvesStatesData.cpp =================================================================== diff -u -r3d13050e0319cf30a1686b58c8f2328f6860910a -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/model/dd/data/MDDValvesStatesData.cpp (.../MDDValvesStatesData.cpp) (revision 3d13050e0319cf30a1686b58c8f2328f6860910a) +++ sources/model/dd/data/MDDValvesStatesData.cpp (.../MDDValvesStatesData.cpp) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -17,48 +17,77 @@ using namespace Model; QVariantList MDDValvesStates::parameters() const { - QVariantList mData; - for (int i = 0; i < eFlag_Bits_Length; i++) { - mData += _data.mStates.at(i) ? "T" : "-"; // Converting "bool QBitArray::at(int i) const" to int. - } - mData += _data.mVRf .value; - mData += _data.mVRi .value; - mData += _data.mRes .value; - mData += _data.mVRo .value; - mData += _data.mVPo .value; - mData += _data.mVBf .value; - mData += _data.mVRc .value; - mData += _data.mVDr .value; - mData += _data.mVPi .value; - mData += _data.mVSP .value; - mData += _data.mVR1 .value; - mData += _data.mVR2 .value; - mData += _data.mVPd .value; - return mData; + return { + _data.mValvesStatus .toString("") , + _data.mValvesSensedState1 .value , + _data.mValvesSensedState2 .value , + _data.mValvesSensedState3 .value , + _data.mValvesSensedState4 .value , + _data.mValvesSensedState5 .value , + _data.mValvesSensedState6 .value , + _data.mValvesSensedState7 .value , + _data.mValvesSensedState8 .value , + _data.mValvesSensedState9 .value , + _data.mValvesSensedState10 .value , + _data.mValvesSensedState11 .value , + _data.mValvesSensedState12 .value , + _data.mValvesSensedState13 .value , + _data.mValvesSensedState14 .value , + _data.mValvesSensedState15 .value , + _data.mValvesSensedState16 .value , + _data.mValvesSensedState17 .value , + _data.mValvesSensedState18 .value , + _data.mValvesSensedState19 .value , + _data.mValvesSensedState20 .value , + _data.mValvesSensedState21 .value , + _data.mValvesSensedState22 .value , + _data.mValvesSensedState23 .value , + _data.mValvesSensedState24 .value , + _data.mValvesSensedState25 .value , + _data.mValvesSensedState26 .value , + _data.mValvesSensedState27 .value , + _data.mValvesSensedState28 .value , + }; } + bool MDDValvesStates::fromByteArray(const QByteArray &vByteArray, int *vIndex) { int index = 0; // message data start position - if ( ! GetBits (vByteArray, index, _data.mStates, eFlag_Bits_Length )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVRi )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVRf )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mRes )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVRo )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVPo )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVBf )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVRc )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVDr )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVPi )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVSP )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVR1 )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVR2 )) goto lError; - if ( ! GetValue(vByteArray, index, _data.mVPd )) goto lError; + if ( ! GetBits (vByteArray, index, _data.mValvesStatus , GuiDDValves::DD_NUM_OF_VALVES )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState1 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState2 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState3 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState4 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState5 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState6 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState7 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState8 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState9 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState10 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState11 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState12 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState13 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState14 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState15 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState16 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState17 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState18 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState19 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState20 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState21 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState22 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState23 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState24 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState25 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState26 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState27 )) goto lError; + if ( ! GetValue(vByteArray, index, _data.mValvesSensedState28 )) goto lError; return true ; - + lError: if(vIndex) { *vIndex = index; } - + return false ; } @@ -69,19 +98,35 @@ */ MDDValvesStates::Data MDDValvesStates::data() const { Data data; - data.mStates = _data.mStates ; - data.mVRf = _data.mVRf .value; - data.mVRi = _data.mVRi .value; - data.mRes = _data.mRes .value; - data.mVRo = _data.mVRo .value; - data.mVPo = _data.mVPo .value; - data.mVBf = _data.mVBf .value; - data.mVRc = _data.mVRc .value; - data.mVDr = _data.mVDr .value; - data.mVPi = _data.mVPi .value; - data.mVSP = _data.mVSP .value; - data.mVR1 = _data.mVR1 .value; - data.mVR2 = _data.mVR2 .value; - data.mVPd = _data.mVPd .value; + data.mValvesStatus = _data.mValvesStatus ; + data.mValvesSensedState1 = _data.mValvesSensedState1 .value; + data.mValvesSensedState2 = _data.mValvesSensedState2 .value; + data.mValvesSensedState3 = _data.mValvesSensedState3 .value; + data.mValvesSensedState4 = _data.mValvesSensedState4 .value; + data.mValvesSensedState5 = _data.mValvesSensedState5 .value; + data.mValvesSensedState6 = _data.mValvesSensedState6 .value; + data.mValvesSensedState7 = _data.mValvesSensedState7 .value; + data.mValvesSensedState8 = _data.mValvesSensedState8 .value; + data.mValvesSensedState9 = _data.mValvesSensedState9 .value; + data.mValvesSensedState10 = _data.mValvesSensedState10 .value; + data.mValvesSensedState11 = _data.mValvesSensedState11 .value; + data.mValvesSensedState12 = _data.mValvesSensedState12 .value; + data.mValvesSensedState13 = _data.mValvesSensedState13 .value; + data.mValvesSensedState14 = _data.mValvesSensedState14 .value; + data.mValvesSensedState15 = _data.mValvesSensedState15 .value; + data.mValvesSensedState16 = _data.mValvesSensedState16 .value; + data.mValvesSensedState17 = _data.mValvesSensedState17 .value; + data.mValvesSensedState18 = _data.mValvesSensedState18 .value; + data.mValvesSensedState19 = _data.mValvesSensedState19 .value; + data.mValvesSensedState20 = _data.mValvesSensedState20 .value; + data.mValvesSensedState21 = _data.mValvesSensedState21 .value; + data.mValvesSensedState22 = _data.mValvesSensedState22 .value; + data.mValvesSensedState23 = _data.mValvesSensedState23 .value; + data.mValvesSensedState24 = _data.mValvesSensedState24 .value; + data.mValvesSensedState25 = _data.mValvesSensedState25 .value; + data.mValvesSensedState26 = _data.mValvesSensedState26 .value; + data.mValvesSensedState27 = _data.mValvesSensedState27 .value; + data.mValvesSensedState28 = _data.mValvesSensedState28 .value; return data; } + Index: sources/model/dd/data/MDDValvesStatesData.h =================================================================== diff -u -r3c07dc803109f716937b692cb4a67a5324bb9ca3 -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/model/dd/data/MDDValvesStatesData.h (.../MDDValvesStatesData.h) (revision 3c07dc803109f716937b692cb4a67a5324bb9ca3) +++ sources/model/dd/data/MDDValvesStatesData.h (.../MDDValvesStatesData.h) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -37,8 +37,8 @@ * | Payload || * | || * | #01:(U16) | \ref Data::mValvesStatus | - * | #02:(U08) | \ref Data::mValvesBCStatus | - * | #03:(U08) | \ref Data::mValvesUFStatus | + * | #02:(U08) | \ref Data::mValvesBCStatus | # Combined with mValvesStates + * | #03:(U08) | \ref Data::mValvesUFStatus | # Combined with mValvesStates * | #04:(U08) | \ref Data::mValvesSensedState1 | * | #..:(U08) | \ref Data::mValvesSensedState.. | * | #31:(U08) | \ref Data::mValvesSensedState28 | @@ -47,48 +47,6 @@ * \sa Data * \sa Flag * - FIRST_HYD_VALVE = 0, ///< Start of Hydraulics valve group - D14_VALV = FIRST_HYD_VALVE, ///< Valve Hydraulics Outlet (D14) - D52_VALV, ///< Valve Thermal Disinfect (D52) - D8_VALV, ///< Valve Hydraulics Bypass (D8) - D54_VALV, ///< Valve Rinse Port (D54) - D53_VALV, ///< Valve Drain (D53) - D34_VALV, ///< Valve Dialyzer Bypass (D34) - D64_VALV, ///< Valve Purge 1 (D64) - D31_VALV, ///< Valve Pressure Test (D31) - D65_VALV, ///< Valve DryBcarb Inlet (D65) - D35_VALV, ///< Valve Dialyzer Inlet (D35) - D40_VALV, ///< Valve Dialyzer Outlet (D40) - D47_VALV, ///< Valve Dialysate Out Purge 2 (D47) - D3_VALV, ///< Valve Hydraulics Inlet (D3) - M4_VALV, ///< Valve Water Inlet (M4) -#ifdef __PUMPTEST__ - UF1, ///< UF1 valve - UF2, ///< UF2 valve - LAST_HYD_VALVE = UF2, ///< End of Hydraulics valve of group -#else - LAST_HYD_VALVE = M4_VALV, ///< End of Hydraulics valve of group - RSRVD_SPACE1, ///< This space has been reserved - RSRVD_SPACE2, ///< This space has been reserved -#endif - FIRST_BC_VALVE, ///< Start of Balancing Chamber valve group - D23_VALV = FIRST_BC_VALVE, ///< Balancing chamber Valve 1 (D23) - D19_VALV, ///< Balancing chamber Valve 2 (D19) - D25_VALV, ///< Balancing chamber Valve 3 (D25) - D26_VALV, ///< Balancing chamber Valve 7 (D26) - D24_VALV, ///< Balancing chamber Valve 5 (D24) - D20_VALV, ///< Balancing chamber Valve 6 (D20) - D21_VALV, ///< Balancing chamber Valve 4 (D21) - D22_VALV, ///< Balancing chamber Valve 8 (D22) - LAST_BC_VALVE = D22_VALV, ///< End of Balancing Chamber valve group - FIRST_UF_VALVE, ///< Start of Ultrafiltration valve group - D69_VALV = FIRST_UF_VALVE, ///< Ultrafiltration Valve 1 Inlet (D69) - D71_VALV, ///< Ultrafiltration Valve 2 Inlet (D71) - D70_VALV, ///< Ultrafiltration Valve 1 Outlet (D70) - D72_VALV, ///< Ultrafiltration Valve 2 Outlet (D72) - LAST_UF_VALVE = D72_VALV, ///< End of Ultrafiltration valve group - NUM_OF_VALVES ///< Number of valves - * *

Logging info

* | || * | || @@ -103,44 +61,39 @@ // friends friend class ::tst_models; -public: - enum Flag { - eFlag_ValveStates_VRF = 0, ///< Valve Reservoir Fill - eFlag_ValveStates_VRI , ///< Valve Reservoir Inlet - eFlag_ValveStates_RES , ///< Reserved // it is removed and VR1,VR2 added - eFlag_ValveStates_VRO , ///< Valve Reservoir Outlet - eFlag_ValveStates_VPO , ///< Valve Pressure Outlet - eFlag_ValveStates_VBF , ///< Valve Bypass Filter - eFlag_ValveStates_VRC , ///< Valve Recirculate - eFlag_ValveStates_VDR , ///< Valve Drain - eFlag_ValveStates_VPI , ///< Valve Pressure Inlet - eFlag_ValveStates_VSP , ///< Valve Sampling Port - eFlag_ValveStates_VR1 , ///< Valve Reservoir 1 Drain - eFlag_ValveStates_VR2 , ///< Valve Reservoir 2 Drain - eFlag_ValveStates_VPD , ///< Valve Production Drain - - eFlag_Bits_Length = 16, // the 16 bit has to be consumed since the next data starts after the 16 bit. - }; - private: - // DD Valves States (U16) Valves States QVariantList parameters() const override; struct { - Types::Flags mStates ; - Types::U08 mVRf ; - Types::U08 mVRi ; - Types::U08 mRes ; - Types::U08 mVRo ; - Types::U08 mVPo ; - Types::U08 mVBf ; - Types::U08 mVRc ; - Types::U08 mVDr ; - Types::U08 mVPi ; - Types::U08 mVSP ; - Types::U08 mVR1 ; - Types::U08 mVR2 ; - Types::U08 mVPd ; + Types::Flags mValvesStatus ; // 16 bit Hydrolic Valves, 8 bit Balancing Chanber Valves, 8 bit UF Valves + Types::U08 mValvesSensedState1 ; + Types::U08 mValvesSensedState2 ; + Types::U08 mValvesSensedState3 ; + Types::U08 mValvesSensedState4 ; + Types::U08 mValvesSensedState5 ; + Types::U08 mValvesSensedState6 ; + Types::U08 mValvesSensedState7 ; + Types::U08 mValvesSensedState8 ; + Types::U08 mValvesSensedState9 ; + Types::U08 mValvesSensedState10 ; + Types::U08 mValvesSensedState11 ; + Types::U08 mValvesSensedState12 ; + Types::U08 mValvesSensedState13 ; + Types::U08 mValvesSensedState14 ; + Types::U08 mValvesSensedState15 ; + Types::U08 mValvesSensedState16 ; + Types::U08 mValvesSensedState17 ; + Types::U08 mValvesSensedState18 ; + Types::U08 mValvesSensedState19 ; + Types::U08 mValvesSensedState20 ; + Types::U08 mValvesSensedState21 ; + Types::U08 mValvesSensedState22 ; + Types::U08 mValvesSensedState23 ; + Types::U08 mValvesSensedState24 ; + Types::U08 mValvesSensedState25 ; + Types::U08 mValvesSensedState26 ; + Types::U08 mValvesSensedState27 ; + Types::U08 mValvesSensedState28 ; } _data; public: @@ -150,20 +103,35 @@ QString infoText () const override { return QString("ValvesStates"); } struct Data { - QBitArray mStates ; - quint8 mVRf = 0; - quint8 mVRi = 0; - quint8 mRes = 0; - quint8 mVRo = 0; - quint8 mVPo = 0; - quint8 mVBf = 0; - quint8 mVRc = 0; - quint8 mVDr = 0; - quint8 mVPi = 0; - quint8 mVSP = 0; - quint8 mVR1 = 0; - quint8 mVR2 = 0; - quint8 mVPd = 0; + QBitArray mValvesStatus ; + quint8 mValvesSensedState1 = 0 ; + quint8 mValvesSensedState2 = 0 ; + quint8 mValvesSensedState3 = 0 ; + quint8 mValvesSensedState4 = 0 ; + quint8 mValvesSensedState5 = 0 ; + quint8 mValvesSensedState6 = 0 ; + quint8 mValvesSensedState7 = 0 ; + quint8 mValvesSensedState8 = 0 ; + quint8 mValvesSensedState9 = 0 ; + quint8 mValvesSensedState10 = 0 ; + quint8 mValvesSensedState11 = 0 ; + quint8 mValvesSensedState12 = 0 ; + quint8 mValvesSensedState13 = 0 ; + quint8 mValvesSensedState14 = 0 ; + quint8 mValvesSensedState15 = 0 ; + quint8 mValvesSensedState16 = 0 ; + quint8 mValvesSensedState17 = 0 ; + quint8 mValvesSensedState18 = 0 ; + quint8 mValvesSensedState19 = 0 ; + quint8 mValvesSensedState20 = 0 ; + quint8 mValvesSensedState21 = 0 ; + quint8 mValvesSensedState22 = 0 ; + quint8 mValvesSensedState23 = 0 ; + quint8 mValvesSensedState24 = 0 ; + quint8 mValvesSensedState25 = 0 ; + quint8 mValvesSensedState26 = 0 ; + quint8 mValvesSensedState27 = 0 ; + quint8 mValvesSensedState28 = 0 ; }; MDDValvesStates () { } @@ -174,5 +142,4 @@ } typedef Model::MDDValvesStates::Data DDValvesStatesData; -typedef Model::MDDValvesStates::Flag DDValvesStatesFlag; Index: sources/utility/types.cpp =================================================================== diff -u -ra5760947d3ed0d2748ba023a1c25e3c6aa0b1de1 -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/utility/types.cpp (.../types.cpp) (revision a5760947d3ed0d2748ba023a1c25e3c6aa0b1de1) +++ sources/utility/types.cpp (.../types.cpp) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -44,7 +44,8 @@ bool Types::getBits(const QByteArray &vData, int &vStartIndex, QBitArray &vFlags, int vLen) { vFlags.clear(); QByteArray data = vData.mid(vStartIndex, vLen); - vStartIndex = vLen / 8; + quint8 bytes = vLen / 8; + vStartIndex = vLen % 8 ? bytes + 1 : bytes ; //CEILING DIVISION TO ROUND UP TO LATEST BIT if ( data.length() * 8 < vLen ) return false; vFlags = QBitArray::fromBits(data, vLen); Index: sources/view/dd/data/VDDValvesStatesData.cpp =================================================================== diff -u -r3d13050e0319cf30a1686b58c8f2328f6860910a -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/view/dd/data/VDDValvesStatesData.cpp (.../VDDValvesStatesData.cpp) (revision 3d13050e0319cf30a1686b58c8f2328f6860910a) +++ sources/view/dd/data/VDDValvesStatesData.cpp (.../VDDValvesStatesData.cpp) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -21,34 +21,66 @@ void VDDValvesStates::onActionReceive(const DDValvesStatesData &vData) { - valveStates_VRF ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VRF )); - valveStates_VRI ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VRI )); - valveStates_RES ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_RES )); - valveStates_VRO ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VRO )); - valveStates_VPO ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VPO )); - valveStates_VBF ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VBF )); - valveStates_VRC ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VRC )); - valveStates_VDR ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VDR )); - valveStates_VPI ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VPI )); - valveStates_VSP ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VSP )); - valveStates_VR1 ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VR1 )); - valveStates_VR2 ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VR2 )); - valveStates_VPD ( vData.mStates.at( DDValvesStatesFlag::eFlag_ValveStates_VPD )); + hydraulicsOutletValve ( vData.mValvesStatus.at( GuiDDValves::D14_VALV )); // Start of Hydraulics valve group + thermalDisinfectValve ( vData.mValvesStatus.at( GuiDDValves::D52_VALV )); + HydraulicsBypassValve ( vData.mValvesStatus.at( GuiDDValves::D8_VALV )); + rinsePortValve ( vData.mValvesStatus.at( GuiDDValves::D54_VALV )); + drainValve ( vData.mValvesStatus.at( GuiDDValves::D53_VALV )); + dialyzerBypassValve ( vData.mValvesStatus.at( GuiDDValves::D34_VALV )); + purgeValve1 ( vData.mValvesStatus.at( GuiDDValves::D64_VALV )); + pressureTestValve ( vData.mValvesStatus.at( GuiDDValves::D31_VALV )); + dryBicarbInletValve ( vData.mValvesStatus.at( GuiDDValves::D65_VALV )); + dialyzerInletValve ( vData.mValvesStatus.at( GuiDDValves::D35_VALV )); + dialyzerOutletValve ( vData.mValvesStatus.at( GuiDDValves::D40_VALV )); + purgeValve2 ( vData.mValvesStatus.at( GuiDDValves::D47_VALV )); + hydraulicsInletValve ( vData.mValvesStatus.at( GuiDDValves::D3_VALV )); + waterInletValve ( vData.mValvesStatus.at( GuiDDValves::DD_M4_VALV)); + // 2 reserved flags are here... // - valveStatus_VRF ( vData.mVRf ); - valveStatus_VRI ( vData.mVRi ); - valveStatus_RES ( vData.mRes ); - valveStatus_VRO ( vData.mVRo ); - valveStatus_VPO ( vData.mVPo ); - valveStatus_VBF ( vData.mVBf ); - valveStatus_VRC ( vData.mVRc ); - valveStatus_VDR ( vData.mVDr ); - valveStatus_VPI ( vData.mVPi ); - valveStatus_VSP ( vData.mVSP ); - valveStatus_VR1 ( vData.mVR1 ); - valveStatus_VR2 ( vData.mVR2 ); - valveStatus_VPD ( vData.mVPd ); + balancingChamberValve1 ( vData.mValvesStatus.at( GuiDDValves::D23_VALV )); // Start of Balancing Chamber valve group + balancingChamberValve2 ( vData.mValvesStatus.at( GuiDDValves::D19_VALV )); + balancingChamberValve3 ( vData.mValvesStatus.at( GuiDDValves::D25_VALV )); + balancingChamberValve7 ( vData.mValvesStatus.at( GuiDDValves::D26_VALV )); + balancingChamberValve5 ( vData.mValvesStatus.at( GuiDDValves::D24_VALV )); + balancingChamberValve6 ( vData.mValvesStatus.at( GuiDDValves::D20_VALV )); + balancingChamberValve4 ( vData.mValvesStatus.at( GuiDDValves::D21_VALV )); + balancingChamberValve8 ( vData.mValvesStatus.at( GuiDDValves::D22_VALV )); + ultrafiltrationInletValve1 ( vData.mValvesStatus.at( GuiDDValves::D69_VALV )); // Start of Ultrafiltration valve group + ultrafiltrationInletValve2 ( vData.mValvesStatus.at( GuiDDValves::D71_VALV )); + ultrafiltrationOutletValve1 ( vData.mValvesStatus.at( GuiDDValves::D70_VALV )); + ultrafiltrationOutletValve2 ( vData.mValvesStatus.at( GuiDDValves::D72_VALV )); + // 4 reserved flags are here... // + + valvesSensedState1 ( vData.mValvesSensedState1 ); + valvesSensedState2 ( vData.mValvesSensedState2 ); + valvesSensedState3 ( vData.mValvesSensedState3 ); + valvesSensedState4 ( vData.mValvesSensedState4 ); + valvesSensedState5 ( vData.mValvesSensedState5 ); + valvesSensedState6 ( vData.mValvesSensedState6 ); + valvesSensedState7 ( vData.mValvesSensedState7 ); + valvesSensedState8 ( vData.mValvesSensedState8 ); + valvesSensedState9 ( vData.mValvesSensedState9 ); + valvesSensedState10 ( vData.mValvesSensedState10 ); + valvesSensedState11 ( vData.mValvesSensedState11 ); + valvesSensedState12 ( vData.mValvesSensedState12 ); + valvesSensedState13 ( vData.mValvesSensedState13 ); + valvesSensedState14 ( vData.mValvesSensedState14 ); + valvesSensedState15 ( vData.mValvesSensedState15 ); + valvesSensedState16 ( vData.mValvesSensedState16 ); + valvesSensedState17 ( vData.mValvesSensedState17 ); + valvesSensedState18 ( vData.mValvesSensedState18 ); + valvesSensedState19 ( vData.mValvesSensedState19 ); + valvesSensedState20 ( vData.mValvesSensedState20 ); + valvesSensedState21 ( vData.mValvesSensedState21 ); + valvesSensedState22 ( vData.mValvesSensedState22 ); + valvesSensedState23 ( vData.mValvesSensedState23 ); + valvesSensedState24 ( vData.mValvesSensedState24 ); + valvesSensedState25 ( vData.mValvesSensedState25 ); + valvesSensedState26 ( vData.mValvesSensedState26 ); + valvesSensedState27 ( vData.mValvesSensedState27 ); + valvesSensedState28 ( vData.mValvesSensedState28 ); + // Trigger should be the last - refresh(true); +// refresh(true); } Index: sources/view/dd/data/VDDValvesStatesData.h =================================================================== diff -u -r3d13050e0319cf30a1686b58c8f2328f6860910a -r47b25a76644ca44b81b5a4a728346f8e72e1dc3b --- sources/view/dd/data/VDDValvesStatesData.h (.../VDDValvesStatesData.h) (revision 3d13050e0319cf30a1686b58c8f2328f6860910a) +++ sources/view/dd/data/VDDValvesStatesData.h (.../VDDValvesStatesData.h) (revision 47b25a76644ca44b81b5a4a728346f8e72e1dc3b) @@ -36,36 +36,66 @@ { Q_OBJECT - TRIGGER ( bool , refresh , false) +// TRIGGER ( bool , refresh , false) - PROPERTY( quint8 , valveStates_VRF , 0 ) - PROPERTY( quint8 , valveStates_VRI , 0 ) - PROPERTY( quint8 , valveStates_RES , 0 ) - PROPERTY( quint8 , valveStates_VRO , 0 ) - PROPERTY( quint8 , valveStates_VPO , 0 ) - PROPERTY( quint8 , valveStates_VBF , 0 ) - PROPERTY( quint8 , valveStates_VRC , 0 ) - PROPERTY( quint8 , valveStates_VDR , 0 ) - PROPERTY( quint8 , valveStates_VPI , 0 ) - PROPERTY( quint8 , valveStates_VSP , 0 ) - PROPERTY( quint8 , valveStates_VR1 , 0 ) - PROPERTY( quint8 , valveStates_VR2 , 0 ) - PROPERTY( quint8 , valveStates_VPD , 0 ) + PROPERTY( bool , hydraulicsOutletValve , 0 ) + PROPERTY( bool , thermalDisinfectValve , 0 ) + PROPERTY( bool , HydraulicsBypassValve , 0 ) + PROPERTY( bool , rinsePortValve , 0 ) + PROPERTY( bool , drainValve , 0 ) + PROPERTY( bool , dialyzerBypassValve , 0 ) + PROPERTY( bool , purgeValve1 , 0 ) + PROPERTY( bool , pressureTestValve , 0 ) + PROPERTY( bool , dryBicarbInletValve , 0 ) + PROPERTY( bool , dialyzerInletValve , 0 ) + PROPERTY( bool , dialyzerOutletValve , 0 ) + PROPERTY( bool , purgeValve2 , 0 ) + PROPERTY( bool , hydraulicsInletValve , 0 ) + PROPERTY( bool , waterInletValve , 0 ) - PROPERTY( quint8 , valveStatus_VRF , 0 ) - PROPERTY( quint8 , valveStatus_VRI , 0 ) - PROPERTY( quint8 , valveStatus_RES , 0 ) - PROPERTY( quint8 , valveStatus_VRO , 0 ) - PROPERTY( quint8 , valveStatus_VPO , 0 ) - PROPERTY( quint8 , valveStatus_VBF , 0 ) - PROPERTY( quint8 , valveStatus_VRC , 0 ) - PROPERTY( quint8 , valveStatus_VDR , 0 ) - PROPERTY( quint8 , valveStatus_VPI , 0 ) - PROPERTY( quint8 , valveStatus_VSP , 0 ) - PROPERTY( quint8 , valveStatus_VR1 , 0 ) - PROPERTY( quint8 , valveStatus_VR2 , 0 ) - PROPERTY( quint8 , valveStatus_VPD , 0 ) + PROPERTY( bool , balancingChamberValve1 , 0 ) + PROPERTY( bool , balancingChamberValve2 , 0 ) + PROPERTY( bool , balancingChamberValve3 , 0 ) + PROPERTY( bool , balancingChamberValve7 , 0 ) + PROPERTY( bool , balancingChamberValve5 , 0 ) + PROPERTY( bool , balancingChamberValve6 , 0 ) + PROPERTY( bool , balancingChamberValve4 , 0 ) + PROPERTY( bool , balancingChamberValve8 , 0 ) + PROPERTY( bool , ultrafiltrationInletValve1 , 0 ) + PROPERTY( bool , ultrafiltrationInletValve2 , 0 ) + PROPERTY( bool , ultrafiltrationOutletValve1 , 0 ) + PROPERTY( bool , ultrafiltrationOutletValve2 , 0 ) + + PROPERTY( quint8 , valvesSensedState1 , 0 ) + PROPERTY( quint8 , valvesSensedState2 , 0 ) + PROPERTY( quint8 , valvesSensedState3 , 0 ) + PROPERTY( quint8 , valvesSensedState4 , 0 ) + PROPERTY( quint8 , valvesSensedState5 , 0 ) + PROPERTY( quint8 , valvesSensedState6 , 0 ) + PROPERTY( quint8 , valvesSensedState7 , 0 ) + PROPERTY( quint8 , valvesSensedState8 , 0 ) + PROPERTY( quint8 , valvesSensedState9 , 0 ) + PROPERTY( quint8 , valvesSensedState10 , 0 ) + PROPERTY( quint8 , valvesSensedState11 , 0 ) + PROPERTY( quint8 , valvesSensedState12 , 0 ) + PROPERTY( quint8 , valvesSensedState13 , 0 ) + PROPERTY( quint8 , valvesSensedState14 , 0 ) + PROPERTY( quint8 , valvesSensedState15 , 0 ) + PROPERTY( quint8 , valvesSensedState16 , 0 ) + PROPERTY( quint8 , valvesSensedState17 , 0 ) + PROPERTY( quint8 , valvesSensedState18 , 0 ) + PROPERTY( quint8 , valvesSensedState19 , 0 ) + PROPERTY( quint8 , valvesSensedState20 , 0 ) + PROPERTY( quint8 , valvesSensedState21 , 0 ) + PROPERTY( quint8 , valvesSensedState22 , 0 ) + PROPERTY( quint8 , valvesSensedState23 , 0 ) + PROPERTY( quint8 , valvesSensedState24 , 0 ) + PROPERTY( quint8 , valvesSensedState25 , 0 ) + PROPERTY( quint8 , valvesSensedState26 , 0 ) + PROPERTY( quint8 , valvesSensedState27 , 0 ) + PROPERTY( quint8 , valvesSensedState28 , 0 ) + VIEW_DEC(VDDValvesStates, DDValvesStatesData) }; }