Skip to content

Commit da1f1bb

Browse files
authored
Fix declaring and retrieving node parameters (#154)
1 parent 1f6a5b7 commit da1f1bb

File tree

2 files changed

+19
-45
lines changed

2 files changed

+19
-45
lines changed

include/web_video_server/web_video_server.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class WebVideoServer
2929
* @brief Constructor
3030
* @return
3131
*/
32-
WebVideoServer(rclcpp::Node::SharedPtr &nh, rclcpp::Node::SharedPtr &private_nh);
32+
WebVideoServer(rclcpp::Node::SharedPtr &nh);
3333

3434
/**
3535
* @brief Destructor - Cleans up

src/web_video_server.cpp

Lines changed: 18 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -49,51 +49,26 @@ static bool ros_connection_logger(async_web_server_cpp::HttpServerRequestHandler
4949
return false;
5050
}
5151

52-
WebVideoServer::WebVideoServer(rclcpp::Node::SharedPtr &nh, rclcpp::Node::SharedPtr &private_nh) :
52+
WebVideoServer::WebVideoServer(rclcpp::Node::SharedPtr & nh) :
5353
nh_(nh), handler_group_(
5454
async_web_server_cpp::HttpReply::stock_reply(async_web_server_cpp::HttpReply::not_found))
5555
{
56-
rclcpp::Parameter parameter;
57-
if (private_nh->get_parameter("port", parameter)) {
58-
port_ = parameter.as_int();
59-
} else {
60-
port_ = 8080;
61-
}
62-
if (private_nh->get_parameter("verbose", parameter)) {
63-
__verbose = parameter.as_bool();
64-
} else {
65-
__verbose = true;
66-
}
67-
68-
if (private_nh->get_parameter("address", parameter)) {
69-
address_ = parameter.as_string();
70-
} else {
71-
address_ = "0.0.0.0";
72-
}
73-
56+
nh_->declare_parameter("port", 8080);
57+
nh_->declare_parameter("verbose", true);
58+
nh_->declare_parameter("address", "0.0.0.0");
59+
nh_->declare_parameter("server_threads", 1);
60+
nh_->declare_parameter("ros_threads", 2);
61+
nh_->declare_parameter("publish_rate", -1.0);
62+
nh_->declare_parameter("default_stream_type", "mjpeg");
63+
64+
nh_->get_parameter("port", port_);
65+
nh_->get_parameter("verbose", __verbose);
66+
nh_->get_parameter("address", address_);
7467
int server_threads;
75-
if (private_nh->get_parameter("server_threads", parameter)) {
76-
server_threads = parameter.as_int();
77-
} else {
78-
server_threads = 1;
79-
}
80-
81-
if (private_nh->get_parameter("ros_threads", parameter)) {
82-
ros_threads_ = parameter.as_int();
83-
} else {
84-
ros_threads_ = 2;
85-
}
86-
if (private_nh->get_parameter("publish_rate", parameter)) {
87-
publish_rate_ = parameter.as_double();
88-
} else {
89-
publish_rate_ = -1.0;
90-
}
91-
92-
if (private_nh->get_parameter("default_stream_type", parameter)) {
93-
__default_stream_type = parameter.as_string();
94-
} else {
95-
__default_stream_type = "mjpeg";
96-
}
68+
nh_->get_parameter("server_threads", server_threads);
69+
nh_->get_parameter("ros_threads", ros_threads_);
70+
nh_->get_parameter("publish_rate", publish_rate_);
71+
nh_->get_parameter("default_stream_type", __default_stream_type);
9772

9873
stream_types_["mjpeg"] = boost::shared_ptr<ImageStreamerType>(new MjpegStreamerType());
9974
stream_types_["png"] = boost::shared_ptr<ImageStreamerType>(new PngStreamerType());
@@ -378,10 +353,9 @@ bool WebVideoServer::handle_list_streams(const async_web_server_cpp::HttpRequest
378353
int main(int argc, char **argv)
379354
{
380355
rclcpp::init(argc, argv);
381-
auto nh = std::make_shared<rclcpp::Node>("web_video_server");
382-
auto private_nh = std::make_shared<rclcpp::Node>("_web_video_server");
356+
auto node = std::make_shared<rclcpp::Node>("web_video_server");
383357

384-
web_video_server::WebVideoServer server(nh, private_nh);
358+
web_video_server::WebVideoServer server(node);
385359
server.setup_cleanup_inactive_streams();
386360
server.spin();
387361

0 commit comments

Comments
 (0)