#ifndef LEGSEXAMPLE_H
#define LEGSEXAMPLE_H
#include "aibolib.h"
#include "def.h"
enum SYSTEM_STATE{
SYSTEM_START,
MOVE_SLEEPING,
SYSTEM_IDLE,
SYSTEM_END,
};
class LegsExample: public Aibo {
public:
LegsExample();
virtual ~LegsExample(){};
OSubject* subject[numOfSubject];
OObserver* observer[numOfObserver];
OStatus DoInit (const OSystemEvent& event);
OStatus DoStart (const OSystemEvent& event);
OStatus DoStop (const OSystemEvent& event);
OStatus DoDestroy(const OSystemEvent& event);
void NotifyLegs(const OReadyEvent& event);
protected:
AiboLeg Legs;
void MoveToBase();
void MoveSleeping();
SYSTEM_STATE State;
static const int BASE_POS_MAX_COUNTER = 35;
double Delta[NUM_LEG_JOINTS];
int LegCounter;
int BaseCounter;
};
#endif //define LIBTESTER_HH