From 572047b72dec3bcd847b1fc0a3af98f60ba17ac5 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Fri, 30 Sep 2016 15:13:12 +0200 Subject: [PATCH] was making 3 threads for each set detector type command, because it created standard receiver object each time --- .../src/slsReceiverTCPIPInterface.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/slsReceiverSoftware/src/slsReceiverTCPIPInterface.cpp b/slsReceiverSoftware/src/slsReceiverTCPIPInterface.cpp index 1e2b5c49e..c1017a4a7 100644 --- a/slsReceiverSoftware/src/slsReceiverTCPIPInterface.cpp +++ b/slsReceiverSoftware/src/slsReceiverTCPIPInterface.cpp @@ -370,13 +370,15 @@ int slsReceiverTCPIPInterface::set_detector_type(){ } if(ret != FAIL){ #ifndef REST - receiverBase = UDPInterface::create("standard"); - if(startAcquisitionCallBack) - receiverBase->registerCallBackStartAcquisition(startAcquisitionCallBack,pStartAcquisition); - if(acquisitionFinishedCallBack) - receiverBase->registerCallBackAcquisitionFinished(acquisitionFinishedCallBack,pAcquisitionFinished); - if(rawDataReadyCallBack) - receiverBase->registerCallBackRawDataReady(rawDataReadyCallBack,pRawDataReady); + if(receiverBase == NULL){ + receiverBase = UDPInterface::create("standard"); + if(startAcquisitionCallBack) + receiverBase->registerCallBackStartAcquisition(startAcquisitionCallBack,pStartAcquisition); + if(acquisitionFinishedCallBack) + receiverBase->registerCallBackAcquisitionFinished(acquisitionFinishedCallBack,pAcquisitionFinished); + if(rawDataReadyCallBack) + receiverBase->registerCallBackRawDataReady(rawDataReadyCallBack,pRawDataReady); + } #endif myDetectorType = dr; ret=receiverBase->setDetectorType(myDetectorType);