#include <nros_generated.h>
Phase 115.C — C-side mirror of nros_rmw::custom_transport::NrosTransportOps. Same #[repr(C)] layout — single ABI, no parallel definitions.
Field semantics:
- abi_version: must be [NROS_TRANSPORT_OPS_ABI_VERSION_V1] (Phase 115.A.2).
- _reserved: padding for future minor-version detection. Set to 0.
- user_data: opaque caller context, threaded back into every callback as the first argument. Lifetime: must outlive the transport's active period (i.e. until close returns).
- open: open the underlying medium. params is opaque per-transport metadata supplied by the caller (e.g. UART baud rate). May be NULL. Returns 0 on success, negative rcl_ret_t on failure.
- close: tear the transport down. Complement of open.
- write: send len bytes from buf. Returns 0 on success, negative rcl_ret_t on failure.
- read: receive up to len bytes within timeout_ms. Returns the non-negative byte count on success, negative rcl_ret_t on error / timeout.
◆ _reserved
| uint32_t nros_transport_ops_t::_reserved |
◆ abi_version
| uint32_t nros_transport_ops_t::abi_version |
◆ close
| void(* nros_transport_ops_t::close) (void *user_data) |
◆ open
◆ read
| int32_t(* nros_transport_ops_t::read) (void *user_data, uint8_t *buf, size_t len, uint32_t timeout_ms) |
◆ user_data
| void* nros_transport_ops_t::user_data |
◆ write
| rcl_ret_t(* nros_transport_ops_t::write) (void *user_data, const uint8_t *buf, size_t len) |
The documentation for this struct was generated from the following file: