ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

My question is if there is some sanctioned way of regenerating the messages in "parent" overlays.

No, currently there is no such way.

I'm leaning toward identifying the installation tree of rosidl_generator_c and search all messages in there, but it seems inelegant, and it would miss other hypothetical overlays' messages.

There is certainly a better approach for this. All message packages already register themselves at the resource index (see the directory <install>/share/ament_index/resource_index/rosidl_interfaces). Each mesage package only exports all messages / services using a CMake config file (e.g. <install>/share/std_msgs/cmake/rosidl_cmake-extras.cmake). It should be easily doable to provide that information through the resource index to make it available in non-CMake context.