Skip to content

Conversation

@nnarain
Copy link

@nnarain nnarain commented Feb 2, 2025

Heya.

This PR makes the diagnostic_aggregator node composable (see #321 )

Summary of changes:

  • Have the Aggregator class inherit from rclcpp::Node. Removing the std::shared_ptr<Node> member variable.
  • Change the Analyzer base class to accept a Node& instead of the std::shared_ptr
  • Register the aggregator as a rclcpp_component
  • analyzer_group.cpp is moved to the analyzers library
    • The plugins xml file incorrectly lists the AnalyzerGroup plugin as existing the analyzers library. When composing the nodes I found that AnalyzerGroup would not load. I assume it has worked up to this point because everything was linked into the same executable.
  • Added compose example launch file.

@ct2034 ct2034 added enhancement This tackles a new feature of the code (and not a bug) ros2 PR tackling a ROS2 branch labels Feb 10, 2025
@frozenreboot
Copy link

Hi @nnarain,

Is this PR still being worked on?
If you are busy, I’d be happy to pick it up, resolve the merge conflicts, and submit a new PR referencing your work.
Please let me know!

@nnarain
Copy link
Author

nnarain commented Jan 3, 2026

hey @frozenreboot

Ya I should be able to get back to this. If I don't find the time this week I'll give you a ping.

Hey @ct2034 any initial feedback on this PR?

* the aggregator will report the error and publish it in the aggregated output.
*/
class Aggregator
class Aggregator : public rclcpp::Node
Copy link
Contributor

Choose a reason for hiding this comment

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

This is not required for composable nodes.
Franky: I would advise against it. It's hard if you want this class as a member of another class.

This pr would be much smaller if you kept the node member and the logger member.

@nnarain nnarain force-pushed the issue321-composable branch from 7ea3c1d to 933726f Compare January 4, 2026 02:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement This tackles a new feature of the code (and not a bug) ros2 PR tackling a ROS2 branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants