ssMultibeamWindow.h

Go to the documentation of this file.
00001 /* $Id: ssMultibeamWindow.h,v 1.20 2005/11/02 03:55:45 pfb Exp $ */
00002 
00003 #ifndef _ssMultibeamWindow_h
00004 #define _ssMultibeamWindow_h
00005 
00010 #include <vtkKWWindow.h>
00011 
00012 class vtkKWMenu;
00013 class vtkPVRenderView;
00014 class vtkPVInteractorStyle;
00015 class ssMultibeamApplication;
00016 class ssMultibeamRenderView;
00017 class ssMultibeamPlanRenderView;
00018 class ssMultibeamAcrossBathymetryRenderView;
00019 class ssMultibeamAlongBathymetryRenderView;
00020 class vtkKWToolbar;
00021 class vtkKWPushButton;
00022 class vtkKWUserInterfaceNotebookManager;
00023 
00028 class ssMultibeamWindow : public vtkKWWindow
00029   {
00030   //****************************************************************************
00031                              public:
00032 
00038   static ssMultibeamWindow *New();
00039 
00043   vtkTypeMacro(ssMultibeamWindow,
00044                vtkKWWindow);
00045 
00051   void PrintSelf(ostream& os, vtkIndent indent);
00052 
00058   virtual void Create(vtkKWApplication *app, char *args);
00059 
00065   virtual vtkKWUserInterfaceManager* GetUserInterfaceManager();
00066 
00071   ssMultibeamRenderView *PlanView() const;
00072 
00077   ssMultibeamRenderView *AlongTrackBathymetryView() const;
00078 
00083   ssMultibeamRenderView *AcrossTrackBathymetryView() const;
00084 
00085   //****************************************************************************
00086                              protected:
00087 
00091   ssMultibeamWindow();
00092 
00096   virtual ~ssMultibeamWindow();
00097 
00101   void PrepareForDelete();
00102 
00106   void UpdateStatusImage();
00107 
00112   ssMultibeamApplication *GetMultibeamApplication();
00113 
00118   void InitializeMenus(vtkKWApplication* app);
00119 
00124   void CreatePlanView(ssMultibeamApplication *app);
00125 
00130   void CreateAlongTrackBathymetryView(ssMultibeamApplication *app);
00131 
00136   void CreateAcrossTrackBathymetryView(ssMultibeamApplication *app);
00137 
00141   void InitializeRenderFrames();
00142 
00147   void InteractorTclName(const char *name);
00148 
00153   const char *InteractorTclName() const;
00154 
00160   void CenterSourceTclName(const char *name);
00161 
00167   void CenterMapperTclName(const char *name);
00168 
00174   void CenterActorTclName(const char *name);
00175 
00176   const char *interactorTclName;
00177 
00178   // The various RenderViews.
00182   ssMultibeamPlanRenderView             *planView;
00183 
00187   ssMultibeamAcrossBathymetryRenderView *acrossTrackBathymetryView;
00188 
00192   ssMultibeamAlongBathymetryRenderView  *alongTrackBathymetryView;
00193 
00194   // The split frames in the graphics frame.
00199   vtkKWSplitFrame *horizontalFrame;
00200 
00205   vtkKWSplitFrame *verticalFrame;
00206 
00210   vtkKWUserInterfaceNotebookManager *userInterfaceManager;
00211 
00212   //vtkAxes *CenterSource;
00213   char *centerSourceTclName;
00214   //vtkPolyDataMapper *CenterMapper;
00215   char *centerMapperTclName;
00216   //vtkActor *CenterActor;
00217   char *centerActorTclName;
00218 
00219   //****************************************************************************
00220                              private:
00221 
00225   ssMultibeamWindow(const ssMultibeamWindow& );
00226   ssMultibeamWindow& operator=(const ssMultibeamWindow& );
00227 
00228   };
00229 
00233 #endif
00234 
00235 /*
00236  * $Log: ssMultibeamWindow.h,v $
00237  * Revision 1.20  2005/11/02 03:55:45  pfb
00238  * Fixed doxygen tags.
00239  *
00240  * Revision 1.19  2005/05/10 17:08:00  pfb
00241  * Added module info.
00242  *
00243  * Revision 1.18  2004/09/28 02:53:03  pfb
00244  * Corrected data types.
00245  *
00246  * Revision 1.17  2004/08/24 04:57:53  pfb
00247  * Moved PlanView(), AlongTrackBathymetryView() and AcrossTrackBathymetryView()
00248  * from protected to public.
00249  *
00250  * Revision 1.16  2004/08/20 05:11:47  pfb
00251  * Cleaned out krud.
00252  *
00253  * Revision 1.15  2004/06/29 06:42:22  pfb
00254  * Corrected parameter name.
00255  *
00256  * Revision 1.14  2004/06/06 18:12:01  pfb
00257  * Added CenterSourceTclName(), CenterMapperTclName() and CenterActorTclName().
00258  *
00259  * Revision 1.13  2004/05/22 12:24:19  pfb
00260  * Work in progress.
00261  *
00262  * Revision 1.12  2004/04/27 12:11:03  pfb
00263  * Work in progress.
00264  *
00265  * Revision 1.11  2004/03/30 12:21:03  pfb
00266  * Moved to ssMultibeamPlanRenderView.
00267  *
00268  * Revision 1.10  2004/03/24 04:25:08  pfb
00269  * Work in progress. Added some RenderViews.
00270  *
00271  * Revision 1.9  2004/03/07 15:41:20  pfb
00272  * Added GetUserInterfaceManager().
00273  *
00274  * Revision 1.8  2004/02/21 12:16:00  pfb
00275  * Small changes. Work in progress.
00276  *
00277  * Revision 1.7  2004/02/19 07:21:03  pfb
00278  * Added Toolbar.
00279  *
00280  * Revision 1.6  2004/02/18 05:29:22  pfb
00281  * Added documentation.
00282  *
00283  * Revision 1.5  2004/02/15 16:20:48  pfb
00284  * Moved from MultibeamWindow to ssMultibeamWindow.
00285  *
00286  * Revision 1.4  2004/02/01 16:51:22  pfb
00287  * Work in progress.
00288  *
00289  * Revision 1.3  2004/01/07 07:26:53  pfb
00290  * Work in progress. Added functionality. Compiles.
00291  *
00292  * Revision 1.2  2004/01/04 14:33:32  pfb
00293  * Added UpdateStatusImage() and GetMultibeamApplication().
00294  *
00295  * Revision 1.1  2003/12/27 14:21:35  pfb
00296  * Initial rev.
00297  *
00298  *
00299  */
00300