diff --git a/slsDetectorSoftware/src/DetectorImpl.cpp b/slsDetectorSoftware/src/DetectorImpl.cpp index 183f41547..c264682a4 100755 --- a/slsDetectorSoftware/src/DetectorImpl.cpp +++ b/slsDetectorSoftware/src/DetectorImpl.cpp @@ -43,93 +43,6 @@ void DetectorImpl::setupMultiDetector(bool verify, bool update) { } } -template -std::vector -DetectorImpl::serialCall(RT (slsDetector::*somefunc)(CT...), - typename NonDeduced::type... Args) { - std::vector result; - result.reserve(detectors.size()); - for (auto &d : detectors) { - result.push_back((d.get()->*somefunc)(Args...)); - } - return result; -} - -template -std::vector -DetectorImpl::serialCall(RT (slsDetector::*somefunc)(CT...) const, - typename NonDeduced::type... Args) const { - std::vector result; - result.reserve(detectors.size()); - for (auto &d : detectors) { - result.push_back((d.get()->*somefunc)(Args...)); - } - return result; -} - -template -std::vector -DetectorImpl::parallelCall(RT (slsDetector::*somefunc)(CT...), - typename NonDeduced::type... Args) { - std::vector> futures; - for (auto &d : detectors) { - futures.push_back( - std::async(std::launch::async, somefunc, d.get(), Args...)); - } - std::vector result; - result.reserve(detectors.size()); - for (auto &i : futures) { - result.push_back(i.get()); - } - return result; -} - -template -std::vector -DetectorImpl::parallelCall(RT (slsDetector::*somefunc)(CT...) const, - typename NonDeduced::type... Args) const { - std::vector> futures; - for (auto &d : detectors) { - futures.push_back( - std::async(std::launch::async, somefunc, d.get(), Args...)); - } - std::vector result; - result.reserve(detectors.size()); - for (auto &i : futures) { - result.push_back(i.get()); - } - return result; -} - -template -void DetectorImpl::parallelCall(void (slsDetector::*somefunc)(CT...), - typename NonDeduced::type... Args) { - std::vector> futures; - for (auto &d : detectors) { - futures.push_back( - std::async(std::launch::async, somefunc, d.get(), Args...)); - } - for (auto &i : futures) { - i.get(); - } - return; -} - -template -void DetectorImpl::parallelCall( - void (slsDetector::*somefunc)(CT...) const, - typename NonDeduced::type... Args) const { - std::vector> futures; - for (auto &d : detectors) { - futures.push_back( - std::async(std::launch::async, somefunc, d.get(), Args...)); - } - for (auto &i : futures) { - i.get(); - } - return; -} - void DetectorImpl::setAcquiringFlag(bool flag) { multi_shm()->acquiringFlag = flag; } diff --git a/slsDetectorSoftware/src/DetectorImpl.h b/slsDetectorSoftware/src/DetectorImpl.h index 25b598e5c..89d755249 100755 --- a/slsDetectorSoftware/src/DetectorImpl.h +++ b/slsDetectorSoftware/src/DetectorImpl.h @@ -193,44 +193,6 @@ class DetectorImpl : public virtual slsDetectorDefs { } } - /** - * Loop through the detectors serially and return the result as a vector - */ - - template - std::vector serialCall(RT (slsDetector::*somefunc)(CT...), - typename NonDeduced::type... Args); - - /** - * Loop through the detectors serially and return the result as a vector - * Const qualified version - */ - template - std::vector serialCall(RT (slsDetector::*somefunc)(CT...) const, - typename NonDeduced::type... Args) const; - - /** - * Loop through the detectors in parallel and return the result as a vector - */ - template - std::vector parallelCall(RT (slsDetector::*somefunc)(CT...), - typename NonDeduced::type... Args); - - /** - * Loop through the detectors in parallel and return the result as a vector - * Const qualified version - */ - template - std::vector parallelCall(RT (slsDetector::*somefunc)(CT...) const, - typename NonDeduced::type... Args) const; - - template - void parallelCall(void (slsDetector::*somefunc)(CT...), - typename NonDeduced::type... Args); - - template - void parallelCall(void (slsDetector::*somefunc)(CT...) const, - typename NonDeduced::type... Args) const; /** set acquiring flag in shared memory */ void setAcquiringFlag(bool flag);