Example #1
0
 def callback(parameter_list):
     nonlocal callback_called
     callback_called = True
     r = SetParametersResult(successful=True)
     for p in parameter_list:
         if p.type_ != Parameter.Type.INTEGER:
             r.successful = False
             r.reason = 'Integer parameters only'
             return r
         if p.value % 2 != 0:
             r.successful = False
             r.reason = 'Integer must be even'
             return r
     return r
Example #2
0
 def _on_set_parameters(self, params):
     """Handle Parameter events especially for side."""
     result = SetParametersResult()
     try:
         for param in params:
             if param.name == "side":
                 self.get_logger().warn(f"Side changed {param.value}")
                 self.side = param
             else:
                 setattr(self, param.name, param)
         result.successful = True
     except MatchStartedException as e:
         result.reason = e
     return result
Example #3
0
 def _on_set_parameters(self, params):
     """Handle Parameter events especially for side"""
     result = SetParametersResult()
     try:
         for param in params:
             if param.name == "side":
                 self.get_logger().warn(f"Side changed {param.value}")
                 self.side = param
             else:
                 setattr(self, param.name, param)
         (
             self.robot_pose.pose.position.x,
             self.robot_pose.pose.position.y,
             theta,
         ) = self.fetchStartPosition()
         self.robot_pose.pose.orientation = euler_to_quaternion(theta)
         self.update_transform()
         result.successful = True
     except BaseException as e:
         result.reason = e
     return result