commit!

Committer:
narshu
Date:
Fri Jun 15 20:40:17 2012 +0000
Revision:
0:42026f893a2d

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
narshu 0:42026f893a2d 1 #ifndef AI_H
narshu 0:42026f893a2d 2 #define AI_H
narshu 0:42026f893a2d 3
narshu 0:42026f893a2d 4 #include "rtos.h"
narshu 0:42026f893a2d 5 //#include "Kalman.h"
narshu 0:42026f893a2d 6
narshu 0:42026f893a2d 7 class AI {
narshu 0:42026f893a2d 8 public:
narshu 0:42026f893a2d 9 AI();
narshu 0:42026f893a2d 10
narshu 0:42026f893a2d 11 Mutex targetlock;
narshu 0:42026f893a2d 12 Thread thr_AI;
narshu 0:42026f893a2d 13
narshu 0:42026f893a2d 14 struct Target {
narshu 0:42026f893a2d 15 float x;
narshu 0:42026f893a2d 16 float y;
narshu 0:42026f893a2d 17 float theta;
narshu 0:42026f893a2d 18 bool facing;
narshu 0:42026f893a2d 19 bool reached;
narshu 0:42026f893a2d 20 } target;
narshu 0:42026f893a2d 21
narshu 0:42026f893a2d 22 void settarget(float targetX, float targetY, float targetTheta, bool targetfacing = true, bool colour = true, int maxSpeed = 35);
narshu 0:42026f893a2d 23 void settarget(Target);
narshu 0:42026f893a2d 24 Target gettarget();
narshu 0:42026f893a2d 25
narshu 0:42026f893a2d 26 bool flag_terminate;// = false;
narshu 0:42026f893a2d 27 bool flag_motorStop; // = true;
narshu 0:42026f893a2d 28 bool flag_manOverride; // = false;
narshu 0:42026f893a2d 29
narshu 0:42026f893a2d 30 private:
narshu 0:42026f893a2d 31
narshu 0:42026f893a2d 32 void ai_thread ();
narshu 0:42026f893a2d 33 static void aithreadwrapper(void const *arg){ ((AI*)arg)->ai_thread(); }
narshu 0:42026f893a2d 34
narshu 0:42026f893a2d 35 };
narshu 0:42026f893a2d 36
narshu 0:42026f893a2d 37 #endif //AI_H