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

Modules/BehaviorControl/CommonXabsl2Symbols/RobotStateSymbols.h

Go to the documentation of this file.
00001 /** 
00002 * @file RobotStateSymbols.h
00003 *
00004 * Declaration of class RobotStateSymbols.
00005 *
00006 * @author Matthias Jüngel
00007 */
00008 
00009 #ifndef __RobotStateSymbols_h_
00010 #define __RobotStateSymbols_h_
00011 
00012 #include "../BehaviorControl.h"
00013 #include "Tools/Xabsl2/Xabsl2Engine/Xabsl2Engine.h"
00014 
00015 /**
00016 * The Xabsl2 symbols that are defined in "robot-state-symbols.xml"
00017 *
00018 * @author Matthias Jüngel
00019 */ 
00020 class RobotStateSymbols : public Xabsl2FunctionProvider, public BehaviorControlInterfaces
00021 {
00022 public:
00023 /*
00024 * Constructor.
00025 * @param interfaces The paramters of the BehaviorControl module.
00026   */
00027   RobotStateSymbols(const 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   enum DisplayWLANStatus {
00036     wlanHide = 0,
00037     wlanShow
00038   };
00039 
00040   DisplayWLANStatus WLANSignalStrenghShownByFaceLEDs;
00041   //!@name Input symbols
00042   //!@{
00043   bool getAnyBackButtonPressedForOneSecond();
00044   bool getAnyBackButtonPressedShortAndReleased();
00045   bool getForeBackButtonPressedShortAndReleased();
00046   bool getMiddleBackButtonPressedShortAndReleased();
00047   bool getHindBackButtonPressedShortAndReleased();
00048   bool getForeBackButtonPressedShort();
00049   bool getMiddleBackButtonPressedShort();
00050   bool getHindBackButtonPressedShort();
00051   bool getHeadButtonPressedForThreeSeconds();
00052   bool getHeadButtonPressedShortAndReleased();
00053   bool getHeadButtonPressedShort();
00054   bool getChinButtonPressedForThreeSeconds();
00055   int getMouthState();  /*!< A function for the symbol "self.mouth-state" */
00056   bool getBallUnderHead(); /*!< A function for the symbol "self.ball-under-head" */
00057   bool getSomethingInFrontOfChest(); /*!< A function for the symbol "robot-state.something-in-front-of-chest" */
00058   double getTimeSinceSomethingWasInFrontOfChest(); /*!< A function for the symbol "robot-state.time-since-something-was-in-front-of-chest" */
00059   double getDistanceToSIFOC(); /*!< A function for the symbol "robot-state.distance-to-sifoc" */
00060   double getSwitchesPressedTime(); /*!< A function for the symbol "self.switches.pressed-time" */
00061   double getCurrentSystemTime(); /*!< A function for the symbol "robot-state.system-time" */
00062   double getRemainingCapacity(); /*!< A function for the symbol "robot-state.remaining-capacity" */
00063   //!@}
00064   bool getConnectedToWLAN();    
00065   //!@}
00066   double getWLANLink();
00067   double getWLANSignal();
00068   double getWLANNoise();
00069 
00070   double getFilteredWLANLink();
00071   double getFilteredWLANSignal();
00072   double getFilteredWLANNoise();
00073 
00074   double filteredWLANLink;
00075   double filteredWLANSignal;
00076   double filteredWLANNoise;
00077 };
00078 
00079 
00080 #endif // __RobotStateSymbols_h_
00081 

Generated on Mon Mar 20 21:59:41 2006 for GT2005 by doxygen 1.3.6