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
Implement UdpSocket for both Syn. & Async modes (Send & Receive functionality) #31
Conversation
There is still a requirement to get |
|
Current PR Status:
|
@reza-ebrahimi is this desired to move was this done to use |
@flynneva Both serial port and UDP socket are using This is my plan for project structure:
|
i know @JWhitleyWork wanted to still have the option to be able to inherit the |
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.
Added high-level concerns/problems with this PR.
@reza-ebrahimi i think you're desire to use a single |
@reza-ebrahimi There are a lot of linting and test errors on your branch. To view the errors, please run |
@JWhitleyWork ive fixed most of them on my branch, i can make a PR from mine into @reza-ebrahimi to knock out two birds with one stone |
@flynneva That would be awesome! Thanks! Mention me in it and I'll take a quick look as well, if you want. |
@JWhitleyWork Is there any tool for these lint errors to do some of them automatically (Such as formatting)? |
@flynneva If you are interested, Please work on serial driver using this package |
@reza-ebrahimi i just made a PR to your 'main' branch. If you merge it, it should fix the linter errors for this PR. The whole point of git is to be able to track changes in parallel and build towards a common goal. We're all just trying to get this package off the ground here....same team. |
@flynneva PRs are just for pushing changes between branches by PR creator, They are not a tool for collaboration between different people, This is not a best practice. Besides if you are trying to push your changes to this PR, that's Ok from my side. |
@reza-ebrahimi I think we're all on the same page here. I've made a PR to your main branch, I couldn't get the io_context lib to link correctly so maybe you or @JWhitleyWork could help me out there. that pr also fixes the lint errors. here is a link to it over on @reza-ebrahimi's repo. once merged, the commits/changes will be here on this PR |
Since this PR is just for udp_driver please just push your linter fixes in a different PR. I'm recommending create another PR for your changes on serial driver. |
@reza-ebrahimi to be fair you just mentioned above that you wanted to use the the PR I just made not only fixes the linter errors but also begins to move the if you'd like i can remove the |
@flynneva Please just add lint errors fixes to this PR. Your changes contains entities like udp_component that doesn't related to current design in this PR. |
there are other minor changes (like moving |
@reza-ebrahimi You're being somewhat difficult about this. @flynneva is trying to help by making your branch work correctly and fixing the problems that you either haven't or won't. It's fine for him to remove the additional code for Once @flynneva completes his PR to your branch, please review his changes. If they are not acceptable, you at least need to fix the linting and formatting errors in this PR. |
@reza-ebrahimi So here's the root of the problem: You made your changes based on a very old version of the |
@JWhitleyWork My fork is not old @JWhitleyWork , It was based on master when I started to work on, The problem is your force push to my fork 2 days ago: 76b9626 You can check it in logs of this PR:
|
@JWhitleyWork I applied linter fixes again. Please review it. $ colcon build --packages-select udp_driver && colcon test --packages-select udp_driver && colcon test-result --verbose
Starting >>> udp_driver
Finished <<< udp_driver [0.27s]
Summary: 1 package finished [0.37s]
Starting >>> udp_driver
Finished <<< udp_driver [10.8s]
Summary: 1 package finished [10.9s]
Summary: 100 tests, 0 errors, 0 failures, 0 skipped |
@reza-ebrahimi @JWhitleyWork @flynneva jumping a little late to the party, but I have two questions:
|
@esteve switching to just the plain Asio would make a lot of sense moving forward. Make a PR? And yes I'm working on switching to a more generic receiver and sender node this week |
@flynneva The current design supports every message type, Just implementing For namespace drivers
{
namespace common
{
void convertToRos2Message(const MutSocketBuffer & in, sensor_msgs::NavSatFix & out)
{
}
void convertFromRos2Message(const sensor_msgs::NavSatFix::SharedPtr & in, MutSocketBuffer & out)
{
}
} // namespace common
} // namespace drivers |
Much appreciated, gentlemen! Yes, I agree that the stand-alone ASIO is a better choice. |
This PR:
boost::asio
library inUdpSender
class.UdpReceiver
class.This PR closes issue #12.