RTI Connext is a connectivity software framework for integrating data sources of all types. At its core is the world's leading ultra-high performance, distributed networking databus.
RTI Connector provides a quick and easy way to write applications that publish and subscribe to the RTI Connext DDS databus in Rust and other languages.
RTI Connector for Rust is an experimental crate that provides Rust bindings
for the RTI Connector API. It does so by exposing a safe and idiomatic Rust
interface over the underlying C API, in a crate called rtiddsconnector.
RTI Connector for Rust is currently experimental and intended for evaluation, prototyping, feedback and Not recommended for production use. Use this crate to explore Rust + DDS integration and help shape the future of Rust support in RTI products.
Do not use Connector for Rust in production.
See the Connector for Rust API for complete API documentation.
You can find documentation for RTI Connext, RTI Connector, and all other RTI products on the following sites:
This crate is intended to be managed through Cargo as a Git repository. To add
rtiddsconnector to your project dependencies, enter:
cargo add \
--git https://www.github.com/rticommunity/rticonnextdds-connector-rustOnce the crate is available, you can start using it in your Rust code. See the
quickstart file located at snippets/quickstart.rs
for a simple example of how to use the RTI Connector API.
Connector for Rust depends on native RTI Connector C libraries and is compatible with the latest release of rticonnextdds-connector. The platform availability and Connext Professional release compatibility is linked to the Connector version and can be found in the release notes.
At build time, the scripts in build.rs will download the required libraries from the
RTI Connector releases in Github. For more information, see the
Connector for Rust API reference.
At runtime, ensure that your system's linker can find the required libraries. This usually involves
placing the native libraries next to the executable or using your system's dynamic library path
environment variable (LD_LIBRARY_PATH on Linux, DYLD_LIBRARY_PATH on macOS, or PATH on Windows).
The crate includes a shapes example compatible with RTI Shapes Demo.
This example can be run as a publisher or as a subscriber. You can read more
about it in the example's README.
The example contains read-only snippets in the snippets module
that demonstrate various features of the Connector API, and are used in the
documentation.
- Technical Issues: For bugs, build problems, or API-related issues, open an issue in GitHub. Provide clear reproduction steps and environment details to help us respond more effectively.
- Product Feedback and General Questions: For non-technical questions, usability feedback, or input on future direction, email [product-feedback@rti.com]. Your feedback helps shape the evolution of Rust support in RTI products.
RTI Connector for Rust is part of the RTI Connext Professional Package. If you have a valid license for the RTI Connext Professional Package, such license shall govern your use of RTI Connector for Rust. All other use of this software shall be governed solely by the terms of RTI’s Software License for Non-Commercial Use #4040, included at the top level of this repository.
With the sole exception of the contents of the "examples" subdirectory, all use of this product is subject to the RTI Software License Agreement included at the top level of this repository. Files within the "examples" subdirectory are licensed as marked within the file.
This software is an experimental (aka "pre-production") product. The Software is provided "as is", with no warranty of any type, including any warranty for fitness for any purpose. RTI is under no obligation to maintain or support the Software. RTI shall not be liable for any incidental or consequential damages arising out of the use or inability to use the software.