docs.rs failed to build transforms_io-0.4.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
transforms_io-0.2.0
transforms_io
An IO layer for the transforms crate.
transforms_io provides ROS2 message handling for the middleware-independent transforms crate. It bridges ROS2 message types with the transform engine, supporting multiple ROS backends and Minot.
Alternatives
For roslibrust, use the roslibrust_transforms crate.
Installation
Add to your Cargo.toml:
[]
= "*"
# Enable exactly one backend
[]
= []
# Choose one:
# r2r = ["transforms_io/r2r"]
# ros2-client = ["transforms_io/ros2-client"]
# mt-pubsub = ["transforms_io/mt-pubsub"]
# For Zenoh/Hiroz, use the companion crate:
# transforms_io_hiroz = { git = "https://codeberg.org/stelzo/transforms_io" }
Usage
r2r Backend
Two modes available:
Threads
use ;
// Create broadcaster
let broadcaster = new;
// Create listener (spawns blocking threads)
let listener = new;
// Lookup transform
let tf = listener.lookup_transform?;
Async
Enable r2r-async feature:
[]
= { = "0.1", = ["r2r-async"] }
use TfListener;
// Returns listener + two futures to spawn on your runtime
let = new_async;
// Spawn on your async runtime
spawn;
spawn;
// Use listener
let tf = listener.lookup_transform?;
ros2-client Backend
use ;
let listener = new;
let tf = listener.lookup_transform?;
mt-pubsub Backend
use ;
use Arc;
use Runtime;
let rt = new;
let listener = new;
let tf = listener.lookup_transform?;
Hiroz Backend (Companion Crate transforms_io_hiroz)
Use the transforms_io_hiroz crate and pass in your application-owned Hiroz node:
use ;
use ;
let ctx = default.build?;
let node = ctx.create_node.build?;
let broadcaster = new?;
let listener = new?;
let tf = listener.lookup_transform?;