00001 /** 00002 * @file PassSymbols.h 00003 * 00004 * Declaration of class PassSymbols. 00005 * The Xabsl2 symbols that are defined in "pass-symbols.xml" 00006 * @author Marc Dassler 00007 */ 00008 00009 #ifndef __PassSymbols_h_ 00010 #define __PassSymbols_h_ 00011 00012 #include "../BehaviorControl.h" 00013 #include "Tools/Xabsl2/Xabsl2Engine/Xabsl2Engine.h" 00014 00015 00016 class PassSymbols : public Xabsl2FunctionProvider, public BehaviorControlInterfaces 00017 { 00018 public: 00019 /* 00020 * Constructor. 00021 * @param interfaces The paramters of the BehaviorControl module. 00022 */ 00023 PassSymbols(const BehaviorControlInterfaces& interfaces); 00024 00025 /** registers the symbols at an engine */ 00026 void registerSymbols(Xabsl2Engine& engine); 00027 00028 /** updates the symbols */ 00029 void update(); 00030 00031 //!@name Input symbols 00032 //!@{ 00033 bool getPassExists(); /*!< A function for the symbol "pass.found" */ 00034 double getPassQuality(); /*!< A function for the symbol "pass.quality" */ 00035 double getPassDistance(); /*!< A function for the symbol "pass.distance" */ 00036 double getPlayerNumberOfReceiver(); /*!< A function for the symbol "pass.player-number-of-pass-receiver" */ 00037 double getAngleToPassSender(); /*!< A function for the symbol "pass.angle-to-pass-sender". Angle is relative */ 00038 double getAngleToPassReceiver(); /*!< A function for the symbol "pass.angle-to-pass-receiver". Angle is relative */ 00039 //!@} 00040 00041 private: 00042 long preparingAPassMessageTimeStamp; 00043 Player::playerNumber preparingAPassMessagePlayerNumber; 00044 }; 00045 00046 00047 #endif // __PassSymbols_h_ 00048
1.3.6