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

#include <assigned_tactics_play.h>

Inheritance diagram for AssignedTacticsPlay:
Collaboration diagram for AssignedTacticsPlay:

Public Member Functions

 AssignedTacticsPlay (TbotsProto::AiConfig config)
 
void getNextTactics (TacticCoroutine::push_type &yield, const WorldPtr &world_ptr) override
 
void updateTactics (const PlayUpdate &play_update) override
 
void updateControlParams (std::map< RobotId, std::shared_ptr< Tactic > > assigned_tactics, std::map< RobotId, std::set< TbotsProto::MotionConstraint > > motion_constraints=std::map< RobotId, std::set< TbotsProto::MotionConstraint > >())
 
std::unique_ptr< TbotsProto::PrimitiveSet > get (const WorldPtr &world_ptr, const InterPlayCommunication &, const SetInterPlayCommunicationCallback &) override
 
- Public Member Functions inherited from Play
 Play (TbotsProto::AiConfig ai_config, bool requires_goalie)
 
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 runs assigned tactics

Member Function Documentation

◆ get()

std::unique_ptr< TbotsProto::PrimitiveSet > get ( const WorldPtr &  world_ptr,
const InterPlayCommunication inter_play_communication,
const SetInterPlayCommunicationCallback &  set_inter_play_communication_fun 
)
overridevirtual

Gets Primitives from the Play given the the world, and inter-play communication

Parameters
worldThe updated world
inter_play_communicationThe inter-play communication struct
set_inter_play_communication_funThe callback to set the inter-play communication struct
Returns
the PrimitiveSet to execute

Reimplemented from Play.

◆ 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 ( std::map< RobotId, std::shared_ptr< Tactic > >  assigned_tactics,
std::map< RobotId, std::set< TbotsProto::MotionConstraint > >  motion_constraints = std::map<RobotId, std::set<TbotsProto::MotionConstraint>>() 
)

Update assigned tactics for this play

Parameters
assigned_tacticsThe assigned tactics to run
motionconstraints to override on a per robot id basis (if not set, then build motion constraints from tactic and gamestate)

◆ 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: