Add rosidl_buffer_backend_registry#944
Conversation
17c8cc5 to
aedd7d8
Compare
3164108 to
e0d2f52
Compare
ba833f7 to
82cfc48
Compare
e0d2f52 to
9d7675f
Compare
82cfc48 to
417347c
Compare
hidmic
left a comment
There was a problem hiding this comment.
Barring aux info naming, this seems correct.
ead744d to
0e2cad0
Compare
fce6039 to
6375777
Compare
0e2cad0 to
53d40ac
Compare
b4e6596 to
4dcb08e
Compare
53d40ac to
5ed9b0b
Compare
4dcb08e to
897f0bc
Compare
96c30a6 to
34f0a81
Compare
0a33311 to
9f1a637
Compare
34f0a81 to
72d868e
Compare
9f1a637 to
4a1fce2
Compare
72d868e to
abad556
Compare
4a1fce2 to
3a47ecd
Compare
abad556 to
05275b6
Compare
3a47ecd to
2ac2f2a
Compare
05275b6 to
80bc56b
Compare
2ac2f2a to
a47b7a6
Compare
80bc56b to
446c257
Compare
a47b7a6 to
dbc5b74
Compare
446c257 to
191d7e5
Compare
Signed-off-by: CY Chen <cyc@nvidia.com>
Signed-off-by: CY Chen <cyc@nvidia.com>
Signed-off-by: CY Chen <cyc@nvidia.com>
Signed-off-by: CY Chen <cyc@nvidia.com>
Signed-off-by: CY Chen <cyc@nvidia.com>
Signed-off-by: CY Chen <cyc@nvidia.com>
…ique pointer Signed-off-by: CY Chen <cyc@nvidia.com>
Signed-off-by: CY Chen <cyc@nvidia.com>
cecf61b to
b13d76f
Compare
|
Pulls: #944 |
Signed-off-by: CY Chen <cyc@nvidia.com>
|
Pulls: #944 |
Description
This pull request adds the
rosidl_buffer_backend_registrypackage — a singleton registry using pluginlib to discover and loadBufferBackendplugins at runtime. This package consolidates buffer backend initialization logic that RMW implementations need duringrmw_init/rmw_shutdown, eliminating the need for each RMW to implement its own backend loading.This pull request consists of the following key changes:
buffer_backend_registry.hpp/cpp): Singleton that uses pluginlib to discover all installedBufferBackendplugin classes and manage their lifecycle.buffer_backend_loader.hpp/cpp): Providesinitialize_buffer_backends()andshutdown_buffer_backends()— consolidated entry points that load backend plugins, populate the globalBufferDescriptorOpsandDescriptorSerializersmaps inrosidl_typesupport_fastrtps_cpp, and clean up on shutdown. RMW implementations call these duringrmw_init/rmw_shutdowninstead of maintaining their own copies.Is this user-facing behavior change?
This pull request does not change existing behavior. It provides infrastructure for loading buffer backend plugins, which has no effect until an RMW implementation calls the initialization functions and a backend plugin is installed.
Did you use Generative AI?
Yes. Claude (claude-4.6-opus) via Cursor was used to assist with creating an initial prototype version of the changes contained in this PR.
Additional Information
This PR is part of the broader ROS 2 native buffer feature introduced in this post.