From ce29f05ca0156f4b6e86231af0db48e0aaa1a4b2 Mon Sep 17 00:00:00 2001 From: "Timur A. Fatkhullin" Date: Wed, 15 Jan 2025 11:55:53 +0300 Subject: [PATCH] fixes --- raptor_eagle_ccd.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/raptor_eagle_ccd.cpp b/raptor_eagle_ccd.cpp index d22cc4a..e712993 100644 --- a/raptor_eagle_ccd.cpp +++ b/raptor_eagle_ccd.cpp @@ -1009,10 +1009,12 @@ void RaptorEagleCCD::startAquisition() throw std::system_error(RaptorEagleCCDError::ERROR_EXT_TRIGGER_MODE); } - std::lock_guard lock_guard(_acqProcessesMutex); if (_acqRingFreeBufferPtrs.empty()) { logDebug("There is no free image buffers! Try to shrink ring buffer ..."); + + std::lock_guard lock_guard(_acqProcessesMutex); + if (_acqRingBuffer.size() < DEFAULT_ACQ_RING_BUFFER_MAX_SIZE) { // shrink size_t N = 0; for (auto i = _acqRingBuffer.size(); i < DEFAULT_ACQ_RING_BUFFER_MAX_SIZE; ++i, ++N) { @@ -1117,7 +1119,7 @@ void RaptorEagleCCD::startAquisition() std::this_thread::sleep_for(std::chrono::milliseconds(10)); if ((std::chrono::utc_clock::now() - start) > CAMERA_START_ACQ_TIMEOUT) { logError("CANNOT START ACQUIRING!!!"); - throw RaptorEagleCCDError::ERROR_CANNOT_START_ACQUISITION; + throw std::system_error(RaptorEagleCCDError::ERROR_CANNOT_START_ACQUISITION); } } acq_pars->startTime = setTriggerRegisterBit(CL_TRIGGER_MODE_SNAPSHOT_BIT);