FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Expose rosidl buffer backend metadata in TopicEndpointInfo by nvcyc · Pull Request #3165 · ros2/rclcpp · GitHub

/ rclcpp Public

Expose rosidl buffer backend metadata in TopicEndpointInfo - #3165

Draft
nvcyc wants to merge 2 commits into
rollingfrom
nvcyc/buffer_backend_topic_info
Draft

Expose rosidl buffer backend metadata in TopicEndpointInfo#3165
nvcyc wants to merge 2 commits into
rollingfrom
nvcyc/buffer_backend_topic_info

Conversation

nvcyc commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Description

Expose buffer backend metadata through rclcpp::TopicEndpointInfo.

This lets C++ users of get_publishers_info_by_topic() and get_subscriptions_info_by_topic() access backend support metadata provided by the RMW graph.

Is this user-facing behavior change?

Yes. C++ graph introspection code can now read rosidl buffer backend support information from topic endpoint info.

Did you use Generative AI?

Yes. GPT-5.5 in Cursor was used to help draft changes in this pull request.

Additional Information

Depending on:

Copy link
Copy Markdown
Collaborator

Can you give an example of what real world metadata would look like ?

nvcyc commented Jun 5, 2026

Copy link
Copy Markdown
Contributor Author

Each vendor rosidl buffer backend can include a string that contains backend specific information/data (what we call as backend metadata) in the endpoint information that it wants to share with the same type of backends in other endpoints.

While the actual backend metadata really depends on each vendor's needs, a good example would be for a backend to share information like the GPU resources an endpoint has access to so the backends in other endpoints can determine if it's compatible or not.

fujitatomoya self-assigned this Jun 8, 2026

fujitatomoya left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

lgtm with green CI.

Copy link
Copy Markdown
Collaborator

I got one point here, is this supposed to be human readable or is it just binary data ?

jmachowinski commented Jun 19, 2026
edited
Loading

Copy link
Copy Markdown
Collaborator

My point would be, if it is binary, switch to

std::vector<std::byte>

instead of string.

nvcyc commented Jun 23, 2026

Copy link
Copy Markdown
Contributor Author

The metadata exposed here is intended to be textual (human readable) that matches what a backend's BufferBackend::get_backend_metadata() returns as std::string, thus keeping it std::string can fulfill our needs here.

Signed-off-by: CY Chen <cyc@nvidia.com>

mergify Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

nvcyc marked this pull request as draft July 30, 2026 08:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants


Back | FazBrowse Home | New Git URL