diff --git a/src/main_controller.cpp b/src/main_controller.cpp index 0219cbcc8dcaf0ab94a407e41c2a86788226e54b..1849c6268177b78c885bbd76cf90906d66d93bd2 100644 --- a/src/main_controller.cpp +++ b/src/main_controller.cpp @@ -54,7 +54,7 @@ int main(int argc, char **argv) connection->setSendTopic(getParameter(n, "topics/scene", NODE_NAME + "/scene/update")); controller.addConnection(std::move(connection)); - auto client_controllers = getPrivateParameter<std::vector<std::string>>("client_controllers"); + auto client_controllers = getPrivateParameter<std::vector<std::string>>("client_controllers", {"ceti_cell_1", "ceti_cell_2", "ads-cell", "st-cell"}); auto mqtt_server = getPrivateParameter<std::string>("mqtt_server", "tcp://127.0.0.1:1883"); // create an empty task @@ -79,6 +79,7 @@ int main(int argc, char **argv) auto scene_update_topic = "/" + client + getParameter<std::string>(n, "topics/scene", "/scene/update"); ROS_INFO_STREAM("Listening to MQTT topic " << scene_update_topic); client_connection->listen(scene_update_topic); + client_connection->listen(getParameter<std::string>(n, "topics/selection", "selection")); controller.addCallback(scene_update_topic, [client, &clients](auto msg) { ROS_INFO_STREAM("Got an updated scene from client " << client); @@ -89,7 +90,7 @@ int main(int argc, char **argv) auto fallback_path = ros::package::getPath("ccf_immersive_sorting") + "/config/config_scene_virtual-table.json"; controller.loadScene(getPrivateParameter<std::string>("scene", fallback_path)); - Object *robot = nullptr; // FIXME + Object *robot = controller.resolveObject(controller.getRobotName()); Object *selected_box = nullptr; Object *selected_bin = nullptr; std::optional<std::string> picked_box{};