diff --git a/src/impl/moveit_mediator.cpp b/src/impl/moveit_mediator.cpp index da91c635074fd541984523506526a1f731d3e941..b474936caf7297e6cf0f624738e4417314be0e03 100644 --- a/src/impl/moveit_mediator.cpp +++ b/src/impl/moveit_mediator.cpp @@ -903,30 +903,30 @@ void Moveit_mediator::task_planner(){ for (int i = 0; i < robots_.size(); i++){ if (exec.first == robots_[i]->name()){ auto mr = dynamic_cast<Moveit_robot*>(robots_[i]); - //th.push_back(std::thread(&Moveit_mediator::parallel_exec, this, std::ref(*mr), exec.second.first)); - mr->mgi()->execute(exec.second.first); + th.push_back(std::thread(&Moveit_mediator::parallel_exec, this, std::ref(*mr), exec.second.first)); + //mr->mgi()->execute(exec.second.first); //manipulate_acm(mr, exec.second.second); //merge_ps(ps_m, exec.second.second, mr); } } } - // for(auto& t : th){ - // t.join(); - // } - - // for(auto& exec : executions_){ - // for (int i = 0; i < robots_.size(); i++){ - // if (exec.first == robots_[i]->name()){ - // auto mr = dynamic_cast<Moveit_robot*>(robots_[i]); - // manipulate_acm(mr, exec.second.second); - // merge_ps(ps_m, exec.second.second, mr); - // } - // } - // } + for(auto& t : th){ + t.join(); + } + + for(auto& exec : executions_){ + for (int i = 0; i < robots_.size(); i++){ + if (exec.first == robots_[i]->name()){ + auto mr = dynamic_cast<Moveit_robot*>(robots_[i]); + manipulate_acm(mr, exec.second.second); + merge_ps(ps_m, exec.second.second, mr); + } + } + } // merge_acm(ps_m); - // planning_scene_diff_publisher_->publish(ps_m); + planning_scene_diff_publisher_->publish(ps_m); }