VTK  9.4.20241222
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkWin32OpenGLDXRenderWindow Class Reference

VTK render window providing OpenGL-DirectX interop. More...

#include <vtkWin32OpenGLDXRenderWindow.h>

Inheritance diagram for vtkWin32OpenGLDXRenderWindow:
[legend]
Collaboration diagram for vtkWin32OpenGLDXRenderWindow:
[legend]

Public Types

typedef vtkWin32OpenGLRenderWindow Superclass
 
- Public Types inherited from vtkWin32OpenGLRenderWindow
typedef vtkOpenGLRenderWindow Superclass
 
- Public Types inherited from vtkOpenGLRenderWindow
enum  FrameBlitModes { BlitToHardware , BlitToCurrent , BlitToCurrentWithDepth , NoBlit }
 Define how the resulting image should be blitted when at the end of the Frame() call if SwapBuffers is true. More...
 
typedef vtkRenderWindow Superclass
 
typedef void(* VTKOpenGLAPIProc) ()
 
typedef VTKOpenGLAPIProc(* VTKOpenGLLoaderFunction) (void *userptr, const char *name)
 
- Public Types inherited from vtkRenderWindow
enum  { PhysicalToWorldMatrixModified = vtkCommand::UserEvent + 200 }
 
typedef vtkWindow Superclass
 
- Public Types inherited from vtkWindow
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkWin32OpenGLDXRenderWindowNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void Initialize () override
 Overridden to create the D3D device, context and texture.
 
void RegisterSharedRenderFramebuffer ()
 Register the RenderFramebuffer of this window as a D3D shared texture.
 
void RegisterSharedTexture ()
 
void RegisterSharedDisplayFramebuffer ()
 Register the DisplayFramebuffer of this window as a D3D shared texture.
 
void SetColorTextureFormat (UINT format)
 Specify the DXGI format of the D3D color texture shared with this render window.
 
void SetD3DDeviceContext (ID3D11DeviceContext *context)
 Use external D3D11DeviceContext.
 
void SetD3DDeviceContext (void *context)
 Use external D3D11DeviceContext.
 
void Lock ()
 Lock/Unlock the shared texture.
 
void Unlock ()
 Lock/Unlock the shared texture.
 
void RegisterSharedTexture (unsigned int colorId, unsigned int depthId=0)
 Register/Unregister the OpenGL textures designated by colorId and depthId with this render window internal D3D shared textures.
 
void UnregisterSharedTexture ()
 Register/Unregister the OpenGL textures designated by colorId and depthId with this render window internal D3D shared textures.
 
void SetSize (int width, int height) override
 Overridden to resize the internal D3D shared texture.
 
virtual void SetSharedTextureSamples (int)
 Set / Get the number of multisamples used by shared textures for hardware antialiasing.
 
virtual int GetSharedTextureSamples ()
 Set / Get the number of multisamples used by shared textures for hardware antialiasing.
 
void BlitToTexture (ID3D11Texture2D *color, ID3D11Texture2D *depth=nullptr)
 Blits the internal D3D shared texture into color and optionally depth.
 
void BlitToTexture (void *color, void *depth=nullptr)
 Blits the internal D3D shared texture into color and optionally depth.
 
ID3D11Device * GetDevice ()
 Returns the D3D device associated to this render window.
 
ID3D11Texture2D * GetD3DSharedTexture ()
 Returns the D3D texture shared with this render window.
 
ID3D11Texture2D * GetD3DSharedDepthTexture ()
 Returns the D3D texture shared with this render window.
 
void SetAdapterId (LUID uid)
 Specify the DGXI adapter to be used for initialization.
 
- Public Member Functions inherited from vtkWin32OpenGLRenderWindow
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkWin32OpenGLRenderWindowNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void Frame () override
 End the rendering process and display the image.
 
virtual void WindowInitialize ()
 Create the window.
 
void Initialize () override
 Initialize the rendering window.
 
void Finalize () override
 Finalize the rendering window.
 
void SetFullScreen (vtkTypeBool) override
 Change the window to fill the entire screen.
 
void WindowRemap () override
 Remap the window.
 
void SetShowWindow (bool val) override
 Show or not Show the window.
 
virtual void PrefFullScreen ()
 Set the preferred window size to full screen.
 
int * GetSize () override
 Get the size (width and height) of the rendering window in screen coordinates (in pixels).
 
int * GetScreenSize () override
 Get the current size of the screen in pixels.
 
int * GetPosition () override
 Get the position (x and y) of the rendering window in screen coordinates (in pixels).
 
void SetWindowName (const char *) override
 Set the name of the window.
 
void SetIcon (vtkImageData *img) override
 Set the icon displayed in the title bar and the taskbar.
 
void SetWindowInfo (const char *) override
 Set this RenderWindow's window id to a pre-existing window.
 
void SetNextWindowInfo (const char *) override
 Sets the WindowInfo that will be used after a WindowRemap.
 
void SetParentInfo (const char *) override
 Sets the HWND id of the window that WILL BE created.
 
void * GetGenericDisplayId () override
 Dummy stubs for vtkWindow API.
 
void * GetGenericWindowId () override
 Dummy stubs for vtkWindow API.
 
void * GetGenericParentId () override
 Dummy stubs for vtkWindow API.
 
void * GetGenericContext () override
 Dummy stubs for vtkWindow API.
 
void * GetGenericDrawable () override
 Dummy stubs for vtkWindow API.
 
void SetDisplayId (void *) override
 Dummy stubs for vtkWindow API.
 
HWND GetWindowId ()
 Get the window id.
 
bool InitializeFromCurrentContext () override
 Initialize the render window from the information associated with the currently activated OpenGL context.
 
bool GetPlatformSupportsRenderWindowSharing () override
 Does this platform support render window data sharing.
 
void SetContextId (HGLRC)
 
void SetDeviceContext (HDC)
 
void SetNextWindowId (HWND)
 Set the window id of the new window once a WindowRemap is done.
 
void SetNextWindowId (void *arg) override
 Set the window id of the new window once a WindowRemap is done.
 
void SetStereoCapableWindow (vtkTypeBool capable) override
 Prescribe that the window be created in a stereo-capable mode.
 
void MakeCurrent () override
 Make this windows OpenGL context the current context.
 
void ReleaseCurrent () override
 Release the current context.
 
bool IsCurrent () override
 Tells if this window is the current OpenGL context for the calling thread.
 
const char * ReportCapabilities () override
 Get report of capabilities for the render window.
 
vtkTypeBool IsDirect () override
 Is this render window using hardware acceleration? 0-false, 1-true.
 
vtkTypeBool GetEventPending () override
 Check to see if a mouse button has been pressed or mouse wheel activated.
 
void Clean ()
 Clean up device contexts, rendering contexts, etc.
 
void SetCurrentCursor (int) override
 Change the shape of the cursor.
 
