Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# vtkWin32OpenGLRenderWindow Class Reference

`#include <vtkWin32OpenGLRenderWindow.h>`

Inheritance diagram for vtkWin32OpenGLRenderWindow:

[legend]
Collaboration diagram for vtkWin32OpenGLRenderWindow:

[legend]
List of all members.

## Detailed Description

OpenGL rendering window.

Date:
  2003/01/23 19:42:28

Revision:
  1.63

vtkWin32OpenGLRenderWindow is a concrete implementation of the abstract class vtkRenderWindow. vtkWin32OpenGLRenderer interfaces to the standard OpenGL graphics library in the Windows/NT environment..

Events:
  vtkCommand::CursorChangedEvent vtkCommand::RenderWindowMessageEvent

Created by:
  - Schroeder, Will

CVS contributions (if > 5%):
  - Geveci, Berk (51%)
  - Martin, Ken (17%)
  - Schroeder, Will (11%)
  - Lee, Jeff (8%)

CVS logs (CVSweb):
  - .`h` (`/Rendering/vtkWin32OpenGLRenderWindow.h)`
  - .`cxx` (`/Rendering/vtkWin32OpenGLRenderWindow.cxx)`

Examples:
  vtkWin32OpenGLRenderWindow (Examples)

Definition at line 57 of file vtkWin32OpenGLRenderWindow.h.

## Public Types
typedef vtkOpenGLRenderWindow | Superclass
## Public Methods
virtual const char * | GetClassName ()
virtual int | IsA (const char *type)
void | PrintSelf (ostream &os, vtkIndent indent)
virtual void | Start (void)
void | Frame (void)
virtual void | WindowInitialize (void)
virtual void | Initialize (void)
virtual void | SetFullScreen (int)
virtual void | WindowRemap (void)
virtual void | PrefFullScreen (void)
virtual int * | GetSize ()
virtual int * | GetScreenSize ()
virtual int * | GetPosition ()
virtual void | SetWindowName (const char *)
void | SetWindowInfo (char *)
void | SetParentInfo (char *)
virtual void * | GetGenericDisplayId ()
virtual void * | GetGenericWindowId ()
virtual void * | GetGenericParentId ()
virtual void * | GetGenericContext ()
virtual void * | GetGenericDrawable ()
virtual void | SetDisplayId (void *)
virtual void | SetWindowId (HWND)
void | SetContextId (HGLRC)
void | SetDeviceContext (HDC)
virtual void | SetStereoCapableWindow (int capable)
void | MakeCurrent ()
const char * | ReportCapabilities ()
int | SupportsOpenGL ()
int | IsDirect ()
virtual int | GetEventPending ()
void | Clean ()
virtual void | SetCurrentCursor (int)
virtual void | SetOffScreenRendering (int offscreen)
virtual void | SetSize (int, int)
virtual void | SetSize (int a[2])
virtual void | SetPosition (int, int)
virtual void | SetPosition (int a[2])
virtual HWND | GetWindowId ()
void | SetWindowId (void *foo)
virtual void | SetParentId (HWND)
void | SetParentId (void *foo)
virtual void | SetNextWindowId (HWND)
void | SetupMemoryRendering (int x, int y, HDC prn)
void | SetupMemoryRendering (HBITMAP hbmp)
void | ResumeScreenRendering (void)
HDC | GetMemoryDC ()
unsigned char * | GetMemoryData ()
virtual void | SetupPalette (HDC hDC)
virtual void | SetupPixelFormat (HDC hDC, DWORD dwFlags, int debug, int bpp=16, int zbpp=16)
void | HideCursor ()
void | ShowCursor ()
void | SetCursorPosition (int x, int y)
## Static Public Methods
vtkWin32OpenGLRenderWindow * | New ()
int | IsTypeOf (const char *type)
vtkWin32OpenGLRenderWindow * | SafeDownCast (vtkObject *o)
## Protected Methods
| vtkWin32OpenGLRenderWindow ()
| ~vtkWin32OpenGLRenderWindow ()
virtual LRESULT | MessageProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
void | ResizeWhileOffscreen (int xsize, int ysize)
void | CreateAWindow (int x, int y, int width, int height)
void | InitializeApplication ()
void | CleanUpOffScreenRendering (void)
void | CreateOffScreenDC (int xsize, int ysize, HDC aHdc)
void | CreateOffScreenDC (HBITMAP hbmp, HDC aHdc)
## Static Protected Methods
LRESULT APIENTRY | WndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
## Protected Attributes
HINSTANCE | ApplicationInstance
HPALETTE | Palette
HPALETTE | OldPalette
HGLRC | ContextId
HDC | DeviceContext
BOOL | MFChandledWindow
HWND | WindowId
HWND | ParentId
HWND | NextWindowId
int | OwnWindow
int | ScreenSize [2]
BITMAPINFO | MemoryDataHeader
HBITMAP | MemoryBuffer
unsigned char * | MemoryData
HDC | MemoryHdc
int | ScreenMapped
int | ScreenWindowSize [2]
HDC | ScreenDeviceContext
int | ScreenDoubleBuffer
HGLRC | ScreenContextId
int | CursorHidden
int | ForceMakeCurrent
char * | Capabilities

## Member Typedef Documentation

typedef vtkOpenGLRenderWindow vtkWin32OpenGLRenderWindow::Superclass

| Reimplemented from vtkOpenGLRenderWindow. Definition at line 61 of file vtkWin32OpenGLRenderWindow.h.

## Constructor & Destructor Documentation

vtkWin32OpenGLRenderWindow::vtkWin32OpenGLRenderWindow | ( |  | ) | `[protected]`

vtkWin32OpenGLRenderWindow::~vtkWin32OpenGLRenderWindow | ( |  | ) | `[protected]`

## Member Function Documentation

vtkWin32OpenGLRenderWindow* vtkWin32OpenGLRenderWindow::New | ( |  | ) | `[static]`

| Construct an instance of vtkRenderWindow with its screen size set to 300x300, borders turned on, positioned at (0,0), double buffering turned on. Reimplemented from vtkRenderWindow.

virtual const char* vtkWin32OpenGLRenderWindow::GetClassName | ( |  | ) | `[virtual]`

| Reimplemented from vtkOpenGLRenderWindow.

int vtkWin32OpenGLRenderWindow::IsTypeOf | ( | const char * | type | ) | `[static]`

| Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkOpenGLRenderWindow.

virtual int vtkWin32OpenGLRenderWindow::IsA | ( | const char * | type | ) | `[virtual]`

| Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. Reimplemented from vtkOpenGLRenderWindow.

vtkWin32OpenGLRenderWindow* vtkWin32OpenGLRenderWindow::SafeDownCast | ( | vtkObject * | o | ) | `[static]`

| Reimplemented from vtkOpenGLRenderWindow.

void vtkWin32OpenGLRenderWindow::PrintSelf | ( | ostream & | os,
|  | vtkIndent | indent
| ) | `[virtual]`

| Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes. Reimplemented from vtkOpenGLRenderWindow.

virtual void vtkWin32OpenGLRenderWindow::Start | ( | void |  | ) | `[virtual]`

| Begin the rendering process. Implements vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::Frame | ( | void |  | ) | `[virtual]`

| End the rendering process and display the image. Implements vtkRenderWindow.

virtual void vtkWin32OpenGLRenderWindow::WindowInitialize | ( | void |  | ) | `[virtual]`

| Create the window

virtual void vtkWin32OpenGLRenderWindow::Initialize | ( | void |  | ) | `[virtual]`

| Initialize the rendering window.

virtual void vtkWin32OpenGLRenderWindow::SetFullScreen | ( | int |  | ) | `[virtual]`

| Change the window to fill the entire screen. Implements vtkRenderWindow.

virtual void vtkWin32OpenGLRenderWindow::WindowRemap | ( | void |  | ) | `[virtual]`

| Remap the window. Implements vtkRenderWindow.

virtual void vtkWin32OpenGLRenderWindow::PrefFullScreen | ( | void |  | ) | `[virtual]`

| Set the preferred window size to full screen.

virtual void vtkWin32OpenGLRenderWindow::SetSize | ( | int | ,
|  | int |
| ) | `[virtual]`

| Set the size of the window. Reimplemented from vtkWindow.

virtual void vtkWin32OpenGLRenderWindow::SetSize | ( | int | a[2] | ) | `[inline, virtual]`

| Set the size of the window. Reimplemented from vtkWindow. Definition at line 88 of file vtkWin32OpenGLRenderWindow.h. References vtkWindow::SetSize().

virtual int* vtkWin32OpenGLRenderWindow::GetSize | ( |  | ) | `[virtual]`

| Get the current size of the window. Reimplemented from vtkWindow.

virtual void vtkWin32OpenGLRenderWindow::SetPosition | ( | int | ,
|  | int |
| ) | `[virtual]`

| Set the position of the window. Reimplemented from vtkWindow.

virtual void vtkWin32OpenGLRenderWindow::SetPosition | ( | int | a[2] | ) | `[inline, virtual]`

| Set the position of the window. Reimplemented from vtkWindow. Definition at line 97 of file vtkWin32OpenGLRenderWindow.h. References vtkWindow::SetPosition().

virtual int* vtkWin32OpenGLRenderWindow::GetScreenSize | ( |  | ) | `[virtual]`

| Return the screen size.

virtual int* vtkWin32OpenGLRenderWindow::GetPosition | ( |  | ) | `[virtual]`

| Get the position in screen coordinates of the window. Reimplemented from vtkWindow.

virtual void vtkWin32OpenGLRenderWindow::SetWindowName | ( | const char * |  | ) | `[virtual]`

| Set the name of the window. This appears at the top of the window normally. Reimplemented from vtkWindow.

void vtkWin32OpenGLRenderWindow::SetWindowInfo | ( | char * |  | ) | `[virtual]`

| Set this RenderWindow's window id to a pre-existing window. Implements vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::SetParentInfo | ( | char * |  | ) | `[virtual]`

| Sets the HWND id of the window that WILL BE created. Implements vtkRenderWindow.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericDisplayId | ( |  | ) | `[inline, virtual]`

| Dummy stubs for vtkWindow API. Implements vtkRenderWindow. Definition at line 117 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericWindowId | ( |  | ) | `[inline, virtual]`

| Dummy stubs for vtkWindow API. Implements vtkRenderWindow. Definition at line 118 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericParentId | ( |  | ) | `[inline, virtual]`

| Dummy stubs for vtkWindow API. Implements vtkRenderWindow. Definition at line 119 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericContext | ( |  | ) | `[inline, virtual]`

| Dummy stubs for vtkWindow API. Implements vtkRenderWindow. Definition at line 120 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericDrawable | ( |  | ) | `[inline, virtual]`

| Dummy stubs for vtkWindow API. Implements vtkRenderWindow. Definition at line 121 of file vtkWin32OpenGLRenderWindow.h.

virtual void vtkWin32OpenGLRenderWindow::SetDisplayId | ( | void * |  | ) | `[virtual]`

| Dummy stubs for vtkWindow API. Implements vtkRenderWindow.

virtual HWND vtkWin32OpenGLRenderWindow::GetWindowId | ( |  | ) | `[virtual]`

| Get the window id.

void vtkWin32OpenGLRenderWindow::SetWindowId | ( | void * | foo | ) | `[inline, virtual]`

| Get the window id. Implements vtkRenderWindow. Definition at line 127 of file vtkWin32OpenGLRenderWindow.h. References vtkRenderWindow::SetWindowId().

virtual void vtkWin32OpenGLRenderWindow::SetWindowId | ( | HWND |  | ) | `[virtual]`

| Set the window id to a pre-existing window.

virtual void vtkWin32OpenGLRenderWindow::SetParentId | ( | HWND |  | ) | `[virtual]`

| Set the window's parent id to a pre-existing window.

void vtkWin32OpenGLRenderWindow::SetParentId | ( | void * | foo | ) | `[inline, virtual]`

| Set the window's parent id to a pre-existing window. Implements vtkRenderWindow. Definition at line 136 of file vtkWin32OpenGLRenderWindow.h. References vtkRenderWindow::SetParentId().

void vtkWin32OpenGLRenderWindow::SetContextId | ( | HGLRC |  | ) |

void vtkWin32OpenGLRenderWindow::SetDeviceContext | ( | HDC |  | ) |

virtual void vtkWin32OpenGLRenderWindow::SetNextWindowId | ( | HWND |  | ) | `[virtual]`

| Set the window id of the new window once a WindowRemap is done.

virtual void vtkWin32OpenGLRenderWindow::SetStereoCapableWindow | ( | int | capable | ) | `[virtual]`

| Prescribe that the window be created in a stereo-capable mode. This method must be called before the window is realized. This method overrides the superclass method since this class can actually check whether the window has been realized yet. Reimplemented from vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::MakeCurrent | ( |  | ) | `[virtual]`

| Make this windows OpenGL context the current context. Implements vtkOpenGLRenderWindow.

const char* vtkWin32OpenGLRenderWindow::ReportCapabilities | ( |  | ) | `[virtual]`

| Get report of capabilities for the render window Reimplemented from vtkRenderWindow.

int vtkWin32OpenGLRenderWindow::SupportsOpenGL | ( |  | ) | `[virtual]`

| Does this render window support OpenGL? 0-false, 1-true Reimplemented from vtkRenderWindow.

int vtkWin32OpenGLRenderWindow::IsDirect | ( |  | ) | `[virtual]`

| Is this render window using hardware acceleration? 0-false, 1-true Reimplemented from vtkRenderWindow.

virtual int vtkWin32OpenGLRenderWindow::GetEventPending | ( |  | ) | `[virtual]`

| Check to see if a mouse button has been pressed. All other events are ignored by this method. This is a useful check to abort a long render. Implements vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::SetupMemoryRendering | ( | int | x,
|  | int | y,
|  | HDC | prn
| ) |

| These methods can be used by MFC applications to support print preview and printing, or more general rendering into memory.

void vtkWin32OpenGLRenderWindow::SetupMemoryRendering | ( | HBITMAP | hbmp | ) |

| These methods can be used by MFC applications to support print preview and printing, or more general rendering into memory.

void vtkWin32OpenGLRenderWindow::ResumeScreenRendering | ( | void |  | ) |

| These methods can be used by MFC applications to support print preview and printing, or more general rendering into memory.

HDC vtkWin32OpenGLRenderWindow::GetMemoryDC | ( |  | ) |

| These methods can be used by MFC applications to support print preview and printing, or more general rendering into memory.

unsigned char* vtkWin32OpenGLRenderWindow::GetMemoryData | ( |  | ) | `[inline]`

| These methods can be used by MFC applications to support print preview and printing, or more general rendering into memory. Definition at line 178 of file vtkWin32OpenGLRenderWindow.h.

virtual void vtkWin32OpenGLRenderWindow::SetupPalette | ( | HDC | hDC | ) | `[virtual]`

| Initialize OpenGL for this window.

virtual void vtkWin32OpenGLRenderWindow::SetupPixelFormat | ( | HDC | hDC,
|  | DWORD | dwFlags,
|  | int | debug,
|  | int | bpp = 16,
|  | int | zbpp = 16
| ) | `[virtual]`

| Initialize OpenGL for this window.

void vtkWin32OpenGLRenderWindow::Clean | ( |  | ) |

| Clean up device contexts, rendering contexts, etc.

void vtkWin32OpenGLRenderWindow::HideCursor | ( |  | ) | `[virtual]`

| Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to display a 3D cursor instead. Set cursor position in window (note that (0,0) is the lower left corner). Implements vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::ShowCursor | ( |  | ) | `[virtual]`

| Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to display a 3D cursor instead. Set cursor position in window (note that (0,0) is the lower left corner). Implements vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::SetCursorPosition | ( | int | x,
|  | int | y
| ) | `[virtual]`

| Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to display a 3D cursor instead. Set cursor position in window (note that (0,0) is the lower left corner). Reimplemented from vtkRenderWindow.

virtual void vtkWin32OpenGLRenderWindow::SetCurrentCursor | ( | int |  | ) | `[virtual]`

| Change the shape of the cursor Reimplemented from vtkRenderWindow.

virtual void vtkWin32OpenGLRenderWindow::SetOffScreenRendering | ( | int | offscreen | ) | `[virtual]`

| Override the default implementation so that we can actively switch between on and off screen rendering. Reimplemented from vtkWindow.

virtual LRESULT vtkWin32OpenGLRenderWindow::MessageProc | ( | HWND | hWnd,
|  | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[protected, virtual]`

LRESULT APIENTRY vtkWin32OpenGLRenderWindow::WndProc | ( | HWND | hWnd,
|  | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[static, protected]`

void vtkWin32OpenGLRenderWindow::ResizeWhileOffscreen | ( | int | xsize,
|  | int | ysize
| ) | `[protected]`

void vtkWin32OpenGLRenderWindow::CreateAWindow | ( | int | x,
|  | int | y,
|  | int | width,
|  | int | height
| ) | `[protected]`

void vtkWin32OpenGLRenderWindow::InitializeApplication | ( |  | ) | `[protected]`

void vtkWin32OpenGLRenderWindow::CleanUpOffScreenRendering | ( | void |  | ) | `[protected]`

void vtkWin32OpenGLRenderWindow::CreateOffScreenDC | ( | int | xsize,
|  | int | ysize,
|  | HDC | aHdc
| ) | `[protected]`

void vtkWin32OpenGLRenderWindow::CreateOffScreenDC | ( | HBITMAP | hbmp,
|  | HDC | aHdc
| ) | `[protected]`

## Member Data Documentation

HINSTANCE vtkWin32OpenGLRenderWindow::ApplicationInstance`[protected]`

| Definition at line 211 of file vtkWin32OpenGLRenderWindow.h.

HPALETTE vtkWin32OpenGLRenderWindow::Palette`[protected]`

| Definition at line 212 of file vtkWin32OpenGLRenderWindow.h.

HPALETTE vtkWin32OpenGLRenderWindow::OldPalette`[protected]`

| Definition at line 213 of file vtkWin32OpenGLRenderWindow.h.

HGLRC vtkWin32OpenGLRenderWindow::ContextId`[protected]`

| Definition at line 214 of file vtkWin32OpenGLRenderWindow.h.

HDC vtkWin32OpenGLRenderWindow::DeviceContext`[protected]`

| Definition at line 215 of file vtkWin32OpenGLRenderWindow.h.

BOOL vtkWin32OpenGLRenderWindow::MFChandledWindow`[protected]`

| Definition at line 216 of file vtkWin32OpenGLRenderWindow.h.

HWND vtkWin32OpenGLRenderWindow::WindowId`[protected]`

| Definition at line 217 of file vtkWin32OpenGLRenderWindow.h.

HWND vtkWin32OpenGLRenderWindow::ParentId`[protected]`

| Definition at line 218 of file vtkWin32OpenGLRenderWindow.h.

HWND vtkWin32OpenGLRenderWindow::NextWindowId`[protected]`

| Definition at line 219 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::OwnWindow`[protected]`

| Definition at line 220 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenSize[2]`[protected]`

| Definition at line 221 of file vtkWin32OpenGLRenderWindow.h.

BITMAPINFO vtkWin32OpenGLRenderWindow::MemoryDataHeader`[protected]`

| Definition at line 224 of file vtkWin32OpenGLRenderWindow.h.

HBITMAP vtkWin32OpenGLRenderWindow::MemoryBuffer`[protected]`

| Definition at line 225 of file vtkWin32OpenGLRenderWindow.h.

unsigned char* vtkWin32OpenGLRenderWindow::MemoryData`[protected]`

| Definition at line 226 of file vtkWin32OpenGLRenderWindow.h.

HDC vtkWin32OpenGLRenderWindow::MemoryHdc`[protected]`

| Definition at line 227 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenMapped`[protected]`

| Definition at line 229 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenWindowSize[2]`[protected]`

| Definition at line 230 of file vtkWin32OpenGLRenderWindow.h.

HDC vtkWin32OpenGLRenderWindow::ScreenDeviceContext`[protected]`

| Definition at line 231 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenDoubleBuffer`[protected]`

| Definition at line 232 of file vtkWin32OpenGLRenderWindow.h.

HGLRC vtkWin32OpenGLRenderWindow::ScreenContextId`[protected]`

| Definition at line 233 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::CursorHidden`[protected]`

| Definition at line 243 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ForceMakeCurrent`[protected]`

| Definition at line 244 of file vtkWin32OpenGLRenderWindow.h.

char* vtkWin32OpenGLRenderWindow::Capabilities`[protected]`

| Definition at line 246 of file vtkWin32OpenGLRenderWindow.h.

The documentation for this class was generated from the following file:

- Rendering/vtkWin32OpenGLRenderWindow.h