Function rosidl_buffer_backend_registry::notify_endpoint_discovered

Function Documentation

inline std::unordered_map<std::string, bool> rosidl_buffer_backend_registry::notify_endpoint_discovered(const std::unordered_map<std::string, std::shared_ptr<rosidl::BufferBackend>> &backend_instances, const rmw_topic_endpoint_info_t &endpoint_info, const std::vector<rmw_topic_endpoint_info_t> &existing_endpoints, std::unordered_map<std::string, std::vector<std::set<uint32_t>>> &backend_endpoint_groups, const std::unordered_map<std::string, std::string> &endpoint_supported_backends)

Notify every loaded backend that a remote endpoint has been discovered and collect compatibility / grouping results.

Parameters:
  • backend_instances[in] Map of backend name to backend instance.

  • endpoint_info[in] Information about the discovered endpoint.

  • existing_endpoints[in] Endpoints already known on this topic.

  • backend_endpoint_groups[out] Updated per-backend endpoint GID-hash groupings (cleared to empty for null backends).

  • endpoint_supported_backends[in] Backend-type-to-metadata map advertised by the discovered endpoint.

Returns:

Map of backend name to compatibility flag (false for null backends).