VTK
vtkOSOpenGLRenderWindow.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkOSOpenGLRenderWindow.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=========================================================================*/
29#ifndef vtkOSOpenGLRenderWindow_h
30#define vtkOSOpenGLRenderWindow_h
31
32#include "vtkRenderingOpenGL2Module.h" // For export macro
34
35class vtkIdList;
36class vtkOSOpenGLRenderWindowInternal;
37
38class VTKRENDERINGOPENGL2_EXPORT vtkOSOpenGLRenderWindow : public vtkOpenGLRenderWindow
39{
40public:
43 void PrintSelf(ostream& os, vtkIndent indent);
44
48 virtual void Start(void);
49
53 virtual void Frame(void);
54
58 virtual void WindowInitialize(void);
59
66 virtual void Initialize(void);
67
73 virtual void Finalize(void);
74
78 virtual void SetFullScreen(int);
79
81
84 virtual void SetSize(int x,int y);
85 virtual void SetSize(int a[2]) {this->SetSize(a[0], a[1]);};
87
91 virtual int *GetScreenSize();
92
96 virtual int *GetPosition();
97
99
102 void SetPosition(int x, int y);
103 void SetPosition(int a[2]) {this->SetPosition(a[0], a[1]);};
105
112 virtual void SetStereoCapableWindow(int capable);
113
118
122 virtual bool IsCurrent();
123
130
134 const char *ReportCapabilities();
135
140
144 int IsDirect();
145
149 virtual void WindowRemap(void);
150
152
155 virtual void *GetGenericDisplayId() {return 0;}
156 virtual void *GetGenericWindowId();
157 virtual void *GetGenericParentId() {return 0;}
158 virtual void *GetGenericContext();
159 virtual void *GetGenericDrawable() {return 0;}
161
166 void SetDisplayId(void *) {}
167
171 void SetParentId(void *);
172
176 void SetWindowId(void *);
177
183 void SetNextWindowId(void *);
184
185 void SetWindowName(const char *);
186
191 void HideCursor() {}
192 void ShowCursor() {}
193
197 virtual void SetCurrentCursor(int);
198
204 virtual int GetEventPending();
205
209 void SetWindowInfo(char *info);
210
215
219 void SetParentInfo(char *info);
220
225
226protected:
229
230 vtkOSOpenGLRenderWindowInternal *Internal;
231
232 int OwnWindow;
233 int OwnDisplay;
234 int ScreenSize[2];
235 int CursorHidden;
236 int ForceMakeCurrent;
237 char *Capabilities;
238
241 void CreateOffScreenWindow(int width, int height);
243 void ResizeOffScreenWindow(int width, int height);
244
245
246private:
247 vtkOSOpenGLRenderWindow(const vtkOSOpenGLRenderWindow&) VTK_DELETE_FUNCTION;
248 void operator=(const vtkOSOpenGLRenderWindow&) VTK_DELETE_FUNCTION;
249};
250
251
252
253#endif
list of point or cell ids
Definition: vtkIdList.h:37
a simple class to control print indentation
Definition: vtkIndent.h:40
OffScreen Mesa rendering window.
void DestroyWindow()
Destroy a not-off-screen window.
virtual bool IsCurrent()
Tells if this window is the current OpenGL context for the calling thread.
int SupportsOpenGL()
Does this render window support OpenGL? 0-false, 1-true.
virtual void Finalize(void)
"Deinitialize" the rendering window.
virtual int * GetScreenSize()
Get the current size of the screen in pixels.
virtual void WindowInitialize(void)
Initialize the window for rendering.
virtual void Frame(void)
End the rendering process and display the image.
void SetWindowId(void *)
Set this RenderWindow's X window id to a pre-existing window.
virtual void SetFullScreen(int)
Change the window to fill the entire screen.
virtual int GetEventPending()
Check to see if a mouse button has been pressed.
void SetOffScreenRendering(int i)
Render without displaying the window.
void SetWindowName(const char *)
virtual void SetSize(int x, int y)
Specify the size of the rendering window in pixels.
void CreateOffScreenWindow(int width, int height)
void SetParentId(void *)
Sets the parent of the window that WILL BE created.
void SetParentInfo(char *info)
Sets the X window id of the window that WILL BE created.
void SetNextWindowId(void *)
Set the window id of the new window once a WindowRemap is done.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void SetNextWindowInfo(char *info)
Set the window info that will be used after WindowRemap()
virtual void Initialize(void)
Initialize the rendering window.
void SetPosition(int x, int y)
Move the window to a new position on the display.
virtual void SetStereoCapableWindow(int capable)
Prescribe that the window be created in a stereo-capable mode.
virtual void * GetGenericDisplayId()
Xwindow get set functions.
static vtkOSOpenGLRenderWindow * New()
void SetDisplayId(void *)
Set the X display id for this RenderWindow to use to a pre-existing X display id.
virtual void WindowRemap(void)
Resize the window.
void HideCursor()
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
const char * ReportCapabilities()
Get report of capabilities for the render window.
virtual int * GetPosition()
Get the position in screen coordinates (pixels) of the window.
void SetForceMakeCurrent()
If called, allow MakeCurrent() to skip cache-check when called.
virtual void Start(void)
Begin the rendering process.
int IsDirect()
Is this render window using hardware acceleration? 0-false, 1-true.
void CreateAWindow()
Create a not-off-screen window.
virtual void * GetGenericWindowId()
virtual void SetCurrentCursor(int)
Change the shape of the cursor.
void MakeCurrent()
Make this window the current OpenGL context.
virtual void * GetGenericContext()
void ResizeOffScreenWindow(int width, int height)
virtual void SetSize(int a[2])
Set the size of the window in screen coordinates in pixels.
void SetWindowInfo(char *info)
Set this RenderWindow's X window id to a pre-existing window.
OpenGL rendering window.
@ info
Definition: vtkX3D.h:376
@ height
Definition: vtkX3D.h:254