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

#include <defense_play_base.h>

Inheritance diagram for DefensePlayFSMBase:

Classes

struct  ControlParams
 

Public Member Functions

DEFINE_PLAY_UPDATE_STRUCT_WITH_CONTROL_AND_COMMON_PARAMS DefensePlayFSMBase (TbotsProto::AiConfig ai_config)
 

Protected Member Functions

void setUpCreaseDefenders (int num_crease_defenders)
 
void setUpPassDefenders (int num_pass_defenders)
 
void setAlignment (const Update &event, const std::vector< DefenderAssignment > &crease_defender_assignments, TbotsProto::BallStealMode ball_steal_mode)
 
void updatePassDefenderControlParams (std::vector< DefenderAssignment > &pass_defender_assignments, TbotsProto::BallStealMode ball_steal_mode)
 

Protected Attributes

TbotsProto::AiConfig ai_config
 
std::vector< std::shared_ptr< CreaseDefenderTactic > > crease_defenders
 
std::vector< std::shared_ptr< PassDefenderTactic > > pass_defenders
 

Detailed Description

Struct containing frequently shared functions of the defense play class

Constructor & Destructor Documentation

◆ DefensePlayFSMBase()

DefensePlayFSMBase ( TbotsProto::AiConfig  ai_config)
explicit

Creates a play FSM with defensive methods

Parameters
ai_configthe play config for this play FSM

Member Function Documentation

◆ setAlignment()

void setAlignment ( const Update &  event,
const std::vector< DefenderAssignment > &  crease_defender_assignments,
TbotsProto::BallStealMode  ball_steal_mode 
)
protected

Helper function to set up alignments for the crease defense robots and control params

Parameters
eventthe FSM event
crease_defender_assignmentscrease defender assignments to be aligned
ball_steal_modecrease defender ball steal behaviour/aggressiveness

◆ setUpCreaseDefenders()

void setUpCreaseDefenders ( int  num_crease_defenders)
protected

Helper function to set up crease defender tactic vector members

Parameters
num_crease_defendersthe number of crease defender tactics to set

◆ setUpPassDefenders()

void setUpPassDefenders ( int  num_pass_defenders)
protected

Helper function to set up pass defender tactic vector members

Parameters
num_pass_defendersthe number of pass defender tactics to set

◆ updatePassDefenderControlParams()

void updatePassDefenderControlParams ( std::vector< DefenderAssignment > &  pass_defender_assignments,
TbotsProto::BallStealMode  ball_steal_mode 
)
protected

Helper function to update all given pass defender control params

Parameters
pass_defender_assignmentspass defender assignments to be updated
ball_steal_modeThe pass defender's aggressiveness towards the ball

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