Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkWin32OpenGLRenderWindow Class Reference

#include <vtkWin32OpenGLRenderWindow.h>

Inheritance diagram for vtkWin32OpenGLRenderWindow:

Inheritance graph
[legend]
Collaboration diagram for vtkWin32OpenGLRenderWindow:

Collaboration graph
[legend]
List of all members.

Detailed Description

OpenGL rendering window.

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::RenderWindowMessageEvent vtkCommand::CursorChangedEvent vtkCommand::ExitEvent
Examples:
vtkWin32OpenGLRenderWindow (Examples)

Definition at line 36 of file vtkWin32OpenGLRenderWindow.h.

Public Types

typedef vtkOpenGLRenderWindow Superclass

Public Member Functions

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 Finalize (void)
virtual void SetFullScreen (int)
virtual void WindowRemap (void)
virtual int * GetScreenSize ()
virtual int * GetPosition ()
virtual void SetWindowName (const char *)
void SetWindowInfo (char *)
void SetNextWindowInfo (char *)
void SetParentInfo (char *)
virtual void * GetGenericDisplayId ()
virtual void * GetGenericWindowId ()
virtual void * GetGenericParentId ()
virtual void * GetGenericContext ()
virtual void * GetGenericDrawable ()
void SetContextId (HGLRC)
void SetDeviceContext (HDC)
virtual void SetNextWindowId (HWND)
virtual void SetNextWindowId (void *arg)
virtual void SetStereoCapableWindow (int capable)
void MakeCurrent ()
const char * ReportCapabilities ()
int SupportsOpenGL ()
int IsDirect ()
virtual void SetCurrentCursor (int)
virtual void SetOffScreenRendering (int offscreen)
virtual void PrefFullScreen (void)
virtual void SetSize (int, int)
virtual void SetSize (int a[2])
virtual int * GetSize ()
virtual void SetPosition (int, int)
virtual void SetPosition (int a[2])
virtual void SetDisplayId (void *)
virtual HWND GetWindowId ()
void SetWindowId (void *foo)
virtual void SetWindowId (HWND)
virtual void SetParentId (HWND)
void SetParentId (void *foo)
virtual int GetEventPending ()
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 Clean ()
void HideCursor ()
void ShowCursor ()
void SetCursorPosition (int x, int y)

Static Public Member Functions

static vtkWin32OpenGLRenderWindowNew ()
static int IsTypeOf (const char *type)
static vtkWin32OpenGLRenderWindowSafeDownCast (vtkObject *o)

Protected Member Functions

 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 Member Functions

static 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 40 of file vtkWin32OpenGLRenderWindow.h.


Constructor & Destructor Documentation

vtkWin32OpenGLRenderWindow::vtkWin32OpenGLRenderWindow  )  [protected]
 

vtkWin32OpenGLRenderWindow::~vtkWin32OpenGLRenderWindow  )  [protected]
 


Member Function Documentation

static 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.

static 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.

static 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. This will setup all system-specific resources. This method and Finalize() must be symmetric and it should be possible to call them multiple times, even changing WindowId in-between. This is what WindowRemap does.

virtual void vtkWin32OpenGLRenderWindow::Finalize void   )  [virtual]
 

Finalize the rendering window. This will shutdown all system-specific resources. After having called this, it should be possible to destroy a window that was used for a SetWindowId() call without any ill effects.

Implements vtkRenderWindow.

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 preferred window size to full screen.

Reimplemented from vtkWindow.

Definition at line 76 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]
 

Get the current size of the window.

Reimplemented from vtkWindow.

Definition at line 85 of file vtkWin32OpenGLRenderWindow.h.

References vtkWindow::SetPosition().

virtual int* vtkWin32OpenGLRenderWindow::GetScreenSize  )  [virtual]
 

Return the screen size.

Implements vtkWindow.

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::SetNextWindowInfo char *   )  [virtual]
 

Sets the WindowInfo that will be used after a WindowRemap.

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]
 

This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.

Implements vtkRenderWindow.

Definition at line 108 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericWindowId  )  [inline, virtual]
 

This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.

Implements vtkRenderWindow.

Definition at line 109 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericParentId  )  [inline, virtual]
 

This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.

Implements vtkRenderWindow.

Definition at line 110 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericContext  )  [inline, virtual]
 

This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.

Implements vtkRenderWindow.

Definition at line 111 of file vtkWin32OpenGLRenderWindow.h.

