00001 00010 #ifndef FLYNAVINT_H 00011 #define FLYNAVINT_H 00012 00013 // Gluebase includes 00014 #define OUTSIDE_GLUE_CORE 00015 #include <fsa/fsa.H> 00016 #include <mlib/points.H> 00017 #include <dev/room6d.H> 00018 #include <dev/dev2d.H> 00019 #include <dev/buttons.H> 00020 #include <config/config.H> 00021 #include <std/hash.H> 00022 00023 #include "DrawPoint.H" 00024 00025 #include "dev/polled.H" 00026 00027 class FlyNavInt : public Interactor<FlyNavInt>, public DEVpolled 00028 { 00029 public: 00030 00031 FlyNavInt(); 00032 virtual ~FlyNavInt() {} 00033 00034 protected: 00035 00036 void motionSix(cEVENTroom6dptr &evt, STATE *&); 00037 void motionTwo(cEVENT2dptr &evt, STATE *&); 00038 00039 virtual void do_poll(); 00040 00041 virtual void fly(); 00042 00043 EVENTroom6dptr _tracker; 00044 EVENT2dptr _joystick; 00045 00046 00047 DrawPoint *_rotPointMarker; 00048 00049 Wtransf _delta; 00050 Wtransf _trans; 00051 00052 double _prevValY; 00053 double _prevValX; 00054 00055 }; 00056 00057 00058 #endif