Index: denali.pro =================================================================== diff -u -rba928149acf9501b0ab751eab84f4b7e8ac05353 -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f --- denali.pro (.../denali.pro) (revision ba928149acf9501b0ab751eab84f4b7e8ac05353) +++ denali.pro (.../denali.pro) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -192,8 +192,9 @@ sources/model/hd/adjustment/posttreatment/MPostTreatmentAdjustDisposablesRemovalConfirmResponse.h \ \ # ---------- Models - HD - Adjustment - Disinfeection sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h \ + sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.h \ + sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.h \ sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartRequests.h \ - sources/model/hd/adjustment/disinfect/MDisinfectAdjustResponse.h \ \ # ---------- Models - HD - Data - Pre-Treatment - Progress sources/model/hd/data/pretreatment/MPreTreatmentSelfTestNoCartridgeData.h \ sources/model/hd/data/pretreatment/MPreTreatmentSelfTestDryData.h \ @@ -446,7 +447,8 @@ sources/model/hd/adjustment/posttreatment/MPostTreatmentAdjustTreatmentLogResponse.cpp \ sources/model/hd/adjustment/posttreatment/MPostTreatmentAdjustDisposablesRemovalConfirmResponse.cpp \ \ # ---------- Models - HD - Adjustment - Disinfection - sources/model/hd/adjustment/disinfect/MDisinfectAdjustResponse.cpp \ + sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.cpp \ + sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.cpp \ \ # ---------- Models - HD - Data sources/model/hd/data/MHDDebugText.cpp \ sources/model/hd/data/MHDGeneralEvent.cpp \ Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -r63bd08ce9c25b414882289dce5cada8dfcd7eb0e -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 63bd08ce9c25b414882289dce5cada8dfcd7eb0e) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -510,6 +510,7 @@ case Gui::GuiActionType::ID_TreatmentLogAlarmData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TreatmentLogAlarmData ); break; case Gui::GuiActionType::ID_TreatmentLogEventData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_TreatmentLogEventData ); break; // ----- Disinfection - Adjust + case Gui::GuiActionType::ID_AdjustDisinfectModeRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustDisinfectModeRsp ); break; case Gui::GuiActionType::ID_AdjustDisinfectStartRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustDisinfectStartRsp ); break; // these need to be standard and use notify as well case Gui::GuiActionType::ID_AdjustUltrafiltrationEditRsp : ok = adjustUltrafiltrationEdit (vMessage, vData); /* TODO : implement notify<>() */ break; Index: sources/model/MModel.h =================================================================== diff -u -r63bd08ce9c25b414882289dce5cada8dfcd7eb0e -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f --- sources/model/MModel.h (.../MModel.h) (revision 63bd08ce9c25b414882289dce5cada8dfcd7eb0e) +++ sources/model/MModel.h (.../MModel.h) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -137,7 +137,8 @@ // Disinfection #include "MDisinfectAdjustModeRequests.h" #include "MDisinfectAdjustStartRequests.h" -#include "MDisinfectAdjustResponse.h" +#include "MDisinfectAdjustModeResponse.h" +#include "MDisinfectAdjustStartResponse.h" /*! * \page MessageFlow Message interpretation Flow @@ -396,6 +397,7 @@ REGISTER_METATYPE( AdjustPatientConnectionConfirmResponseData ) \ REGISTER_METATYPE( AdjustStartTreatmentResponseData ) \ /* Disinfect */ \ + REGISTER_METATYPE( AdjustDisinfectModeResponseData ) \ REGISTER_METATYPE( AdjustDisinfectStartResponseData ) \ \ REGISTER_METATYPE( AdjustBloodDialysateResponseData ) \ @@ -518,6 +520,7 @@ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustPatientConnectionConfirmResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustStartTreatmentResponseData ) \ /* Disinfect */ \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustDisinfectModeResponseData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustDisinfectStartResponseData ) \ \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, AdjustBloodDialysateResponseData ) \ @@ -693,6 +696,7 @@ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustPatientConnectionConfirmResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustStartTreatmentResponseData ) \ /* Disinfect */ \ + ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustDisinfectModeResponseData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustDisinfectStartResponseData ) \ \ ACTION_RECEIVE_BRIDGE_DEFINITION( AdjustBloodDialysateResponseData ) \ @@ -953,6 +957,7 @@ ACTION_RECEIVE_SIGNAL( AdjustPatientConnectionConfirmResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustStartTreatmentResponseData ) \ /* Disinfect */ \ + ACTION_RECEIVE_SIGNAL( AdjustDisinfectModeResponseData ) \ ACTION_RECEIVE_SIGNAL( AdjustDisinfectStartResponseData ) \ \ ACTION_RECEIVE_SIGNAL( AdjustBloodDialysateResponseData ) \ Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h =================================================================== diff -u -rba928149acf9501b0ab751eab84f4b7e8ac05353 -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h (.../MDisinfectAdjustModeRequests.h) (revision ba928149acf9501b0ab751eab84f4b7e8ac05353) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeRequests.h (.../MDisinfectAdjustModeRequests.h) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -44,6 +44,7 @@ * * | Payload || * | || + * | #1:(U32) | \ref mInitiate | * */ class MAdjustDisinfectModeReq : public MModel { Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.cpp =================================================================== diff -u --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.cpp (revision 0) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.cpp (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -0,0 +1,45 @@ +/*! + * + * Copyright (c) 2021-2022 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 MDisinfectAdjustModeResponse.cpp + * \author (last) Behrouz NematiPour + * \author (original) Behrouz NematiPour + * \date (last) 16-Aug-2021 + * \date (original) 16-Aug-2021 + * + */ +#include "MDisinfectAdjustModeResponse.h" + +using namespace Model; + +QVariantList MAdjustDisinfectModeResponse::parameters() const { + return { + _data.mAccepted.value, + _data.mReason .value, + }; +} + +bool MAdjustDisinfectModeResponse::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if (GetValue(vByteArray, index, _data.mAccepted )) + if (GetValue(vByteArray, index, _data.mReason )) + return true ; + else { if(vIndex) *vIndex = index; return false; } + else { if(vIndex) *vIndex = index; return false; } +} + +/*! + * \brief MAdjustDisinfectModeResponse::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +AdjustDisinfectModeResponseData MAdjustDisinfectModeResponse::data() const { + Data data; + data.mAccepted = _data.mAccepted.value; + data.mReason = _data.mReason .value; + return data; +} Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.h =================================================================== diff -u --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.h (revision 0) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustModeResponse.h (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -0,0 +1,83 @@ +/*! + * + * Copyright (c) 2021-2022 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 MDisinfectAdjustResponse.h + * \author (last) Behrouz NematiPour + * \date (last) 25-Jun-2021 + * \author (original) Behrouz NematiPour + * \date (original) 18-Apr-2021 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "MAbstract.h" +#include "types.h" + +// forward declarations +class tst_models; + +namespace Model { + +/*! + * \brief The MAdjustDisinfectModeResponse class + * \details The Disinfect adjustment response model + * + * | MSG | CAN ID | Type | Ack | Src | Dest | Description | + * |:----:|:------:|:----:|:---:|:---:|:----:|:---------: | + * |0x9B00| 0x020 | Rsp | Y | HD | UI | Disinfect Mode Response | + * + * | Payload || + * | || + * | #1:(U32) | \ref Data::mAccepted | + * | #2:(U32) | \ref Data::mReason | + * + * \sa Data + * \sa MAdjustDisinfectModeReq : Disinfect Request + * + *

