Index: denali.pro =================================================================== diff -u -re02b2d465b145702dc41965b2e7da154857eea75 -r7c895d9b6c198a48ab75ac2090b0a61d99bbd1ab --- denali.pro (.../denali.pro) (revision e02b2d465b145702dc41965b2e7da154857eea75) +++ denali.pro (.../denali.pro) (revision 7c895d9b6c198a48ab75ac2090b0a61d99bbd1ab) @@ -1,6 +1,6 @@ -QT += widgets qml quick serialbus +QT += widgets qml quick serialbus concurrent CONFIG += c++17 warn_on -QMAKE_CXXFLAGS += -Wall -Werror +QMAKE_CXXFLAGS += -Wall -Werror -Wimplicit-fallthrough # -save-temps # see .ii and .s files #CONFIG += disable_crc disable_crc { @@ -26,72 +26,263 @@ #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 INCLUDEPATH += \ + common \ sources \ sources/storage \ sources/gui \ sources/canbus \ sources/utility \ - sources/abstract + sources/abstract \ + sources/model \ + sources/model/hd/adjustment \ + sources/model/hd/alarm \ + sources/model/hd/data \ + sources/model/dg/data \ + sources/view \ + sources/view/hd/adjustment \ + sources/view/hd/alarm \ + sources/view/hd/data \ + sources/view/dg/data HEADERS += \ - sources/applicationcontroller.h \ - sources/applicationpost.h \ - sources/canbus/caninterface.h \ - sources/canbus/frameinterface.h \ - sources/canbus/messagebuilder.h \ - sources/canbus/messagedispatcher.h \ - sources/canbus/messageglobals.h \ - sources/canbus/messageinterpreter.h \ - sources/configuration/display.h \ - sources/configuration/sound.h \ - sources/gui/guiglobals.h \ - sources/gui/guiview.h \ - sources/gui/guicontroller.h \ + \ # common + common/AlarmDefs.h \ + common/DGDefs.h \ + common/HDDefs.h \ + common/MsgDefs.h \ + \ # Main sources/main.h \ - sources/maintimer.h \ - sources/storage/filehandler.h \ - sources/storage/logger.h \ - sources/storage/settings.h \ - sources/storage/storageglobals.h \ - sources/storage/usbwatcher.h \ - sources/threads.h \ + sources/Threads.h \ + sources/MainTimer.h \ + sources/ApplicationPost.h \ + \ # Controllers + sources/ApplicationController.h \ + \ # ---------- Models ---------- + sources/model/MModel.h \ + sources/model/MAbstract.h \ + sources/model/MPowerOff.h \ + sources/model/MEndTreatmentResponse.h \ + sources/model/MStartTreatmentResponse.h \ + sources/model/MTreatmentParametersResp.h \ + sources/model/MDGDebugText.h \ + sources/model/MHDDebugText.h \ + \ # ---------- Models - Alarm + sources/model/hd/alarm/MAlarmCleared.h \ + sources/model/hd/alarm/MAlarmTriggered.h \ + sources/model/hd/alarm/MAlarmStatusData.h \ + \ # ---------- Models - HD - Adjustment - In-Treatment + sources/model/hd/adjustment/MTreatmentAdjustRequests.h \ + sources/model/hd/adjustment/MTreatmentAdjustDurationResponse.h \ + sources/model/hd/adjustment/MTreatmentAdjustBloodDialysateResponse.h \ + sources/model/hd/adjustment/MTreatmentAdjustUltrafiltrationStateResponse.h \ + sources/model/hd/adjustment/MTreatmentAdjustUltrafiltrationEditResponse.h \ + sources/model/hd/adjustment/MTreatmentAdjustUltrafiltrationConfirmResponse.h \ + sources/model/hd/adjustment/MTreatmentAdjustSalineResponse.h \ + \ # ---------- Models - HD - Data + sources/model/hd/data/MTreatmentTimeData.h \ + sources/model/hd/data/MTreatmentFlowsData.h \ + sources/model/hd/data/MTreatmentOutletFlowData.h \ + sources/model/hd/data/MTreatmentRangesData.h \ + sources/model/hd/data/MTreatmentPressureOcclusionData.h \ + sources/model/hd/data/MTreatmentStatesData.h \ + sources/model/hd/data/MHDOperationModeData.h \ + sources/model/hd/data/MTreatmentSalineData.h \ + sources/model/hd/data/MPrimingData.h \ + \ # ---------- Models - DG - Data + 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 \ + \ # CANBus + sources/canbus/CanInterface.h \ + sources/canbus/FrameInterface.h \ + \ # Denali Message + sources/canbus/MessageGlobals.h \ + sources/canbus/MessageAcknowModel.h \ + sources/canbus/MessageBuilder.h \ + sources/canbus/MessageInterpreter.h \ + sources/canbus/MessageDispatcher.h \ + \ # Gui + sources/gui/GuiGlobals.h \ + sources/gui/GuiView.h \ + sources/gui/GuiController.h \ + \ # ---------- Views ---------- + sources/view/VTreatmentCreate.h \ + sources/view/VTreatmentEnd.h \ + sources/view/VTreatmentBegin.h \ + sources/view/VEventSpy.h \ + sources/view/VView.h \ + sources/view/VPowerOff.h \ + sources/view/VPriming.h \ + \ # ---------- Views - Alarm + sources/view/hd/alarm/VAlarmStatus.h \ + \ # ---------- Views - HD - Adjustment - In-Treatment + sources/view/hd/adjustment/VTreatmentAdjustmentResponseBase.h \ + sources/view/hd/adjustment/VTreatmentAdjustmentDuration.h \ + sources/view/hd/adjustment/VTreatmentAdjustmentFlows.h \ + sources/view/hd/adjustment/VTreatmentAdjustmentUltrafiltrationState.h \ + sources/view/hd/adjustment/VTreatmentAdjustmentUltrafiltrationEdit.h \ + sources/view/hd/adjustment/VTreatmentAdjustmentUltrafiltrationConfirm.h \ + sources/view/hd/adjustment/VTreatmentAdjustmentSaline.h \ + \ # ---------- Views - HD - Data + sources/view/hd/data/VTreatmentTime.h \ + sources/view/hd/data/VTreatmentBloodFlow.h \ + sources/view/hd/data/VTreatmentDialysateFlow.h \ + sources/view/hd/data/VTreatmentUltrafiltration.h \ + sources/view/hd/data/VTreatmentRanges.h \ + sources/view/hd/data/VTreatmentPressureOcclusion.h \ + sources/view/hd/data/VHDOperationModeData.h \ + sources/view/hd/data/VTreatmentSalineData.h \ + sources/view/hd/data/VHDTreatmentStatesData.h \ + \ # ---------- Views - DG - Data + sources/view/dg/data/VDGDrainPumpData.h \ + sources/view/dg/data/VDGHeatersData.h \ + sources/view/dg/data/VDGLoadCellReadingsData.h \ + sources/view/dg/data/VDGOperationModeData.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 \ + \ # Storage + sources/storage/StorageGlobals.h \ + sources/storage/Logger.h \ + sources/storage/FileHandler.h \ + sources/storage/FileSaver.h \ + sources/storage/DriveWatcher.h \ + \ # Utility sources/utility/crc.h \ sources/utility/format.h \ sources/utility/types.h +# sources/configuration/display.h \ +# sources/configuration/sound.h \ +# sources/storage/settings.h \ SOURCES += \ + \ # common + \ # Main main.cpp \ - sources/applicationcontroller.cpp \ - sources/applicationpost.cpp \ - sources/canbus/caninterface.cpp \ - sources/canbus/frameinterface.cpp \ - sources/canbus/messagebuilder.cpp \ - sources/canbus/messagedispatcher.cpp \ - sources/canbus/messageinterpreter.cpp \ - sources/configuration/display.cpp \ - sources/configuration/sound.cpp \ - sources/gui/guiglobals.cpp \ - sources/gui/guiview.cpp \ - sources/gui/guicontroller.cpp \ - sources/maintimer.cpp \ - sources/storage/filehandler.cpp \ - sources/storage/logger.cpp \ - sources/storage/settings.cpp \ - sources/storage/storageglobals.cpp \ - sources/storage/usbwatcher.cpp \ - sources/threads.cpp \ + sources/Threads.cpp \ + sources/MainTimer.cpp \ + sources/ApplicationPost.cpp \ + \ # Controllers + sources/ApplicationController.cpp \ + \ # ---------- Models ---------- + sources/model/MAbstract.cpp \ + sources/model/MPowerOff.cpp \ + sources/model/MHDDebugText.cpp \ + sources/model/MEndTreatmentResponse.cpp \ + sources/model/MStartTreatmentResponse.cpp \ + sources/model/MTreatmentParametersResp.cpp \ + sources/model/MDGDebugText.cpp \ + \ # ---------- Models - Alarm + sources/model/hd/alarm/MAlarmCleared.cpp \ + sources/model/hd/alarm/MAlarmTriggered.cpp \ + sources/model/hd/alarm/MAlarmStatusData.cpp \ + \ # ---------- Models - HD - Adjustment - In-Treatment + sources/model/hd/adjustment/MTreatmentAdjustDurationResponse.cpp \ + sources/model/hd/adjustment/MTreatmentAdjustBloodDialysateResponse.cpp \ + sources/model/hd/adjustment/MTreatmentAdjustUltrafiltrationStateResponse.cpp \ + sources/model/hd/adjustment/MTreatmentAdjustUltrafiltrationEditResponse.cpp \ + sources/model/hd/adjustment/MTreatmentAdjustUltrafiltrationConfirmResponse.cpp \ + sources/model/hd/adjustment/MTreatmentAdjustSalineResponse.cpp \ + \ # ---------- Models - HD - Data + sources/model/hd/data/MTreatmentTimeData.cpp \ + sources/model/hd/data/MTreatmentFlowsData.cpp \ + sources/model/hd/data/MTreatmentOutletFlowData.cpp \ + sources/model/hd/data/MTreatmentRangesData.cpp \ + sources/model/hd/data/MTreatmentPressureOcclusionData.cpp \ + sources/model/hd/data/MTreatmentStatesData.cpp \ + sources/model/hd/data/MHDOperationModeData.cpp \ + sources/model/hd/data/MTreatmentSalineData.cpp \ + sources/model/hd/data/MPrimingData.cpp \ + \ # ---------- Models - DG - Data + 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 \ + \ # CANBus + sources/canbus/CanInterface.cpp \ + sources/canbus/FrameInterface.cpp \ + \ # Denali Message + sources/canbus/MessageAcknowModel.cpp \ + sources/canbus/MessageBuilder.cpp \ + sources/canbus/MessageDispatcher.cpp \ + sources/canbus/MessageInterpreter.cpp \ + \ # Gui + sources/gui/GuiGlobals.cpp \ + sources/gui/GuiView.cpp \ + sources/gui/GuiController.cpp \ + \ # ---------- Views ---------- + sources/view/VTreatmentCreate.cpp \ + sources/view/VTreatmentEnd.cpp \ + sources/view/VTreatmentBegin.cpp \ + sources/view/VEventSpy.cpp \ + sources/view/VPriming.cpp \ + sources/view/VPowerOff.cpp \ + \ # ---------- Views - Alarm + sources/view/hd/alarm/VAlarmStatus.cpp \ + \ # ---------- Views - HD - Adjustment - In-Treatment + sources/view/hd/adjustment/VTreatmentAdjustmentResponseBase.cpp \ + sources/view/hd/adjustment/VTreatmentAdjustmentDuration.cpp \ + sources/view/hd/adjustment/VTreatmentAdjustmentFlows.cpp \ + sources/view/hd/adjustment/VTreatmentAdjustmentUltrafiltrationConfirm.cpp \ + sources/view/hd/adjustment/VTreatmentAdjustmentUltrafiltrationEdit.cpp \ + sources/view/hd/adjustment/VTreatmentAdjustmentUltrafiltrationState.cpp \ + sources/view/hd/adjustment/VTreatmentAdjustmentSaline.cpp \ + \ # ---------- Views - HD - Data + sources/view/hd/data/VTreatmentTime.cpp \ + sources/view/hd/data/VTreatmentBloodFlow.cpp \ + sources/view/hd/data/VTreatmentDialysateFlow.cpp \ + sources/view/hd/data/VTreatmentUltrafiltration.cpp \ + sources/view/hd/data/VTreatmentRanges.cpp \ + sources/view/hd/data/VTreatmentPressureOcclusion.cpp \ + sources/view/hd/data/VHDOperationModeData.cpp \ + sources/view/hd/data/VTreatmentSalineData.cpp \ + sources/view/hd/data/VHDTreatmentStatesData.cpp \ + \ # ---------- 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 \ + \ # Storage + sources/storage/StorageGlobals.cpp \ + sources/storage/FileHandler.cpp \ + sources/storage/Logger.cpp \ + sources/storage/DriveWatcher.cpp \ + sources/storage/FileSaver.cpp \ + \ # Utility sources/utility/crc.cpp \ sources/utility/format.cpp \ sources/utility/types.cpp + RESOURCES += \ denali.qrc DEFINES += \ - VER_MAJOR="0" \ - VER_MINOR="4" \ - VER_REVIS="\\\"${buildNumber}\\\"" \ - VER_DEVEL="999" + VER_MAJOR="\\\"${majorVersion}\\\"" \ + VER_MINOR="\\\"${minorVersion}\\\"" \ + VER_MICRO="\\\"${microVersion}\\\"" \ + VER_REVIS="\\\"${buildNumber}\\\"" \ + VER_REVIS_DEV=\\\"$$system( date "+%m%d%H%M" )\\\" \ + VER_APPLY=\\\"$$system( touch -m main.cpp )\\\" \ + VER_BRANCH=\\\"$$system( git rev-parse --abbrev-ref HEAD )\\\" CodeCoverage { message(Building with Squish Coco) @@ -106,6 +297,7 @@ QMAKE_CFLAGS += $$COVERAGE_OPTIONS QMAKE_CXXFLAGS += $$COVERAGE_OPTIONS QMAKE_LFLAGS += $$COVERAGE_OPTIONS + DEFINES += SQUISH_COCO_BULD } tst_canbus { @@ -144,6 +336,72 @@ unittests/tst_utilities.cpp } +tst_acknow { + message(Building with QtTest test case acknow) + QT += testlib + DEFINES += UNIT_TEST \ + TEST_CLASS_INCLUDE=\\\"unittests/tst_acknow.h\\\" \ + TEST_CLASS_NAME=tst_acknow + HEADERS += \ + unittests/tst_acknow.h + SOURCES += \ + unittests/tst_acknow.cpp +} + +tst_models { + message(Building with QtTest test case models) + QT += testlib + DEFINES += UNIT_TEST \ + TEST_CLASS_INCLUDE=\\\"unittests/tst_models.h\\\" \ + TEST_CLASS_NAME=tst_models + HEADERS += \ + unittests/tst_models.h + SOURCES += \ + unittests/tst_models.cpp +} + +tst_views { + message(Building with QtTest test case views) + QT += testlib + DEFINES += UNIT_TEST \ + TEST_CLASS_INCLUDE=\\\"unittests/tst_views.h\\\" \ + TEST_CLASS_NAME=tst_views + HEADERS += \ + unittests/tst_views.h + SOURCES += \ + unittests/tst_views.cpp +} + +tst_initializations { + message(Building with QtTest test case initializations) + QT += testlib + DEFINES += UNIT_TEST \ + TEST_CLASS_INCLUDE=\\\"unittests/tst_initializations.h\\\" \ + TEST_CLASS_NAME=tst_initializations + HEADERS += unittests/tst_initializations.h + SOURCES += unittests/tst_initializations.cpp +} + +tst_threads { + message(Building with QtTest test case threads) + QT += testlib + DEFINES += UNIT_TEST \ + TEST_CLASS_INCLUDE=\\\"unittests/tst_threads.h\\\" \ + TEST_CLASS_NAME=tst_threads + HEADERS += unittests/tst_threads.h + SOURCES += unittests/tst_threads.cpp +} + +tst_messaging { + message(Building with QtTest test case messaging) + QT += testlib + DEFINES += UNIT_TEST \ + TEST_CLASS_INCLUDE=\\\"unittests/tst_messaging.h\\\" \ + TEST_CLASS_NAME=tst_messaging + HEADERS += unittests/tst_messaging.h + SOURCES += unittests/tst_messaging.cpp +} + # Additional import path used to resolve QML modules in Qt Creator's code model QML_IMPORT_PATH = @@ -152,5 +410,8 @@ # Default rules for deployment. qnx: target.path = /tmp/$${TARGET}/bin -else: unix:!android: target.path = /opt/$${TARGET}/bin +else: unix:!android: target.path = /home/root !isEmpty(target.path): INSTALLS += target + +DISTFILES += \ + README.md