From fc7ae98eee64bc534935f9de7ab0bb799a10aeeb Mon Sep 17 00:00:00 2001 From: Erik Frojdh Date: Tue, 29 May 2018 15:45:13 +0200 Subject: [PATCH] using parallel call for checkCompatibility --- .../multiSlsDetector/multiSlsDetector.cpp | 37 +------------------ 1 file changed, 2 insertions(+), 35 deletions(-) diff --git a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp index 7ca11ac91..878ca0985 100644 --- a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp +++ b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp @@ -3452,7 +3452,7 @@ T multiSlsDetector::parallelCallDetectorMember(T (slsDetector::*somefunc)(P1), P cout << "Error in creating threadpool. Exiting" << endl; return -1; } else { - std::vector return_values(thisMultiDetector->numberOfDetectors, -1); + std::vector return_values(thisMultiDetector->numberOfDetectors, -1); for (int idet = 0; idet < thisMultiDetector->numberOfDetectors; ++idet) { if (detectors[idet]) { Task* task = new Task(new func1_t(somefunc, @@ -6051,38 +6051,5 @@ bool multiSlsDetector::isAcquireReady() int multiSlsDetector::checkVersionCompatibility(portType t) { - int ret=-100; - - if(!threadpool){ - cout << "Error in creating threadpool. Exiting" << endl; - return -1; - }else{ - //return storage values - int* iret[thisMultiDetector->numberOfDetectors]; - for(int idet=0; idetnumberOfDetectors; ++idet){ - if(detectors[idet]){ - iret[idet]= new int(-1); - Task* task = new Task(new func1_t(&slsDetector::checkVersionCompatibility, - detectors[idet],t,iret[idet])); - threadpool->add_task(task); - } - } - threadpool->startExecuting(); - threadpool->wait_for_tasks_to_complete(); - for(int idet=0; idetnumberOfDetectors; ++idet){ - if(detectors[idet]){ - if(iret[idet] != NULL){ - if (ret==-100) - ret=*iret[idet]; - else if (ret!=*iret[idet]) - ret=-1; - delete iret[idet]; - }else ret=-1; - if(detectors[idet]->getErrorMask()) - setErrorMask(getErrorMask()|(1<