-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove plugin interface and support custom sensors #90
Conversation
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Did you try to run any test on ign-gazebo ? or Did you try to run All sensor plugins are failing
When I run for example
This is the issue why I think we should use GLOBAL instead of LOCAL. |
Argh, no I hadn't, and now I see it doesn't work. It was too good to be true. I'll look into it more. I'm having a hard time trying out #38 because it's outdated, so I'm pulling changes from it. I tried fixing conflicts but I must have done something wrong because it wasn't working for me 😕 |
I will update my PR |
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
Signed-off-by: Louise Poubel <louise@openrobotics.org>
I opened this for review.
|
Signed-off-by: Louise Poubel <louise@openrobotics.org>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Signed-off-by: Louise Poubel <louise@openrobotics.org>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ups still some style issues https://github.com/ignitionrobotics/ign-sensors/pull/90/checks?check_run_id=3293527185
Codecov Report
@@ Coverage Diff @@
## main #90 +/- ##
==========================================
+ Coverage 77.22% 77.51% +0.28%
==========================================
Files 23 24 +1
Lines 2358 2326 -32
==========================================
- Hits 1821 1803 -18
+ Misses 537 523 -14
Continue to review full report at Codecov.
|
Style issues are resolved and CI is all happy
As mentioned on the migration guide, it wasn't possible to tick-tock all of the API. So once this is merged, downstream (i.e.
|
Requires gazebosim/gz-plugin#35This does a lot of the same things as #38, except for:I got rid of theIGN_SENSORS_REGISTER_SENSOR
in favor of usingIGNITION_ADD_PLUGIN
directly. That matches better what we've been doing on other libraries and simplifies some registration details. The downside is that it isn't being tick-tocked yet. But I wonder if this was even usable by downstream users, considering Support custom sensors #9. What do you think, @iche033 ?I didn't need to change any tests or anything in theManager
There's no assumption that the interface we want is the last one, we iterate until finding the correct interface.I only tested this locally, curious to see how it will work on CI.6 months later...
This PR now depends on gazebosim/sdformat#652
This pull request started as a migration from Ignition Common plugins to Ignition Plugins. As we iterated on it, it became clear that it wasn't feasible to link against the sensor plugins, and then load them at runtime one more time, which is what the old implementation was doing.
We can't escape linking against each sensor if we want to use their APIs in Gazebo systems. But we can live without the plugin interface. With that in mind, we decided to completely remove the plugin interface instead of migrating it to Ignition Plugin.
See the migration guide for more information on what has changed, and the new examples for how to use the current APIs, including an example of how to implement custom sensors.
Let me know what you think, @ahcorde