VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Rendering/OpenGL2/vtkIOSRenderWindow.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   Visualization Toolkit
00004 Module:    vtkIOSRenderWindow.h
00005 
00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007 All rights reserved.
00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010 This software is distributed WITHOUT ANY WARRANTY; without even
00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012 PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00042 #ifndef vtkIOSRenderWindow_h
00043 #define vtkIOSRenderWindow_h
00044 
00045 #include "vtkRenderingOpenGL2Module.h" // For export macro
00046 #include "vtkOpenGLRenderWindow.h"
00047 
00048 class VTKRENDERINGOPENGL2_EXPORT vtkIOSRenderWindow : public vtkOpenGLRenderWindow
00049 {
00050 public:
00051   static vtkIOSRenderWindow *New();
00052   vtkTypeMacro(vtkIOSRenderWindow,vtkOpenGLRenderWindow);
00053   void PrintSelf(ostream& os, vtkIndent indent);
00054 
00056   virtual void Start();
00057 
00059   virtual void Frame();
00060 
00062   virtual void WindowConfigure();
00063 
00067   virtual void Initialize();
00068 
00073   virtual void SetFullScreen(int);
00074 
00077   virtual void WindowRemap();
00078 
00081   virtual void PrefFullScreen();
00082 
00084 
00085   virtual void SetSize(int a[2]);
00086   virtual void SetSize(int,int);
00088 
00090   virtual int *GetSize();
00091 
00093 
00094   virtual void SetPosition(int a[2]);
00095   virtual void SetPosition(int,int);
00097 
00099   virtual int *GetScreenSize();
00100 
00102   virtual int *GetPosition();
00103 
00106   virtual void SetWindowName(const char *);
00107 
00108   void SetNextWindowInfo(char *)
00109     {
00110       vtkWarningMacro("SetNextWindowInfo not implemented (WindowRemap not implemented).");
00111     }
00112   virtual void* GetGenericDrawable()
00113     {
00114       vtkWarningMacro("Method not implemented.");
00115       return 0;
00116     }
00117   virtual void SetDisplayId(void*)
00118     {
00119       vtkWarningMacro("Method not implemented.");
00120     }
00121   virtual void *GetGenericDisplayId()
00122     {
00123       vtkWarningMacro("Method not implemented.");
00124       return 0;
00125     }
00126 
00130   virtual void SetWindowInfo(char*);
00131 
00135   virtual void SetParentInfo(char*);
00136 
00137   void SetNextWindowId(void*)
00138     {
00139       vtkWarningMacro("SetNextWindowId not implemented (WindowRemap not implemented).");
00140     }
00141 
00144   virtual bool InitializeFromCurrentContext();
00145 
00147   virtual void StereoUpdate();
00148 
00153   virtual void SetStereoCapableWindow(int capable);
00154 
00156   virtual void MakeCurrent();
00157 
00160   virtual bool IsCurrent();
00161 
00165   virtual bool IsDrawable();
00166 
00168   void UpdateContext();
00169 
00171   const char *ReportCapabilities();
00172 
00174   int SupportsOpenGL();
00175 
00177   int IsDirect();
00178 
00182   virtual void SetForceMakeCurrent();
00183 
00186   virtual  int GetEventPending();
00187 
00189 
00190   virtual void SetupPalette(void *hDC);
00191   virtual void SetupPixelFormat(void *hDC, void *dwFlags, int debug,
00192                                 int bpp=16, int zbpp=16);
00194 
00196   void Finalize();
00197 
00199   int GetDepthBufferSize();
00200 
00202 
00205   virtual void HideCursor();
00206   virtual void ShowCursor();
00207   virtual void SetCursorPosition(int x, int y);
00209 
00211   virtual void SetCurrentCursor(int);
00212 
00215   virtual int GetWindowCreated();
00216 
00218 
00219   void SetContextId(void *);
00220   void *GetContextId();
00221   virtual void *GetGenericContext()   {return this->GetContextId();}
00223 
00232   virtual void SetRootWindow(void *);
00233 
00235   virtual void *GetRootWindow();
00236 
00245   virtual void SetWindowId(void *);
00246 
00248 
00249   virtual void *GetWindowId();
00250   virtual void *GetGenericWindowId() {return this->GetWindowId();}
00252 
00257   virtual void SetParentId(void *UIView);
00258 
00260 
00263   virtual void *GetParentId();
00264   virtual void *GetGenericParentId() { return this->GetParentId(); }
00266 
00268 
00270   void SetPixelFormat(void *pixelFormat);
00271   void *GetPixelFormat();
00273 
00274 protected:
00275   vtkIOSRenderWindow();
00276   ~vtkIOSRenderWindow();
00277 
00278   void CreateGLContext();
00279 
00280   void CreateAWindow();
00281   void DestroyWindow();
00282   void DestroyOffScreenWindow();
00283 
00284   int OffScreenInitialized;
00285   int OnScreenInitialized;
00286 
00287 private:
00288   vtkIOSRenderWindow(const vtkIOSRenderWindow&);  // Not implemented.
00289   void operator=(const vtkIOSRenderWindow&);  // Not implemented.
00290 
00291 private:
00292   int      WindowCreated;
00293   int      ViewCreated;
00294   int      CursorHidden;
00295 
00296   int      ForceMakeCurrent;
00297   char     *Capabilities;
00298 };
00299 
00300 #endif