NimbRo ROS Soccer Package
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
game_default_ball_handling.h
1 // Walk and kick game state: Default ball handling
2 // Author: Philipp Allgeuer <pallgeuer@ais.uni-bonn.de>
3 
4  // Ensure header is only included once
5 #ifndef GAME_DEFAULT_BALL_HANDLING_H
6 #define GAME_DEFAULT_BALL_HANDLING_H
7 
8 // Includes
9 #include <walk_and_kick/wak_game_state.h>
10 
11 // Walk and kick namespace
12 namespace walk_and_kick
13 {
20  {
21  public:
22  // Constructor
23  GameDefaultBallHandling(WAKConfig& config, const SensorVars& SV, const WAKGameShared& WGS, int ID);
24 
25  // Execute function
26  virtual void execute(GameVars& GV, const GameVars& lastGV, bool justActivated);
27 
28  // Ball target calculation using a local ball position
29  void calcCompassBallTarget(GameVars& GV, const Vec2f& ballDir, int goalSign) const;
30 
31  // Ball target calculation using a global ball pose
32  void calcPoseBallTarget(GameVars& GV, const Vec2f& ballPose, int goalSign) const;
33  bool ballInCorner(const Vec2f& ballPoseGS, float postY, int cornerSign) const;
34 
35  protected:
36  // Handle activation function
37  virtual void handleActivation(bool nowActive);
38  };
39 }
40 
41 #endif
42 // EOF
Configuration struct for the walk and kick node.
Definition: wak_config.h:20
An interface class for encapsulating all of the ROS input data to the walk and kick node...
Definition: wak_sensor_vars.h:29
A class that shares the required walk and kick variables amongst the game state classes.
Definition: wak_game_shared.h:31
A walk and kick game state that implements default ball handling for playing soccer.
Definition: game_default_ball_handling.h:19
The base class for all walk and kick game states.
Definition: wak_game_state.h:26
An interface class for encapsulating all of the data that the walk and kick game states should comman...
Definition: wak_game_vars.h:21