Skip to content
Snippets Groups Projects
Unverified Commit 9f1d8a12 authored by Michael Equi's avatar Michael Equi Committed by GitHub
Browse files

Added transient local subscription qos profile parameter to map saver (#1871)

* Added transient local subscription qos profile parameter to map saver

* Made transient local default true

* Fixed linter problem

* switched back house world to waffle model
parent 0a9477e2
No related branches found
No related tags found
No related merge requests found
......@@ -250,6 +250,7 @@ map_saver:
save_map_timeout: 5000
free_thresh_default: 0.25
occupied_thresh_default: 0.65
map_subscribe_transient_local: True
planner_server:
ros__parameters:
......
......@@ -109,6 +109,8 @@ protected:
// Default values for map thresholds
double free_thresh_default_;
double occupied_thresh_default_;
// param for handling QoS configuration
bool map_subscribe_transient_local_;
// The name of the service for saving a map from topic
const std::string save_map_service_name_{"save_map"};
......
......@@ -50,6 +50,7 @@ MapSaver::MapSaver()
free_thresh_default_ = declare_parameter("free_thresh_default", 0.25),
occupied_thresh_default_ = declare_parameter("occupied_thresh_default", 0.65);
map_subscribe_transient_local_ = declare_parameter("map_subscribe_transient_local", true);
}
MapSaver::~MapSaver()
......@@ -180,8 +181,14 @@ bool MapSaver::saveMapTopicToFile(
// Add new subscription for incoming map topic.
// Utilizing local rclcpp::Node (rclcpp_node_) from nav2_util::LifecycleNode
// as a map listener.
rclcpp::QoS map_qos(10); // initialize to default
if (map_subscribe_transient_local_) {
map_qos.transient_local();
map_qos.reliable();
map_qos.keep_last(1);
}
auto map_sub = rclcpp_node_->create_subscription<nav_msgs::msg::OccupancyGrid>(
map_topic_loc, rclcpp::SystemDefaultsQoS(), mapCallback);
map_topic_loc, map_qos, mapCallback);
rclcpp::Time start_time = now();
while (rclcpp::ok()) {
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment