R2A - A Rust library that provides a typesafe way to convert ROS2 messages into Apache Arrow format
The library is essentially a wrapper on top of the amazing R2R library. The two main components are r2a::ArrowSupport and r2a::RowBuilder.
This build was mainly tested with ROS2 Humble. I also tested it with Jazzy locally (by switching to the master branch r2r)
Install
cargo add r2a
Examples
use ArrowSupport;
use RowBuilder;
let fields = arrow_fields;
let mut row_builder = new_row_builder; //We keep all the fields, convert to Vec<&Field>
let my_message = Header ;
row_builder.add_row.unwrap;
let arrow_arrays = row_builder.to_arc_arrays;
// store arrow_arrays as Parquet, etc..
For more elaborate examples see the examples folder.