Skip to content
Snippets Groups Projects
Commit 199066e3 authored by Johannes Mey's avatar Johannes Mey
Browse files

add delta update topic

parent 71ce641b
No related branches found
No related tags found
No related merge requests found
...@@ -45,6 +45,8 @@ int main(int argc, char** argv) ...@@ -45,6 +45,8 @@ int main(int argc, char** argv)
mqtt_connection->listen(commandTopic); mqtt_connection->listen(commandTopic);
auto other_cell_topic = getPrivateParameter<std::string>("other_cell", "/ceti_cell_2_placeworld/scene/update"); auto other_cell_topic = getPrivateParameter<std::string>("other_cell", "/ceti_cell_2_placeworld/scene/update");
mqtt_connection->listen(other_cell_topic); mqtt_connection->listen(other_cell_topic);
auto scene_observer_topic = getPrivateParameter<std::string>("scene_observer", "object_locator/scene/update");
mqtt_connection->listen(scene_observer_topic);
controller.addConnection(std::move(mqtt_connection)); controller.addConnection(std::move(mqtt_connection));
controller.addCallback(other_cell_topic, [&controller](auto msg) { controller.addCallback(other_cell_topic, [&controller](auto msg) {
...@@ -54,6 +56,13 @@ int main(int argc, char** argv) ...@@ -54,6 +56,13 @@ int main(int argc, char** argv)
controller.initScene(scene, false); controller.initScene(scene, false);
}); });
controller.addCallback(scene_observer_topic, [&controller](auto msg) {
ROS_INFO_STREAM("Updating scene from observer.");
Scene scene;
scene.ParseFromString(msg);
controller.initScene(scene, true);
});
ros::WallDuration(5).sleep(); // wait 5 secs to init scene (to give moveit time to load) ros::WallDuration(5).sleep(); // wait 5 secs to init scene (to give moveit time to load)
controller.loadScene(getPrivateParameter<std::string>("scene", ros::package::getPath("ccf_immersive_sorting") + controller.loadScene(getPrivateParameter<std::string>("scene", ros::package::getPath("ccf_immersive_sorting") +
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment