gui exception thrown from acquire caught properly in gui

This commit is contained in:
2020-11-17 17:39:34 +01:00
parent 6563965787
commit 7fcac35549
6 changed files with 18 additions and 17 deletions

View File

@ -270,7 +270,8 @@ void qDetectorMain::Initialization() {
// Plotting
connect(plot, SIGNAL(AcquireFinishedSignal()), tabMeasurement,
SLOT(AcquireFinished()));
connect(plot, SIGNAL(AbortSignal()), tabMeasurement, SLOT(AbortAcquire()));
connect(plot, SIGNAL(AbortSignal(QString)), tabMeasurement,
SLOT(AbortAcquire(QString)));
// menubar
// Modes Menu

View File

@ -672,18 +672,15 @@ void qDrawPlot::AcquireThread() {
// handle it
if (!mess.empty()) {
LOG(logERROR) << "Acquisition Finished with an exception: " << mess;
qDefs::ExceptionMessage("Acquire unsuccessful.", mess,
"qDrawPlot::AcquireFinished");
// qDefs::ExceptionMessage("Acquire unsuccessful.", mess,
// "qDrawPlot::AcquireFinished");
try {
det->stopDetector();
}
CATCH_DISPLAY("Could not stop detector acquisition.",
"qDrawPlot::AcquireFinished");
try {
det->stopReceiver();
} catch (...) {
;
}
CATCH_DISPLAY("Could not stop receiver.", "qDrawPlot::AcquireFinished");
emit AbortSignal();
emit AbortSignal(QString(mess.c_str()));
}
LOG(logDEBUG) << "End of Acquisition Finished";
}

View File

@ -948,8 +948,11 @@ void qTabMeasurement::AcquireFinished() {
}
}
void qTabMeasurement::AbortAcquire() {
void qTabMeasurement::AbortAcquire(QString exmsg) {
LOG(logINFORED) << "Abort Acquire";
qDefs::ExceptionMessage("Acquire unsuccessful.",
exmsg.toAscii().constData(),
"qDrawPlot::AcquireFinished");
isAcquisitionStopped = true;
AcquireFinished();
}