#include <vtkOpenGLRenderWindow.h>
vtkOpenGLRenderWindow is a concrete implementation of the abstract class vtkRenderWindow. vtkOpenGLRenderer interfaces to the OpenGL graphics library. Application programmers should normally use vtkRenderWindow instead of the OpenGL specific version.
Definition at line 33 of file vtkOpenGLRenderWindow.h.
Public Types | |
typedef vtkRenderWindow | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | StereoUpdate () |
void | MakeCurrent ()=0 |
void | RegisterTextureResource (GLuint id) |
int | GetDepthBufferSize () |
int | GetColorBufferSizes (int *rgba) |
virtual void | OpenGLInit () |
unsigned int | GetBackLeftBuffer () |
unsigned int | GetBackRightBuffer () |
unsigned int | GetFrontLeftBuffer () |
unsigned int | GetFrontRightBuffer () |
unsigned int | GetBackBuffer () |
unsigned int | GetFrontBuffer () |
virtual void | CheckGraphicError () |
virtual int | HasGraphicError () |
virtual const char * | GetLastGraphicErrorString () |
virtual unsigned char * | GetPixelData (int x, int y, int x2, int y2, int front) |
virtual int | GetPixelData (int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data) |
virtual int | SetPixelData (int x, int y, int x2, int y2, unsigned char *data, int front) |
virtual int | SetPixelData (int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front) |
virtual float * | GetRGBAPixelData (int x, int y, int x2, int y2, int front) |
virtual int | GetRGBAPixelData (int x, int y, int x2, int y2, int front, vtkFloatArray *data) |
virtual int | SetRGBAPixelData (int x, int y, int x2, int y2, float *data, int front, int blend=0) |
virtual int | SetRGBAPixelData (int x, int y, int x2, int y2, vtkFloatArray *data, int front, int blend=0) |
virtual void | ReleaseRGBAPixelData (float *data) |
virtual unsigned char * | GetRGBACharPixelData (int x, int y, int x2, int y2, int front) |
virtual int | GetRGBACharPixelData (int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data) |
virtual int | SetRGBACharPixelData (int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0) |
virtual int | SetRGBACharPixelData (int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int blend=0) |
virtual float * | GetZbufferData (int x1, int y1, int x2, int y2) |
virtual int | GetZbufferData (int x1, int y1, int x2, int y2, float *z) |
virtual int | GetZbufferData (int x1, int y1, int x2, int y2, vtkFloatArray *z) |
virtual int | SetZbufferData (int x1, int y1, int x2, int y2, float *buffer) |
virtual int | SetZbufferData (int x1, int y1, int x2, int y2, vtkFloatArray *buffer) |
virtual vtkTimeStamp | GetContextCreationTime () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkOpenGLRenderWindow * | SafeDownCast (vtkObject *o) |
static void | SetGlobalMaximumNumberOfMultiSamples (int val) |
static int | GetGlobalMaximumNumberOfMultiSamples () |
Protected Member Functions | |
vtkOpenGLRenderWindow () | |
~vtkOpenGLRenderWindow () | |
int | GetPixelData (int x, int y, int x2, int y2, int front, unsigned char *data) |
int | GetRGBAPixelData (int x, int y, int x2, int y2, int front, float *data) |
int | GetRGBACharPixelData (int x, int y, int x2, int y2, int front, unsigned char *data) |
int | CreateHardwareOffScreenWindow (int width, int height) |
void | DestroyHardwareOffScreenWindow () |
virtual void | CreateAWindow ()=0 |
virtual void | DestroyWindow ()=0 |
Protected Attributes | |
long | OldMonitorSetting |
vtkIdList * | TextureResourceIds |
int | OffScreenUseFrameBuffer |
unsigned int | BackLeftBuffer |
unsigned int | BackRightBuffer |
unsigned int | FrontLeftBuffer |
unsigned int | FrontRightBuffer |
unsigned int | FrontBuffer |
unsigned int | BackBuffer |
unsigned int | LastGraphicError |
vtkTimeStamp | ContextCreationTime |
int | NumberOfFrameBuffers |
unsigned int | TextureObjects [4] |
unsigned int | FrameBufferObject |
unsigned int | DepthRenderBufferObject |
Reimplemented from vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
Definition at line 39 of file vtkOpenGLRenderWindow.h.
vtkOpenGLRenderWindow::vtkOpenGLRenderWindow | ( | ) | [protected] |
vtkOpenGLRenderWindow::~vtkOpenGLRenderWindow | ( | ) | [protected] |
virtual const char* vtkOpenGLRenderWindow::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
static int vtkOpenGLRenderWindow::IsTypeOf | ( | const char * | name | ) | [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 vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
virtual int vtkOpenGLRenderWindow::IsA | ( | const char * | name | ) | [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 vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
static vtkOpenGLRenderWindow* vtkOpenGLRenderWindow::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
void vtkOpenGLRenderWindow::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 vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
static void vtkOpenGLRenderWindow::SetGlobalMaximumNumberOfMultiSamples | ( | int | val | ) | [static] |
Set/Get the maximum number of multisamples
static int vtkOpenGLRenderWindow::GetGlobalMaximumNumberOfMultiSamples | ( | ) | [static] |
Set/Get the maximum number of multisamples
virtual void vtkOpenGLRenderWindow::StereoUpdate | ( | ) | [virtual] |
Update system if needed due to stereo rendering.
Reimplemented from vtkRenderWindow.
Reimplemented in vtkCocoaRenderWindow.
virtual unsigned char* vtkOpenGLRenderWindow::GetPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBRGB...
Implements vtkWindow.
virtual int vtkOpenGLRenderWindow::GetPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front, | |||
vtkUnsignedCharArray * | data | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBRGB...
Implements vtkWindow.
virtual int vtkOpenGLRenderWindow::SetPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
unsigned char * | data, | |||
int | front | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBRGB...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
vtkUnsignedCharArray * | data, | |||
int | front | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBRGB...
Implements vtkRenderWindow.
virtual float* vtkOpenGLRenderWindow::GetRGBAPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::GetRGBAPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front, | |||
vtkFloatArray * | data | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetRGBAPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
float * | data, | |||
int | front, | |||
int | blend = 0 | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetRGBAPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
vtkFloatArray * | data, | |||
int | front, | |||
int | blend = 0 | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual void vtkOpenGLRenderWindow::ReleaseRGBAPixelData | ( | float * | data | ) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual unsigned char* vtkOpenGLRenderWindow::GetRGBACharPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::GetRGBACharPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front, | |||
vtkUnsignedCharArray * | data | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetRGBACharPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
unsigned char * | data, | |||
int | front, | |||
int | blend = 0 | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetRGBACharPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
vtkUnsignedCharArray * | data, | |||
int | front, | |||
int | blend = 0 | |||
) | [virtual] |
Set/Get the pixel data of an image, transmitted as RGBARGBA...
Implements vtkRenderWindow.
virtual float* vtkOpenGLRenderWindow::GetZbufferData | ( | int | x1, | |
int | y1, | |||
int | x2, | |||
int | y2 | |||
) | [virtual] |
Set/Get the zbuffer data from an image
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::GetZbufferData | ( | int | x1, | |
int | y1, | |||
int | x2, | |||
int | y2, | |||
float * | z | |||
) | [virtual] |
Set/Get the zbuffer data from an image
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::GetZbufferData | ( | int | x1, | |
int | y1, | |||
int | x2, | |||
int | y2, | |||
vtkFloatArray * | z | |||
) | [virtual] |
Set/Get the zbuffer data from an image
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetZbufferData | ( | int | x1, | |
int | y1, | |||
int | x2, | |||
int | y2, | |||
float * | buffer | |||
) | [virtual] |
Set/Get the zbuffer data from an image
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::SetZbufferData | ( | int | x1, | |
int | y1, | |||
int | x2, | |||
int | y2, | |||
vtkFloatArray * | buffer | |||
) | [virtual] |
Set/Get the zbuffer data from an image
Implements vtkRenderWindow.
void vtkOpenGLRenderWindow::MakeCurrent | ( | ) | [pure virtual] |
Make this window the current OpenGL context.
Implements vtkRenderWindow.
Implemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkWinCEOpenGLRenderWindow, and vtkXOpenGLRenderWindow.
void vtkOpenGLRenderWindow::RegisterTextureResource | ( | GLuint | id | ) |
Register a texture name with this render window.
Reimplemented in vtkCocoaRenderWindow.
int vtkOpenGLRenderWindow::GetDepthBufferSize | ( | ) | [virtual] |
Get the size of the depth buffer.
Implements vtkRenderWindow.
Reimplemented in vtkCarbonRenderWindow, and vtkCocoaRenderWindow.
int vtkOpenGLRenderWindow::GetColorBufferSizes | ( | int * | rgba | ) | [virtual] |
Get the size of the color buffer. Returns 0 if not able to determine otherwise sets R G B and A into buffer.
Implements vtkRenderWindow.
virtual void vtkOpenGLRenderWindow::OpenGLInit | ( | ) | [virtual] |
Initialize OpenGL for this window.
unsigned int vtkOpenGLRenderWindow::GetBackLeftBuffer | ( | ) |
Return the OpenGL name of the back left buffer. It is GL_BACK_LEFT if GL is bound to the window-system-provided framebuffer. It is vtkgl::COLOR_ATTACHMENT0_EXT if GL is bound to an application-created framebuffer object (GPU-based offscreen rendering) It is used by vtkOpenGLCamera.
unsigned int vtkOpenGLRenderWindow::GetBackRightBuffer | ( | ) |
Return the OpenGL name of the back right buffer. It is GL_BACK_RIGHT if GL is bound to the window-system-provided framebuffer. It is vtkgl::COLOR_ATTACHMENT0_EXT+1 if GL is bound to an application-created framebuffer object (GPU-based offscreen rendering) It is used by vtkOpenGLCamera.
unsigned int vtkOpenGLRenderWindow::GetFrontLeftBuffer | ( | ) |
Return the OpenGL name of the front left buffer. It is GL_FRONT_LEFT if GL is bound to the window-system-provided framebuffer. It is vtkgl::COLOR_ATTACHMENT0_EXT if GL is bound to an application-created framebuffer object (GPU-based offscreen rendering) It is used by vtkOpenGLCamera.
unsigned int vtkOpenGLRenderWindow::GetFrontRightBuffer | ( | ) |
Return the OpenGL name of the front right buffer. It is GL_FRONT_RIGHT if GL is bound to the window-system-provided framebuffer. It is vtkgl::COLOR_ATTACHMENT0_EXT+1 if GL is bound to an application-created framebuffer object (GPU-based offscreen rendering) It is used by vtkOpenGLCamera.
unsigned int vtkOpenGLRenderWindow::GetBackBuffer | ( | ) |
Return the OpenGL name of the back left buffer. It is GL_BACK if GL is bound to the window-system-provided framebuffer. It is vtkgl::COLOR_ATTACHMENT0_EXT if GL is bound to an application-created framebuffer object (GPU-based offscreen rendering) It is used by vtkOpenGLCamera.
unsigned int vtkOpenGLRenderWindow::GetFrontBuffer | ( | ) |
Return the OpenGL name of the front left buffer. It is GL_FRONT if GL is bound to the window-system-provided framebuffer. It is vtkgl::COLOR_ATTACHMENT0_EXT if GL is bound to an application-created framebuffer object (GPU-based offscreen rendering) It is used by vtkOpenGLCamera.
virtual void vtkOpenGLRenderWindow::CheckGraphicError | ( | ) | [virtual] |
Update graphic error status, regardless of ReportGraphicErrors flag. It means this method can be used in any context and is not restricted to debug mode.
Implements vtkRenderWindow.
virtual int vtkOpenGLRenderWindow::HasGraphicError | ( | ) | [virtual] |
Return the last graphic error status. Initial value is false.
Implements vtkRenderWindow.
virtual const char* vtkOpenGLRenderWindow::GetLastGraphicErrorString | ( | ) | [virtual] |
Return a string matching the last graphic error status.
Implements vtkRenderWindow.
virtual vtkTimeStamp vtkOpenGLRenderWindow::GetContextCreationTime | ( | ) | [virtual] |
Get the time when the OpenGL context was created.
int vtkOpenGLRenderWindow::GetPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front, | |||
unsigned char * | data | |||
) | [protected] |
int vtkOpenGLRenderWindow::GetRGBAPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front, | |||
float * | data | |||
) | [protected] |
int vtkOpenGLRenderWindow::GetRGBACharPixelData | ( | int | x, | |
int | y, | |||
int | x2, | |||
int | y2, | |||
int | front, | |||
unsigned char * | data | |||
) | [protected] |
int vtkOpenGLRenderWindow::CreateHardwareOffScreenWindow | ( | int | width, | |
int | height | |||
) | [protected] |
Create an offScreen window based on OpenGL framebuffer extension. Return if the creation was successful or not.
positive_height: height>0
not_initialized: !OffScreenUseFrameBuffer
void vtkOpenGLRenderWindow::DestroyHardwareOffScreenWindow | ( | ) | [protected] |
Destroy an offscreen window based on OpenGL framebuffer extension.
virtual void vtkOpenGLRenderWindow::CreateAWindow | ( | ) | [protected, pure virtual] |
Create a not-off-screen window.
Implemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, and vtkXOpenGLRenderWindow.
virtual void vtkOpenGLRenderWindow::DestroyWindow | ( | ) | [protected, pure virtual] |
Destroy a not-off-screen window.
Implemented in vtkCarbonRenderWindow, vtkCocoaRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, and vtkXOpenGLRenderWindow.
long vtkOpenGLRenderWindow::OldMonitorSetting [protected] |
Definition at line 36 of file vtkOpenGLRenderWindow.h.
vtkIdList* vtkOpenGLRenderWindow::TextureResourceIds [protected] |
Definition at line 172 of file vtkOpenGLRenderWindow.h.
int vtkOpenGLRenderWindow::OffScreenUseFrameBuffer [protected] |
Flag telling if a framebuffer-based offscreen is currently in use.
Definition at line 192 of file vtkOpenGLRenderWindow.h.
int vtkOpenGLRenderWindow::NumberOfFrameBuffers [protected] |
Variables used by the framebuffer-based offscreen method.
Definition at line 196 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::TextureObjects[4] [protected] |
Variables used by the framebuffer-based offscreen method.
Definition at line 197 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::FrameBufferObject [protected] |
Variables used by the framebuffer-based offscreen method.
Definition at line 198 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::DepthRenderBufferObject [protected] |
Variables used by the framebuffer-based offscreen method.
Definition at line 199 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::BackLeftBuffer [protected] |
Definition at line 208 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::BackRightBuffer [protected] |
Definition at line 209 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::FrontLeftBuffer [protected] |
Definition at line 210 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::FrontRightBuffer [protected] |
Definition at line 211 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::FrontBuffer [protected] |
Definition at line 212 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::BackBuffer [protected] |
Definition at line 213 of file vtkOpenGLRenderWindow.h.
unsigned int vtkOpenGLRenderWindow::LastGraphicError [protected] |
Definition at line 216 of file vtkOpenGLRenderWindow.h.
Definition at line 218 of file vtkOpenGLRenderWindow.h.