IceCommunicator.qt.H

00001 #ifndef ICECOMMUNICATOR_H
00002 #define ICECOMMUNICATOR_H
00003 
00004 #include <QtGui/QtGui>
00005 #include "Ice/RobotBrainObjects.ice.H"
00006 #include "Ice/RobotSimEvents.ice.H"
00007 #include "Ice/IceImageUtils.H"
00008 #include <Ice/Ice.h>
00009 
00010 #include "Robots/RobotBrain/RobotBrainComponent.H"
00011 
00012 
00013 //#include "Util/Timer.H"
00014 //#include "GUI/CompassMeter.H"
00015 //#include "GUI/DepthMeter.H"
00016 //#include "GUI/PressureMeter.H"
00017 //#include "GUI/CircleFillMeter.H"
00018 
00019 //
00020 //class BeeStemData
00021 //{
00022 //public:
00023 //  float heading;
00024 //  float externalPressure;
00025 //  float internalPressure;
00026 //  int headingPIDOutput;
00027 //  int depthPIDOutput;
00028 //  bool killSwitch;
00029 //};
00030 
00031 class IceCommunicator : public QObject, public RobotBrainComponent
00032 {
00033   Q_OBJECT
00034 
00035 public:
00036   IceCommunicator(OptionManager& mgr,
00037                 const std::string& descrName = "IceCommunicator",
00038                 const std::string& tagName = "IceCommunicator");
00039 
00040   virtual void updateMessage(const RobotSimEvents::EventMessagePtr& eMsg,
00041                              const Ice::Current&);
00042 
00043   virtual void registerTopics();
00044 
00045   virtual void evolve();
00046 
00047 signals:
00048   void NewFwdLeftImg(QImage);
00049   void NewFwdRightImg(QImage);
00050   void NewDwnLeftImg(QImage);
00051   void NewDwnRightImg(QImage);
00052 
00053 
00054 //  void setOrangeSegEnabled(bool enabled);
00055 //  void setSalientPointsEnabled(bool enabled);
00056 
00057 private:
00058 //  void updateFwdImg();
00059 //
00060 //  void updateDwnImg();
00061 //
00062 //  void updateBeeStemData();
00063 //
00064 //  void updateSaliencyImage();
00065 //
00066 //
00067 //  SeaBee3MainDisplayForm *itsGUIForm;
00068 //
00069 //  bool itsGUIRegistered;
00070 //  IceUtil::Mutex itsGUIFormMutex;
00071 //
00072 //  IceUtil::Mutex itsUpdateMutex; // Locks lists for incoming updates
00073 //
00074 //  std::list<Image<PixRGB<byte> > > itsFwdRetinaImages;
00075 //  char itsFwdRetinaImagesSize;
00076 //  char itsFwdRetinaMsgCounter;
00077 //
00078 //  std::list<Image<PixRGB<byte> > > itsDwnRetinaImages;
00079 //  char itsDwnRetinaImagesSize;
00080 //  char itsDwnRetinaMsgCounter;
00081 //
00082 //  std::list<Image<PixRGB<byte> > > itsOrangeSegImages;
00083 //  bool itsOrangeSegEnabled;
00084 //
00085 //  std::list<Image<PixRGB<byte> > > itsRedSegImages;
00086 //  char itsRedSegImagesSize;
00087 //
00088 //  std::list<Point2D<int> > itsSalientPoints;
00089 //  int itsSalientPointsSize;
00090 //  bool itsSalientPointsEnabled;
00091 //
00092 //  char itsVisionMsgCounter;
00093 //
00094 //  std::list<BeeStemData> itsBeeStemData;
00095 //  char itsBeeStemDataSize;
00096 //  char itsBeeStemMsgCounter;
00097 //  CompassMeter itsCompassMeter;
00098 //  DepthMeter itsDepthMeter;
00099 //  PressureMeter itsPressureMeter;
00100 //  CircleFillMeter itsCircleFillMeter;
00101 //
00102 //  Timer itsTimer;
00103 //
00104 //  Image<PixRGB<byte> > itsFwdVisionImage;
00105 //  Image<PixRGB<byte> > itsDwnVisionImage;
00106 
00107 };
00108 
00109 #endif
00110 
Generated on Sun May 8 08:41:32 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3