Thunderbots Project
Loading...
Searching...
No Matches
MoveTactic Class Reference

#include <move_tactic.h>

Inheritance diagram for MoveTactic:
Collaboration diagram for MoveTactic:

Public Member Functions

 MoveTactic ()
 
void updateControlParams (Point destination, Angle final_orientation, TbotsProto::DribblerMode dribbler_mode=TbotsProto::DribblerMode::OFF, TbotsProto::BallCollisionType ball_collision_type=TbotsProto::BallCollisionType::AVOID, AutoChipOrKick auto_chip_or_kick={AutoChipOrKickMode::OFF, 0}, TbotsProto::MaxAllowedSpeedMode max_allowed_speed_mode=TbotsProto::MaxAllowedSpeedMode::PHYSICAL_LIMIT, TbotsProto::ObstacleAvoidanceMode obstacle_avoidance_mode=TbotsProto::ObstacleAvoidanceMode::AGGRESSIVE)
 
void updateControlParams (Point destination, Angle final_orientation, TbotsProto::MaxAllowedSpeedMode max_allowed_speed_mode, TbotsProto::ObstacleAvoidanceMode obstacle_avoidance_mode)
 
void accept (TacticVisitor &visitor) const override
 
- Public Member Functions inherited from Tactic
 Tactic (const std::set< RobotCapability > &capability_reqs_)
 
virtual bool done () const =0
 
virtual std::string getFSMState () const =0
 
const std::set< RobotCapability > & robotCapabilityRequirements () const
 
std::set< RobotCapability > & mutableRobotCapabilityRequirements ()
 
void setLastExecutionRobot (std::optional< RobotId > last_execution_robot)
 
std::map< RobotId, std::shared_ptr< Primitive > > get (const WorldPtr &world_ptr)
 

Additional Inherited Members

- Protected Attributes inherited from Tactic
std::optional< RobotId > last_execution_robot
 

Detailed Description

The MoveTactic will move the assigned robot to the given destination and arrive with the specified final orientation and speed

Constructor & Destructor Documentation

◆ MoveTactic()

MoveTactic ( )
explicit

Creates a new MoveTactic

Member Function Documentation

◆ accept()

void accept ( TacticVisitor visitor) const
overridevirtual

Accepts a Tactic Visitor and calls the visit function on itself

Parameters
visitorA Tactic Visitor

Implements Tactic.

◆ updateControlParams() [1/2]

void updateControlParams ( Point  destination,
Angle  final_orientation,
TbotsProto::DribblerMode  dribbler_mode = TbotsProto::DribblerMode::OFF,
TbotsProto::BallCollisionType  ball_collision_type = TbotsProto::BallCollisionType::AVOID,
AutoChipOrKick  auto_chip_or_kick = {AutoChipOrKickMode::OFF, 0},
TbotsProto::MaxAllowedSpeedMode  max_allowed_speed_mode = TbotsProto::MaxAllowedSpeedMode::PHYSICAL_LIMIT,
TbotsProto::ObstacleAvoidanceMode  obstacle_avoidance_mode = TbotsProto::ObstacleAvoidanceMode::AGGRESSIVE 
)

Updates the params assuming that the max allowed speed mode is the physical limits

Parameters
destinationThe destination to move to (in global coordinates)
final_orientationThe final orientation the robot should have at the destination
dribbler_modeThe dribbler mode
ball_collision_typehow to navigate around the ball
auto_chip_or_kickThe command to autochip or autokick
max_allowed_speed_modeThe mode of maximum speed allowed
obstacle_avoidance_modeHow safe we should be when avoiding obstacles, particularly enemy robots

◆ updateControlParams() [2/2]

void updateControlParams ( Point  destination,
Angle  final_orientation,
TbotsProto::MaxAllowedSpeedMode  max_allowed_speed_mode,
TbotsProto::ObstacleAvoidanceMode  obstacle_avoidance_mode 
)

Updates the params assuming that the dribbler and chicker and while avoiding the ball

Parameters
destinationThe destination to move to (in global coordinates)
final_orientationThe final orientation the robot should have at the destination
max_allowed_speed_modeThe mode of maximum speed allowed
obstacle_avoidance_modeHow safe we should be when avoiding obstacles, particularly enemy robots

The documentation for this class was generated from the following files: