Compare commits

..

2 Commits
2.1.0 ... 2.1.1

Author SHA1 Message Date
a5c900b9fe Fix: send operate 2024-03-15 13:40:16 +01:00
70b488de66 Diag: send operate (O000) only if State has changed 2024-03-12 16:20:39 +01:00
2 changed files with 16 additions and 4 deletions

View File

@@ -12,6 +12,7 @@ DeviceControllerDiag::DeviceControllerDiag(PersistentData *pData, QObject *paren
, eventReceiver(nullptr)
, isRequestRunning(false)
, flagInterruptDiag(false)
, lastState(DeviceController::State::INITIAL_STATE)
, pData(pData)
{
diagRequestTimeoutTimer = new QTimer(this);
@@ -365,7 +366,6 @@ void DeviceControllerDiag::private_sendDiagEvent(DeviceController::State result)
{
qCritical() << "DeviceControllerDiag::private_sendDiagEvent() result: " << result;
if (this->eventReceiver == nullptr) {
qCritical() << "DeviceControllerDiag: no eventReceiver";
return;
@@ -388,6 +388,8 @@ void DeviceControllerDiag::private_sendDiagEvent(DeviceController::State result)
QString parameter;
switch (result) {
case DeviceController::State::INITIAL_STATE:
break;
case DeviceController::State::A000: // alarm / intrusion
eventClass = EVENT_CLASS::ALARM;
parameter = "alarm / intrusion";
@@ -473,14 +475,20 @@ void DeviceControllerDiag::private_sendDiagEvent(DeviceController::State result)
case DeviceController::State::E255: // no valid data from DeviceController
eventClass = EVENT_CLASS::STATE;
parameter = "";
qCritical() << " ... ignore " << QMetaEnum::fromType<DeviceController::State>().valueToKey(result);
qCritical() << " ... ignore " << QMetaEnum::fromType<DeviceController::State>().valueToKey(result);
return;
break;
case DeviceController::State::O000: // everything is fine
this->machineEventSet.clear();
eventClass = EVENT_CLASS::OPERATE;
parameter = "";
qCritical() << " ... everything fine";
if (this->lastState == DeviceController::State::O000) {
qCritical() << " ... everything fine, no state change -> skip sending";
return;
}
else {
qCritical() << " ... everything fine";
}
break;
case DeviceController::State::W001: // paper low
@@ -501,6 +509,7 @@ void DeviceControllerDiag::private_sendDiagEvent(DeviceController::State result)
break;
}
this->lastState = result;
ATBMachineEvent *machineEvent = new ATBMachineEvent(
eventId,

View File

@@ -52,7 +52,9 @@ namespace DeviceController {
W001,
W002,
W003,
W004
W004,
INITIAL_STATE
};
Q_ENUM_NS(State)
}
@@ -91,6 +93,7 @@ private:
int lastVoltage;
DeviceController::State lastState;
QSet<DeviceController::State> machineEventSet;
PersistentData* pData;