Exemplo n.º 1
0
 def execute_with_feedback(goal_handle):
     try:
         goal_handle.publish_feedback('different feedback type')
     except TypeError:
         feedback = Fibonacci.Feedback()
         feedback.sequence = [1, 1, 2, 3]
         goal_handle.publish_feedback(feedback)
     goal_handle.succeed()
     return Fibonacci.Result()
Exemplo n.º 2
0
    def execute_callback(self, goal_handle):
        feedback = Fibonacci.Feedback()
        feedback.sequence = [0, 1]

        for i in range(1, goal_handle.request.order):
            feedback.sequence.append(feedback.sequence[i] + feedback.sequence[i-1])
            goal_handle.publish_feedback(feedback)

        goal_handle.succeed()

        result = Fibonacci.Result()
        result.sequence = feedback.sequence
        return result
Exemplo n.º 3
0
    def execute_goal(goal_handle):
        goal = goal_handle.request

        feedback = Fibonacci.Feedback()
        feedback.sequence = [0, 1]

        for i in range(1, goal.order):
            if not rclpy.ok():
                goal_handle.set_aborted()
                return Fibonacci.Result()

            # Check if the goal was canceled
            if goal_handle.is_cancel_requested:
                goal_handle.set_canceled()
                result = Fibonacci.Result()
                result.sequence = feedback.sequence
                print('Goal was canceled')
                return result

            # Update the sequence.
            feedback.sequence.append(feedback.sequence[i] +
                                     feedback.sequence[i - 1])

            # Publish feedback
            goal_handle.publish_feedback(feedback)
            print('Publishing feedback')

            # 10 Hz update rate
            time.sleep(0.1)

        # Send final result
        result = Fibonacci.Result()
        result.sequence = feedback.sequence
        goal_handle.set_succeeded()
        print('Goal succeeded')
        return result
Exemplo n.º 4
0
 def execute_goal_callback(self, goal_handle):
     goal_handle.succeed()
     return Fibonacci.Result()
Exemplo n.º 5
0
 def execute_with_feedback(goal_handle):
     feedback = Fibonacci.Feedback()
     feedback.sequence = [1, 1, 2, 3]
     goal_handle.publish_feedback(feedback)
     goal_handle.succeed()
     return Fibonacci.Result()
Exemplo n.º 6
0
 def execute_callback(goal_handle):
     # Do not set the goal handles state
     result = Fibonacci.Result()
     result.sequence.extend([1, 1, 2, 3, 5])
     return result
Exemplo n.º 7
0
 def execute_callback(goal_handle):
     self.assertEqual(goal_handle.status, GoalStatus.STATUS_EXECUTING)
     result = Fibonacci.Result()
     result.sequence.extend([1, 1, 2, 3, 5])
     goal_handle.abort()
     return result
Exemplo n.º 8
0
 def execute_callback(gh):
     # The goal should already be in state CANCELING
     self.assertTrue(gh.is_cancel_requested)
     gh.canceled()
     return Fibonacci.Result()
Exemplo n.º 9
0
 def execute_callback(goal_handle):
     # Wait, to give the opportunity to cancel
     time.sleep(3.0)
     self.assertFalse(goal_handle.is_cancel_requested)
     goal_handle.canceled()
     return Fibonacci.Result()
 def action_callback(self, goal_handle):
     goal_handle.succeed()
     return Fibonacci.Result()