ICSHWI-17104: add waiting time until status update -taking too long

This commit is contained in:
Jim Larsson
2024-02-13 14:32:11 +01:00
parent 1a3c91838b
commit 9bf0389752
+7 -3
View File
@@ -787,7 +787,7 @@ void Orca::imageTask(){
double elapsedTime, elapsedTotalTime;
int evr_counts = 0;
double exposure_time, readout_time;
double maxAcqusitionTime;
double maxAcqusitionTime, setAcqusitionRate;
int triggerMode = DCAMPROP_TRIGGERSOURCE__INTERNAL;
lock();
@@ -812,6 +812,8 @@ void Orca::imageTask(){
}
else {
epicsTimeGetCurrent(&startTimeStamp);
getDoubleParam(ADAcquirePeriod, &setAcqusitionRate);
maxAcqusitionTime = setAcqusitionRate * 2;
getIntegerParam(ADNumImages, &totalImages);
getIntegerParam(ADImageMode, &imageMode);
setIntegerParam(ADStatus, ADStatusAcquire);
@@ -926,11 +928,13 @@ void Orca::imageTask(){
epicsTimeGetCurrent(&prev_trigger_time);
evr_counts_since_last_start_previous = evr_counts_since_last_start;
}
epicsTimeGetCurrent(&current_trigger_time);
if (imageMode == ADImageMultiple) {
epicsTimeGetCurrent(&current_trigger_time);
elapsedTotalTime = epicsTimeDiffInSeconds(&current_trigger_time, &startTimeStamp);
elapsedTotalTime > maxAcqusitionTime) {
if (elapsedTotalTime > maxAcqusitionTime) {
setStringParam(ADStatusMessage, "Acquisition taking too long!");
}
}