[ROS2] publishing UInt16
Hi, I would like to publish a message without it being of type std_msgs::msg::String.
std_msgs::msg::UInt16 statuswoord;
auto publisher = node->create_publisher<std_msgs::msg::UInt16>("motor_info", rmw_qos_profile_default);
auto msg = std::make_shared<std_msgs::msg::UInt16();
msg->data = statuswoord;
publisher->publish(msg);
But I get following error:
cannot convert ‘std_msgs::msg::UInt16 {aka std_msgs::msg::UInt16_<std::allocator<void> >}’ to std_msgs::msg::UInt16_<std::allocator<void> > >::_data_type {aka short unsigned int}’ in assignment msg->data = test;
In my case I need it to be UInt16, but it might happen that I need another datatype in the future. Is there a guide somewhere on casting all the std_msgs ?
Thanks!