bool DetectDPI () override
 Attempt to detect and set the DPI of the display device by querying the system.
 
bool SetSwapControl (int i) override
 Set the number of vertical syncs required between frames.
 
void SetSize (int width, int height) override
 Set the size (width and height) of the rendering window in screen coordinates (in pixels).
 
void SetSize (int a[2]) override
 Set the size (width and height) of the rendering window in screen coordinates (in pixels).
 
void SetPosition (int x, int y) override
 Set the position (x and y) of the rendering window in screen coordinates (in pixels).
 
void SetPosition (int a[2]) override
 Set the position (x and y) of the rendering window in screen coordinates (in pixels).
 
void SetWindowId (HWND)
 Set the window id to a pre-existing window.
 
void SetWindowId (void *foo) override
 Set the window id to a pre-existing window.
 
void SetParentId (HWND)
 Set the window's parent id to a pre-existing window.
 
void SetParentId (void *foo) override
 Set the window's parent id to a pre-existing window.
 
virtual void SetupPalette (HDC hDC)
 Initialize OpenGL for this window.
 
virtual void SetupPixelFormatPaletteAndContext (HDC hDC, DWORD dwFlags, int debug, int bpp=16, int zbpp=16)
 Initialize OpenGL for this window.
 
void HideCursor () override
 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.
 
void ShowCursor () override
 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.
 
void SetCursorPosition (int x, int y) override
 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.
 
void PushContext () override
 Ability to push and pop this window's context as the current context.
 
void PopContext () override
 Ability to push and pop this window's context as the current context.
 
- Public Member Functions inherited from vtkOpenGLRenderWindow
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkOpenGLRenderWindowNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void Start () override
 Begin the rendering process.
 
void Frame () override
 A termination method performed at the end of the rendering process to do things like swapping buffers (if necessary) or similar actions.
 
const char * GetRenderingBackend () override
 What rendering backend has the user requested.
 
void ActivateTexture (vtkTextureObject *)
 Activate a texture unit for this texture.
 
void DeactivateTexture (vtkTextureObject *)
 Deactivate a previously activated texture.
 
int GetTextureUnitForTexture (vtkTextureObject *)
 Get the texture unit for a given texture object.
 
int GetDepthBufferSize () override
 Get the size of the depth buffer.
 
bool GetUsingSRGBColorSpace ()
 Is this window/fo in sRGB colorspace.
 
int GetColorBufferSizes (int *rgba) override
 Get the size of the color buffer.
 
int GetColorBufferInternalFormat (int attachmentPoint)
 Get the internal format of current attached texture or render buffer.
 
virtual void OpenGLInit ()
 Initialize OpenGL for this window.
 
virtual void OpenGLInitState ()
 
virtual void OpenGLInitContext ()
 
void GetOpenGLVersion (int &major, int &minor)
 Get the major and minor version numbers of the OpenGL context we are using ala 3.2, 3.3, 4.0, etc... returns 0,0 if opengl has not been initialized yet.
 
virtual vtkMTimeType GetContextCreationTime ()
 Get the time when the OpenGL context was created.
 
vtkOpenGLShaderCacheGetShaderCache ()
 Returns an Shader Cache object.
 
vtkOpenGLVertexBufferObjectCacheGetVBOCache ()
 Returns the VBO Cache.
 
virtual vtkOpenGLFramebufferObjectGetDisplayFramebuffer ()
 Returns the display framebuffer object.
 
vtkTextureUnitManagerGetTextureUnitManager ()
 Returns its texture unit manager object.
 
void WaitForCompletion () override
 Block the thread until the actual rendering is finished().
 
virtual void DrawPixels (int x1, int y1, int x2, int y2, int numComponents, int dataType, void *data)
 Replacement for the old glDrawPixels function.
 
virtual void DrawPixels (int dstXmin, int dstYmin, int dstXmax, int dstYmax, int srcXmin, int srcYmin, int srcXmax, int srcYmax, int srcWidth, int srcHeight, int numComponents, int dataType, void *data)
 Replacement for the old glDrawPixels function, but it allows for scaling the data and using only part of the texture.
 
virtual void DrawPixels (int srcWidth, int srcHeight, int numComponents, int dataType, void *data)
 Replacement for the old glDrawPixels function.
 
virtual float GetMaximumHardwareLineWidth ()
 Return the largest line width supported by the hardware.
 
virtual bool IsPointSpriteBugPresent ()
 Returns true if driver has an EGL/OpenGL bug that makes vtkChartsCoreCxx-TestChartDoubleColors and other tests to fail because point sprites don't work correctly (gl_PointCoord is undefined) unless glEnable(GL_POINT_SPRITE)
 
int GetDefaultTextureInternalFormat (int vtktype, int numComponents, bool needInteger, bool needFloat, bool needSRGB)
 Get a mapping of vtk data types to native texture formats for this window we put this on the RenderWindow so that every texture does not have to build these structures themselves.
 
std::string GetOpenGLSupportMessage ()
 Return a message profiding additional details about the results of calling SupportsOpenGL() This can be used to retrieve more specifics about what failed.
 
int SupportsOpenGL () override
 Does this render window support OpenGL? 0-false, 1-true.
 
const char * ReportCapabilities () override
 Get report of capabilities for the render window.
 
void Initialize () override
 Initialize the rendering window.
 
void RegisterGraphicsResources (vtkGenericOpenGLResourceFreeCallback *cb)
 
void UnregisterGraphicsResources (vtkGenericOpenGLResourceFreeCallback *cb)
 
virtual void PushContext ()
 Ability to push and pop this window's context as the current context.
 
virtual void PopContext ()
 
bool InitializeFromCurrentContext () override
 Initialize the render window from the information associated with the currently activated OpenGL context.
 
virtual bool SetSwapControl (int)
 Set the number of vertical syncs required between frames.
 
virtual vtkOpenGLStateGetState ()
 
vtkOpenGLBufferObjectGetTQuad2DVBO ()
 
int GetNoiseTextureUnit ()
 
void End () override
 Update the system, if needed, at end of render process.
 
void Render () override
 Handle opengl specific code and calls superclass.
 
void StereoMidpoint () override
 Intermediate method performs operations required between the rendering of the left and right eye.
 
bool GetBufferNeedsResolving ()
 
void ReleaseGraphicsResources (vtkWindow *) override
 Free up any graphics resources associated with this window a value of NULL means the context may already be destroyed.
 
void BlitDisplayFramebuffer ()
 Blit a display framebuffer into a currently bound draw destination, color only.
 
void BlitDisplayFramebufferColorAndDepth ()
 Blit a display framebuffer into a currently bound draw destination, color and depth.
 
void BlitDisplayFramebuffer (int right, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY, int destWidth, int destHeight, int bufferMode, int interpolation)
 Blit a display buffer into a currently bound draw destination.
 
