21 #include <std_msgs/String.h>
23 #include <tf2_ros/buffer.h>
24 #include <tf2_ros/transform_listener.h>
35 tf_buffer_ = ed::make_shared<tf2_ros::Buffer>();
78 updater_.add(plugin_container->getLoopUsageStatus());
84 plugin_container = it_plugin->second;
86 if (!enabled && plugin_container->isRunning())
88 plugin_container->requestStop();
97 plugin_container->configure(init,
true);
98 updater_.add(plugin_container->getLoopUsageStatus());
105 if (enabled && plugin_container && !plugin_container->isRunning())
106 plugin_container->runThreaded();
132 new_world_model->update(*req);
147 pub_stats_ = nh.advertise<std_msgs::String>(
"ed/stats", 10);
162 ROS_ERROR_STREAM(
"[ED] Could not initialize world: " <<
error.str());
173 if (e->id().str().substr(0, 6) ==
"sergio" || e->id().str().substr(0, 5) ==
"amigo" || e->id().str().substr(0, 4) ==
"hero")
176 if (keep_all_shapes && e->visual())
179 if (req_init_world->updated_entities.find(e->id()) == req_init_world->updated_entities.end())
180 req_delete->removeEntity((*it)->id());
188 new_world_model->update(*req_init_world);
189 new_world_model->update(*req_delete);
199 c->addDelta(req_init_world);
200 c->addDelta(req_delete);
201 c->setWorld(new_world_model);
217 if (plugin_type.
empty())
229 if (!container->loadPlugin(plugin_name, plugin_type, init))
252 if (
c->updateRequest())
254 if (!new_world_model)
258 new_world_model = ed::make_shared<WorldModel>(*
world_model_);
261 new_world_model->update(*
c->updateRequest());
272 c->setWorld(new_world_model);
282 c->clearUpdateRequest();
302 c->setWorld(new_world_model);
321 new_world_model->update(req);
327 c->setWorld(new_world_model);
359 if (!cfg.
value(
"id",
id))
369 double rx = 0, ry = 0, rz = 0;
400 new_world_model->update(req);
406 c->setWorld(new_world_model);
422 ROS_ERROR_STREAM(
"[ED] Could not initialize world: " <<
error.str());
430 new_world_model->update(*req);
448 if (!
write(filename, *msr))
468 double cpu_perc = p->getLoopUsageStatus().getTimer().getLoopUsagePercentage() * 100;
474 std_msgs::String msg;