SeaBee3GUI2.h
00001
00002
00003
00004
00005
00006
00007 #ifndef SEABEE3MAINDISPLAYFORM_H
00008 #define SEABEE3MAINDISPLAYFORM_H
00009
00010 #include <qvariant.h>
00011 #include <qpixmap.h>
00012 #include <qmainwindow.h>
00013 #include <list>
00014 #include <IceUtil/Mutex.h>
00015 #include <queue>
00016 #include "Component/ModelManager.H"
00017 #include "Image/Image.H"
00018 #include "Image/PixelsTypes.H"
00019 #include "GUI/SimpleMeter.H"
00020 #include "Util/MathFunctions.H"
00021 #include "Robots/SeaBeeIII/MapperI.H"
00022 #include "Image/CutPaste.H"
00023 #include "Raster/PngParser.H"
00024 #include "Raster/GenericFrame.H"
00025 #include "Image/Point2D.H"
00026
00027 class QVBoxLayout;
00028 class QHBoxLayout;
00029 class QGridLayout;
00030 class QSpacerItem;
00031 class QAction;
00032 class QActionGroup;
00033 class QToolBar;
00034 class QPopupMenu;
00035 class ImageCanvas;
00036 class QLineEdit;
00037 class QGroupBox;
00038 class QLabel;
00039 class QCheckBox;
00040 class QPushButton;
00041 class QTabWidget;
00042 class QWidget;
00043 class QFrame;
00044 class SeaBee3GUIIce;
00045 class BeeStemData;
00046
00047 class SeaBee3MainDisplayForm : public QMainWindow
00048 {
00049 Q_OBJECT
00050
00051 public:
00052 SeaBee3MainDisplayForm( QWidget* parent = 0, const char* name = 0, WFlags fl = WType_TopLevel );
00053 ~SeaBee3MainDisplayForm();
00054
00055 QLineEdit* desired_heading_field_2_3;
00056 QLineEdit* desired_heading_field_2_2;
00057 QGroupBox* groupBox2_3_3_3;
00058 QLineEdit* desired_speed_field_3_3_3;
00059 QLineEdit* desired_depth_field_3_3_3;
00060 QLineEdit* desired_heading_field_3_3_3;
00061 QLabel* textLabel2_3_2_2_3_5_2_3_4_2_2_2;
00062 QLabel* textLabel2_3_2_2_3_5_2_3_4_2_2_2_2_2;
00063 QLabel* textLabel2_3_2_2_3_5_2_3_4_2_2;
00064 QLabel* textLabel2_3_2_2_3_5_2_3_4_2_2_2_2;
00065 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3_2_2_2;
00066 QLabel* textLabel2_3_2_2_3_5_2_3_4_2;
00067 QLabel* textLabel2_2_2_3_2_2_3_2_2_3_3_2;
00068 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3;
00069 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3_2;
00070 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3_2_2;
00071 QLabel* textLabel2_3_2_2_3_5_2_3_4_2_2_2_2_2_2;
00072 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3_2_2_2_2;
00073 QLineEdit* itsFwdRetinaMsgField;
00074 QLineEdit* itsBeeStemMsgField;
00075 QLineEdit* desired_heading_field_2_4_2_3_3_2_2_2;
00076 QLineEdit* desired_heading_field_2_4_2_3_3_2_2_2_2_2;
00077 QLineEdit* itsVisionMsgField;
00078 QLineEdit* itsDwnRetinaMsgField;
00079 QLabel* textLabel2_2_2_3_2_2_3_2_2_3_3;
00080 QGroupBox* groupBox10_2;
00081 QGroupBox* groupBox2_3_3_2_2;
00082 QLineEdit* desired_speed_field_3_3_2_2;
00083 QLineEdit* desired_depth_field_3_3_2_2;
00084 QLineEdit* desired_heading_field_3_3_2_2;
00085 QLabel* textLabel2_3_2_2_3_5_2_3_3;
00086 QLabel* textLabel2_3_2_2_3_5_2_3_2_2;
00087 QLabel* textLabel2_2_2_3_2_2_3_2_2_3_2_2;
00088 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_2_2;
00089 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_2_2_3;
00090 QLabel* textLabel2_2_2_3_2_2_3_2_2_3_2_2_3;
00091 QLineEdit* desired_heading_field_2_4_2_3_2_2_3;
00092 QLineEdit* desired_depth_field_2_2_2_3_2_2_3;
00093 QLineEdit* desired_speed_field_2_2_2_3_2_2_3;
00094 QLabel* textLabel2_3_2_2_3_5_2_3_3_3;
00095 QLabel* textLabel2_3_2_2_3_5_2_3_2_2_3;
00096 QLineEdit* desired_heading_field_2_4_2_3_2_2;
00097 QLineEdit* desired_depth_field_2_2_2_3_2_2;
00098 QLineEdit* desired_speed_field_2_2_2_3_2_2;
00099 ImageCanvas* EPressureCanvas_2;
00100 ImageCanvas* itsDepthPIDImageDisplay;
00101 QGroupBox* groupBox2_3_3;
00102 QLineEdit* desired_speed_field_3_3;
00103 QLineEdit* desired_depth_field_3_3;
00104 QLineEdit* desired_heading_field_3_3;
00105 QCheckBox* checkBox3_4_2_2_3;
00106 QPushButton* pushButton1;
00107 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_4;
00108 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3;
00109 ImageCanvas* itsStrafeAxisImageDisplay_2;
00110 ImageCanvas* itsDepthAxisImageDisplay;
00111 QLabel* textLabel2_2_2_3_2_2_3_2_2_3;
00112 ImageCanvas* itsHeadingAxisImageDisplay;
00113 QLabel* textLabel2_3_2_2_3_5_2_3;
00114 ImageCanvas* itsStrafeAxisImageDisplay;
00115 QLineEdit* desired_speed_field_2_2_2_3_2_3_2;
00116 QGroupBox* groupBox2_3_3_2;
00117 QLineEdit* desired_speed_field_3_3_2;
00118 QLineEdit* desired_depth_field_3_3_2;
00119 QLineEdit* desired_heading_field_3_3_2;
00120 QCheckBox* checkBox3_4_2_2_3_2;
00121 QLabel* textLabel2_3_2_2_3_5_2_3_2;
00122 QLineEdit* desired_speed_field_2_2_2_3_2;
00123 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3_2_2_3;
00124 QLineEdit* desired_depth_field_2_2_2_3_2;
00125 QLineEdit* desired_heading_field_2_4_2_3_2;
00126 QLabel* textLabel2_2_2_3_2_2_3_2_2_3_2;
00127 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_2;
00128 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_3_2_2_3_2;
00129 QLineEdit* itsHeadingOutputField;
00130 QLineEdit* itsDepthOutputField;
00131 QGroupBox* groupBox1;
00132 QLabel* textLabel2_2_2_3_2_2_2_2_2_2_3_2_3;
00133 ImageCanvas* EPressureCanvas_3;
00134 QGroupBox* groupBox9_3;
00135 QCheckBox* checkBox3_4;
00136 QCheckBox* checkBox3_2_2;
00137 QCheckBox* checkBox3_3_2;
00138 QLineEdit* itsExternalPressureField;
00139 ImageCanvas* ItsDepthImageDisplay;
00140 QGroupBox* groupBox6;
00141 QCheckBox* checkBox3;
00142 QCheckBox* checkBox3_2;
00143 QCheckBox* checkBox3_3;
00144 ImageCanvas* itsCompassImageDisplay;
00145 QLineEdit* itsCompassHeadingField;
00146 QLineEdit* itsKillSwitchField;
00147 QGroupBox* groupBox10;
00148 QLineEdit* itsInternalPressureField;
00149 ImageCanvas* itsPressureImageDisplay;
00150 QTabWidget* tabWidget3;
00151 QWidget* tab;
00152 QGroupBox* groupBox15_2;
00153 QFrame* frame4;
00154 ImageCanvas* itsDwnImgDisplay;
00155 ImageCanvas* itsFwdImgDisplay;
00156 QCheckBox* itsPipeThreshCheck;
00157 QCheckBox* itsHoughVisionCheck;
00158 QCheckBox* itsFwdContourThreshCheck;
00159 QCheckBox* itsBuoyThreshCheck;
00160 ImageCanvas* itsFwdVisionDisplay;
00161 QCheckBox* itsSaliencyVisionCheck;
00162 QCheckBox* itsDwnContourVisionCheck;
00163 ImageCanvas* itsDwnVisionDisplay;
00164 QWidget* TabPage;
00165
00166 public slots:
00167 virtual void init( ModelManager * mgr );
00168 virtual void registerCommunicator( nub::soft_ref<SeaBee3GUIIce> c );
00169 virtual void setFwdImage( Image<PixRGB<byte> > & img );
00170 virtual void setDwnImage( Image<PixRGB<byte> > & img );
00171 virtual void setFwdVisionImage( Image<PixRGB<byte> > & img );
00172 virtual void setDwnVisionImage( Image<PixRGB<byte> > & img );
00173 virtual void setCompassImage( Image<PixRGB<byte> > & compassImage );
00174 virtual void setDepthImage( Image<PixRGB<byte> > & depthImage );
00175 virtual void setPressureImage( Image<PixRGB<byte> > & pressureImage );
00176 virtual void setDepthPIDImage( Image<PixRGB<byte> > & depthPIDImage );
00177 virtual void setAxesImages( Image<PixRGB<byte> > & heading, Image<PixRGB<byte> > & depth, Image<PixRGB<byte> > & strafe );
00178 virtual void setFwdRetinaMsgField( char f );
00179 virtual void setDwnRetinaMsgField( char f );
00180 virtual void setBeeStemMsgField( char f );
00181 virtual void setVisionMsgField( char f );
00182 virtual void setBeeStemData( BeeStemData & d );
00183 virtual void updateBuoySegmentCheck( bool state );
00184 virtual void updateSalientPointCheck( bool state );
00185
00186 protected:
00187 ModelManager *itsMgr;
00188 nub::soft_ref<SeaBee3GUIIce> GUIComm;
00189
00190
00191 protected slots:
00192 virtual void languageChange();
00193
00194 private:
00195 QPixmap image0;
00196
00197 };
00198
00199 #endif // SEABEE3MAINDISPLAYFORM_H