Index: denali.pro =================================================================== diff -u -r2d0bacfbe1b70055247eb40743405a5f9acb15e3 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- denali.pro (.../denali.pro) (revision 2d0bacfbe1b70055247eb40743405a5f9acb15e3) +++ denali.pro (.../denali.pro) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -131,6 +131,7 @@ sources/model/dg/data/post/MDGPostSingleResultData.h \ sources/model/hd/data/post/MHDPostFinalResultData.h \ sources/model/hd/data/post/MHDPostSingleResultData.h \ + sources/model/hd/data/post/MUIPostFinalResultHDRequest.h \ \ # ---------- Models - settings sources/model/settings/MSettings.h \ sources/model/settings/MWifiNetwork.h \ @@ -397,6 +398,7 @@ sources/model/dg/data/post/MDGPostSingleResultData.cpp \ sources/model/hd/data/post/MHDPostFinalResultData.cpp \ sources/model/hd/data/post/MHDPostSingleResultData.cpp \ + sources/model/hd/data/post/MUIPostFinalResultHDRequest.cpp \ \ # ---------- Models - settings sources/model/settings/MSettings.cpp \ sources/model/settings/MBluetooth.cpp \ Index: denali.pro.user =================================================================== diff -u -r6f2622be80fcaee8d71baf78404627381157970c -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- denali.pro.user (.../denali.pro.user) (revision 6f2622be80fcaee8d71baf78404627381157970c) +++ denali.pro.user (.../denali.pro.user) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -1,6 +1,6 @@ - + EnvironmentId @@ -97,7 +97,7 @@ Desktop Qt 5.12.5 GCC 64bit Desktop Qt 5.12.5 GCC 64bit qt.qt5.5125.gcc_64_kit - 0 + 1 0 0 @@ -117,7 +117,7 @@ qmake QtProjectManager.QMakeBuildStep - true + false false false @@ -874,6 +874,15 @@ true + staging + /home/denali/Projects/application/alarmMapping.sh + %{sourceDir} + Custom Process Step + + ProjectExplorer.ProcessStep + + + true qmake QtProjectManager.QMakeBuildStep @@ -883,7 +892,7 @@ false false - + true Make @@ -894,7 +903,7 @@ false - + true %{buildDir}/denali @@ -903,7 +912,7 @@ ProjectExplorer.ProcessStep - + true -m denali.csmes -t UnitTests denali.csexe cmcsexeimport @@ -912,7 +921,7 @@ ProjectExplorer.ProcessStep - + true --csmes=denali.csmes --html=Coverage/index cmreport @@ -921,7 +930,7 @@ ProjectExplorer.ProcessStep - + true --csmes=denali.csmes --csv-excel=Coverage/coverage.csv cmreport @@ -930,7 +939,7 @@ ProjectExplorer.ProcessStep - 6 + 7 Build Build ProjectExplorer.BuildSteps.Build @@ -1221,7 +1230,7 @@ denali Qt4ProjectManager.Qt4RunConfiguration:/home/denali/Projects/application/denali.pro - --disable-timeout --disable-alarm-no-minimize --disable-unhandled-report --disable-check-in-log --disable-dialin-unhandled --disable-acknow-log + --disable-timeout --disable-alarm-no-minimize --disable-unhandled-report --disable-check-in-log --disable-acknow-log 3768 false true @@ -1230,7 +1239,7 @@ true false - /home/denali/Projects/tmp/build/denali-Desktop_Qt_5_12_5_GCC_64bit-Debug + /home/denali/Projects/tmp/build/denali-Desktop_Qt_5_12_5_GCC_64bit-Release 1 @@ -1241,7 +1250,7 @@ Qt 5.12.5 (iMX8) Qt 5.12.5 (iMX8) {5d6458ef-f917-4aef-a092-c77bbe106149} - 1 + 0 0 0 @@ -1324,15 +1333,6 @@ true - staging - /home/denali/Projects/application/alarmMapping.sh - %{sourceDir} - Custom Process Step - - ProjectExplorer.ProcessStep - - - true qmake QtProjectManager.QMakeBuildStep @@ -1342,7 +1342,7 @@ false false - + true Make @@ -1353,7 +1353,7 @@ false - + true -b --tag denali >> denali sha256sum @@ -1362,7 +1362,7 @@ ProjectExplorer.ProcessStep - 4 + 3 Build Build ProjectExplorer.BuildSteps.Build Index: sources/ApplicationController.h =================================================================== diff -u -r79a6cfcb10472261f3ec26eaf0baf6f1245cd311 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/ApplicationController.h (.../ApplicationController.h) (revision 79a6cfcb10472261f3ec26eaf0baf6f1245cd311) +++ sources/ApplicationController.h (.../ApplicationController.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -140,6 +140,11 @@ ADJUST_TRANSMT_MODEL_BRIDGE_DEFINITIONS ACTION_RECEIVE_MODEL_BRIDGE_DEFINITIONS + ACTION_RECEIVE_PRIVATE_SLOT_NOEMIT(UIPostFinalResultHDRequestData) { + onPOSTDone(_post.isDone()); + emit didActionReceive(vData); + } + // TODO: do the same for Settings. SAFE_CALL(startPOST) }; Index: sources/canbus/MessageDispatcher.h =================================================================== diff -u -r2d0bacfbe1b70055247eb40743405a5f9acb15e3 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/canbus/MessageDispatcher.h (.../MessageDispatcher.h) (revision 2d0bacfbe1b70055247eb40743405a5f9acb15e3) +++ sources/canbus/MessageDispatcher.h (.../MessageDispatcher.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -255,5 +255,8 @@ // ---- Signal/Slots ADJUST_TRANSMT_MODEL_BRIDGE_DEFINITIONS_NOEMIT ACTION_RECEIVE_MODEL_BRIDGE_DEFINITIONS + + ACTION_RECEIVE_PRIVATE_SLOT(UIPostFinalResultHDRequestData) + }; } Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -r2d0bacfbe1b70055247eb40743405a5f9acb15e3 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 2d0bacfbe1b70055247eb40743405a5f9acb15e3) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -59,6 +59,7 @@ {Gui::GuiActionType::ID_DGPostSingleResultData , 2 * 4 }, // 2 parameters each 4bytes {Gui::GuiActionType::ID_DGPostFinalResultData , 1 * 4 }, // 1 parameters each 4bytes {Gui::GuiActionType::ID_UIPostFinalResultData , 1 * 4 }, // 1 parameters each 4bytes + {Gui::GuiActionType::ID_UIPostFinalResultHDReq , 0 * 4 }, // 0 parameters // Service Mode {Gui::GuiActionType::ID_AdjustServiceModeReq , 0 * 4 }, // 0 parameters each 4bytes Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -r6f2622be80fcaee8d71baf78404627381157970c -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 6f2622be80fcaee8d71baf78404627381157970c) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -437,6 +437,7 @@ // ----- POST case Gui::GuiActionType::ID_HDPostSingleResultData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDPostSingleResultData ); break; case Gui::GuiActionType::ID_HDPostFinalResultData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDPostFinalResultData ); break; + case Gui::GuiActionType::ID_UIPostFinalResultHDReq : ok = notify(vMessage, vData, Gui::GuiActionType::ID_UIPostFinalResultHDReq ); break; // ----- Settings case Gui::GuiActionType::ID_AdjustServiceModeRsp : ok = notify(vMessage, vData, Gui::GuiActionType::ID_AdjustServiceModeRsp ); break; Index: sources/gui/GuiController.h =================================================================== diff -u -r79a6cfcb10472261f3ec26eaf0baf6f1245cd311 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/gui/GuiController.h (.../GuiController.h) (revision 79a6cfcb10472261f3ec26eaf0baf6f1245cd311) +++ sources/gui/GuiController.h (.../GuiController.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -105,5 +105,8 @@ // ---- Signal/Slots ADJUST_TRANSMT_MODEL_BRIDGE_DEFINITIONS_PUBLIC ACTION_RECEIVE_MODEL_BRIDGE_DEFINITIONS + + ACTION_RECEIVE_PRIVATE_SLOT(UIPostFinalResultHDRequestData) + }; } Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r2d0bacfbe1b70055247eb40743405a5f9acb15e3 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 2d0bacfbe1b70055247eb40743405a5f9acb15e3) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -83,7 +83,8 @@ ID_HDPostFinalResultData = 0x8F00, // 143 ID_DGPostSingleResultData = 0x9000, // 144 ID_DGPostFinalResultData = 0x9100, // 145 - ID_UIPostFinalResultData = 0x9200, // 146 + ID_UIPostFinalResultData = 0x9200, // 146 // ID_UIFinalResultTxr - UI Final Result response/Data transmit + ID_UIPostFinalResultHDReq = 0xB200, // 178 // ID_HDFinalResultRxq - HD Final Result request received // ----- Settings // Service Mode Index: sources/main.h =================================================================== diff -u -r627b97843f87f5ca8fbd731c6c4a6d9fae4352ce -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/main.h (.../main.h) (revision 627b97843f87f5ca8fbd731c6c4a6d9fae4352ce) +++ sources/main.h (.../main.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -337,6 +337,15 @@ void onActionReceive (const vTYPE &vData) { \ emit didActionReceive(vData); \ } +#define ACTION_RECEIVE_PRIVATE_SLOT_NOEMIT(vTYPE) \ +private Q_SLOTS: \ + /*! \brief The Received message slot that needs implementation + \details The bridge slot is for thread safety between classes for received message + and is used to emit its signal to pass the model data to next observer. + \param vData - The model data which has been received. + \note This method is private and the interface is signals only. (starts with 'on') + */\ + void onActionReceive (const vTYPE &vData) //--------------------------------------------------------------------------------// #define ADJUST_TRANSMT_PRIVATE_SLOT_DEFINITION(vTYPE) \ private Q_SLOTS: \ Index: sources/model/MModel.h =================================================================== diff -u -r2d0bacfbe1b70055247eb40743405a5f9acb15e3 -rae149c87409efbe66b84924aa1cbb3131be9d5b7 --- sources/model/MModel.h (.../MModel.h) (revision 2d0bacfbe1b70055247eb40743405a5f9acb15e3) +++ sources/model/MModel.h (.../MModel.h) (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -35,6 +35,7 @@ #include "MHDPostFinalResultData.h" #include "MDGPostSingleResultData.h" #include "MDGPostFinalResultData.h" +#include "MUIPostFinalResultHDRequest.h" // States Messages #include "MHDOperationModeData.h" @@ -267,6 +268,7 @@ REGISTER_METATYPE( DGPostSingleResultData ) \ REGISTER_METATYPE( DGPostFinalResultData ) \ REGISTER_METATYPE( AdjustUIPostFinalResultRequestData ) \ + REGISTER_METATYPE( UIPostFinalResultHDRequestData ) \ /* Devices */ \ REGISTER_METATYPE( DeviceBrightnessRequestData ) \ REGISTER_METATYPE( DeviceBrightnessResponseData ) \ @@ -455,6 +457,7 @@ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, HDPostFinalResultData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGPostSingleResultData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DGPostFinalResultData ) \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, UIPostFinalResultHDRequestData ) \ /* */ \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, SettingsData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, HDOperationModeData ) \ @@ -634,6 +637,8 @@ ACTION_RECEIVE_BRIDGE_DEFINITION( HDPostFinalResultData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGPostSingleResultData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( DGPostFinalResultData ) \ + /* The slot implementation is different in Dispatcher, App, Gui, so only signal is here. */ \ + ACTION_RECEIVE_SIGNAL ( UIPostFinalResultHDRequestData ) \ \ ACTION_RECEIVE_BRIDGE_DEFINITION( SettingsData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( HDOperationModeData ) \ @@ -890,15 +895,16 @@ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AlarmActiveListRequestData ) \ /* disabled coco begin validated: Manually tested. This model class is a placeholder and there is no use case for this now. ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AlarmClearedConditionRequestData ) \ - disabled coco end */ \ + disabled coco end */ \ -//===============================================================================// +//== MessageInterpreter Signal Definition =======================================// #define ACTION_RECEIVE_SIGNALS \ /* POST */ \ ACTION_RECEIVE_SIGNAL( HDPostSingleResultData ) \ ACTION_RECEIVE_SIGNAL( HDPostFinalResultData ) \ ACTION_RECEIVE_SIGNAL( DGPostSingleResultData ) \ ACTION_RECEIVE_SIGNAL( DGPostFinalResultData ) \ + ACTION_RECEIVE_SIGNAL( UIPostFinalResultHDRequestData ) \ /* Received signals */ \ /* NO RESPONSE message model here */ \ ACTION_RECEIVE_SIGNAL( SettingsData ) \ Index: sources/model/hd/data/post/MUIPostFinalResultHDRequest.cpp =================================================================== diff -u --- sources/model/hd/data/post/MUIPostFinalResultHDRequest.cpp (revision 0) +++ sources/model/hd/data/post/MUIPostFinalResultHDRequest.cpp (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -0,0 +1,38 @@ +/*! + * + * 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 MUIPostFinalResultHDRequest.cpp + * \author (last) Behrouz NematiPour + * \date (last) 22-Jul-2021 + * \author (original) Behrouz NematiPour + * \date (original) 22-Jul-2021 + * + */ + +#include "MUIPostFinalResultHDRequest.h" + +using namespace Model; + +QVariantList MUIPostFinalResultHDRequest::parameters() const { + return {}; +} + +bool MUIPostFinalResultHDRequest::fromByteArray(const QByteArray &, int *) { + // int index = 0; // message data start position + return true; +} + +/*! + * \brief MUIPostFinalResultHDRequest::data + * \details Provides the model's data from the received messages data values + * \return Data + */ +MUIPostFinalResultHDRequest::Data MUIPostFinalResultHDRequest::data() const { + Data data; + return data; +} + Index: sources/model/hd/data/post/MUIPostFinalResultHDRequest.h =================================================================== diff -u --- sources/model/hd/data/post/MUIPostFinalResultHDRequest.h (revision 0) +++ sources/model/hd/data/post/MUIPostFinalResultHDRequest.h (revision ae149c87409efbe66b84924aa1cbb3131be9d5b7) @@ -0,0 +1,78 @@ +/*! + * + * 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 MUIPostFinalResultHDRequest.h + * \author (last) Behrouz NematiPour + * \date (last) 10-Mar-2022 + * \author (original) Behrouz NematiPour + * \date (original) 22-Jul-2021 + * + */ +#pragma once + +// Qt +#include + +// Project +#include "MAbstract.h" +#include "types.h" + +// forward declarations +class tst_models; + +namespace Model { + +/*! + * \brief The MUIPostFinalResultHDRequest class + * \details Model for the final HD post result + * + * | MSG | CAN ID | Type | Ack | Src | Dst | Description | + * |:----:|:------:|:------:|:---:|:---:|:---:|:----------------:| + * |0xB200| 0x020 | Event | Y | HD | UI | Model for the HD request for UI final POST test result | + * + * | Payload || + * | || + + * + * \sa Data + * + *

Logging info

+ * | || + * | || + * | typeText | Event | + * | unitText | HD | + * | infoText | UIPOSTDoneReq | + * + */ + +class MUIPostFinalResultHDRequest : public MAbstract { + + // friends + friend class ::tst_models; + + QVariantList parameters() const override; + + struct { + } _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("UIPOSTDoneReq" ) ;} + + struct Data { + }; + + MUIPostFinalResultHDRequest() {} + + bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; + Data data ( ) const ; +}; +} + +typedef Model::MUIPostFinalResultHDRequest::Data UIPostFinalResultHDRequestData;