virtual void* vtkWin32OpenGLRenderWindow::GetGenericDrawable  )  [inline, virtual]
 

This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.

Implements vtkRenderWindow.

Definition at line 112 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]
 

This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.

Implements vtkRenderWindow.

Definition at line 118 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 id to a pre-existing window.

Implements vtkRenderWindow.

Definition at line 127 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::SetNextWindowId void *  arg  )  [virtual]
 

Set the window id of the new window once a WindowRemap is done. This is the generic prototype as required by the vtkRenderWindow parent.

Implements vtkRenderWindow.

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  ) 
 

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.

void vtkWin32OpenGLRenderWindow::ResumeScreenRendering void   ) 
 

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.

HDC vtkWin32OpenGLRenderWindow::GetMemoryDC  ) 
 

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.

unsigned char* vtkWin32OpenGLRenderWindow::GetMemoryData  )  [inline]
 

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.

Definition at line 172 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]
 

Clean up device contexts, rendering contexts, etc.

Implements vtkRenderWindow.

void vtkWin32OpenGLRenderWindow::SetCursorPosition int  x,
int  y
[virtual]
 

Clean up device contexts, rendering contexts, etc.

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]
 

static 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 205 of file vtkWin32OpenGLRenderWindow.h.

HPALETTE vtkWin32OpenGLRenderWindow::Palette [protected]
 

Definition at line 206 of file vtkWin32OpenGLRenderWindow.h.

HPALETTE vtkWin32OpenGLRenderWindow::OldPalette [protected]
 

Definition at line 207 of file vtkWin32OpenGLRenderWindow.h.

HGLRC vtkWin32OpenGLRenderWindow::ContextId [protected]
 

Definition at line 208 of file vtkWin32OpenGLRenderWindow.h.

HDC vtkWin32OpenGLRenderWindow::DeviceContext [protected]
 

Definition at line 209 of file vtkWin32OpenGLRenderWindow.h.

BOOL vtkWin32OpenGLRenderWindow::MFChandledWindow [protected]
 

Definition at line 210 of file vtkWin32OpenGLRenderWindow.h.

HWND vtkWin32OpenGLRenderWindow::WindowId [protected]
 

Definition at line 211 of file vtkWin32OpenGLRenderWindow.h.

HWND vtkWin32OpenGLRenderWindow::ParentId [protected]
 

Definition at line 212 of file vtkWin32OpenGLRenderWindow.h.

HWND vtkWin32OpenGLRenderWindow::NextWindowId [protected]
 

Definition at line 213 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::OwnWindow [protected]
 

Definition at line 214 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenSize[2] [protected]
 

Definition at line 215 of file vtkWin32OpenGLRenderWindow.h.

BITMAPINFO vtkWin32OpenGLRenderWindow::MemoryDataHeader [protected]
 

Definition at line 218 of file vtkWin32OpenGLRenderWindow.h.

HBITMAP vtkWin32OpenGLRenderWindow::MemoryBuffer [protected]
 

Definition at line 219 of file vtkWin32OpenGLRenderWindow.h.

unsigned char* vtkWin32OpenGLRenderWindow::MemoryData [protected]
 

Definition at line 220 of file vtkWin32OpenGLRenderWindow.h.

HDC vtkWin32OpenGLRenderWindow::MemoryHdc [protected]
 

Definition at line 221 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenMapped [protected]
 

Definition at line 223 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenWindowSize[2] [protected]
 

Definition at line 224 of file vtkWin32OpenGLRenderWindow.h.

HDC vtkWin32OpenGLRenderWindow::ScreenDeviceContext [protected]
 

Definition at line 225 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ScreenDoubleBuffer [protected]
 

Definition at line 226 of file vtkWin32OpenGLRenderWindow.h.

HGLRC vtkWin32OpenGLRenderWindow::ScreenContextId [protected]
 

Definition at line 227 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::CursorHidden [protected]
 

Definition at line 237 of file vtkWin32OpenGLRenderWindow.h.

int vtkWin32OpenGLRenderWindow::ForceMakeCurrent [protected]
 

Definition at line 238 of file vtkWin32OpenGLRenderWindow.h.

char* vtkWin32OpenGLRenderWindow::Capabilities [protected]
 

Definition at line 240 of file vtkWin32OpenGLRenderWindow.h.


The documentation for this class was generated from the following file:
Generated on Tue Jan 22 00:31:06 2008 for VTK by  doxygen 1.4.3-20050530