Skip to content
Snippets Groups Projects
Commit fc130451 authored by Louis Kevin Fink's avatar Louis Kevin Fink
Browse files

fix: add result check in succeeded

parent 043728e6
No related branches found
No related tags found
No related merge requests found
......@@ -71,14 +71,14 @@ class JetRacerController(Node):
goal_handle.succeed()
return Turn.Result()
self._execute_turn(request.theta, goal_handle)
result_turned: float = self._execute_turn(request.theta, goal_handle)
result = Turn.Result()
result.turned = request.theta
result.turned = result_turned
return result
def _execute_turn(self, theta: float, goal_handle):
def _execute_turn(self, theta: float, goal_handle) -> float:
old_speed = self._speed
if self._speed == 0:
......@@ -105,7 +105,7 @@ class JetRacerController(Node):
self._steering_angle = 0.0
self._publish_to_cmd_vel()
goal_handle.canceled()
return
return 0.0
self._steering_angle = 0.0
if self._speed != 0.0:
......@@ -114,6 +114,7 @@ class JetRacerController(Node):
self._publish_to_cmd_vel()
goal_handle.succeed()
return theta
def _cancel_turn_callback(self, goal_handle):
......
......@@ -135,7 +135,9 @@ class TurnActionClientAsync(Node):
def _get_result_callback(self, future):
self._result = future.result().result
self._status = GoalStatus.STATUS_SUCCEEDED
if self._result.turned != 0.0:
self._status = GoalStatus.STATUS_SUCCEEDED
logger.debug("Turn request marked as succeeded!")
def _cancel_response_callback(self, future):
......@@ -181,6 +183,10 @@ class TurnController:
:type theta: float
"""
if theta == 0.0:
self._turn_action_client.cleanup()
return
self._turn_action_client.send_turn_goal_async(theta)
while self._turn_action_client.is_turn_goal_active():
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment