-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Include option to use PointCloud Transport #5264
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
base: main
Are you sure you want to change the base?
Include option to use PointCloud Transport #5264
Conversation
f3e3f8f
to
33dbf96
Compare
Notes:
|
@elsayedelsheikh, your PR has failed to build. Please check CI outputs and resolve issues. |
@SteveMacenski Any notes about re-initializing the subscriber in |
@SteveMacenski Hey Steve, Can you have a quick look on my implementation? |
@elsayedelsheikh thanks for taking this on! It might be nice to change the Transport code to have this constructor be templated by Maybe there are a couple of PRs to PC2 Transport needed to make this possible? Such as :
It strikes me that perhaps they are not included for a technical reason but rather just not feature parallel to what we use now. They could possibly be implemented :-) Especially if these features are in the Image Transport (you should check), in which case they are direct analogs to be added here that should be easy merges for the maintainers. Might be good to look over the issues or file an issue about some of these items |
My Pleasure, I was waiting for this :-)
Our first implementation was actually based on templated constructor but we followed this ros-perception/point_cloud_transport#109 (review) similar to ros2/geometry2#698 which recommends avoiding templates.
OK, Sure! |
It might be good to consolidate a list of 'wants' and 'proposed changes' and file a ticket with me CCed in it in PC2 Transport for us to discuss with the maintainers. I really hate working with the node interfaces in the application code (i.e. Nav2) since I believe it should be hidden from me as a developer. Templates do that quite nicely. I'm not saying we have to remove the current interface constructors, but it would be nice to have a template option as well that calls the interface once in the library. They essentially already do that here but only for |
Agreed! |
33dbf96
to
ad5fea7
Compare
Signed-off-by: ElSayed ElSheikh <elsayed.elsheikh97@gmail.com>
This ready for a review again? |
Yeah, I tested the new signatures and it works fine! |
@elsayedelsheikh, your PR has failed to build. Please check CI outputs and resolve issues. |
Basic Info
Description of contribution in a few bullet points
Include option to use point_cloud_transport so that it works out of the box for the users.
Description of documentation updates required from your changes
New parameter
point_cloud_transport
to tune with default value set to"raw"
that works with regularPointCloud2
without any compression.Description of how this change was tested
I used turtelbot4 gazebo simulation and used depth_image_processing to publish
PointCloud2
out of (rgb and depth) images, my launch file:Future work that may be required in bullet points
For Maintainers: