diff --git a/ADOrcaApp/src/orca.cpp b/ADOrcaApp/src/orca.cpp index 004243f..63fb45e 100644 --- a/ADOrcaApp/src/orca.cpp +++ b/ADOrcaApp/src/orca.cpp @@ -779,6 +779,7 @@ void Orca::imageTask(){ int evr_counts_since_last_start = 0; int evr_counts_since_last_start_previous = 0; int evr_trigger_dropped = 0; + int acqStatus; uint64_t prevAcquisitionCount = 0; DCAMCAP_TRANSFERINFO captransferinfo; epicsTimeStamp prevAcqTime, currentAcqTime; @@ -929,10 +930,12 @@ void Orca::imageTask(){ getDoubleParam(ADAcquirePeriod, &acqusitionRate); + getIntegerParam(ADStatus, &acqStatus); maxAcqusitionTime = acqusitionRate * 2; epicsTimeGetCurrent(¤tAcqTime); - if (epicsTimeDiffInSeconds(¤tAcqTime, &prevAcqTime) > maxAcqusitionTime) { - printf("[DEBUG]::maxAcqusitionTime %f\n", maxAcqusitionTime); + if ((epicsTimeDiffInSeconds(¤tAcqTime, &prevAcqTime) > maxAcqusitionTime) && + acqStatus != ADStatusAborted) { + printf("[DEBUG]::maxAcqusitionTime %f\n", maxAcqusitionTime); setShutter(0); stopAcquire(); setIntegerParam(ADAcquire, 0);