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

Modules/BehaviorControl/GT2004BehaviorControl/GT2004Symbols/GT2004ConfigurationSymbols.h

Go to the documentation of this file.
00001 /** 
00002 * @file GT2004ConfigurationSymbols.h
00003 *
00004 * Declaration of class GT2004ConfigurationSymbols.
00005 *
00006 * @author Max Risler
00007 */
00008 
00009 #ifndef __GT2004ConfigurationSymbols_h_
00010 #define __GT2004ConfigurationSymbols_h_
00011 
00012 #include "../../BehaviorControl.h"
00013 #include "Tools/Xabsl2/Xabsl2Engine/Xabsl2Engine.h"
00014 
00015 /**
00016 * The Xabsl2 symbols that are defined in "configuration-symbols.xml"
00017 *
00018 * @author Max Risler
00019 */ 
00020 class GT2004ConfigurationSymbols : public Xabsl2FunctionProvider, public BehaviorControlInterfaces
00021 {
00022 public:
00023 /*
00024 * Constructor.
00025 * @param interfaces The parameters of the BehaviorControl module.
00026   */
00027   GT2004ConfigurationSymbols(BehaviorControlInterfaces& interfaces);
00028   
00029   /** registers the symbols at an engine */
00030   void registerSymbols(Xabsl2Engine& engine);
00031 
00032   /** updates the symbols */
00033   void update();
00034 
00035   //!@name Input symbols
00036   //!@{
00037   double getCurrentKickoff(); /*!< A function for the symbol "current-kickoff-variant" */
00038   double getOwnKickoffX(); /*!< A function for the symbol "own-kickoff.x" */
00039   double getOwnKickoffY(); /*!< A function for the symbol "own-kickoff.y" */
00040   double getOwnKickoffAngle(); /*!< A function for the symbol "own-kickoff.angle" */
00041   double getOwnKickoffXByObstacles(); /*!< A function for the symbol "own-kickoff.x" by obstacle model */
00042   double getOwnKickoffYByObstacles(); /*!< A function for the symbol "own-kickoff.y" by obstacle model */
00043   double getOwnKickoffAngleByObstacles(); /*!< A function for the symbol "own-kickoff.angle" by obstacle model */
00044   double getOpponentKickoffX(); /*!< A function for the symbol "opponent-kickoff.x" */
00045   double getOpponentKickoffY(); /*!< A function for the symbol "opponent-kickoff.y" */
00046   double getOpponentKickoffAngle(); /*!< A function for the symbol "opponent-kickoff.angle" */
00047   //!@}
00048 private:
00049 
00050     /** number of different kickoff variants */
00051   enum { numOfKickoff = 2 };
00052 
00053   /** the max speed with which the robot walks to its kickoff position */
00054   double goToKickoffMaxSpeed;
00055 
00056   /** the goalie start position */
00057   Vector2<double> goalie;
00058 
00059   /** the defensive supporter start position */
00060   Vector2<double> defensiveSupporter;
00061 
00062   /** the offensive supporter start position at opponent kickoff */
00063   Vector2<double> offensiveSupporterOpponentKickoff;
00064   /** the striker start position at opponent kickoff */
00065   Vector2<double> strikerOpponentKickoff;
00066 
00067   /** the offensive supporter start position at own kickoff */
00068   Vector2<double> offensiveSupporterOwnKickoff[numOfKickoff];
00069   /** the orientation of the offensive supporter at own kickoff in degrees */
00070   double offensiveSupporterOwnKickoffAngle[numOfKickoff];
00071   /** the striker start position at own kickoff */
00072   Vector2<double> strikerOwnKickoff[numOfKickoff];
00073   /** the orientation of the striker at own kickoff in degrees */
00074   double strikerOwnKickoffAngle[numOfKickoff];
00075 
00076   /**
00077   * current own kickoff variant 
00078   */
00079   int currentKickoff;
00080 
00081   /** kickoff-position of striker based on obstacle-model */
00082   Pose2D obstacleKickoff;
00083 };
00084 
00085 
00086 #endif // __GT2004ConfigurationSymbols_h_
00087 
00088 /*
00089 * Change Log
00090 * 
00091 * $Log: GT2004ConfigurationSymbols.h,v $
00092 * Revision 1.2  2004/07/02 16:52:55  thomas
00093 * modified kickoff
00094 * - striker positioning to angle based on obstacle-model
00095 * - supporter not so near to side-border and a bit more away from middle-line
00096 *
00097 * Revision 1.1.1.1  2004/05/22 17:18:02  cvsadm
00098 * created new repository GT2004_WM
00099 *
00100 * Revision 1.1  2004/05/02 13:23:45  juengel
00101 * Added GT2004BehaviorControl.
00102 *
00103 */
00104 

Generated on Thu Sep 23 19:57:26 2004 for GT2004 by doxygen 1.3.6