Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

RobotPoseSymbols Class Reference

The Xabsl2 symbols that are defined in "robot-pose-symbols.xml". More...

#include <RobotPoseSymbols.h>

Inheritance diagram for RobotPoseSymbols:

Inheritance graph
[legend]
Collaboration diagram for RobotPoseSymbols:

Collaboration graph
[legend]
List of all members.

Input symbols

double getAngleToCenterOfField ()
double getAngle ()
double getAngleToBorder ()
double getDistanceToOwnGoal ()
double getDistanceToOwnPenaltyArea ()
double getDistanceToOpponentGoal ()
double getDefensiveSupporterRobotPoseY ()
double getStrikerRobotPoseY ()
double updateGoalieDefendPosition ()
double getGoalieDefendAngle ()
double getGoalieDefendPosY ()
double getGoalieDefendPosX ()
double getGoalieDefendStepPosX ()
double getGoalieDefendStepPosY ()
double getGoalieDefendStepAngle ()
void computeGoalieDefendMinPos (const double &alpha, const RobotDimensions &rD)
double ballPosX
double ballPosY

Public Member Functions

 RobotPoseSymbols (const BehaviorControlInterfaces &interfaces)
void registerSymbols (Xabsl2Engine &engine)
 registers the symbols at an engine

void update ()
 updates the symbols


Private Types

enum  Angles {
  angleToCenterOfField, goalieGoalKickAngle, bestAngleToOpponentGoal,
  bestAngleToOpponentGoalNoObstacles, angleToPointBehindOpponentGoal, bestAngleAwayFromOwnGoal,
  bestAngleAwayFromOwnGoalNoObstacles, numberOfAngles
}
 The angle that is shown by the top white LEDs. More...


Private Member Functions

void calculateAngles ()

Private Attributes

Angles angleShownByLEDs
double angles [numberOfAngles]
double goalieDefendAngle
double goalieDefendPositionX
double goalieDefendPositionY
double goalieDefendStepPosX
double goalieDefendStepPosY
double goalieDefendStepAngle
double goalieDefendRadiusMax
double goalieDefendRadiusMin
double goalieDefendMinPosX
double goalieDefendMinPosY
double goalieDefendRadius

Detailed Description

The Xabsl2 symbols that are defined in "robot-pose-symbols.xml".

Author:
Martin Lötzsch

Definition at line 22 of file RobotPoseSymbols.h.


Member Enumeration Documentation

enum RobotPoseSymbols::Angles [private]
 

The angle that is shown by the top white LEDs.

Enumeration values:
angleToCenterOfField 
goalieGoalKickAngle 
bestAngleToOpponentGoal 
bestAngleToOpponentGoalNoObstacles 
angleToPointBehindOpponentGoal 
bestAngleAwayFromOwnGoal 
bestAngleAwayFromOwnGoalNoObstacles 
numberOfAngles 

Definition at line 63 of file RobotPoseSymbols.h.


Constructor & Destructor Documentation

RobotPoseSymbols::RobotPoseSymbols const BehaviorControlInterfaces interfaces  ) 
 

Definition at line 15 of file RobotPoseSymbols.cpp.


Member Function Documentation

void RobotPoseSymbols::registerSymbols Xabsl2Engine engine  ) 
 

registers the symbols at an engine

Definition at line 21 of file RobotPoseSymbols.cpp.

References ballPosX, ballPosY, RobotPose::distanceToBorder, getAngle(), getAngleToBorder(), getDefensiveSupporterRobotPoseY(), getDistanceToOpponentGoal(), getDistanceToOwnGoal(), getDistanceToOwnPenaltyArea(), getGoalieDefendAngle(), getGoalieDefendPosX(), getGoalieDefendPosY(), getGoalieDefendStepAngle(), getGoalieDefendStepPosX(), getGoalieDefendStepPosY(), getStrikerRobotPoseY(), RobotPose::getValidity(), Xabsl2Symbols::registerDecimalInputFunction(), Xabsl2Symbols::registerDecimalInputFunctionParameter(), Xabsl2Symbols::registerDecimalInputSymbol(), Pose2D::translation, updateGoalieDefendPosition(), Vector2< double >::x, and Vector2< double >::y.

Referenced by GT2004BehaviorControl::registerSymbolsAndBasicBehaviors().

Here is the call graph for this function:

