This repository has been archived by the owner on Feb 21, 2021. It is now read-only.
[Issue #199] Refactorization of Turtlebot plugin for Gazebo. #528
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Here there is the total refactorization of the Turtlebot plugin. The code is now more clean and well structured, thus more readable. It is structured as follows (this refactorization follows the architecture of the quadrotor2 plugin by @varhub):
turtlebotplugin.cc
(analogous toquadrotorplugin.cc
), which initialize both control, sensors and communication classes.turtlebotsensors.cc
(analogous toquadrotorsensors.cc
), which control everything related with the sensors of the robot (creation, management - update - and destruction). In this case we have:turtlebotcontrol.cc
(analogous toquadrotorcontrol.cc
), which control everything related with the actuators of the turtlebot, in this case motors.turtlebotice.cc
(analogous toquadrotorice.cc
). This class have a particularity, it allows to connect all the interfaces of the robot with a single endpoint, like it already happens in quadrotor2 plugin. This feature is the motivation for this refactorization.This PR also includes a proper modification for the gazebo turtlebot model (.sdf file) so it can load the new plugin instead the ancient ones.
It only rest to cleanup the PR and update the copyright.