From 5490daa0a134aa127cf6555d170f0a7d4fb5fea6 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil <33750417+thattil@users.noreply.github.com> Date: Thu, 9 Jun 2022 13:42:18 +0200 Subject: [PATCH] storagecells not updated in rx and allowing it in idle mode (#485) --- RELEASE.txt | 1 + slsDetectorSoftware/src/Module.cpp | 3 +++ slsReceiverSoftware/src/ClientInterface.cpp | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/RELEASE.txt b/RELEASE.txt index d97c17c88..0cd4c5f26 100755 --- a/RELEASE.txt +++ b/RELEASE.txt @@ -82,6 +82,7 @@ This document describes the differences between v7.0.0 and v6.x.x - rxr mem size changed (fifo header size from 8 to 16) due to sls rxr header = 112.. 112+ 16=128 (reduces packet losss especially for g2) -udp_srcip and udp_Srcip2: can set to auto (for virtual or 1g data networks) - set dataset name for all hdf5 files to "data" only +- number of storage cells is not updated in teh receiver. done. and also allowing it to be modified in running status 2. Resolved Issues ================== diff --git a/slsDetectorSoftware/src/Module.cpp b/slsDetectorSoftware/src/Module.cpp index 8fb5477cb..05e59c420 100644 --- a/slsDetectorSoftware/src/Module.cpp +++ b/slsDetectorSoftware/src/Module.cpp @@ -1768,6 +1768,9 @@ int Module::getNumberOfAdditionalStorageCells() const { void Module::setNumberOfAdditionalStorageCells(int value) { sendToDetector(F_SET_NUM_ADDITIONAL_STORAGE_CELLS, value, nullptr); + if (shm()->useReceiverFlag) { + sendToReceiver(F_SET_RECEIVER_NUM_ADD_STORAGE_CELLS, value, nullptr); + } } int Module::getStorageCellStart() const { diff --git a/slsReceiverSoftware/src/ClientInterface.cpp b/slsReceiverSoftware/src/ClientInterface.cpp index 280ed77a9..c17accb2a 100644 --- a/slsReceiverSoftware/src/ClientInterface.cpp +++ b/slsReceiverSoftware/src/ClientInterface.cpp @@ -581,7 +581,7 @@ int ClientInterface::set_num_add_storage_cells(Interface &socket) { throw RuntimeError("Invalid number of additional storage cells " + std::to_string(value)); } - verifyIdle(socket); + // allowing this to be done even when receiver not idle LOG(logDEBUG1) << "Setting num additional storage cells to " << value; impl()->setNumberOfAdditionalStorageCells(value); return socket.Send(OK);