void RobotPoseSymbols::update  ) 
 

updates the symbols

Definition at line 69 of file RobotPoseSymbols.cpp.

Referenced by GT2004BehaviorControl::execute().

double RobotPoseSymbols::getAngleToCenterOfField  ) 
 

calculates the value for the symbol "robot-pose.best-angle-away-from-own-goal"

double RobotPoseSymbols::getAngle  ) 
 

A function for the symbol "robot-pose.angle"

Definition at line 73 of file RobotPoseSymbols.cpp.

References Pose2D::rotation, and toDegrees().

Referenced by registerSymbols().

Here is the call graph for this function:

double RobotPoseSymbols::getAngleToBorder  ) 
 

A function for the symbol "robot-pose.angle-to-border"

Definition at line 78 of file RobotPoseSymbols.cpp.

References RobotPose::angleToBorder, and toDegrees().

Referenced by registerSymbols().

Here is the call graph for this function:

double RobotPoseSymbols::getDistanceToOwnGoal  ) 
 

A function for the symbol "robot-pose.distance-to-own-goal"

Definition at line 84 of file RobotPoseSymbols.cpp.

References Geometry::distanceTo().

Referenced by registerSymbols().

Here is the call graph for this function:

double RobotPoseSymbols::getDistanceToOwnPenaltyArea  ) 
 

A function for the symbol "robot-pose.distance-to-own-penalty-area"

Definition at line 90 of file RobotPoseSymbols.cpp.

References FieldDimensions::distanceToOwnPenaltyArea(), and Pose2D::translation.

Referenced by registerSymbols().

Here is the call graph for this function:

double RobotPoseSymbols::getDistanceToOpponentGoal  ) 
 

A function for the symbol "robot-pose.distance-to-opponent-goal"

Definition at line 95 of file RobotPoseSymbols.cpp.

References Geometry::distanceTo().

Referenced by registerSymbols().

Here is the call graph for this function:

double RobotPoseSymbols::getDefensiveSupporterRobotPoseY  ) 
 

calculates the value for the symbol "defensive-supporter.robot-pose.y"

Definition at line 101 of file RobotPoseSymbols.cpp.

Referenced by registerSymbols().

double RobotPoseSymbols::getStrikerRobotPoseY  ) 
 

calculates the value for the symbol "striker.robot-pose.y"

Definition at line 118 of file RobotPoseSymbols.cpp.

Referenced by registerSymbols().

double RobotPoseSymbols::updateGoalieDefendPosition  ) 
 

calculates the values for the symbols "robot-pose.goalie-defend-angle","robot-pose.goalie-defend-pos-x","robot-pose.goalie-defend-pos-y","robot-pose.goalie-defend-step-pos-x","robot-pose.goalie-defend-step-pos-y","robot-pose.goalie-defend-step-angle"

Definition at line 165 of file RobotPoseSymbols.cpp.

References ballPosX, ballPosY, computeGoalieDefendMinPos(), fromDegrees(), getRobotConfiguration(), RobotConfiguration::getRobotDimensions(), goalieDefendAngle, goalieDefendMinPosX, goalieDefendMinPosY, goalieDefendPositionX, goalieDefendPositionY, goalieDefendRadius, goalieDefendRadiusMax, goalieDefendRadiusMin, goalieDefendStepAngle, goalieDefendStepPosX, goalieDefendStepPosY, Pose2D::rotation, RobotDimensions::shoulderWidth, toDegrees(), Pose2D::translation, Vector2< double >::x, and Vector2< double >::y.

Referenced by registerSymbols().

Here is the call graph for this function:

double RobotPoseSymbols::getGoalieDefendAngle  ) 
 

returns the Symbol "robot-pose.goalie-defend-angle"

Definition at line 135 of file RobotPoseSymbols.cpp.

References goalieDefendAngle.

Referenced by registerSymbols().

double RobotPoseSymbols::getGoalieDefendPosY  ) 
 

returns the Symbol "robot-pose.goalie-defend-pos-x"

Definition at line 145 of file RobotPoseSymbols.cpp.

References goalieDefendPositionY.

Referenced by registerSymbols().

double RobotPoseSymbols::getGoalieDefendPosX  ) 
 

returns the Symbol "robot-pose.goalie-defend-pos-y"

Definition at line 140 of file RobotPoseSymbols.cpp.

