Index: leahi.pro =================================================================== diff -u -r34290f9fb980b41d888c0d1d543a0a9a17d3d309 -r62d2c598af12892df80874509d4a79104e497850 --- leahi.pro (.../leahi.pro) (revision 34290f9fb980b41d888c0d1d543a0a9a17d3d309) +++ leahi.pro (.../leahi.pro) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -181,6 +181,7 @@ sources/model/td/data/MTDEjectorData.h \ sources/model/td/data/MTDSwitchesData.h \ sources/model/td/data/MTDTemperatureData.h \ + sources/model/td/data/MTDTestData.h \ sources/model/td/data/MTDValvesData.h \ sources/model/td/data/MTDVoltageData.h \ sources/model/td/data/treatment/MTreatmentBloodFlowData.h \ @@ -453,6 +454,7 @@ sources/utility/qrcodegen.h \ sources/view/td/data/VTDSwitchesData.h \ sources/view/td/data/VTDTemperatureData.h \ + sources/view/td/data/VTDTestData.h \ sources/view/td/data/VTDValvesData.h \ sources/view/td/data/VTDVoltageData.h \ sources/view/td/data/treatment/VTDTreatmentStatesData.h \ @@ -506,6 +508,7 @@ sources/model/td/data/MTDEjectorData.cpp \ sources/model/td/data/MTDSwitchesData.cpp \ sources/model/td/data/MTDTemperatureData.cpp \ + sources/model/td/data/MTDTestData.cpp \ sources/model/td/data/MTDValvesData.cpp \ sources/model/td/data/MTDVoltageData.cpp \ sources/model/td/data/treatment/MTreatmentBloodFlowData.cpp \ @@ -769,6 +772,7 @@ sources/utility/qrcodegen.cpp \ sources/view/td/data/VTDSwitchesData.cpp \ sources/view/td/data/VTDTemperatureData.cpp \ + sources/view/td/data/VTDTestData.cpp \ sources/view/td/data/VTDValvesData.cpp \ sources/view/td/data/VTDVoltageData.cpp \ sources/view/td/data/treatment/VTDTreatmentStatesData.cpp \ Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -rb80f8f84f21f86ad4c962a2c690447c572498e0b -r62d2c598af12892df80874509d4a79104e497850 --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision b80f8f84f21f86ad4c962a2c690447c572498e0b) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -133,6 +133,7 @@ {Gui::GuiActionType::ID_TDBatteryData , 2 * 4 }, // 2 parameters each 4bytes //// TODO: The payload is TBD (as indicated by the provided screen items) {Gui::GuiActionType::ID_TDTemperatureData , 1 * 4 }, // 1 parameters each 4bytes //// TODO: The payload is TBD (as indicated by the provided screen items) {Gui::GuiActionType::ID_TreatmentParametersSetPointData , 3 * 4 }, // 3 parameters each 4bytes + {Gui::GuiActionType::ID_TestMessage , 1 * 4 }, // 1 parameters each 4bytes //// NOTE: MSG ID USED FOR FW DEV TESTING // ---- TODO : AFTER GIVING IT SOME THOUGHT, IT SEEMS WE CAN GET THESE LEN FROM THE MODEL AND DO NOT NEED TO HAVE THIS BUT NEED TO INVESTIGATE MORE. {Gui::GuiActionType::ID_AlarmStatus , 4 * 3 + 2 }, // 3 parameters each 4bytes + 1 parameter 2bytes Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -rb80f8f84f21f86ad4c962a2c690447c572498e0b -r62d2c598af12892df80874509d4a79104e497850 --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision b80f8f84f21f86ad4c962a2c690447c572498e0b) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -488,6 +488,7 @@ case Gui::GuiActionType::ID_TDEjectorData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TDEjectorData ); break; case Gui::GuiActionType::ID_TDTemperatureData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TDTemperatureData ); break; case Gui::GuiActionType::ID_HDBloodLeakData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDBloodLeakData ); break; + case Gui::GuiActionType::ID_TestMessage : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TestMessage ); break; // ----- Datum - Treatment case Gui::GuiActionType::ID_TreatmentRanges : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TreatmentRanges ); break; Index: sources/gui/GuiGlobals.cpp =================================================================== diff -u -rb80f8f84f21f86ad4c962a2c690447c572498e0b -r62d2c598af12892df80874509d4a79104e497850 --- sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision b80f8f84f21f86ad4c962a2c690447c572498e0b) +++ sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -98,6 +98,8 @@ #include "VTDSwitchesData.h" #include "VTDEjectorData.h" #include "VTDTemperatureData.h" + +#include "VTDTestData.h" // DG data #include "VDGDrainPumpData.h" #include "VDDHeatersData.h" Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r34290f9fb980b41d888c0d1d543a0a9a17d3d309 -r62d2c598af12892df80874509d4a79104e497850 --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 34290f9fb980b41d888c0d1d543a0a9a17d3d309) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -234,6 +234,7 @@ ID_TDEjectorData = 0x4E00, // 78 //// ----- @LEAHIZED ID_TDTemperatureData = 0x5300, // 83 //// ----- TODO: Payload subject to change given FW implementation ID_TreatmentParametersSetPointData = 0x4F00, // 79 //// ----- @LEAHIZED + ID_TestMessage = 0x7000, // 112 //// NOTE: MSG ID USED FOR FW DEV TESTING // In-Treatment Adjustables ID_AdjustDurationReq = 0x160F, // 22 //// ----- @CRAPIZED: had to change to avoid duplication Index: sources/gui/qml/dialogs/diagnostics/DiagnosticsTD.qml =================================================================== diff -u -re18180f1f5fc7c8fbf76255f02f9898217db40a2 -r62d2c598af12892df80874509d4a79104e497850 --- sources/gui/qml/dialogs/diagnostics/DiagnosticsTD.qml (.../DiagnosticsTD.qml) (revision e18180f1f5fc7c8fbf76255f02f9898217db40a2) +++ sources/gui/qml/dialogs/diagnostics/DiagnosticsTD.qml (.../DiagnosticsTD.qml) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -312,7 +312,23 @@ ] } + DebugDataColumn { id: _TDTestColumn + textObjectName :"_TDTestData" + title : qsTr(" Test ") +// visible : vTDTest.visible + x: col(0) + y: row(7.9) + model: [ + vTDTest.test , + vTDTest.visible , + ] + label: [ + "test " , + "v " , + ] + } + // TODO: The TouchRect should be unnecessary since the first communication message with UI/TD is the version. TouchRect { x : col(9.0) Index: sources/gui/qml/main.qml =================================================================== diff -u -rcc7aae88f15228ff37b840946818692e444718bf -r62d2c598af12892df80874509d4a79104e497850 --- sources/gui/qml/main.qml (.../main.qml) (revision cc7aae88f15228ff37b840946818692e444718bf) +++ sources/gui/qml/main.qml (.../main.qml) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -35,6 +35,7 @@ import VTDSwitches 0.1 import VTDEjector 0.1 import VTDTemperature 0.1 +import VTDTest 0.1 // POST import VHDPOSTData 0.1 import VDGPOSTData 0.1 @@ -217,6 +218,7 @@ VTDSwitches { id: vTDSwitches } VTDEjector { id: vTDEjector } VTDTemperature { id: vTDTemperature } + VTDTest { id: vTDTest } VTreatmentDialysateFlow { id: vTreatmentDialysateFlow } VTreatmentPressureOcclusion { id: vTreatmentPressureOcclusion } Index: sources/model/MModel.h =================================================================== diff -u -rb80f8f84f21f86ad4c962a2c690447c572498e0b -r62d2c598af12892df80874509d4a79104e497850 --- sources/model/MModel.h (.../MModel.h) (revision b80f8f84f21f86ad4c962a2c690447c572498e0b) +++ sources/model/MModel.h (.../MModel.h) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -74,7 +74,9 @@ #include "MTDEjectorData.h" #include "MTDTemperatureData.h" +#include "MTDTestData.h" + // Debugging Messages #include "MHDDebugText.h" #include "MDGDebugText.h" @@ -370,6 +372,7 @@ REGISTER_METATYPE( TDAirPumpData ) \ REGISTER_METATYPE( HDUsageInfoResponseData ) \ REGISTER_METATYPE( HDUsageInfoRequestData ) \ + REGISTER_METATYPE( TDTestData ) \ /* Treatment Log */ \ REGISTER_METATYPE( TreatmentLogAvrgeData ) \ REGISTER_METATYPE( TreatmentLogAlarmData ) \ @@ -573,6 +576,7 @@ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TDSwitchesData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TDBatteryData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TDValvesData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TDTestData ) \ /* Treatment Log */ \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TreatmentLogAvrgeData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, TreatmentLogAlarmData ) \ @@ -790,6 +794,7 @@ ACTION_RECEIVE_BRIDGE_DEFINITION( TDSwitchesData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( TDEjectorData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( TDTemperatureData ) \ + ACTION_RECEIVE_BRIDGE_DEFINITION( TDTestData ) \ /* Treatment Log */ \ ACTION_RECEIVE_BRIDGE_DEFINITION( TreatmentLogAvrgeData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( TreatmentLogAlarmData ) \ @@ -1111,6 +1116,7 @@ ACTION_RECEIVE_SIGNAL( TDTemperatureData ) \ ACTION_RECEIVE_SIGNAL( TDAirBubbleData ) \ ACTION_RECEIVE_SIGNAL( TDAirPumpData ) \ + ACTION_RECEIVE_SIGNAL( TDTestData ) \ /* Alarms */ \ ACTION_RECEIVE_SIGNAL( AlarmStatusData ) \ ACTION_RECEIVE_SIGNAL( AlarmTriggeredData ) \ Index: sources/model/td/data/MTDTestData.cpp =================================================================== diff -u --- sources/model/td/data/MTDTestData.cpp (revision 0) +++ sources/model/td/data/MTDTestData.cpp (revision 62d2c598af12892df80874509d4a79104e497850) @@ -0,0 +1,48 @@ +/*! + * + * Copyright (c) 2022-2025 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 MTDTestData.cpp + * \author (last) Dara Navaei + * \date (last) 27-Feb-2024 + * \author (original) Michael Garthwaite + * \date (original) 23-Feb-2022 + * + */ +#include "MTDTestData.h" + +using namespace Model; + +QVariantList MTDTestData::parameters() const { + return { + _data.mTest .value, + }; +} + +bool MTDTestData::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; + if ( ! GetValue(vByteArray, index, _data.mTest )) goto lError; + + return true ; + +lError: + if(vIndex) { *vIndex = index; } + + return false ; +} + +/*! + * \brief MTDTestData::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +MTDTestData::Data MTDTestData::data() const{ + Data data; + data.mTest = _data.mTest .value; +// data.mVisible = true ; + + return data; +} Index: sources/model/td/data/MTDTestData.h =================================================================== diff -u --- sources/model/td/data/MTDTestData.h (revision 0) +++ sources/model/td/data/MTDTestData.h (revision 62d2c598af12892df80874509d4a79104e497850) @@ -0,0 +1,80 @@ +/*! + * + * Copyright (c) 2022-2025 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 MTDTestData.h + * \author (original) Tiffany Mejia + * \date (original) 07-May-2025 + * + */ +#pragma once + + +// Qt +#include + +// Project +#include "MAbstract.h" +#include "types.h" + +// forward declarations +class tst_models; + +namespace Model { + +/*! + * \brief The MTDTestData class + * \details The TD Test data model + * + * | MSG | CAN ID | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:------:|:---:|:---:|:---:|:-----------: | + * |0x7000| 0x100 | 1 Hz | N | TD | All | TD TEST Data | + * + * | Payload || + * | || + * | #1:(U32) | \ref Data::mTest | + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Datum | + * | unitText | TD | + * | infoText | Test | + * + */ +class MTDTestData : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::U32 mTest ; + } _data; + +public: + + Type_Enum typeText() const override { return Type_Enum::eDatum ; } + Unit_Enum unitText() const override { return Unit_Enum::eTD ; } + QString infoText() const override { return QString("Test") ; } + + + struct Data { + quint32 mTest = 0 ; ///< Test U32 status +// bool mVisible = false; ///< Test U32 visible state + }; + + MTDTestData () { } + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; + +}; +} + +typedef Model::MTDTestData::Data TDTestData; Index: sources/view/VView.h =================================================================== diff -u -rb80f8f84f21f86ad4c962a2c690447c572498e0b -r62d2c598af12892df80874509d4a79104e497850 --- sources/view/VView.h (.../VView.h) (revision b80f8f84f21f86ad4c962a2c690447c572498e0b) +++ sources/view/VView.h (.../VView.h) (revision 62d2c598af12892df80874509d4a79104e497850) @@ -179,6 +179,7 @@ REGISTER_TYPE( VTDSwitches ) \ REGISTER_TYPE( VTDEjector ) \ REGISTER_TYPE( VTDTemperature ) \ + REGISTER_TYPE( VTDTest ) \ /* DD - Data */ \ REGISTER_TYPE( VDGDrainPump ) \ REGISTER_TYPE( VDDHeaters ) \ Index: sources/view/td/data/VTDTestData.cpp =================================================================== diff -u --- sources/view/td/data/VTDTestData.cpp (revision 0) +++ sources/view/td/data/VTDTestData.cpp (revision 62d2c598af12892df80874509d4a79104e497850) @@ -0,0 +1,25 @@ +/*! + * + * Copyright (c) 2022-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 VTDTestData.cpp + * \author (last) Dara Navaei + * \date (last) 27-Feb-2024 + * \author (original) Michael Garthwaite + * \date (original) 23-Feb-2022 + * + */ +#include "VTDTestData.h" + +// Project +#include "GuiController.h" + +VIEW_DEF(VTDTest, TDTestData) + +void VTDTest::onActionReceive(const TDTestData &vData) { + test (vData.mTest ); + visible (true ); +} Index: sources/view/td/data/VTDTestData.h =================================================================== diff -u --- sources/view/td/data/VTDTestData.h (revision 0) +++ sources/view/td/data/VTDTestData.h (revision 62d2c598af12892df80874509d4a79104e497850) @@ -0,0 +1,43 @@ +/*! + * + * Copyright (c) 2022-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 VTDTestData.h + * \author (last) Dara Navaei + * \date (last) 27-Feb-2024 + * \author (original) Michael Garthwaite + * \date (original) 23-Feb-2022 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "main.h" // Doxygen : do not remove +#include "VView.h" +#include "MTDTestData.h" + +// namespace +namespace View { + +/*! + * \brief The VTDTestData class + * \details View for Model's Data representation. + * + * \sa Model::MTDTestData + * + */ +class VTDTest : public QObject { + Q_OBJECT + + PROPERTY( quint32 , test , 0 ) + PROPERTY( bool , visible , false) + + VIEW_DEC(VTDTest, TDTestData) + }; +}