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

#include <defense_play.h>

Inheritance diagram for DefensePlay:
Collaboration diagram for DefensePlay:

Public Member Functions

 DefensePlay (const TbotsProto::AiConfig &config)
 
void getNextTactics (TacticCoroutine::push_type &yield, const WorldPtr &world_ptr) override
 
void updateTactics (const PlayUpdate &play_update) override
 
void updateControlParams (TbotsProto::MaxAllowedSpeedMode max_allowed_speed_mode=TbotsProto::MaxAllowedSpeedMode::PHYSICAL_LIMIT)
 
- Public Member Functions inherited from Play
 Play (TbotsProto::AiConfig ai_config, bool requires_goalie)
 
virtual std::unique_ptr< TbotsProto::PrimitiveSet > get (const WorldPtr &world_ptr, const InterPlayCommunication &inter_play_communication, const SetInterPlayCommunicationCallback &set_inter_play_communication_fun)
 
const std::map< std::shared_ptr< const Tactic >, RobotId > & getTacticRobotIdAssignment () const
 
virtual std::vector< std::string > getState ()
 

Additional Inherited Members

- Protected Attributes inherited from Play
TbotsProto::AiConfig ai_config
 
std::shared_ptr< GoalieTacticgoalie_tactic
 
std::map< std::shared_ptr< const Tactic >, RobotId > tactic_robot_id_assignment
 
std::map< RobotId, TrajectoryPathrobot_trajectories
 
TbotsProto::ObstacleList obstacle_list
 
TbotsProto::PathVisualization path_visualization
 

Detailed Description

Play that sets up defenders to block shots on net and intercept passes between enemy robots

Member Function Documentation

◆ getNextTactics()

void getNextTactics ( TacticCoroutine::push_type &  yield,
const WorldPtr &  world_ptr 
)
overridevirtual

This function yields a list of shared_ptrs to the Tactics the Play wants to run at this time, in order of priority. This yield happens in place of a return.

TODO (#2359): delete once all plays are not coroutines

Parameters
yieldThe coroutine push_type for the Play
worldThe current state of the world

Implements Play.

◆ updateControlParams()

void updateControlParams ( TbotsProto::MaxAllowedSpeedMode  max_allowed_speed_mode = TbotsProto::MaxAllowedSpeedMode::PHYSICAL_LIMIT)

Update control params for this play

Parameters
max_allowed_speed_modethe mode of maximum speed allowed

◆ updateTactics()

void updateTactics ( const PlayUpdate play_update)
overridevirtual

Updates the priority tactic vector with new tactics

Parameters
play_updateThe PlayUpdate struct that contains all the information for updating the tactics

Reimplemented from Play.


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