Index: main.cpp =================================================================== diff -u -ra0abaaf1ca5aba5da46b0710ce0689f39b02dce9 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- main.cpp (.../main.cpp) (revision a0abaaf1ca5aba5da46b0710ce0689f39b02dce9) +++ main.cpp (.../main.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -267,6 +267,17 @@ //! - Initialize the Qml Viewer and starts GUI startGui(); + + qDebug() << "\n _Logger :" << _Logger .thread()->objectName() + << "\n _USBWatcher :" << _USBWatcher .thread()->objectName() + << "\n _CanInterface :" << _CanInterface .thread()->objectName() + << "\n _FrameInterface :" << _FrameInterface .thread()->objectName() + << "\n _MessageAcknowModel :" << _MessageAcknowModel .thread()->objectName() + << "\n _MessageDispatcher :" << _MessageDispatcher .thread()->objectName() + << "\n _ApplicationController :" << _ApplicationController .thread()->objectName() + << "\n _GuiController :" << _GuiController .thread()->objectName() + ; + int app_exec = app.exec(); // Due to Qt Error the CAN Device cannot be disable/enable from withing another thread Index: sources/applicationcontroller.cpp =================================================================== diff -u -r8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/applicationcontroller.cpp (.../applicationcontroller.cpp) (revision 8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6) +++ sources/applicationcontroller.cpp (.../applicationcontroller.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -44,8 +44,9 @@ _init = true; initConnections(); + // coco begin validated: The class ApplicationPost has not been implemented Yet. if (!_applicationPost->init()) return false; - + // coco end LOG_EVENT(QObject::tr("%1 Initialized").arg(metaObject()->className())); return true; @@ -75,7 +76,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -130,7 +131,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } @@ -147,7 +148,7 @@ if ( ! _thread ) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end @@ -191,8 +192,11 @@ */ void ApplicationController::onUSBDriveMount () { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didUSBDriveMount(); } +// coco end /*! * \brief ApplicationController::onUSBDriveRemove @@ -201,8 +205,11 @@ */ void ApplicationController::onUSBDriveUmount() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didUSBDriveUmount(); } +// coco end /*! * \brief ApplicationController::onUSBDriveRemove @@ -211,26 +218,35 @@ */ void ApplicationController::onUSBDriveRemove() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didUSBDriveRemove(); } +// coco end /*! * \brief ApplicationController::onExportLog * \details the slot which will be called by UI to so the log export. */ void ApplicationController::onExportLog() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually LOG_EXPORT; } +// coco end /*! * \brief ApplicationController::onExport * \details the slot which will be called by logger is done exporting. */ void ApplicationController::onExport() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didExport(); } +// coco end void ApplicationController::onAdjustBloodDialysateFlows(quint32 vBloodFlow, quint32 vDialysateFlow) { @@ -250,13 +266,18 @@ #ifndef DISABLE_KEEP_ALIVE QVariantList mData; int mFakeDataLen = gFakeData.length(); + // coco begin validated: This is a fake data generator for CANBus missing/swapped frames Testing + // will never be executed on the product + // has been tested manually if (mFakeDataLen) { if (gFakeSeqAtBegin) { createFakeSeqAtBeginLongMessage(mData, mFakeDataLen); } else { createFakeSequencedLongMessage (mData, mFakeDataLen); } - } else { + } + // coco end + else { mData += static_cast(GuiActionData::NoData); } onActionTransmit(GuiActionType::KeepAlive, mData); @@ -271,6 +292,9 @@ */ void ApplicationController::createFakeSequencedLongMessage(QVariantList &vData, const int vFakeDataLen) { + // coco begin validated: This is a fake data generator for CANBus missing/swapped frames Testing + // will never be executed on the product + // has been tested manually QByteArray data; if (vFakeDataLen == 1 && gFakeData == QByteArray::fromHex(gFakeData_default)) { static quint16 txCount = 0; @@ -313,6 +337,7 @@ vData += gFakeData; } } +// coco end /*! * \brief ApplicationController::createFakeSequencedAtBeginLongMessage @@ -322,6 +347,9 @@ */ void ApplicationController::createFakeSeqAtBeginLongMessage(QVariantList &vData, const int vFakeDataLen) { + // coco begin validated: This is a fake data generator for CANBus missing/swapped frames Testing + // will never be executed on the product + // has been tested manually QByteArray data; if (vFakeDataLen == 1 && gFakeData == QByteArray::fromHex(gFakeData_default)) { static quint32 txCount = 0; @@ -370,3 +398,4 @@ vData += gFakeData; } } +// coco end Index: sources/applicationpost.cpp =================================================================== diff -u -r8c69137f18382bdc55a5678e6ed44a7683fe4dea -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/applicationpost.cpp (.../applicationpost.cpp) (revision 8c69137f18382bdc55a5678e6ed44a7683fe4dea) +++ sources/applicationpost.cpp (.../applicationpost.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -31,5 +31,7 @@ bool ApplicationPost::start() { + // coco begin validated: Is a placeholder and has not beed implemented yet return true; } +// coco end Index: sources/canbus/caninterface.cpp =================================================================== diff -u -r057d3ef4e29c63235040c5cfe8c6421ef7787d6a -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/canbus/caninterface.cpp (.../caninterface.cpp) (revision 057d3ef4e29c63235040c5cfe8c6421ef7787d6a) +++ sources/canbus/caninterface.cpp (.../caninterface.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -82,7 +82,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // verified } // coco end @@ -131,7 +131,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } @@ -148,7 +148,7 @@ if (! _thread) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // verified } // coco end @@ -244,6 +244,7 @@ */ void CanInterface::consoleOut(const QCanBusFrame &vFrame, const QString &vFrameCount) { + // coco begin validated: This code is only for debugging purposes and had been tested manually. if ( ! _enableConsoleOut ) return; LOG_EVENT_ONCE(QObject::tr("console out CanInterface Enabled")); @@ -261,6 +262,7 @@ } fprintf(stderr, "%s %s %s %i %s\n", vFrameCount.toLatin1().constData(), time.toLatin1().constData(), flags.toLatin1().constData(), vFrame.frameId(), view.toLatin1().constData()); } +// coco end /*! * \brief CanInterface::rxCount @@ -366,8 +368,10 @@ while (_canDevice->framesAvailable()) { const QCanBusFrame frame = _canDevice->readFrame(); rxCount(); + // coco begin validated: This code is only for debugging purposes and had been tested manually. if ( _enableConsoleOut ) consoleOut(frame, QString("Rx:%1").arg(_rxFrameCount)); + // coco end emit didFrameReceive(frame); } } @@ -382,7 +386,9 @@ { bool ok = transmit(vFrame); txCount(); + // coco begin validated: This code is only for debugging purposes and had been tested manually. if ( _enableConsoleOut ) consoleOut(vFrame, QString("Tx:%1").arg(_txFrameCount)); + // coco end emit didFrameTransmit(ok); } Index: sources/canbus/frameinterface.cpp =================================================================== diff -u -r6c59703781373f33cfec27eacf1f7e4ba1374626 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/canbus/frameinterface.cpp (.../frameinterface.cpp) (revision 6c59703781373f33cfec27eacf1f7e4ba1374626) +++ sources/canbus/frameinterface.cpp (.../frameinterface.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -76,7 +76,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -112,7 +112,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } @@ -129,7 +129,7 @@ if ( ! _thread ) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end @@ -278,11 +278,16 @@ void FrameInterface::trnsmtHead() { if ( _txFrameList.isEmpty() ) { + // coco begin validated: This is a fake data generator for CANBus missing/swapped frames Testing + // will never be executed on the product and shall be removed after the CANBus issues has been resolved. + // has been tested manually if ( gSendEmptyKeepAwake ) { transmitFrame(eChlid_LOWEST,QByteArray()); // Keep the CANBus awake. return; } - } else { + } + // coco end + else { Frame frame = _txFrameList.first(); transmitFrame(frame.can_Id, frame.data); // Test : qDebug() << _timestamp << "Tsmt #" << _txFrameList.count(); Index: sources/canbus/messageacknowmodel.cpp =================================================================== diff -u -r805119c460b4a266d6401c8705f4427e7fbe270f -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/canbus/messageacknowmodel.cpp (.../messageacknowmodel.cpp) (revision 805119c460b4a266d6401c8705f4427e7fbe270f) +++ sources/canbus/messageacknowmodel.cpp (.../messageacknowmodel.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -72,7 +72,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -103,7 +103,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } @@ -120,7 +120,7 @@ if ( ! _thread ) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end Index: sources/canbus/messagedispatcher.cpp =================================================================== diff -u -r057d3ef4e29c63235040c5cfe8c6421ef7787d6a -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/canbus/messagedispatcher.cpp (.../messagedispatcher.cpp) (revision 057d3ef4e29c63235040c5cfe8c6421ef7787d6a) +++ sources/canbus/messagedispatcher.cpp (.../messagedispatcher.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -76,7 +76,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -121,7 +121,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } @@ -138,7 +138,7 @@ if ( ! _thread ) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end @@ -192,10 +192,12 @@ void MessageDispatcher::onFailedTransmit(Sequence vSequence) { + // coco begin validated: Is a placeholder and has not beed implemented yet Q_UNUSED(vSequence) // may requires showing an alarm screen // but we don't know yet. } +// coco end /*! * \brief MessageDispatcher::onActionTransmit Index: sources/canbus/messageinterpreter.cpp =================================================================== diff -u -r8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/canbus/messageinterpreter.cpp (.../messageinterpreter.cpp) (revision 8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6) +++ sources/canbus/messageinterpreter.cpp (.../messageinterpreter.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -142,7 +142,7 @@ case eChlid_HD_Sync: ok = interpretMessage_HD(vMessage, vData); break; - + // coco begin validated: Is a placeholder and There is no definition/implementation of DG communication with UI. case eChlid_DG_UI: //case eChlid_DG_Alarm: //case eChlid_DG_Sync: @@ -151,7 +151,7 @@ default: break; - + // coco end } return ok; } Index: sources/gui/guicontroller.cpp =================================================================== diff -u -r8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/gui/guicontroller.cpp (.../guicontroller.cpp) (revision 8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6) +++ sources/gui/guicontroller.cpp (.../guicontroller.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -56,7 +56,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -100,7 +100,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } // coco end @@ -117,7 +117,7 @@ if ( ! _thread ) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end @@ -148,7 +148,10 @@ */ void GuiController::doActionTransmit(GuiActionType vAction, const QVariantList &vData) { + // coco begin validated: This is a sample code and currently does nothing + // The handleTransmit is a place holder and currently has not been used. if (! handleTransmit(vAction, vData)) { + // coco end emit didActionTransmit(vAction, vData); } } Index: sources/gui/guiview.cpp =================================================================== diff -u -r8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/gui/guiview.cpp (.../guiview.cpp) (revision 8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6) +++ sources/gui/guiview.cpp (.../guiview.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -91,8 +91,12 @@ */ void GuiView::doActionTransmit(GuiActionType vAction, const QVariantList &vData) { + // TODO : Remove this code later when Investigated throughly. + // coco begin validated: This code later needs to be removed when Investigated throughly. + // has been tested manually emit didActionTransmit(vAction, vData); } +// coco end /*! * \brief GuiView::doActionTransmit @@ -105,10 +109,14 @@ void GuiView::doActionTransmit(GuiActionType vAction, const QVariant &vData) { + // TODO : Remove this code later when Investigated throughly. + // coco begin validated: This code later needs to be removed when Investigated throughly. + // has been tested manually QVariantList mData; mData += vData; emit didActionTransmit(vAction, mData); } +// coco end /*! * \brief GuiView::doUSBDriveMount @@ -117,8 +125,11 @@ */ void GuiView::doUSBDriveMount () { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didUSBDriveMount (); } +// coco end /*! * \brief GuiView::doUSBDriveUmount @@ -127,8 +138,11 @@ */ void GuiView::doUSBDriveUmount() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didUSBDriveUmount(); } +// coco end /*! * \brief GuiView::doUSBDriveRemove @@ -137,8 +151,11 @@ */ void GuiView::doUSBDriveRemove() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didUSBDriveRemove(); } +// coco end /*! * \brief GuiView::onExport @@ -147,8 +164,11 @@ */ void GuiView::doExport() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didExport(); } +// coco end /*! * \brief GuiView::doExportLog @@ -157,5 +177,8 @@ */ void GuiView::doExportLog() { + // coco begin validated: This needs user interaction to plug-in USB device + // has been tested manually emit didExportLog(); } +// coco end Index: sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml =================================================================== diff -u -r2771c23ec64c858b67b2c33bd2c0e5f1c04fad4b -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml (.../TreatmentFlows.qml) (revision 2771c23ec64c858b67b2c33bd2c0e5f1c04fad4b) +++ sources/gui/qml/pages/treatment/sections/TreatmentFlows.qml (.../TreatmentFlows.qml) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -25,7 +25,10 @@ * \brief Treatment Screen Flows section */ TouchArea { id: _root - property string unit : qsTr("mL/min") + property string unit : qsTr("mL/min") + property alias bloodFlowSetPoint : _bloodFlow.label + property alias dialysateFlowSetPoint : _dialysateInletFlow.label + x : 0 y : 0 title : qsTr("FLOWS") Index: sources/gui/qml/pages/treatment/sections/TreatmentPressure.qml =================================================================== diff -u -r8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/gui/qml/pages/treatment/sections/TreatmentPressure.qml (.../TreatmentPressure.qml) (revision 8f6f7c11390e3ed6d918f1717d8e8b7ae5b7e5c6) +++ sources/gui/qml/pages/treatment/sections/TreatmentPressure.qml (.../TreatmentPressure.qml) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -26,15 +26,17 @@ * \brief Treatment Screen Pressure section */ TouchArea { id: _root - property int arterialMinimum : -400 - property int arterialLowerBound : -300 - property int arterialUpperBound : 100 - property int arterialMaximum : 400 + property int arterialMinimum : -400 + property int arterialLowerBound : -300 + property int arterialUpperBound : 100 + property int arterialMaximum : 400 + property alias arterilPressure : _arterialRangeBar.value - property int venousMinimum : -100 - property int venousLowerBound : -100 - property int venousUpperBound : 500 - property int venousMaximum : 800 + property int venousMinimum : -100 + property int venousLowerBound : -100 + property int venousUpperBound : 500 + property int venousMaximum : 800 + property alias venusPressure : _venousRangeBar.value clip: false Index: sources/maintimer.cpp =================================================================== diff -u -rbb8f39a014644c70b832dd2a784f62fa9f6b6106 -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/maintimer.cpp (.../maintimer.cpp) (revision bb8f39a014644c70b832dd2a784f62fa9f6b6106) +++ sources/maintimer.cpp (.../maintimer.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -34,9 +34,14 @@ */ bool MainTimer::init() { + // coco begin validated: This is a fake data generator for CANBus missing/swapped frames Testing + // will never be executed on the product + // has been tested manually if (gFakeInterval) { startTimer(gFakeInterval); - } else { + } + // coco end + else { startTimer(_interval); } LOG_EVENT(QObject::tr("Main Timer Initialized")); Index: sources/storage/logger.cpp =================================================================== diff -u -r909090c5bae8b2fcc9aed6c2b55078b4f3d26fdd -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/storage/logger.cpp (.../logger.cpp) (revision 909090c5bae8b2fcc9aed6c2b55078b4f3d26fdd) +++ sources/storage/logger.cpp (.../logger.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -82,7 +82,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -122,7 +122,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } // coco end @@ -138,7 +138,7 @@ if (! _thread) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end Index: sources/storage/usbwatcher.cpp =================================================================== diff -u -r057d3ef4e29c63235040c5cfe8c6421ef7787d6a -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/storage/usbwatcher.cpp (.../usbwatcher.cpp) (revision 057d3ef4e29c63235040c5cfe8c6421ef7787d6a) +++ sources/storage/usbwatcher.cpp (.../usbwatcher.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -78,7 +78,7 @@ { // coco begin validated: Application termination is not correctly done in coco!!! // it has been tested and works perfectly fine in normal run. - quitThread(); + quitThread(); // validated } // coco end @@ -107,7 +107,7 @@ _thread = &vThread; _thread->setObjectName(QString("%1_Thread").arg(metaObject()->className())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(quit())); - _thread->start(); + if (!_thread->isRunning()) _thread->start(); // In case more than one object using the same thread moveToThread(_thread); } @@ -124,7 +124,7 @@ if ( ! _thread ) return; // runs in thread - moveToThread(qApp->thread()); + moveToThread(qApp->thread()); // validated } // coco end @@ -222,8 +222,11 @@ */ void USBWatcher::onUSBDriveUmount() { + // coco begin validated: This needs user interaction to plug-in/out the USB device + // has been tested manually _umounted = true; } +// coco end /*! * \brief USBWatcher::usbMount Index: sources/threads.cpp =================================================================== diff -u -r939d1bae9a394697d46ca913a2dc3442bf8ef82f -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/threads.cpp (.../threads.cpp) (revision 939d1bae9a394697d46ca913a2dc3442bf8ef82f) +++ sources/threads.cpp (.../threads.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -67,10 +67,13 @@ */ void quitThread(QThread &vThread) { + // coco begin validated: Application termination is not correctly done in coco!!! + // it has been tested and works perfectly fine in normal run. // runs in main thread - vThread.quit(); - vThread.wait(); + vThread.quit(); // validated + vThread.wait(); // validated } + // coco end /*! * \brief quitThreads @@ -80,11 +83,14 @@ */ void quitThreads() { - quitThread(_CanFrame_Thread ); - quitThread(_CanAcknow_Thread ); - quitThread(_CanMessage_Thread ); - quitThread(_USBWatcher_Thread ); - quitThread(_Logger_Thread ); - quitThread(_Application_Thread ); + // coco begin validated: Application termination is not correctly done in coco!!! + // it has been tested and works perfectly fine in normal run. + quitThread(_CanFrame_Thread ); // validated + quitThread(_CanAcknow_Thread ); // validated + quitThread(_CanMessage_Thread ); // validated + quitThread(_USBWatcher_Thread ); // validated + quitThread(_Logger_Thread ); // validated + quitThread(_Application_Thread ); // validated } + // coco end } Index: sources/view/valarmstatus.cpp =================================================================== diff -u -r909090c5bae8b2fcc9aed6c2b55078b4f3d26fdd -reea63d68fc0fb269f8dec64d99f488bcad117220 --- sources/view/valarmstatus.cpp (.../valarmstatus.cpp) (revision 909090c5bae8b2fcc9aed6c2b55078b4f3d26fdd) +++ sources/view/valarmstatus.cpp (.../valarmstatus.cpp) (revision eea63d68fc0fb269f8dec64d99f488bcad117220) @@ -50,7 +50,7 @@ */ QString VAlarmStatus::alarmPriorityText(GuiAlarmPriority vEnum) { - // TEST : this code is the place holder for the alarms description mapping + // coco begin validated: this code is the place holder for the alarms description mapping // since it is another feature // it returns the enum name for now const QMetaObject *mo = qt_getEnumMetaObject(vEnum); @@ -61,6 +61,7 @@ else return QString("ALARM_ID_UNDEFINED [%1]").arg(vEnum); } +// coco end /*! * \brief VAlarmStatus::alarmIDText