Skip to content
Snippets Groups Projects
Commit 31321d6a authored by Ivan Filippov's avatar Ivan Filippov Committed by NOAFI Group Account
Browse files

fix run stopping on error

parent 6aec2601
No related branches found
No related tags found
No related merge requests found
......@@ -235,7 +235,7 @@ void RcCoreApp::onRcFsmStateChange(const FsmState &state, const FsmState &oldSta
config.pc.runEnable = false;
emit configChanged(config);
emit runStop();
emit runStop({}, true);
}
break;
default:
......
......@@ -76,7 +76,7 @@ signals:
void closeGlobTrig() const;
void openGlobTrig() const;
void prepareStop() const;
void runStop(const QVariant &stopEvNum={}) const;
void runStop(const QVariant &stopEvNum={}, bool force = false) const;
void slowControlStateUpdated(QString, QString) const;
void clientManagerRunStateChanged_(const FsmState &); //proxy
void vmeTrigsRunStateChanged_(const FsmState &); //proxy
......
......@@ -139,12 +139,19 @@ void TrigDeviceController::onRunStart(const RcRunId &, const QVariant &startEvNu
d->fsm->setRequestState(FsmState::Error);
}}
void TrigDeviceController::onRunStop()
void TrigDeviceController::onRunStop(const QVariant &evNum, bool force)
{
Q_UNUSED(evNum)
Q_D(TrigDeviceController);
const auto &curSt = d->fsm->getState();
if(force) {
// Not correct but simpliest way
if(curSt != FsmState::Ready)
d->fsm->setRequestState(FsmState::Error);
return;
}
if(d->megamaster_flg)
return;
const auto &curSt = d->fsm->getState();
if(curSt==FsmState::Ready) {
//TODO: explude somehow this slot invokation in megamaster device
qFatal("add debug here"); // todel
......
......@@ -52,7 +52,7 @@ public slots:
void setDeviceList(const DeviceIndexEnabledMap &devices) override;
void onRunStart(const RcRunId &, const QVariant &startEvNum);
void onRunStop();
void onRunStop(const QVariant &evNum, bool force = false);
void onPrepareStop();
void onCloseGlobTrig();
void onOpenGlobTrig();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment