VTK
vtkIOSRenderWindow.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkIOSRenderWindow.h
5 
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
42 #ifndef vtkIOSRenderWindow_h
43 #define vtkIOSRenderWindow_h
44 
45 #include "vtkRenderingOpenGL2Module.h" // For export macro
46 #include "vtkOpenGLRenderWindow.h"
47 
49 {
50 public:
51  static vtkIOSRenderWindow *New();
53  void PrintSelf(ostream& os, vtkIndent indent);
54 
56  virtual void Start();
57 
59  virtual void Frame();
60 
62  virtual void WindowConfigure();
63 
67  virtual void Initialize();
68 
73  virtual void SetFullScreen(int);
74 
77  virtual void WindowRemap();
78 
81  virtual void PrefFullScreen();
82 
84 
85  virtual void SetSize(int a[2]);
86  virtual void SetSize(int,int);
88 
90  virtual int *GetSize();
91 
93 
94  virtual void SetPosition(int a[2]);
95  virtual void SetPosition(int,int);
97 
99  virtual int *GetScreenSize();
100 
102  virtual int *GetPosition();
103 
106  virtual void SetWindowName(const char *);
107 
108  void SetNextWindowInfo(char *)
109  {
110  vtkWarningMacro("SetNextWindowInfo not implemented (WindowRemap not implemented).");
111  }
112  virtual void* GetGenericDrawable()
113  {
114  vtkWarningMacro("Method not implemented.");
115  return 0;
116  }
117  virtual void SetDisplayId(void*)
118  {
119  vtkWarningMacro("Method not implemented.");
120  }
121  virtual void *GetGenericDisplayId()
122  {
123  vtkWarningMacro("Method not implemented.");
124  return 0;
125  }
126 
130  virtual void SetWindowInfo(char*);
131 
135  virtual void SetParentInfo(char*);
136 
137  void SetNextWindowId(void*)
138  {
139  vtkWarningMacro("SetNextWindowId not implemented (WindowRemap not implemented).");
140  }
141 
144  virtual bool InitializeFromCurrentContext();
145 
147  virtual void StereoUpdate();
148 
153  virtual void SetStereoCapableWindow(int capable);
154 
156  virtual void MakeCurrent();
157 
160  virtual bool IsCurrent();
161 
165  virtual bool IsDrawable();
166 
168  void UpdateContext();
169 
171  const char *ReportCapabilities();
172 
174  int SupportsOpenGL();
175 
177  int IsDirect();
178 
182  virtual void SetForceMakeCurrent();
183 
186  virtual int GetEventPending();
187 
189 
190  virtual void SetupPalette(void *hDC);
191  virtual void SetupPixelFormat(void *hDC, void *dwFlags, int debug,
192  int bpp=16, int zbpp=16);
194 
196  void Finalize();
197 
199  int GetDepthBufferSize();
200 
202 
205  virtual void HideCursor();
206  virtual void ShowCursor();
207  virtual void SetCursorPosition(int x, int y);
209 
211  virtual void SetCurrentCursor(int);
212 
215  virtual int GetWindowCreated();
216 
218 
219  void SetContextId(void *);
220  void *GetContextId();
221  virtual void *GetGenericContext() {return this->GetContextId();}
223 
232  virtual void SetRootWindow(void *);
233 
235  virtual void *GetRootWindow();
236 
245  virtual void SetWindowId(void *);
246 
248 
249  virtual void *GetWindowId();
250  virtual void *GetGenericWindowId() {return this->GetWindowId();}
252 
257  virtual void SetParentId(void *UIView);
258 
260 
263  virtual void *GetParentId();
264  virtual void *GetGenericParentId() { return this->GetParentId(); }
266 
268 
270  void SetPixelFormat(void *pixelFormat);
271  void *GetPixelFormat();
273 
274 protected:
277 
278  void CreateGLContext();
279 
280  void CreateAWindow();
281  void DestroyWindow();
282  void DestroyOffScreenWindow();
283 
286 
287 private:
288  vtkIOSRenderWindow(const vtkIOSRenderWindow&); // Not implemented.
289  void operator=(const vtkIOSRenderWindow&); // Not implemented.
290 
291 private:
292  int WindowCreated;
293  int ViewCreated;
294  int CursorHidden;
295 
296  int ForceMakeCurrent;
297  char *Capabilities;
298 };
299 
300 #endif
OpenGL rendering window.
virtual void Finalize()=0
virtual void SetForceMakeCurrent()
virtual void SetWindowInfo(char *)=0
virtual void WindowRemap()=0
virtual void * GetGenericParentId()
virtual void * GetGenericContext()
void PrintSelf(ostream &os, vtkIndent indent)
virtual void HideCursor()=0
void SetNextWindowInfo(char *)
#define VTKRENDERINGOPENGL2_EXPORT
static vtkRenderWindow * New()
virtual int * GetScreenSize()=0
virtual void SetWindowId(void *)=0
virtual void SetCurrentCursor(int)
virtual void SetDisplayId(void *)
virtual void SetFullScreen(int)=0
virtual int GetEventPending()=0
virtual void SetSize(int, int)
virtual void SetStereoCapableWindow(int capable)
virtual const char * ReportCapabilities()
virtual int IsDirect()
virtual int SupportsOpenGL()
virtual void SetParentInfo(char *)=0
virtual void * GetGenericDisplayId()
virtual bool IsCurrent()=0
virtual void SetParentId(void *)=0
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual void DestroyWindow()=0
virtual void MakeCurrent()=0
virtual void SetCursorPosition(int, int)
virtual int * GetPosition()
virtual void Frame()=0
virtual int * GetSize()
virtual bool InitializeFromCurrentContext()
virtual void Start()=0
IOS OpenGL rendering window.
virtual void SetWindowName(const char *)
virtual void SetPosition(int, int)
void SetNextWindowId(void *)
virtual void StereoUpdate()
virtual void CreateAWindow()=0
virtual void ShowCursor()=0
virtual void * GetGenericDrawable()
virtual bool IsDrawable()
virtual void * GetGenericWindowId()