00001 // *************************************************************************** 00002 // aiboheadmoves.h 00003 // 00004 // copyright : (C) 2003 by tbaier 00005 // email : tbaier@informatik.uni-hamburg.de 00006 // *************************************************************************** 00007 #ifndef AIBOHEADMOVES_H 00008 #define AIBOHEADMOVES_H 00009 00010 #include "aibohead.h" 00011 #include "aiboheadpositions.h" 00012 #include "aibomoves.h" 00013 #include <OPENR/OObject.h> 00014 #include <OPENR/OSubject.h> 00015 00016 00018 enum MOVE_STATE_HEAD{ 00019 MOVE_IDLE, 00020 MOVE_ZERO, 00021 MOVE_SLEEPING, 00022 MOVE_BROADBASE 00023 }; 00024 00026 class AiboHeadMoves : public AiboMoves { 00027 public: 00028 00032 AiboHeadMoves(AiboHead *head); 00033 00036 virtual ~AiboHeadMoves(){}; 00037 00041 void SetHead(AiboHead *head); 00042 00047 MOVE_STATUS MoveToSleeping(OSubject* subject); 00048 00053 MOVE_STATUS MoveToBroadbase(OSubject* subject); 00054 00059 MOVE_STATUS MoveToZero(OSubject* subject); 00060 00061 00062 00063 protected: 00065 static const int ZERO_POS_MAX_COUNTER = 16; 00066 00068 MOVE_STATE_HEAD State; 00069 00073 int NumJoints; 00074 00075 }; 00076 00077 00078 #endif //AIBOHEADMOVES_H
Tim Baier
AiboLib v0.2.4 |
Generated Thu Jan 19 11:54:29 2006 by 1.4.3 |