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

# Modules/BehaviorControl/GT2005BehaviorControl/GT2005Symbols/OpenChallengeSymbols.h

Go to the documentation of this file.

    00001 /**
    00002 * @file OpenChallengeSymbols.h
    00003 *
    00004 * Declaration of class BallSymbols.
    00005 *
    00006 * @author
    00007 */
    00008
    00009 #ifndef __OpenChallengeSymbols_h_
    00010 #define __OpenChallengeSymbols_h_
    00011
    00012 #include "../../BehaviorControl.h"
    00013 #include "Tools/Xabsl2/Xabsl2Engine/Xabsl2Engine.h"
    00014
    00015
    00016 //typedef struct OC
    00017 //{
    00018 //  double type;
    00019 //  double x;
    00020 //  double y;
    00021 //  double rotation;
    00022 //} OC;
    00023
    00024 class OpenChallengeSymbols : public Xabsl2FunctionProvider, public BehaviorControlInterfaces
    00025 {
    00026 public:
    00027
    00028   //enum OCStatus
    00029   //{
    00030   //  initial = 0,
    00031   //  intro,
    00032   //  goToBridge,
    00033   //  goToBitePoint,
    00034   //  allBitePointsReady,
    00035   //  walkWithBridge,
    00036   //  extro,
    00037   //  finished
    00038   //};
    00039
    00040   //enum OCSetStatus
    00041   //{
    00042   //  setInitial = 0,
    00043   //  setIntro,
    00044   //  setGoToBridge,
    00045   //  setGoToBitePoint,
    00046   //  setMyBitePointIsReady,
    00047   //  setLostMyBitePoint,
    00048   //  setWalkWithBridge,
    00049   //  setExtro,
    00050   //  setFinished
    00051   //};
    00052
    00053 /*
    00054 * Constructor.
    00055 * @param interfaces The parameters of the BehaviorControl module.
    00056   */
    00057   OpenChallengeSymbols(const BehaviorControlInterfaces& interfaces);
    00058
    00059   /** registers the symbols at an engine */
    00060   void registerSymbols(Xabsl2Engine& engine);
    00061
    00062   /** updates the symbols */
    00063   void update();
    00064
    00065   //Symbols for blind- and guide-dog challenge 2005
    00066   bool guideDogMoveForward();
    00067
    00068   bool blindDogMoveForward();
    00069
    00070   bool guideDogTellsBlindDogTurn();
    00071
    00072   bool blindDogTurn();
    00073
    00074   //!@name Input symbols
    00075   //!@{
    00076   //OCBridge::Side getLastSeenSide();    /*!< A function for the symbol "bridge.last-seen-side" */
    00077   //double getSeenDistanceToBridge();    /*!< A function for the symbol "bridge.seen.distance" */
    00078   //double getSeenAngleToBridge();       /*!< A function for the symbol "bridge.seen.angle" */
    00079   //double getTimeSinceLastSeenBridge(); /*!< A function for the symbol "bridge.time-since-last-seen" */
    00080
    00081   //BitePoint::Position getBitePointPosition(); /*!< A function for the symbol "bite-point.position" */
    00082   //double getSeenDistanceToBitePoint();        /*!< A function for the symbol "bite-point.seen.distance" */
    00083   //double getSeenAngleToBitePoint();           /*!< A function for the symbol "bite-point.seen.angle" */
    00084   //double getPreciseShiftToBitePoint();        /*!< A function for the symbol "bite-point.precise-shift" */
    00085   //double getTimeSinceLastSeenBitePoint();     /*!< A function for the symbol "bite-point.time-since-last-seen" */
    00086
    00087   //double redLineInImageAngle();
    00088   //double redLineAngle();
    00089   //double getTimeSinceLastSeenRedLine();     /*!< A function for the symbol "bite-point.time-since-last-seen" */
    00090   //double getSeenDistanceToRedLine();    /*!< A function for the symbol "bridge.seen.distance" */
    00091
    00092
    00093   //!@}
    00094
    00095
    00096   /** Varaible to hold the open challenge status */
    00097   //OCStatus ocStatus;
    00098
    00099   ///* A function for the output symbol "open-challenge.set-status". */
    00100   //void setOCStatus(int aStatus);
    00101
    00102
    00103 //private:
    00104   //OC m_walkRequest;
    00105   //double m_headrot;
    00106
    00107   //int bitePointToUse[Player::numOfPlayerNumbers];
    00108   //bool bitePointReady[BitePoint::numOfPositions];
    00109   //int masterDog;
    00110
    00111 };
    00112
    00113
    00114
    00115
    00116 #endif // OpenChallengeSymbols
    00117