Logging info

+ * | || + * | || + * | typeText | Event | + * | unitText | HD | + * | infoText | AdjustDisinfect | + * + */ +class MAdjustDisinfectModeResponse : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::U32 mAccepted; + Types::U32 mReason ; + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eEvent ; } + Unit_Enum unitText () const override { return Unit_Enum::eHD ; } + QString infoText () const override { return QString("DisinfectMode" ) ; } + + struct Data { + bool mAccepted = 0; /*!< Accepted value of type quint32 extracted out */ + quint32 mReason = 0; /*!< Reason value of type quint32 extracted out */ + }; + + MAdjustDisinfectModeResponse () { } + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MAdjustDisinfectModeResponse::Data AdjustDisinfectModeResponseData; Fisheye: Tag 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f refers to a dead (removed) revision in file `sources/model/hd/adjustment/disinfect/MDisinfectAdjustResponse.cpp'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f refers to a dead (removed) revision in file `sources/model/hd/adjustment/disinfect/MDisinfectAdjustResponse.h'. Fisheye: No comparison available. Pass `N' to diff? Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.cpp =================================================================== diff -u --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.cpp (revision 0) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.cpp (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -0,0 +1,45 @@ +/*! + * + * Copyright (c) 2021-2022 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 MDisinfectAdjustResponse.cpp + * \author (last) Behrouz NematiPour + * \date (last) 18-Apr-2021 + * \author (original) Behrouz NematiPour + * \date (original) 18-Apr-2021 + * + */ +#include "MDisinfectAdjustStartResponse.h" + +using namespace Model; + +QVariantList MAdjustDisinfectStartResponse::parameters() const { + return { + _data.mAccepted.value, + _data.mReason .value, + }; +} + +bool MAdjustDisinfectStartResponse::fromByteArray(const QByteArray &vByteArray, int *vIndex) { + int index = 0; // message data start position + if (GetValue(vByteArray, index, _data.mAccepted )) + if (GetValue(vByteArray, index, _data.mReason )) + return true ; + else { if(vIndex) *vIndex = index; return false; } + else { if(vIndex) *vIndex = index; return false; } +} + +/*! + * \brief MAdjustDisinfectStartResponse::data + * \details Provides model's Data from the received messages data values + * \return Data + */ +AdjustDisinfectStartResponseData MAdjustDisinfectStartResponse::data() const { + Data data; + data.mAccepted = _data.mAccepted.value; + data.mReason = _data.mReason .value; + return data; +} Index: sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.h =================================================================== diff -u --- sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.h (revision 0) +++ sources/model/hd/adjustment/disinfect/MDisinfectAdjustStartResponse.h (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -0,0 +1,83 @@ +/*! + * + * Copyright (c) 2021-2022 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 MDisinfectAdjustResponse.h + * \author (last) Behrouz NematiPour + * \date (last) 25-Jun-2021 + * \author (original) Behrouz NematiPour + * \date (original) 18-Apr-2021 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "MAbstract.h" +#include "types.h" + +// forward declarations +class tst_models; + +namespace Model { + +/*! + * \brief The MAdjustDisinfectStartResponse class + * \details The Disinfect adjustment response model + * + * | MSG | CAN ID | Type | Ack | Src | Dest | Description | + * |:----:|:------:|:----:|:---:|:---:|:----:|:---------: | + * |0x8000| 0x020 | Rsp | Y | HD | UI | Flush, Heat/Chemical Disinfect Response | + * + * | Payload || + * | || + * | #1:(U32) | \ref Data::mAccepted | + * | #2:(U32) | \ref Data::mReason | + * + * \sa Data + * \sa MAdjustDisinfectStartReq : Disinfect Request + * + *

Logging info

+ * | || + * | || + * | typeText | Event | + * | unitText | HD | + * | infoText | AdjustDisinfect | + * + */ +class MAdjustDisinfectStartResponse : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + Types::U32 mAccepted; + Types::U32 mReason ; + } _data; + +public: + + Type_Enum typeText () const override { return Type_Enum::eEvent ; } + Unit_Enum unitText () const override { return Unit_Enum::eHD ; } + QString infoText () const override { return QString("DisinfectStart" ) ; } + + struct Data { + bool mAccepted = 0; /*!< Accepted value of type quint32 extracted out */ + quint32 mReason = 0; /*!< Reason value of type quint32 extracted out */ + }; + + MAdjustDisinfectStartResponse () { } + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MAdjustDisinfectStartResponse::Data AdjustDisinfectStartResponseData; Index: sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.cpp =================================================================== diff -u -r63bd08ce9c25b414882289dce5cada8dfcd7eb0e -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f --- sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.cpp (.../VDisinfectAdjustDisinfect.cpp) (revision 63bd08ce9c25b414882289dce5cada8dfcd7eb0e) +++ sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.cpp (.../VDisinfectAdjustDisinfect.cpp) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -25,6 +25,7 @@ */ void View::VDisinfectAdjustDisinfect::initConnections() { ADJUST_VIEW_CONNECTION(AdjustDisinfectModeRequestData); + ACTION_VIEW_CONNECTION(AdjustDisinfectModeResponseData); ADJUST_VIEW_CONNECTION(AdjustDisinfectStartRequestData); ACTION_VIEW_CONNECTION(AdjustDisinfectStartResponseData); @@ -35,22 +36,37 @@ * \details received response model data handler * \param vData - model data */ +void View::VDisinfectAdjustDisinfect::onActionReceive(const AdjustDisinfectModeResponseData &vData) +{ + adjustment_Accepted ( vData.mAccepted ); + adjustment_Reason ( vData.mReason ); + + hasCancel ( vData.mAccepted ); + + // *** has to be the last to let the information to be set and then emit the signal *** + // *** otherwise will use the Previous values before being set. *** + adjustment_DisinfectMode(true); + +} + +/*! + * \brief VDisinfectAdjustDisinfect::onActionReceive + * \details received response model data handler + * \param vData - model data + */ void View::VDisinfectAdjustDisinfect::onActionReceive(const AdjustDisinfectStartResponseData &vData) { adjustment_Accepted ( vData.mAccepted ); adjustment_Reason ( vData.mReason ); // *** has to be the last to let the information to be set and then emit the signal *** // *** otherwise will use the Previous values before being set. *** - qDebug() << _data.mState; switch ( _data.mState ) { case GuiDisinfectDGStates::DG_DISINFECT_FLUSH_STATE : adjustment_DisinfectStartFlush (true); break; case GuiDisinfectDGStates::DG_DISINFECT_HEAT_STATE : adjustment_DisinfectStartHeat (true); break; case GuiDisinfectDGStates::DG_DISINFECT_CHEM_STATE : adjustment_DisinfectStartChemical (true); break; default: break; } - - hasCancel(vData.mAccepted); } /*! @@ -71,6 +87,7 @@ */ void View::VDisinfectAdjustDisinfect::doDisinfectCancel() { + hasCancel(false); AdjustDisinfectModeRequestData vData; vData.mInititate = false; emit didAdjustment(vData); Index: sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.h =================================================================== diff -u -r63bd08ce9c25b414882289dce5cada8dfcd7eb0e -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f --- sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.h (.../VDisinfectAdjustDisinfect.h) (revision 63bd08ce9c25b414882289dce5cada8dfcd7eb0e) +++ sources/view/hd/adjustment/disinfect/VDisinfectAdjustDisinfect.h (.../VDisinfectAdjustDisinfect.h) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) @@ -21,7 +21,8 @@ #include "VAdjustmentResponseBase.h" #include "MDisinfectAdjustModeRequests.h" #include "MDisinfectAdjustStartRequests.h" -#include "MDisinfectAdjustResponse.h" +#include "MDisinfectAdjustModeResponse.h" +#include "MDisinfectAdjustStartResponse.h" namespace View { @@ -48,7 +49,9 @@ PROPERTY( bool , hasCancel , 0) - VIEW_DEC_CLASS_ADJUSTMENT(VDisinfectAdjustDisinfect, AdjustDisinfectStartResponseData) + VIEW_DEC_CLASS(VDisinfectAdjustDisinfect) + VIEW_DEC_SLOT(AdjustDisinfectModeResponseData) + VIEW_DEC_SLOT(AdjustDisinfectStartResponseData) public slots: void doDisinfectInitiate ();