SeaBee3GUICommunicator.H

00001 #ifndef SeaBee3GUICommunicator_H
00002 #define SeaBee3GUICommunicator_H
00003 
00004 #include "Qt/ui/SeaBee3GUI.h"
00005 #include "Robots/RobotBrain/RobotBrainComponent.H"
00006 
00007 class SeaBee3MainDisplayForm;
00008 
00009 class SeaBee3GUICommunicator : public RobotBrainComponent
00010 {
00011 public:
00012   SeaBee3GUICommunicator(OptionManager& mgr,
00013                          const std::string& descrName = "SeaBee3Communicator",
00014                          const std::string& tagName = "SeaBee3Communicator");
00015 
00016   virtual void updateMessage(const RobotSimEvents::EventMessagePtr& eMsg,
00017                              const Ice::Current&);
00018 
00019   virtual void registerTopics();
00020 
00021   virtual void evolve();
00022 
00023   void registerGUI(SeaBee3MainDisplayForm* form);
00024 
00025   void toggleCamera(std::string id, bool active);
00026 
00027   void updatePoseSettings(int updateSelect, int heading, int depth, int speed);
00028 
00029   void updatePID(int pidSelect, float k, float p, float i, float d);
00030 
00031   void enablePID();
00032 
00033   void disablePID();
00034 
00035         void SeaBeeInjectorMsg(int a, int b, int c, int d, int e, int f, int g, int h, int i, int j);
00036 
00037 private:
00038   SeaBee3MainDisplayForm *itsGUIForm;
00039 
00040   bool itsGUIRegistered;
00041   IceUtil::Mutex itsGUIFormMutex;
00042 
00043   Image<PixRGB<byte> > itsFwdImg;
00044   Image<PixRGB<byte> > itsDwnImg;
00045   IceUtil::Mutex itsImageMutex;
00046 
00047   int itsFwdFrameCount;
00048   int itsLastFwdFrameCount;
00049   int itsDwnFrameCount;
00050   int itsLastDwnFrameCount;
00051 
00052 };
00053 
00054 #endif
00055 
Generated on Sun May 8 08:41:15 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3