deduce parallel call only on function signature and some const&

This commit is contained in:
Erik Frojdh
2019-01-11 12:33:11 +01:00
parent 0841df98d4
commit b46fb5e9c4
4 changed files with 43 additions and 39 deletions

View File

@ -45,9 +45,11 @@ void multiSlsDetector::setupMultiDetector(bool verify, bool update) {
updateUserdetails();
}
template <typename RT, typename... CT>
std::vector<RT> multiSlsDetector::serialCall(RT (slsDetector::*somefunc)(CT...),
CT... Args) {
typename NonDeduced<CT>::type... Args) {
std::vector<RT> result;
result.reserve(detectors.size());
for (auto &d : detectors)
@ -57,7 +59,7 @@ std::vector<RT> multiSlsDetector::serialCall(RT (slsDetector::*somefunc)(CT...),
template <typename RT, typename... CT>
std::vector<RT>
multiSlsDetector::parallelCall(RT (slsDetector::*somefunc)(CT...), CT... Args) {
multiSlsDetector::parallelCall(RT (slsDetector::*somefunc)(CT...), typename NonDeduced<CT>::type... Args) {
std::vector<std::future<RT>> futures;
for (auto &d : detectors)
futures.push_back(