void SetOpenGLSymbolLoader (VTKOpenGLLoaderFunction loader, void *userData)
 Provide a function pointer which can load OpenGL core/extension functions.
 
unsigned char * GetPixelData (int x, int y, int x2, int y2, int front, int right) override
 Set/Get the pixel data of an image, transmitted as RGBRGB... front in this context indicates that the read should come from the display buffer versus the render buffer.
 
int GetPixelData (int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data, int right) override
 Set/Get the pixel data of an image, transmitted as RGBRGB... front in this context indicates that the read should come from the display buffer versus the render buffer.
 
int SetPixelData (int x, int y, int x2, int y2, unsigned char *data, int front, int right) override
 Set/Get the pixel data of an image, transmitted as RGBRGB... front in this context indicates that the read should come from the display buffer versus the render buffer.
 
int SetPixelData (int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int right) override
 Set/Get the pixel data of an image, transmitted as RGBRGB... front in this context indicates that the read should come from the display buffer versus the render buffer.
 
float * GetRGBAPixelData (int x, int y, int x2, int y2, int front, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
int GetRGBAPixelData (int x, int y, int x2, int y2, int front, vtkFloatArray *data, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
int SetRGBAPixelData (int x, int y, int x2, int y2, float *data, int front, int blend=0, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
int SetRGBAPixelData (int x, int y, int x2, int y2, vtkFloatArray *data, int front, int blend=0, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
void ReleaseRGBAPixelData (float *data) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
unsigned char * GetRGBACharPixelData (int x, int y, int x2, int y2, int front, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
int GetRGBACharPixelData (int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
int SetRGBACharPixelData (int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
int SetRGBACharPixelData (int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int blend=0, int right=0) override
 Set/Get the pixel data of an image, transmitted as RGBARGBA...
 
float * GetZbufferData (int x1, int y1, int x2, int y2) override
 Set/Get the zbuffer data from an image.
 
int GetZbufferData (int x1, int y1, int x2, int y2, float *z) override
 Set/Get the zbuffer data from an image.
 
int GetZbufferData (int x1, int y1, int x2, int y2, vtkFloatArray *buffer) override
 Set/Get the zbuffer data from an image.
 
int SetZbufferData (int x1, int y1, int x2, int y2, float *buffer) override
 Set/Get the zbuffer data from an image.
 
int SetZbufferData (int x1, int y1, int x2, int y2, vtkFloatArray *buffer) override
 Set/Get the zbuffer data from an image.
 
virtual vtkOpenGLFramebufferObjectGetRenderFramebuffer ()
 Returns the render framebuffer object.
 
void BlitToRenderFramebuffer (bool includeDepth)
 Blit the currently bound read buffer to the renderbuffer.
 
void BlitToRenderFramebuffer (int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY, int destWidth, int destHeight, int bufferMode, int interpolation)
 Blit the currently bound read buffer to the renderbuffer.
 
virtual void SetFrameBlitMode (FrameBlitModes)
 SetGet how to handle blits at the end of a Frame() call.
 
virtual FrameBlitModes GetFrameBlitMode ()
 SetGet how to handle blits at the end of a Frame() call.
 
void SetFrameBlitModeToBlitToHardware ()
 SetGet how to handle blits at the end of a Frame() call.
 
void SetFrameBlitModeToBlitToCurrent ()
 SetGet how to handle blits at the end of a Frame() call.
 
void SetFrameBlitModeToBlitToCurrentWithDepth ()
 SetGet how to handle blits at the end of a Frame() call.
 
void SetFrameBlitModeToNoBlit ()
 SetGet how to handle blits at the end of a Frame() call.
 
virtual void SetFramebufferFlipY (bool)
 Enable/Disable flipping the Y axis of the rendered texture.
 
virtual bool GetFramebufferFlipY ()
 Enable/Disable flipping the Y axis of the rendered texture.
 
virtual void FramebufferFlipYOn ()
 Enable/Disable flipping the Y axis of the rendered texture.
 
virtual void FramebufferFlipYOff ()
 Enable/Disable flipping the Y axis of the rendered texture.
 
virtual void SetRenderBufferTargetDepthSize (int)
 Give a target bit size for depth buffers of created Framebuffer Objects.
 
virtual int GetRenderBufferTargetDepthSize ()
 Give a target bit size for depth buffers of created Framebuffer Objects.
 
virtual void TextureDepthBlit (vtkTextureObject *source)
 
virtual void TextureDepthBlit (vtkTextureObject *source, int srcX, int srcY, int srcX2, int srcY2)
 
virtual void TextureDepthBlit (vtkTextureObject *source, int srcX, int srcY, int srcX2, int srcY2, int destX, int destY, int destX2, int destY2)
 
- Public Member Functions inherited from vtkRenderWindow
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkRenderWindowNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
virtual void AddRenderer (vtkRenderer *)
 Add a renderer to the list of renderers.
 
void RemoveRenderer (vtkRenderer *)
 Remove a renderer from the list of renderers.
 
vtkTypeBool HasRenderer (vtkRenderer *)
 Query if a renderer is in the list of renderers.
 
virtual const char * GetRenderingBackend ()
 What rendering backend has the user requested.
 
 vtkGetNewMacro (RenderTimer, vtkRenderTimerLog)
 Get the render timer log for this window.
 
vtkRendererCollectionGetRenderers ()
 Return the collection of renderers in the render window.
 
void CaptureGL2PSSpecialProps (vtkCollection *specialProps)
 The GL2PS exporter must handle certain props in a special way (e.g.
 
void Render () override
 Ask each renderer owned by this RenderWindow to render its image and synchronize this process.
 
virtual void Start ()
 Start the rendering process for a frame.
 
virtual void End ()
 Update the system, if needed, at end of render process.
 
virtual void Initialize ()
 Initializes the rendering process.
 
virtual void Finalize ()
 Finalize the rendering process.
 
virtual void Frame ()
 A termination method performed at the end of the rendering process to do things like swapping buffers (if necessary) or similar actions.
 
virtual void WaitForCompletion ()
 Block the thread until the actual rendering is finished().
 
virtual void CopyResultFrame ()
 Performed at the end of the rendering process to generate image.
 
virtual vtkRenderWindowInteractorMakeRenderWindowInteractor ()
 Create an interactor to control renderers in this window.
 
virtual void StereoUpdate ()
 Update the system, if needed, due to stereo rendering.
 
virtual void StereoMidpoint ()
 Intermediate method performs operations required between the rendering of the left and right eye.
 
virtual void StereoRenderComplete ()
 Handles work required once both views have been rendered when using stereo rendering.
 
virtual void WindowRemap ()
 Remap the rendering window.
 
virtual vtkTypeBool GetEventPending ()
 Check to see if a mouse button has been pressed.
 
virtual int CheckInRenderStatus ()
 Are we rendering at the moment.
 
virtual void ClearInRenderStatus ()
 Clear status (after an exception was thrown for example)
 
virtual void SetInteractor (vtkRenderWindowInteractor *)
 Set the interactor to the render window.
 
void UnRegister (vtkObjectBase *o) override
 This Method detects loops of RenderWindow<->Interactor, so objects are freed properly.
 
virtual bool InitializeFromCurrentContext ()
 Initialize the render window from the information associated with the currently activated OpenGL context.
 
virtual bool IsCurrent ()
 Tells if this window is the current graphics context for the calling thread.
 
virtual void SetForceMakeCurrent ()
 If called, allow MakeCurrent() to skip cache-check when called.
 
virtual const char * ReportCapabilities ()
 Get report of capabilities for the render window.
 
virtual int SupportsOpenGL ()
 Does this render window support OpenGL? 0-false, 1-true.
 
virtual vtkTypeBool IsDirect ()
 Is this render window using hardware acceleration? 0-false, 1-true.
 
virtual int GetDepthBufferSize ()
 This method should be defined by the subclass.
 
virtual int GetColorBufferSizes (int *)
 Get the size of the color buffer.
 
virtual int GetNumberOfDevices ()
 Returns the number of devices (graphics cards) on a system.
 
virtual void SetPhysicalToWorldMatrix (vtkMatrix4x4 *matrix)
 Set physical to world transform matrix.
 
virtual void GetPhysicalToWorldMatrix (vtkMatrix4x4 *matrix)
 Get physical to world transform matrix.
 
virtual bool GetDeviceToWorldMatrixForDevice (vtkEventDataDevice device, vtkMatrix4x4 *deviceToWorldMatrix)
 Store in deviceToWorldMatrix the matrix that goes from device coordinates to world coordinates.
 
virtual int GetCapturingGL2PSSpecialProps ()
 Returns true if the render process is capturing text actors.
 
virtual bool GetInitialized ()
 Get/set whether or not the window has been initilized yet.
 
virtual int GetCurrentCursor ()
 Change the shape of the cursor.
 
 vtkSetFilePathMacro (CursorFileName)
 Set/Get the full path to the custom cursor.
 
 vtkGetFilePathMacro (CursorFileName)
 Set/Get the full path to the custom cursor.
 
virtual vtkTypeBool GetFullScreen ()
 Turn on/off rendering full screen window size.
 
virtual void FullScreenOn ()
 Turn on/off rendering full screen window size.
 
virtual void FullScreenOff ()
 Turn on/off rendering full screen window size.
 
virtual void SetBorders (vtkTypeBool)
 Turn on/off window manager borders.
 
virtual vtkTypeBool GetBorders ()
 Turn on/off window manager borders.
 
virtual void BordersOn ()
 Turn on/off window manager borders.
 
virtual void BordersOff ()
 Turn on/off window manager borders.
 
virtual vtkTypeBool GetCoverable ()
 Set/Get whether windows should be coverable (as opposed to always on top).
 
virtual void CoverableOn ()
 Set/Get whether windows should be coverable (as opposed to always on top).
 
virtual void CoverableOff ()
 Set/Get whether windows should be coverable (as opposed to always on top).
 
virtual void SetCoverable (vtkTypeBool coverable)
 Set/Get whether windows should be coverable (as opposed to always on top).
 
virtual vtkTypeBool GetStereoCapableWindow ()
 Prescribe that the window be created in a stereo-capable mode.
 
virtual void StereoCapableWindowOn ()
 Prescribe that the window be created in a stereo-capable mode.
 
virtual void StereoCapableWindowOff ()
 Prescribe that the window be created in a stereo-capable mode.
 
virtual vtkTypeBool GetStereoRender ()
 Turn on/off stereo rendering.
 
void SetStereoRender (vtkTypeBool stereo)
 Turn on/off stereo rendering.
 
virtual void StereoRenderOn ()
 Turn on/off stereo rendering.
 
virtual void StereoRenderOff ()
 Turn on/off stereo rendering.
 
virtual void SetAlphaBitPlanes (vtkTypeBool)
 Turn on/off the use of alpha bitplanes.
 
virtual vtkTypeBool GetAlphaBitPlanes ()
 Turn on/off the use of alpha bitplanes.
 
virtual void AlphaBitPlanesOn ()
 Turn on/off the use of alpha bitplanes.
 
virtual void AlphaBitPlanesOff ()
 Turn on/off the use of alpha bitplanes.
 
virtual void SetPointSmoothing (vtkTypeBool)
 Turn on/off point smoothing.
 
virtual vtkTypeBool GetPointSmoothing ()
 Turn on/off point smoothing.
 
virtual void PointSmoothingOn ()
 Turn on/off point smoothing.
 
virtual void PointSmoothingOff ()
 Turn on/off point smoothing.
 
virtual void SetLineSmoothing (vtkTypeBool)
 Turn on/off line smoothing.
 
virtual vtkTypeBool GetLineSmoothing ()
 Turn on/off line smoothing.
 
virtual void LineSmoothingOn ()
 Turn on/off line smoothing.
 
virtual void LineSmoothingOff ()
 Turn on/off line smoothing.
 
virtual void SetPolygonSmoothing (vtkTypeBool)
 Turn on/off polygon smoothing.
 
virtual vtkTypeBool GetPolygonSmoothing ()
 Turn on/off polygon smoothing.
 
virtual void PolygonSmoothingOn ()
 Turn on/off polygon smoothing.
 
virtual void PolygonSmoothingOff ()
 Turn on/off polygon smoothing.
 
virtual int GetStereoType ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoType (int)
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToCrystalEyes ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToRedBlue ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToInterlaced ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToLeft ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToRight ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToDresden ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToAnaglyph ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToCheckerboard ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToSplitViewportHorizontal ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToFake ()
 Set/Get what type of stereo rendering to use.
 
void SetStereoTypeToEmulate ()
 Set/Get what type of stereo rendering to use.
 
virtual void SetAnaglyphColorSaturation (float)
 Set/get the anaglyph color saturation factor.
 
virtual float GetAnaglyphColorSaturation ()
 Set/get the anaglyph color saturation factor.
 
virtual void SetAnaglyphColorMask (int, int)
 Set/get the anaglyph color mask values.
 
void SetAnaglyphColorMask (int[2])
 Set/get the anaglyph color mask values.
 
virtual int * GetAnaglyphColorMask ()
 Set/get the anaglyph color mask values.
 
virtual void GetAnaglyphColorMask (int data[2])
 Set/get the anaglyph color mask values.
 
virtual void SetSwapBuffers (vtkTypeBool)
 Turn on/off buffer swapping between images.
 
virtual vtkTypeBool GetSwapBuffers ()
 Turn on/off buffer swapping between images.
 
virtual void SwapBuffersOn ()
 Turn on/off buffer swapping between images.
 
virtual void SwapBuffersOff ()
 Turn on/off buffer swapping between images.
 
float GetZbufferDataAtPoint (int x, int y)
 Set/Get the zbuffer data from the frame buffer.
 
virtual int GetNeverRendered ()
 This flag is set if the window hasn't rendered since it was created.
 
virtual int GetAbortRender ()
 This is a flag that can be set to interrupt a rendering that is in progress.
 
virtual void SetAbortRender (int)
 This is a flag that can be set to interrupt a rendering that is in progress.
 
virtual int GetInAbortCheck ()
 This is a flag that can be set to interrupt a rendering that is in progress.
 
virtual void SetInAbortCheck (int)
 This is a flag that can be set to interrupt a rendering that is in progress.
 
virtual int CheckAbortStatus ()
 This is a flag that can be set to interrupt a rendering that is in progress.
 
virtual void SetDesiredUpdateRate (double)
 Set/Get the desired update rate.
 
virtual double GetDesiredUpdateRate ()
 Set/Get the desired update rate.
 
virtual int GetNumberOfLayers ()
 Get the number of layers for renderers.
 
virtual void SetNumberOfLayers (int)
 Get the number of layers for renderers.
 
virtual vtkRenderWindowInteractorGetInteractor ()
 Get the interactor associated with this render window.
 
virtual void SetSharedRenderWindow (vtkRenderWindow *)
 Set/Get an already existing window that this window should share data with if possible.
 
virtual vtkRenderWindowGetSharedRenderWindow ()
 Set/Get an already existing window that this window should share data with if possible.
 
virtual void SetMultiSamples (int)
 Set / Get the number of multisamples to use for hardware antialiasing.
 
virtual int GetMultiSamples ()
 Set / Get the number of multisamples to use for hardware antialiasing.
 
virtual void SetStencilCapable (vtkTypeBool)
 Set / Get the availability of the stencil buffer.
 
virtual vtkTypeBool GetStencilCapable ()
 Set / Get the availability of the stencil buffer.
 
virtual void StencilCapableOn ()
 Set / Get the availability of the stencil buffer.
 
virtual void StencilCapableOff ()
 Set / Get the availability of the stencil buffer.
 
virtual void SetDeviceIndex (int)
 If there are several graphics card installed on a system, this index can be used to specify which card you want to render to.
 
virtual int GetDeviceIndex ()
 If there are several graphics card installed on a system, this index can be used to specify which card you want to render to.
 
virtual bool GetUseSRGBColorSpace ()
 Set/Get if we want this window to use the sRGB color space.
 
virtual void SetUseSRGBColorSpace (bool)
 Set/Get if we want this window to use the sRGB color space.
 
virtual void UseSRGBColorSpaceOn ()
 Set/Get if we want this window to use the sRGB color space.
 
virtual void UseSRGBColorSpaceOff ()
 Set/Get if we want this window to use the sRGB color space.
 
virtual void SetPhysicalViewDirection (double, double, double)
 Set/get physical coordinate system in world coordinate system.
 
virtual void SetPhysicalViewDirection (double[3])
 Set/get physical coordinate system in world coordinate system.
 
virtual double * GetPhysicalViewDirection ()
 Set/get physical coordinate system in world coordinate system.
 
virtual void GetPhysicalViewDirection (double &, double &, double &)
 Set/get physical coordinate system in world coordinate system.
 
virtual void GetPhysicalViewDirection (double[3])
 Set/get physical coordinate system in world coordinate system.
 
virtual void SetPhysicalViewUp (double, double, double)
 Set/get physical coordinate system in world coordinate system.
 
virtual void SetPhysicalViewUp (double[3])
 Set/get physical coordinate system in world coordinate system.
 
virtual double * GetPhysicalViewUp ()
 Set/get physical coordinate system in world coordinate system.
 
virtual void GetPhysicalViewUp (double &, double &, double &)
 Set/get physical coordinate system in world coordinate system.
 
virtual void GetPhysicalViewUp (double[3])
 Set/get physical coordinate system in world coordinate system.
 
virtual void SetPhysicalTranslation (double, double, double)
 Set/get physical coordinate system in world coordinate system.
 
virtual void SetPhysicalTranslation (double[3])
 Set/get physical coordinate system in world coordinate system.
 
virtual double * GetPhysicalTranslation ()
 Set/get physical coordinate system in world coordinate system.
 
virtual void GetPhysicalTranslation (double &, double &, double &)
 Set/get physical coordinate system in world coordinate system.
 
virtual void GetPhysicalTranslation (double[3])
 Set/get physical coordinate system in world coordinate system.
 
virtual void SetPhysicalScale (double)
 Set/get physical coordinate system in world coordinate system.
 
virtual double GetPhysicalScale ()
 Set/get physical coordinate system in world coordinate system.
 
virtual bool GetEnableTranslucentSurface ()
 Set/Get if we want this window to use a translucent surface with alpha channel support.
 
virtual void SetEnableTranslucentSurface (bool)
 Set/Get if we want this window to use a translucent surface with alpha channel support.
 
virtual void EnableTranslucentSurfaceOn ()
 Set/Get if we want this window to use a translucent surface with alpha channel support.
 
virtual void EnableTranslucentSurfaceOff ()
 Set/Get if we want this window to use a translucent surface with alpha channel support.
 
const char * GetStereoTypeAsString ()
 Returns the stereo type as a string.
 
- Public Member Functions inherited from vtkWindow
virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
vtkWindowNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
int * GetActualSize ()
 GetSize() returns the size * this->TileScale, whereas this method returns the size without multiplying with the tile scale.
 
virtual int * GetScreenSize ()
 Get the current size of the screen in pixels.
 
virtual void SetIcon (vtkImageData *)
 Set the icon used in title bar and task bar.
 
virtual VTK_UNBLOCKTHREADS void Render ()
 Ask each viewport owned by this Window to render its image and synchronize this process.
 
virtual void ReleaseGraphicsResources (vtkWindow *)
 Release any graphics resources that are being consumed by this texture.
 
virtual bool DetectDPI ()
 Attempt to detect and set the DPI of the display device by querying the system.
 
vtkTypeBool GetOffScreenRendering ()
 Deprecated, directly use GetShowWindow and GetOffScreenBuffers instead.
 
virtual void MakeCurrent ()
 Make the window current.
 
virtual void ReleaseCurrent ()
 Release the current context.
 
virtual bool EnsureDisplay ()
 These are window system independent methods that are used to help interface vtkWindow to native windowing systems.
 
virtual vtkTypeBool GetMapped ()
 Keep track of whether the rendering window has been mapped to screen.
 
virtual bool GetShowWindow ()
 Show or not Show the window.
 
virtual void ShowWindowOn ()
 Show or not Show the window.
 
virtual void ShowWindowOff ()
 Show or not Show the window.
 
virtual void SetUseOffScreenBuffers (bool)
 Render to an offscreen destination such as a framebuffer.
 
virtual bool GetUseOffScreenBuffers ()
 Render to an offscreen destination such as a framebuffer.
 
virtual void UseOffScreenBuffersOn ()
 Render to an offscreen destination such as a framebuffer.
 
virtual void UseOffScreenBuffersOff ()
 Render to an offscreen destination such as a framebuffer.
 
virtual void SetErase (vtkTypeBool)
 Turn on/off erasing the screen between images.
 
virtual vtkTypeBool GetErase ()
 Turn on/off erasing the screen between images.
 
virtual void EraseOn ()
 Turn on/off erasing the screen between images.
 
virtual void EraseOff ()
 Turn on/off erasing the screen between images.
 
virtual void SetDoubleBuffer (vtkTypeBool)
 Keep track of whether double buffering is on or off.
 
virtual vtkTypeBool GetDoubleBuffer ()
 Keep track of whether double buffering is on or off.
 
virtual void DoubleBufferOn ()
 Keep track of whether double buffering is on or off.
 
virtual void DoubleBufferOff ()
 Keep track of whether double buffering is on or off.
 
virtual char * GetWindowName ()
 Get name of rendering window.
 
virtual int GetDPI ()
 Return a best estimate to the dots per inch of the display device being rendered (or printed).
 
virtual void SetDPI (int)
 Return a best estimate to the dots per inch of the display device being rendered (or printed).
 
void SetOffScreenRendering (vtkTypeBool val)
 Convenience to set SHowWindow and UseOffScreenBuffers in one call.
 
virtual void OffScreenRenderingOn ()
 Convenience to set SHowWindow and UseOffScreenBuffers in one call.
 
virtual void OffScreenRenderingOff ()
 Convenience to set SHowWindow and UseOffScreenBuffers in one call.
 
virtual void SetTileScale (int, int)
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
void SetTileScale (int[2])
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual int * GetTileScale ()
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual void GetTileScale (int &, int &)
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual void GetTileScale (int[2])
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
void SetTileScale (int s)
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual void SetTileViewport (double, double, double, double)
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual void SetTileViewport (double[4])
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual double * GetTileViewport ()
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual void GetTileViewport (double &, double &, double &, double &)
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
virtual void GetTileViewport (double[4])
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling.
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on.
 
virtual void DebugOff ()
 Turn debugging output off.
 
bool GetDebug ()
 Get the value of the debug flag.
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag.
 
virtual void Modified ()
 Update the modification time for this object.
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time.
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses.
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
vtkTypeBool InvokeEvent (unsigned long event)
 
vtkTypeBool InvokeEvent (const char *event)
 
std::string GetObjectDescription () const override
 The object description printed in messages and PrintSelf output.
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
vtkCommandGetCommand (unsigned long tag)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
void RemoveObserver (vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
void RemoveObservers (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
void RemoveObservers (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object.
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events.
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events.
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method.
 
vtkTypeBool InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not.
 
vtkTypeBool InvokeEvent (const char *event, void *callData)
 This method invokes an event and return whether the event was aborted or not.
 
virtual void SetObjectName (const std::string &objectName)
 Set/get the name of this object for reporting purposes.
 
virtual std::string GetObjectName () const
 Set/get the name of this object for reporting purposes.
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string.
 
virtual std::string GetObjectDescription () const
 The object description printed in messages and PrintSelf output.
 
virtual vtkTypeBool IsA (const char *name)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
virtual vtkIdType GetNumberOfGenerationsFromBase (const char *name)
 Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class).
 
virtual void Delete ()
 Delete a VTK object.
 
virtual void FastDelete ()
 Delete a reference to this object.
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream.
 
void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object).
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object).
 
int GetReferenceCount ()
 Return the current reference count of this object.
 
void SetReferenceCount (int)
 Sets the reference count.
 
bool GetIsInMemkind () const
 A local state flag that remembers whether this object lives in the normal or extended memory space.
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual bool UsesGarbageCollector () const
 Indicate whether the class uses vtkGarbageCollector or not.
 

Static Public Member Functions

static vtkWin32OpenGLDXRenderWindowNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkWin32OpenGLDXRenderWindowSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkWin32OpenGLRenderWindow
static vtkWin32OpenGLRenderWindowNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkWin32OpenGLRenderWindowSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkOpenGLRenderWindow
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkOpenGLRenderWindowSafeDownCast (vtkObjectBase *o)
 
static vtkOpenGLRenderWindowNew ()
 
static void SetGlobalMaximumNumberOfMultiSamples (int val)
 Set/Get the maximum number of multisamples.
 
static int GetGlobalMaximumNumberOfMultiSamples ()
 Set/Get the maximum number of multisamples.
 
- Static Public Member Functions inherited from vtkRenderWindow
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkRenderWindowSafeDownCast (vtkObjectBase *o)
 
static vtkRenderWindowNew ()
 Construct an instance of vtkRenderWindow with its screen size set to 300x300, borders turned on, positioned at (0,0), double buffering turned on.
 
static const char * GetRenderLibrary ()
 What rendering library has the user requested.
 
static const char * GetStereoTypeAsString (int type)
 Returns the stereo type as a string.
 
- Static Public Member Functions inherited from vtkWindow
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkWindowSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes.
 
static void SetGlobalWarningDisplay (vtkTypeBool val)
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
static void GlobalWarningDisplayOn ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
static void GlobalWarningDisplayOff ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
static vtkTypeBool GetGlobalWarningDisplay ()
 This is a global flag that controls whether any debug, warning or error messages are displayed.
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class.
 
static vtkIdType GetNumberOfGenerationsFromBaseType (const char *name)
 Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class).
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
 
static void SetMemkindDirectory (const char *directoryname)
 The name of a directory, ideally mounted -o dax, to memory map an extended memory space within.
 
static bool GetUsingMemkind ()
 A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space.
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkWin32OpenGLDXRenderWindow ()
 
 ~vtkWin32OpenGLDXRenderWindow () override
 
void InitializeDX ()
 Initialize D3D adapter, device and shared texture.
 
- Protected Member Functions inherited from vtkWin32OpenGLRenderWindow
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkWin32OpenGLRenderWindow ()
 
 ~vtkWin32OpenGLRenderWindow () override
 
virtual LRESULT MessageProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
 
void ResizeWhileOffscreen (int xsize, int ysize)
 
void CreateAWindow () override
 Create a not-off-screen window.
 
void DestroyWindow () override
 Destroy a not-off-screen window.
 
void InitializeApplication ()
 
void CleanUpRenderers ()
 
void VTKRegisterClass ()
 
- Protected Member Functions inherited from vtkOpenGLRenderWindow
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkOpenGLRenderWindow ()
 
 ~vtkOpenGLRenderWindow () override
 
virtual void BlitDisplayFramebuffersToHardware ()
 
virtual bool ResolveFlipRenderFramebuffer ()
 
bool ReadDepthComponent (int depthSize)
 
virtual int ReadPixels (const vtkRecti &rect, int front, int glFormat, int glType, void *data, int right=0)
 
int CreateFramebuffers (int width, int height)
 Create the offScreen framebuffers or resize them if they are already created.
 
virtual void CreateAWindow ()=0
 Create a not-off-screen window.
 
virtual void DestroyWindow ()=0
 Destroy a not-off-screen window.
 
void SaveGLState ()
 Query and save OpenGL state.
 
void RestoreGLState ()
 Restore OpenGL state at end of the rendering.
 
- Protected Member Functions inherited from vtkRenderWindow
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkRenderWindow ()
 
 ~vtkRenderWindow () override
 
virtual void DoStereoRender ()
 
- Protected Member Functions inherited from vtkWindow
virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkWindow ()
 
 ~vtkWindow () override
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events.
 
void InternalReleaseFocus ()
 These methods allow a command to exclusively grab all events.
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void RegisterInternal (vtkObjectBase *, vtkTypeBool check)
 
virtual void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
virtual void ObjectFinalize ()
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Additional Inherited Members

- Public Attributes inherited from vtkOpenGLRenderWindow
std::set< vtkGenericOpenGLResourceFreeCallback * > Resources
 
- Static Protected Member Functions inherited from vtkWin32OpenGLRenderWindow
static LRESULT APIENTRY WndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
 
- Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction GetCurrentMallocFunction ()
 
static vtkReallocingFunction GetCurrentReallocFunction ()
 
static vtkFreeingFunction GetCurrentFreeFunction ()
 
static vtkFreeingFunction GetAlternateFreeFunction ()
 
- Protected Attributes inherited from vtkWin32OpenGLRenderWindow
HINSTANCE ApplicationInstance
 
HPALETTE Palette
 
HPALETTE OldPalette
 
HGLRC ContextId
 
HDC DeviceContext
 
BOOL MFChandledWindow
 
HWND WindowId
 
HWND ParentId
 
HWND NextWindowId
 
vtkTypeBool OwnWindow
 
vtkTypeBool Resizing
 
vtkTypeBool Repositioning
 
std::stack< HGLRC > ContextStack
 
std::stack< HDC > DCStack
 
vtkTypeBool CursorHidden
 
vtkTypeBool ForceMakeCurrent
 
int WindowIdReferenceCount
 
- Protected Attributes inherited from vtkOpenGLRenderWindow
FrameBlitModes FrameBlitMode
 
vtkOpenGLQuadHelperResolveQuad
 
vtkOpenGLQuadHelperDepthBlitQuad
 
vtkOpenGLQuadHelperFlipQuad
 
vtkOpenGLQuadHelperDepthReadQuad
 
bool FramebufferFlipY
 
bool OpenGLSupportTested
 
int OpenGLSupportResult
 
std::string OpenGLSupportMessage
 
vtkOpenGLFramebufferObjectRenderFramebuffer
 
vtkOpenGLFramebufferObjectDisplayFramebuffer
 
vtkOpenGLFramebufferObjectResolveFramebuffer
 
vtkOpenGLFramebufferObjectDepthFramebuffer
 
std::map< std::string, int > GLStateIntegers
 
vtkTypeBool OwnContext
 Flag telling if the context has been created here or was inherited.
 
vtkTimeStamp ContextCreationTime
 
vtkTextureObjectDrawPixelsTextureObject
 
float MaximumHardwareLineWidth
 
char * Capabilities
 
vtkOpenGLBufferObjectTQuad2DVBO
 
vtkTextureObjectNoiseTextureObject
 
double FirstRenderTime
 
int LastMultiSamples
 
int RenderBufferTargetDepthSize
 
int ScreenSize [2]
 
struct { 
 
   VTKOpenGLLoaderFunction   LoadFunction = nullptr 
 
   void *   UserData = nullptr 
 
SymbolLoader 
 
- Protected Attributes inherited from vtkRenderWindow
vtkRendererCollectionRenderers
 
vtkNew< vtkRenderTimerLogRenderTimer
 
vtkTypeBool Borders
 
vtkTypeBool Coverable
 
vtkTypeBool FullScreen
 
int OldScreen [5]
 
vtkTypeBool PointSmoothing
 
vtkTypeBool LineSmoothing
 
vtkTypeBool PolygonSmoothing
 
vtkTypeBool StereoRender
 
int StereoType
 
vtkTypeBool StereoCapableWindow
 
vtkTypeBool AlphaBitPlanes
 
vtkRenderWindowInteractorInteractor
 
vtkSmartPointer< vtkUnsignedCharArrayStereoBuffer
 
vtkSmartPointer< vtkUnsignedCharArrayResultFrame
 
vtkTypeBool SwapBuffers
 
double DesiredUpdateRate
 
int AbortRender
 
int InAbortCheck
 
int InRender
 
int NeverRendered
 
int NumberOfLayers
 
int CurrentCursor
 
float AnaglyphColorSaturation
 
int AnaglyphColorMask [2]
 
int MultiSamples
 
vtkTypeBool StencilCapable
 
int CapturingGL2PSSpecialProps
 
int DeviceIndex
 
bool UseSRGBColorSpace
 
char * CursorFileName
 
double AbortCheckTime
 The universal time since the last abort check occurred.
 
vtkRenderWindowSharedRenderWindow
 
double PhysicalViewDirection [3] = { 0.0, 0.0, -1.0 }
 
double PhysicalViewUp [3] = { 0.0, 1.0, 0.0 }
 
double PhysicalTranslation [3] = { 0.0, 0.0, 0.0 }
 
double PhysicalScale = 1.0
 
bool EnableTranslucentSurface = false
 
bool Initialized = false
 
- Protected Attributes inherited from vtkWindow
char * WindowName
 
int Size [2]
 
int Position [2]
 
vtkTypeBool Mapped
 
bool ShowWindow
 
bool UseOffScreenBuffers
 
vtkTypeBool Erase
 
vtkTypeBool DoubleBuffer
 
int DPI
 
double TileViewport [4]
 
int TileSize [2]
 
int TileScale [2]
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
std::string ObjectName
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 
- Static Protected Attributes inherited from vtkWin32OpenGLRenderWindow
static const std::string DEFAULT_BASE_WINDOW_NAME
 

Detailed Description

VTK render window providing OpenGL-DirectX interop.

This vtkWin32OpenGLRenderWindow subclass allows for rendering in a texture that is shared between an OpenGL and a D3D context, using the NVidia NV_DX_interop extension.

Tests:
vtkWin32OpenGLDXRenderWindow (Tests)

Definition at line 28 of file vtkWin32OpenGLDXRenderWindow.h.

Member Typedef Documentation

◆ Superclass

Definition at line 32 of file vtkWin32OpenGLDXRenderWindow.h.

Constructor & Destructor Documentation

◆ vtkWin32OpenGLDXRenderWindow()

vtkWin32OpenGLDXRenderWindow::vtkWin32OpenGLDXRenderWindow ( )
protected

◆ ~vtkWin32OpenGLDXRenderWindow()

vtkWin32OpenGLDXRenderWindow::~vtkWin32OpenGLDXRenderWindow ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkWin32OpenGLDXRenderWindow * vtkWin32OpenGLDXRenderWindow::New ( )
static

◆ IsTypeOf()

static vtkTypeBool vtkWin32OpenGLDXRenderWindow::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual vtkTypeBool vtkWin32OpenGLDXRenderWindow::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkWin32OpenGLRenderWindow.

◆ SafeDownCast()

static vtkWin32OpenGLDXRenderWindow * vtkWin32OpenGLDXRenderWindow::SafeDownCast ( vtkObjectBase o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase * vtkWin32OpenGLDXRenderWindow::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkWin32OpenGLRenderWindow.

◆ NewInstance()

vtkWin32OpenGLDXRenderWindow * vtkWin32OpenGLDXRenderWindow::NewInstance ( ) const

◆ PrintSelf()

void vtkWin32OpenGLDXRenderWindow::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

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.

◆ SetD3DDeviceContext() [1/2]

void vtkWin32OpenGLDXRenderWindow::SetD3DDeviceContext ( ID3D11DeviceContext *  context)

Use external D3D11DeviceContext.

The D3D11Device is obtained using context->GetDevice() from parent class ID3D11DeviceChild. Must be set before window initialization.

The void* overload is meant for wrappers and simply forward the argument to the typed one.

Parameters
contextID3D11DeviceContext to initialize the window resources with.

◆ SetD3DDeviceContext() [2/2]

void vtkWin32OpenGLDXRenderWindow::SetD3DDeviceContext ( void *  context)

Use external D3D11DeviceContext.

The D3D11Device is obtained using context->GetDevice() from parent class ID3D11DeviceChild. Must be set before window initialization.

The void* overload is meant for wrappers and simply forward the argument to the typed one.

Parameters
contextID3D11DeviceContext to initialize the window resources with.

◆ Initialize()

void vtkWin32OpenGLDXRenderWindow::Initialize ( )
overridevirtual

Overridden to create the D3D device, context and texture.

Reimplemented from vtkOpenGLRenderWindow.

◆ Lock()

void vtkWin32OpenGLDXRenderWindow::Lock ( )

Lock/Unlock the shared texture.

The texture must be locked before rendering into it.

◆ Unlock()

void vtkWin32OpenGLDXRenderWindow::Unlock ( )

Lock/Unlock the shared texture.

The texture must be locked before rendering into it.

◆ RegisterSharedTexture() [1/2]

void vtkWin32OpenGLDXRenderWindow::RegisterSharedTexture ( unsigned int  colorId,
unsigned int  depthId = 0 
)

Register/Unregister the OpenGL textures designated by colorId and depthId with this render window internal D3D shared textures.

depthId is optional

◆ UnregisterSharedTexture()

void vtkWin32OpenGLDXRenderWindow::UnregisterSharedTexture ( )

Register/Unregister the OpenGL textures designated by colorId and depthId with this render window internal D3D shared textures.

depthId is optional

◆ RegisterSharedRenderFramebuffer()

void vtkWin32OpenGLDXRenderWindow::RegisterSharedRenderFramebuffer ( )

Register the RenderFramebuffer of this window as a D3D shared texture.

◆ RegisterSharedTexture() [2/2]

void vtkWin32OpenGLDXRenderWindow::RegisterSharedTexture ( )

◆ RegisterSharedDisplayFramebuffer()

void vtkWin32OpenGLDXRenderWindow::RegisterSharedDisplayFramebuffer ( )

Register the DisplayFramebuffer of this window as a D3D shared texture.

◆ SetSize()

void vtkWin32OpenGLDXRenderWindow::SetSize ( int  width,
int  height 
)
overridevirtual

Overridden to resize the internal D3D shared texture.

Reimplemented from vtkWindow.

◆ SetSharedTextureSamples()

virtual void vtkWin32OpenGLDXRenderWindow::SetSharedTextureSamples ( int  )
virtual

Set / Get the number of multisamples used by shared textures for hardware antialiasing.

◆ GetSharedTextureSamples()

virtual int vtkWin32OpenGLDXRenderWindow::GetSharedTextureSamples ( )
virtual

Set / Get the number of multisamples used by shared textures for hardware antialiasing.

◆ BlitToTexture() [1/2]

void vtkWin32OpenGLDXRenderWindow::BlitToTexture ( ID3D11Texture2D *  color,
ID3D11Texture2D *  depth = nullptr 
)

Blits the internal D3D shared texture into color and optionally depth.

The void* overload is meant for wrappers and simply forward the arguments to the typed one.

◆ BlitToTexture() [2/2]

void vtkWin32OpenGLDXRenderWindow::BlitToTexture ( void *  color,
void *  depth = nullptr 
)

Blits the internal D3D shared texture into color and optionally depth.

The void* overload is meant for wrappers and simply forward the arguments to the typed one.

◆ GetDevice()

ID3D11Device * vtkWin32OpenGLDXRenderWindow::GetDevice ( )

Returns the D3D device associated to this render window.

◆ GetD3DSharedTexture()

ID3D11Texture2D * vtkWin32OpenGLDXRenderWindow::GetD3DSharedTexture ( )

Returns the D3D texture shared with this render window.

◆ GetD3DSharedDepthTexture()

ID3D11Texture2D * vtkWin32OpenGLDXRenderWindow::GetD3DSharedDepthTexture ( )

Returns the D3D texture shared with this render window.

◆ SetAdapterId()

void vtkWin32OpenGLDXRenderWindow::SetAdapterId ( LUID  uid)

Specify the DGXI adapter to be used for initialization.

If left unspecified, the first available adapter is used.

◆ SetColorTextureFormat()

void vtkWin32OpenGLDXRenderWindow::SetColorTextureFormat ( UINT  format)

Specify the DXGI format of the D3D color texture shared with this render window.

Parameters
formatmust be a valid DXGI_FORMAT.

Note: We don't forward declare the DXGI_FORMAT enum as it is ill-formed and would always trigger a warning (see https://github.com/ocornut/imgui/issues/3706).

◆ InitializeDX()

void vtkWin32OpenGLDXRenderWindow::InitializeDX ( )
protected

Initialize D3D adapter, device and shared texture.


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