我正在编写一个程序,用于直接从rosbag中读取数据而不播放它在ros2中。以下是示例代码片段。该代码的目的是检查ros2主题并仅获取该主题中的消息。但我无法从袋中获取数据。当打印时,控制台将打印十六进制值。
任何在这方面的帮助都是可取的。
auto read_only_storage = factory.open_read_only(bag_file_path, storage_id);
while(read_only_storage->has_next())
{
auto msg = read_only_storage->read_next();
if(msg->topic_name == topic)
{
cout << msg->serialized_data<<endl;
}
}
任何在这方面的帮助都是可取的。