References goalieDefendPositionX.

Referenced by registerSymbols().

double RobotPoseSymbols::getGoalieDefendStepPosX  ) 
 

returns the Symbol "robot-pose.goalie-defend-step-pos-x"

Definition at line 150 of file RobotPoseSymbols.cpp.

References goalieDefendStepPosX.

Referenced by registerSymbols().

double RobotPoseSymbols::getGoalieDefendStepPosY  ) 
 

returns the Symbol "robot-pose.goalie-defend-step-pos-y"

Definition at line 155 of file RobotPoseSymbols.cpp.

References goalieDefendStepPosY.

Referenced by registerSymbols().

double RobotPoseSymbols::getGoalieDefendStepAngle  ) 
 

returns the Symbol "robot-pose.goalie-defend-step-angle"

Definition at line 160 of file RobotPoseSymbols.cpp.

References goalieDefendStepAngle.

Referenced by registerSymbols().

void RobotPoseSymbols::computeGoalieDefendMinPos const double &  alpha,
const RobotDimensions rD
 

calculates the values for the variables 'goalieDefendMinPosX','goalieDefendMinPosY','goalieDefendMinAngle' needed for the function 'updateGoalieDefendPosition'

Definition at line 306 of file RobotPoseSymbols.cpp.

References RobotDimensions::bodyWidth, fromDegrees(), goalieDefendMinPosX, goalieDefendMinPosY, goalieDefendRadiusMin, and RobotDimensions::shoulderWidth.

Referenced by updateGoalieDefendPosition().

Here is the call graph for this function:

void RobotPoseSymbols::calculateAngles  )  [private]
 


Member Data Documentation

double RobotPoseSymbols::ballPosX
 

the Parameter "robot-pose.update-goalie-defend-position.ball-pos-x" for the decimal input function "robot-pose.update-goalie-defend-position"

Definition at line 54 of file RobotPoseSymbols.h.

Referenced by registerSymbols(), and updateGoalieDefendPosition().

double RobotPoseSymbols::ballPosY
 

the Parameter "robot-pose.update-goalie-defend-position.ball-pos-y" for the decimal input function "robot-pose.update-goalie-defend-position"

Definition at line 55 of file RobotPoseSymbols.h.

Referenced by registerSymbols(), and updateGoalieDefendPosition().

Angles RobotPoseSymbols::angleShownByLEDs [private]
 

Definition at line 74 of file RobotPoseSymbols.h.

double RobotPoseSymbols::angles[numberOfAngles] [private]
 

Definition at line 76 of file RobotPoseSymbols.h.

double RobotPoseSymbols::goalieDefendAngle [private]
 

Definition at line 78 of file RobotPoseSymbols.h.

Referenced by getGoalieDefendAngle(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendPositionX [private]
 

Definition at line 79 of file RobotPoseSymbols.h.

Referenced by getGoalieDefendPosX(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendPositionY [private]
 

Definition at line 80 of file RobotPoseSymbols.h.

Referenced by getGoalieDefendPosY(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendStepPosX [private]
 

Definition at line 81 of file RobotPoseSymbols.h.

Referenced by getGoalieDefendStepPosX(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendStepPosY [private]
 

Definition at line 82 of file RobotPoseSymbols.h.

Referenced by getGoalieDefendStepPosY(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendStepAngle [private]
 

Definition at line 83 of file RobotPoseSymbols.h.

Referenced by getGoalieDefendStepAngle(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendRadiusMax [private]
 

Definition at line 84 of file RobotPoseSymbols.h.

Referenced by updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendRadiusMin [private]
 

Definition at line 85 of file RobotPoseSymbols.h.

Referenced by computeGoalieDefendMinPos(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendMinPosX [private]
 

Definition at line 86 of file RobotPoseSymbols.h.

Referenced by computeGoalieDefendMinPos(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendMinPosY [private]
 

Definition at line 87 of file RobotPoseSymbols.h.

Referenced by computeGoalieDefendMinPos(), and updateGoalieDefendPosition().

double RobotPoseSymbols::goalieDefendRadius [private]
 

Definition at line 88 of file RobotPoseSymbols.h.

Referenced by updateGoalieDefendPosition().


The documentation for this class was generated from the following files:
Generated on Thu Sep 23 20:11:29 2004 for GT2004 by doxygen 1.3.6