2 releases
0.1.1 | Apr 20, 2022 |
---|---|
0.1.0 | Sep 23, 2021 |
#6 in #cyclone-dds
22 downloads per month
Used in 4 crates
14KB
219 lines
cyclonedds-rs
Rust bindings for cyclonedds https://github.com/eclipse-cyclonedds/cyclonedds. This create no longer depends on a code generator. The Cyclone serialization interface is used to implement the Rust interface. You can annotate a structure with the new derive macro and start subscribing and publishing right from Rust.
Introduction
This crate allows you to use the cyclonedds library using safe Rust. It uses the cyclone serialization/deserialization interface for high performance and IDL free usage.
Features
- Qos
- Reader and Writer
- Listener with closure callbacks
- Async reader
- multiple and nested keys
Roadmap Features
- Shared memory support using iceoryx
Examples
- https://github.com/sjames/demo-vehicle-speed-subscriber (Vehicle speed subscriber with async reader)
- https://github.com/sjames/demo-vehicle-speed-publisher (Vehicle speed publisher)
Special Instructions
The current release only supports the 0.10.X release branch. https://github.com/eclipse-cyclonedds/cyclonedds/tree/releases/0.10.x . Install this before building this crate or the examples.
Dependencies
- iceoryx https://github.com/eclipse-iceoryx/iceoryx version 2.0.2. (https://github.com/eclipse-iceoryx/iceoryx/commit/f756b7c99ddf714d05929374492b34c5c69355bb) Do not install any other version.
- cyclonedds 0.10.x branch (https://github.com/eclipse-cyclonedds/cyclonedds/commit/1be07de395e4ddf969db2b90328cdf4fb73e9a64)
- git
- libclang
- cmake
- make
- a C/C++ compiler for cmake to use
Dependencies
~1.5MB
~37K SLoC