VTK  9.0.20201019
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
vtkOpenGLRenderWindow Class Referenceabstract

OpenGL rendering window. More...

#include <vtkOpenGLRenderWindow.h>

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

Public Types

enum  FrameBlitModes { BlitToHardware, BlitToCurrent, 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
 
- Public Types inherited from vtkRenderWindow
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. More...
 
vtkOpenGLRenderWindowNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
void Start (void) override
 Begin the rendering process. More...
 
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. More...
 
const char * GetRenderingBackend () override
 What rendering backend has the user requested. More...
 
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... More...
 
int GetPixelData (int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data, int right) override
 
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 RGBRGBRGB. More...
 
int SetPixelData (int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int right) override
 
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... More...
 
int GetRGBAPixelData (int x, int y, int x2, int y2, int front, vtkFloatArray *data, int right=0) override
 
int SetRGBAPixelData (int x, int y, int x2, int y2, float *data, int front, int blend=0, int right=0) override
 
int SetRGBAPixelData (int x, int y, int x2, int y2, vtkFloatArray *data, int front, int blend=0, int right=0) override
 
void ReleaseRGBAPixelData (float *data) override
 
unsigned char * GetRGBACharPixelData (int x, int y, int x2, int y2, int front, int right=0) override
 
int GetRGBACharPixelData (int x, int y, int x2, int y2, int front, vtkUnsignedCharArray *data, int right=0) override
 
int SetRGBACharPixelData (int x, int y, int x2, int y2, unsigned char *data, int front, int blend=0, int right=0) override
 
int SetRGBACharPixelData (int x, int y, int x2, int y2, vtkUnsignedCharArray *data, int front, int blend=0, int right=0) override
 
float * GetZbufferData (int x1, int y1, int x2, int y2) override
 Set/Get the zbuffer data from an image. More...
 
int GetZbufferData (int x1, int y1, int x2, int y2, float *z) override
 
int GetZbufferData (int x1, int y1, int x2, int y2, vtkFloatArray *buffer) override
 
int SetZbufferData (int x1, int y1, int x2, int y2, float *buffer) override
 
int SetZbufferData (int x1, int y1, int x2, int y2, vtkFloatArray *buffer) override
 
void ActivateTexture (vtkTextureObject *)
 Activate a texture unit for this texture. More...
 
void DeactivateTexture (vtkTextureObject *)
 Deactivate a previously activated texture. More...
 
int GetTextureUnitForTexture (vtkTextureObject *)
 Get the texture unit for a given texture object. More...
 
int GetDepthBufferSize () override
 Get the size of the depth buffer. More...
 
bool GetUsingSRGBColorSpace ()
 Is this window/fo in sRGB colorspace. More...
 
int GetColorBufferSizes (int *rgba) override
 Get the size of the color buffer. More...
 
int GetColorBufferInternalFormat (int attachmentPoint)
 Get the internal format of current attached texture or render buffer. More...
 
virtual void OpenGLInit ()
 Initialize OpenGL for this window. More...
 
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... More...
 
unsigned int GetBackLeftBuffer ()
 
unsigned int GetBackRightBuffer ()
 
unsigned int GetFrontLeftBuffer ()
 
unsigned int GetFrontRightBuffer ()
 
unsigned int GetBackBuffer ()
 
unsigned int GetFrontBuffer ()
 
virtual vtkMTimeType GetContextCreationTime ()
 Get the time when the OpenGL context was created. More...
 
vtkOpenGLShaderCacheGetShaderCache ()
 Returns an Shader Cache object. More...
 
vtkOpenGLVertexBufferObjectCacheGetVBOCache ()
 Returns the VBO Cache. More...
 
virtual vtkOpenGLFramebufferObjectGetRenderFramebuffer ()
 Returns the render framebuffer object. More...
 
vtkOpenGLFramebufferObjectGetOffScreenFramebuffer ()
 
virtual vtkOpenGLFramebufferObjectGetDisplayFramebuffer ()
 Returns the display framebuffer object. More...
 
vtkTextureUnitManagerGetTextureUnitManager ()
 Returns its texture unit manager object. More...
 
void WaitForCompletion () override
 Block the thread until the actual rendering is finished(). More...
 
virtual void DrawPixels (int x1, int y1, int x2, int y2, int numComponents, int dataType, void *data)
 Replacement for the old glDrawPixels function. More...
 
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. More...
 
virtual void DrawPixels (int srcWidth, int srcHeight, int numComponents, int dataType, void *data)
 Replacement for the old glDrawPixels function. More...
 
virtual float GetMaximumHardwareLineWidth ()
 Return the largest line width supported by the hardware. More...
 
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) More...
 
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. More...
 
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. More...
 
int SupportsOpenGL () override
 Does this render window support OpenGL? 0-false, 1-true. More...
 
const char * ReportCapabilities () override
 Get report of capabilities for the render window. More...
 
virtual void Initialize (void)
 Initialize the rendering window. More...
 
void RegisterGraphicsResources (vtkGenericOpenGLResourceFreeCallback *cb)
 
void UnregisterGraphicsResources (vtkGenericOpenGLResourceFreeCallback *cb)
 
virtual void PushContext ()
 Ability to push and pop this window's context as the current context. More...
 
virtual void PopContext ()
 
bool InitializeFromCurrentContext () override
 Initialize the render window from the information associated with the currently activated OpenGL context. More...
 
virtual bool SetSwapControl (int)
 Set the number of vertical syncs required between frames. More...
 
virtual vtkOpenGLStateGetState ()
 
vtkOpenGLBufferObjectGetTQuad2DVBO ()
 
int GetNoiseTextureUnit ()
 
void End () override
 Update the system, if needed, at end of render process. More...
 
void Render () override
 Handle opengl specific code and calls superclass. More...
 
void StereoMidpoint () override
 Intermediate method performs operations required between the rendering of the left and right eye. More...
 
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. More...
 
void BlitDisplayFramebuffer ()
 Blit a display framebuffer into a currently bound draw destination. More...
 
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. More...
 
void BlitToRenderFramebuffer (bool includeDepth)
 Blit the currently bound read buffer to the renderbuffer. More...
 
void BlitToRenderFramebuffer (int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY, int destWidth, int destHeight, int bufferMode, int interpolation)
 
virtual void SetFrameBlitMode (FrameBlitModes)
 SetGet how to handle blits at the end of a Frame() call. More...
 
virtual FrameBlitModes GetFrameBlitMode ()
 
void SetFrameBlitModeToBlitToHardware ()
 
void SetFrameBlitModeToBlitToCurrent ()
 
void SetFrameBlitModeToNoBlit ()
 
- Public Member Functions inherited from vtkRenderWindow
vtkRenderWindowNewInstance () const
 
virtual void AddRenderer (vtkRenderer *)
 Add a renderer to the list of renderers. More...
 
void RemoveRenderer (vtkRenderer *)
 Remove a renderer from the list of renderers. More...
 
int HasRenderer (vtkRenderer *)
 Query if a renderer is in the list of renderers. More...
 
 vtkGetNewMacro (RenderTimer, vtkRenderTimerLog)
 Get the render timer log for this window. More...
 
vtkRendererCollectionGetRenderers ()
 Return the collection of renderers in the render window. More...
 
void CaptureGL2PSSpecialProps (vtkCollection *specialProps)
 The GL2PS exporter must handle certain props in a special way (e.g. More...
 
virtual int GetCapturingGL2PSSpecialProps ()
 Returns true if the render process is capturing text actors. More...
 
virtual void Finalize ()
 Finalize the rendering process. More...
 
virtual void CopyResultFrame ()
 Performed at the end of the rendering process to generate image. More...
 
virtual vtkRenderWindowInteractorMakeRenderWindowInteractor ()
 Create an interactor to control renderers in this window. More...
 
virtual void HideCursor ()
 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. More...
 
virtual void ShowCursor ()
 
virtual void SetCursorPosition (int, int)
 
virtual void SetCurrentCursor (int)
 Change the shape of the cursor. More...
 
virtual int GetCurrentCursor ()
 
virtual void SetCursorFileName (const char *)
 Set/Get the full path to the custom cursor. More...
 
virtual char * GetCursorFileName ()
 
virtual void SetFullScreen (vtkTypeBool)
 Turn on/off rendering full screen window size. More...
 
virtual vtkTypeBool GetFullScreen ()
 
virtual void FullScreenOn ()
 
virtual void FullScreenOff ()
 
virtual void SetBorders (vtkTypeBool)
 Turn on/off window manager borders. More...
 
virtual vtkTypeBool GetBorders ()
 
virtual void BordersOn ()
 
virtual void BordersOff ()
 
virtual vtkTypeBool GetStereoCapableWindow ()
 Prescribe that the window be created in a stereo-capable mode. More...
 
virtual void StereoCapableWindowOn ()
 
virtual void StereoCapableWindowOff ()
 
virtual void SetStereoCapableWindow (vtkTypeBool capable)
 
virtual vtkTypeBool GetStereoRender ()
 Turn on/off stereo rendering. More...
 
void SetStereoRender (vtkTypeBool stereo)
 
virtual void StereoRenderOn ()
 
virtual void StereoRenderOff ()
 
virtual void SetAlphaBitPlanes (vtkTypeBool)
 Turn on/off the use of alpha bitplanes. More...
 
virtual vtkTypeBool GetAlphaBitPlanes ()
 
virtual void AlphaBitPlanesOn ()
 
virtual void AlphaBitPlanesOff ()
 
virtual void SetPointSmoothing (vtkTypeBool)
 Turn on/off point smoothing. More...
 
virtual vtkTypeBool GetPointSmoothing ()
 
virtual void PointSmoothingOn ()
 
virtual void PointSmoothingOff ()
 
virtual void SetLineSmoothing (vtkTypeBool)
 Turn on/off line smoothing. More...
 
virtual vtkTypeBool GetLineSmoothing ()
 
virtual void LineSmoothingOn ()
 
virtual void LineSmoothingOff ()
 
virtual void SetPolygonSmoothing (vtkTypeBool)
 Turn on/off polygon smoothing. More...
 
virtual vtkTypeBool GetPolygonSmoothing ()
 
virtual void PolygonSmoothingOn ()
 
virtual void PolygonSmoothingOff ()
 
virtual int GetStereoType ()
 Set/Get what type of stereo rendering to use. More...
 
void SetStereoType (int)
 
void SetStereoTypeToCrystalEyes ()
 
void SetStereoTypeToRedBlue ()
 
void SetStereoTypeToInterlaced ()
 
void SetStereoTypeToLeft ()
 
void SetStereoTypeToRight ()
 
void SetStereoTypeToDresden ()
 
void SetStereoTypeToAnaglyph ()
 
void SetStereoTypeToCheckerboard ()
 
void SetStereoTypeToSplitViewportHorizontal ()
 
void SetStereoTypeToFake ()
 
void SetStereoTypeToEmulate ()
 
const char * GetStereoTypeAsString ()
 Returns the stereo type as a string. More...
 
virtual void StereoUpdate ()
 Update the system, if needed, due to stereo rendering. More...
 
virtual void StereoRenderComplete ()
 Handles work required once both views have been rendered when using stereo rendering. More...
 
virtual void SetAnaglyphColorSaturation (float)
 Set/get the anaglyph color saturation factor. More...
 
virtual float GetAnaglyphColorSaturation ()
 
virtual void SetAnaglyphColorMask (int, int)
 Set/get the anaglyph color mask values. More...
 
void SetAnaglyphColorMask (int[2])
 
virtual int * GetAnaglyphColorMask ()
 
virtual void GetAnaglyphColorMask (int data[2])
 
virtual void WindowRemap ()
 Remap the rendering window. More...
 
virtual void SetSwapBuffers (vtkTypeBool)
 Turn on/off buffer swapping between images. More...
 
virtual vtkTypeBool GetSwapBuffers ()
 
virtual void SwapBuffersOn ()
 
virtual void SwapBuffersOff ()
 
float GetZbufferDataAtPoint (int x, int y)
 
virtual int GetNeverRendered ()
 This flag is set if the window hasn't rendered since it was created. More...
 
virtual int GetAbortRender ()
 This is a flag that can be set to interrupt a rendering that is in progress. More...
 
virtual void SetAbortRender (int)
 
virtual int GetInAbortCheck ()
 
virtual void SetInAbortCheck (int)
 
virtual int CheckAbortStatus ()
 
vtkTypeBool GetIsPicking ()
 
void SetIsPicking (vtkTypeBool)
 
void IsPickingOn ()
 
void IsPickingOff ()
 
virtual vtkTypeBool GetEventPending ()
 Check to see if a mouse button has been pressed. More...
 
virtual int CheckInRenderStatus ()
 Are we rendering at the moment. More...
 
virtual void ClearInRenderStatus ()
 Clear status (after an exception was thrown for example) More...
 
virtual void SetDesiredUpdateRate (double)
 Set/Get the desired update rate. More...
 
virtual double GetDesiredUpdateRate ()
 
virtual int GetNumberOfLayers ()
 Get the number of layers for renderers. More...
 
virtual void SetNumberOfLayers (int)
 
virtual vtkRenderWindowInteractorGetInteractor ()
 Get the interactor associated with this render window. More...
 
virtual void SetInteractor (vtkRenderWindowInteractor *)
 Set the interactor to the render window. More...
 
void UnRegister (vtkObjectBase *o) override
 This Method detects loops of RenderWindow<->Interactor, so objects are freed properly. More...
 
void SetDisplayId (void *) override
 Dummy stubs for vtkWindow API. More...
 
void SetWindowId (void *) override
 
virtual void SetNextWindowId (void *)
 
void SetParentId (void *) override
 
void * GetGenericDisplayId () override
 
void * GetGenericWindowId () override
 
void * GetGenericParentId () override
 
void * GetGenericContext () override
 
void * GetGenericDrawable () override
 
void SetWindowInfo (const char *) override
 
virtual void SetNextWindowInfo (const char *)
 
void SetParentInfo (const char *) override
 
virtual void SetSharedRenderWindow (vtkRenderWindow *)
 Set/Get an already existing window that this window should share data with if possible. More...
 
virtual vtkRenderWindowGetSharedRenderWindow ()
 
virtual bool GetPlatformSupportsRenderWindowSharing ()
 
void MakeCurrent () override
 Attempt to make this window the current graphics context for the calling thread. More...
 
virtual bool IsCurrent ()
 Tells if this window is the current graphics context for the calling thread. More...
 
 VTK_DEPRECATED_IN_9_1_0 ("Deprecated in 9.1 because no one knows what it's for and nothing uses it") virtual bool IsDrawable()
 Test if the window has a valid drawable. More...
 
virtual void SetForceMakeCurrent ()
 If called, allow MakeCurrent() to skip cache-check when called. More...
 
virtual vtkTypeBool IsDirect ()
 Is this render window using hardware acceleration? 0-false, 1-true. More...
 
virtual void SetMultiSamples (int)
 Set / Get the number of multisamples to use for hardware antialiasing. More...
 
virtual int GetMultiSamples ()
 
virtual void SetStencilCapable (vtkTypeBool)
 Set / Get the availability of the stencil buffer. More...
 
virtual vtkTypeBool GetStencilCapable ()
 
virtual void StencilCapableOn ()
 
virtual void StencilCapableOff ()
 
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. More...
 
virtual int GetDeviceIndex ()
 
virtual int GetNumberOfDevices ()
 Returns the number of devices (graphics cards) on a system. More...
 
virtual bool GetUseSRGBColorSpace ()
 Set/Get if we want this window to use the sRGB color space. More...
 
virtual void SetUseSRGBColorSpace (bool)
 
virtual void UseSRGBColorSpaceOn ()
 
virtual void UseSRGBColorSpaceOff ()
 
- Public Member Functions inherited from vtkWindow
vtkWindowNewInstance () const
 
virtual int * GetPosition ()
 Get the position (x and y) of the rendering window in screen coordinates (in pixels). More...
 
virtual void SetPosition (int x, int y)
 Set the position (x and y) of the rendering window in screen coordinates (in pixels). More...
 
virtual void SetPosition (int a[2])
 
virtual int * GetSize ()
 Get the size (width and height) of the rendering window in screen coordinates (in pixels). More...
 
virtual void SetSize (int width, int height)
 Set the size (width and height) of the rendering window in screen coordinates (in pixels). More...
 
virtual void SetSize (int a[2])
 
int * GetActualSize ()
 GetSize() returns the size * this->TileScale, whereas this method returns the size without multiplying with the tile scale. More...
 
virtual int * GetScreenSize ()
 Get the current size of the screen in pixels. More...
 
virtual vtkTypeBool GetMapped ()
 Keep track of whether the rendering window has been mapped to screen. More...
 
virtual bool GetShowWindow ()
 Show or not Show the window. More...
 
virtual void SetShowWindow (bool)
 
virtual void ShowWindowOn ()
 
virtual void ShowWindowOff ()
 
virtual void SetUseOffScreenBuffers (bool)
 Render to an offscreen destination such as a framebuffer. More...
 
virtual bool GetUseOffScreenBuffers ()
 
virtual void UseOffScreenBuffersOn ()
 
virtual void UseOffScreenBuffersOff ()
 
virtual void SetErase (vtkTypeBool)
 Turn on/off erasing the screen between images. More...
 
virtual vtkTypeBool GetErase ()
 
virtual void EraseOn ()
 
virtual void EraseOff ()
 
virtual void SetDoubleBuffer (vtkTypeBool)
 Keep track of whether double buffering is on or off. More...
 
virtual vtkTypeBool GetDoubleBuffer ()
 
virtual void DoubleBufferOn ()
 
virtual void DoubleBufferOff ()
 
virtual char * GetWindowName ()
 Get name of rendering window. More...
 
virtual void SetWindowName (const char *)
 
virtual void SetIcon (vtkImageData *)
 Set the icon used in title bar and task bar. More...
 
virtual int GetDPI ()
 Return a best estimate to the dots per inch of the display device being rendered (or printed). More...
 
virtual void SetDPI (int)
 
virtual bool DetectDPI ()
 Attempt to detect and set the DPI of the display device by querying the system. More...
 
void SetOffScreenRendering (vtkTypeBool val)
 Convenience to set SHowWindow and UseOffScreenBuffers in one call. More...
 
virtual void OffScreenRenderingOn ()
 
virtual void OffScreenRenderingOff ()
 
vtkTypeBool GetOffScreenRendering ()
 Deprecated, directly use GetShowWindow and GetOffScreenBuffers instead. More...
 
virtual void SetTileScale (int, int)
 These methods are used by vtkWindowToImageFilter to tell a VTK window to simulate a larger window by tiling. More...
 
void SetTileScale (int[2])
 
virtual int * GetTileScale ()
 
virtual void GetTileScale (int &, int &)
 
virtual void GetTileScale (int[2])
 
void SetTileScale (int s)
 
virtual void SetTileViewport (double, double, double, double)
 
virtual void SetTileViewport (double[4])
 
virtual double * GetTileViewport ()
 
virtual void GetTileViewport (double &, double &, double &, double &)
 
virtual void GetTileViewport (double[4])
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on. More...
 
virtual void DebugOff ()
 Turn debugging output off. More...
 
bool GetDebug ()
 Get the value of the debug flag. More...
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
 
virtual void Modified ()
 Update the modification time for this object. More...
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 
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)
 
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. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
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. More...
 
int InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
 
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). More...
 
virtual void Delete ()
 Delete a VTK object. More...
 
virtual void FastDelete ()
 Delete a reference to this object. More...
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream. More...
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
virtual void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
 
int GetReferenceCount ()
 Return the current reference count of this object. More...
 
void SetReferenceCount (int)
 Sets the reference count. More...
 
bool GetIsInMemkind () const
 A local state flag that remembers whether this object lives in the normal or extended memory space. More...
 

Static Public Member Functions

static vtkTypeBool IsTypeOf (const char *type)
 
static vtkOpenGLRenderWindowSafeDownCast (vtkObjectBase *o)
 
static void SetGlobalMaximumNumberOfMultiSamples (int val)
 Set/Get the maximum number of multisamples. More...
 
static int GetGlobalMaximumNumberOfMultiSamples ()
 
- 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. More...
 
static const char * GetRenderLibrary ()
 What rendering library has the user requested. More...
 
static const char * GetStereoTypeAsString (int type)
 
- 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. More...
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
 
static void SetGlobalWarningDisplay (int val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- 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. More...
 
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). More...
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void SetMemkindDirectory (const char *directoryname)
 The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. More...
 
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. More...
 

Public Attributes

std::set< vtkGenericOpenGLResourceFreeCallback * > Resources
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkOpenGLRenderWindow ()
 
 ~vtkOpenGLRenderWindow () override
 
virtual void BlitDisplayFramebuffersToHardware ()
 
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 framebuffer Return if the creation was successful or not. More...
 
virtual void CreateAWindow ()=0
 Create a not-off-screen window. More...
 
virtual void DestroyWindow ()=0
 Destroy a not-off-screen window. More...
 
void SaveGLState ()
 Query and save OpenGL state. More...
 
void RestoreGLState ()
 Restore OpenGL state at end of the rendering. More...
 
- Protected Member Functions inherited from vtkRenderWindow
 vtkRenderWindow ()
 
 ~vtkRenderWindow () override
 
virtual void DoStereoRender ()
 
- Protected Member Functions inherited from vtkWindow
 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. More...
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

FrameBlitModes FrameBlitMode
 
vtkOpenGLQuadHelperResolveQuad
 
bool OpenGLSupportTested
 
int OpenGLSupportResult
 
std::string OpenGLSupportMessage
 
vtkOpenGLFramebufferObjectRenderFramebuffer
 
vtkOpenGLFramebufferObjectDisplayFramebuffer
 
vtkOpenGLFramebufferObjectResolveFramebuffer
 
std::map< std::string, int > GLStateIntegers
 
vtkTypeBool OwnContext
 Flag telling if the context has been created here or was inherited. More...
 
vtkTimeStamp ContextCreationTime
 
vtkTextureObjectDrawPixelsTextureObject
 
bool Initialized
 
bool GlewInitValid
 
float MaximumHardwareLineWidth
 
char * Capabilities
 
vtkOpenGLBufferObjectTQuad2DVBO
 
vtkTextureObjectNoiseTextureObject
 
double FirstRenderTime
 
int LastMultiSamples
 
int ScreenSize [2]
 
- Protected Attributes inherited from vtkRenderWindow
vtkRendererCollectionRenderers
 
vtkNew< vtkRenderTimerLogRenderTimer
 
vtkTypeBool Borders
 
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. More...
 
vtkRenderWindowSharedRenderWindow
 
- 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
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Additional Inherited Members

- Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction GetCurrentMallocFunction ()
 
static vtkReallocingFunction GetCurrentReallocFunction ()
 
static vtkFreeingFunction GetCurrentFreeFunction ()
 
static vtkFreeingFunction GetAlternateFreeFunction ()
 

Detailed Description

OpenGL rendering window.

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 53 of file vtkOpenGLRenderWindow.h.

Member Typedef Documentation

◆ Superclass

Definition at line 56 of file vtkOpenGLRenderWindow.h.

Member Enumeration Documentation

◆ FrameBlitModes

Define how the resulting image should be blitted when at the end of the Frame() call if SwapBuffers is true.

Enumerator
BlitToHardware 
BlitToCurrent 
NoBlit 

Definition at line 423 of file vtkOpenGLRenderWindow.h.

Constructor & Destructor Documentation

◆ vtkOpenGLRenderWindow()

vtkOpenGLRenderWindow::vtkOpenGLRenderWindow ( )
protected

◆ ~vtkOpenGLRenderWindow()

vtkOpenGLRenderWindow::~vtkOpenGLRenderWindow ( )
overrideprotected

Member Function Documentation

◆ IsTypeOf()

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

◆ IsA()

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

Reimplemented from vtkRenderWindow.

Reimplemented in vtkOpenVRRenderWindow, vtkCocoaRenderWindow, vtkExternalOpenGLRenderWindow, vtkIOSRenderWindow, vtkGenericOpenGLRenderWindow, vtkEGLRenderWindow, vtkXOpenGLRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, and vtkSDL2OpenGLRenderWindow.

◆ SafeDownCast()

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

◆ NewInstanceInternal()

virtual vtkObjectBase* vtkOpenGLRenderWindow::NewInstanceInternal ( ) const
protectedvirtual

◆ NewInstance()

vtkOpenGLRenderWindow* vtkOpenGLRenderWindow::NewInstance ( ) const

◆ PrintSelf()

void vtkOpenGLRenderWindow::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 vtkRenderWindow.

Reimplemented in vtkXOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkSDL2OpenGLRenderWindow, vtkOpenVRRenderWindow, and vtkOSOpenGLRenderWindow.

◆ Start()

void vtkOpenGLRenderWindow::Start ( void  )
overridevirtual

Begin the rendering process.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkOpenVRRenderWindow, and vtkXOpenGLRenderWindow.

◆ Frame()

void vtkOpenGLRenderWindow::Frame ( )
overridevirtual

A termination method performed at the end of the rendering process to do things like swapping buffers (if necessary) or similar actions.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkWin32OpenGLRenderWindow, vtkOSOpenGLRenderWindow, vtkSDL2OpenGLRenderWindow, and vtkXOpenGLRenderWindow.

◆ GetRenderingBackend()

const char* vtkOpenGLRenderWindow::GetRenderingBackend ( )
overridevirtual

What rendering backend has the user requested.

Reimplemented from vtkRenderWindow.

◆ SetGlobalMaximumNumberOfMultiSamples()

static void vtkOpenGLRenderWindow::SetGlobalMaximumNumberOfMultiSamples ( int  val)
static

Set/Get the maximum number of multisamples.

◆ GetGlobalMaximumNumberOfMultiSamples()

static int vtkOpenGLRenderWindow::GetGlobalMaximumNumberOfMultiSamples ( )
static

◆ GetPixelData() [1/2]

unsigned char* vtkOpenGLRenderWindow::GetPixelData ( int  x,
int  y,
int  x2,
int  y2,
int  front,
int  right 
)
overridevirtual

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

Reimplemented from vtkWindow.

◆ GetPixelData() [2/2]

int vtkOpenGLRenderWindow::GetPixelData ( int  x,
int  y,
int  x2,
int  y2,
int  front,
vtkUnsignedCharArray data,
int  right 
)
overridevirtual

Reimplemented from vtkWindow.

◆ SetPixelData() [1/2]

int vtkOpenGLRenderWindow::SetPixelData ( int  ,
int  ,
int  ,
int  ,
unsigned char *  ,
int  ,
int   
)
overridevirtual

Set/Get the pixel data of an image, transmitted as RGBRGBRGB.

The front argument indicates if the front buffer should be used or the back buffer. It is the caller's responsibility to delete the resulting array. It is very important to realize that the memory in this array is organized from the bottom of the window to the top. The origin of the screen is in the lower left corner. The y axis increases as you go up the screen. So the storage of pixels is from left to right and from bottom to top. (x,y) is any corner of the rectangle. (x2,y2) is its opposite corner on the diagonal.

Reimplemented from vtkRenderWindow.

◆ SetPixelData() [2/2]

int vtkOpenGLRenderWindow::SetPixelData ( int  x,
int  y,
int  x2,
int  y2,
vtkUnsignedCharArray data,
int  front,
int  right 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ GetRGBAPixelData() [1/2]

float* vtkOpenGLRenderWindow::GetRGBAPixelData ( int  x,
int  y,
int  x2,
int  y2,
int  front,
int  right = 0 
)
overridevirtual

Set/Get the pixel data of an image, transmitted as RGBARGBA...

Reimplemented from vtkRenderWindow.

◆ GetRGBAPixelData() [2/2]

int vtkOpenGLRenderWindow::GetRGBAPixelData ( int  x,
int  y,
int  x2,
int  y2,
int  front,
vtkFloatArray data,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ SetRGBAPixelData() [1/2]

int vtkOpenGLRenderWindow::SetRGBAPixelData ( int  x,
int  y,
int  x2,
int  y2,
float *  data,
int  front,
int  blend = 0,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ SetRGBAPixelData() [2/2]

int vtkOpenGLRenderWindow::SetRGBAPixelData ( int  x,
int  y,
int  x2,
int  y2,
vtkFloatArray data,
int  front,
int  blend = 0,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ ReleaseRGBAPixelData()

void vtkOpenGLRenderWindow::ReleaseRGBAPixelData ( float *  data)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ GetRGBACharPixelData() [1/2]

unsigned char* vtkOpenGLRenderWindow::GetRGBACharPixelData ( int  x,
int  y,
int  x2,
int  y2,
int  front,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ GetRGBACharPixelData() [2/2]

int vtkOpenGLRenderWindow::GetRGBACharPixelData ( int  x,
int  y,
int  x2,
int  y2,
int  front,
vtkUnsignedCharArray data,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ SetRGBACharPixelData() [1/2]

int vtkOpenGLRenderWindow::SetRGBACharPixelData ( int  x,
int  y,
int  x2,
int  y2,
unsigned char *  data,
int  front,
int  blend = 0,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ SetRGBACharPixelData() [2/2]

int vtkOpenGLRenderWindow::SetRGBACharPixelData ( int  x,
int  y,
int  x2,
int  y2,
vtkUnsignedCharArray data,
int  front,
int  blend = 0,
int  right = 0 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ GetZbufferData() [1/3]

float* vtkOpenGLRenderWindow::GetZbufferData ( int  x1,
int  y1,
int  x2,
int  y2 
)
overridevirtual

Set/Get the zbuffer data from an image.

Reimplemented from vtkRenderWindow.

◆ GetZbufferData() [2/3]

int vtkOpenGLRenderWindow::GetZbufferData ( int  x1,
int  y1,
int  x2,
int  y2,
float *  z 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ GetZbufferData() [3/3]

int vtkOpenGLRenderWindow::GetZbufferData ( int  x1,
int  y1,
int  x2,
int  y2,
vtkFloatArray buffer 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ SetZbufferData() [1/2]

int vtkOpenGLRenderWindow::SetZbufferData ( int  x1,
int  y1,
int  x2,
int  y2,
float *  buffer 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ SetZbufferData() [2/2]

int vtkOpenGLRenderWindow::SetZbufferData ( int  x1,
int  y1,
int  x2,
int  y2,
vtkFloatArray buffer 
)
overridevirtual

Reimplemented from vtkRenderWindow.

◆ ActivateTexture()

void vtkOpenGLRenderWindow::ActivateTexture ( vtkTextureObject )

Activate a texture unit for this texture.

◆ DeactivateTexture()

void vtkOpenGLRenderWindow::DeactivateTexture ( vtkTextureObject )

Deactivate a previously activated texture.

◆ GetTextureUnitForTexture()

int vtkOpenGLRenderWindow::GetTextureUnitForTexture ( vtkTextureObject )

Get the texture unit for a given texture object.

◆ GetDepthBufferSize()

int vtkOpenGLRenderWindow::GetDepthBufferSize ( )
overridevirtual

Get the size of the depth buffer.

Reimplemented from vtkRenderWindow.

◆ GetUsingSRGBColorSpace()

bool vtkOpenGLRenderWindow::GetUsingSRGBColorSpace ( )

Is this window/fo in sRGB colorspace.

◆ GetColorBufferSizes()

int vtkOpenGLRenderWindow::GetColorBufferSizes ( int *  rgba)
overridevirtual

Get the size of the color buffer.

Returns 0 if not able to determine otherwise sets R G B and A into buffer.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkSDL2OpenGLRenderWindow.

◆ GetColorBufferInternalFormat()

int vtkOpenGLRenderWindow::GetColorBufferInternalFormat ( int  attachmentPoint)

Get the internal format of current attached texture or render buffer.

attachmentPoint is the index of attachment. Returns 0 if not able to determine.

◆ OpenGLInit()

virtual void vtkOpenGLRenderWindow::OpenGLInit ( )
virtual

Initialize OpenGL for this window.

Reimplemented in vtkGenericOpenGLRenderWindow.

◆ OpenGLInitState()

virtual void vtkOpenGLRenderWindow::OpenGLInitState ( )
virtual

◆ OpenGLInitContext()

virtual void vtkOpenGLRenderWindow::OpenGLInitContext ( )
virtual

◆ GetOpenGLVersion()

void vtkOpenGLRenderWindow::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

◆ GetBackLeftBuffer()

unsigned int vtkOpenGLRenderWindow::GetBackLeftBuffer ( )

◆ GetBackRightBuffer()

unsigned int vtkOpenGLRenderWindow::GetBackRightBuffer ( )

◆ GetFrontLeftBuffer()

unsigned int vtkOpenGLRenderWindow::GetFrontLeftBuffer ( )

◆ GetFrontRightBuffer()

unsigned int vtkOpenGLRenderWindow::GetFrontRightBuffer ( )

◆ GetBackBuffer()

unsigned int vtkOpenGLRenderWindow::GetBackBuffer ( )

◆ GetFrontBuffer()

unsigned int vtkOpenGLRenderWindow::GetFrontBuffer ( )

◆ GetContextCreationTime()

virtual vtkMTimeType vtkOpenGLRenderWindow::GetContextCreationTime ( )
virtual

Get the time when the OpenGL context was created.

◆ GetShaderCache()

vtkOpenGLShaderCache* vtkOpenGLRenderWindow::GetShaderCache ( )

Returns an Shader Cache object.

◆ GetVBOCache()

vtkOpenGLVertexBufferObjectCache* vtkOpenGLRenderWindow::GetVBOCache ( )

Returns the VBO Cache.

◆ GetRenderFramebuffer()

virtual vtkOpenGLFramebufferObject* vtkOpenGLRenderWindow::GetRenderFramebuffer ( )
virtual

Returns the render framebuffer object.

◆ GetOffScreenFramebuffer()

vtkOpenGLFramebufferObject* vtkOpenGLRenderWindow::GetOffScreenFramebuffer ( )
inline

Definition at line 223 of file vtkOpenGLRenderWindow.h.

◆ GetDisplayFramebuffer()

virtual vtkOpenGLFramebufferObject* vtkOpenGLRenderWindow::GetDisplayFramebuffer ( )
virtual

Returns the display framebuffer object.

◆ GetTextureUnitManager()

vtkTextureUnitManager* vtkOpenGLRenderWindow::GetTextureUnitManager ( )

Returns its texture unit manager object.

A new one will be created if one hasn't already been set up.

◆ WaitForCompletion()

void vtkOpenGLRenderWindow::WaitForCompletion ( )
overridevirtual

Block the thread until the actual rendering is finished().

Useful for measurement only.

Reimplemented from vtkRenderWindow.

◆ DrawPixels() [1/3]

virtual void vtkOpenGLRenderWindow::DrawPixels ( int  x1,
int  y1,
int  x2,
int  y2,
int  numComponents,
int  dataType,
void *  data 
)
virtual

Replacement for the old glDrawPixels function.

◆ DrawPixels() [2/3]

virtual void vtkOpenGLRenderWindow::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 
)
virtual

Replacement for the old glDrawPixels function, but it allows for scaling the data and using only part of the texture.

◆ DrawPixels() [3/3]

virtual void vtkOpenGLRenderWindow::DrawPixels ( int  srcWidth,
int  srcHeight,
int  numComponents,
int  dataType,
void *  data 
)
virtual

Replacement for the old glDrawPixels function.

This simple version draws all the data to the entire current viewport scaling as needed.

◆ GetMaximumHardwareLineWidth()

virtual float vtkOpenGLRenderWindow::GetMaximumHardwareLineWidth ( )
inlinevirtual

Return the largest line width supported by the hardware.

Reimplemented in vtkGenericOpenGLRenderWindow.

Definition at line 266 of file vtkOpenGLRenderWindow.h.

◆ IsPointSpriteBugPresent()

virtual bool vtkOpenGLRenderWindow::IsPointSpriteBugPresent ( )
inlinevirtual

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)

Reimplemented in vtkEGLRenderWindow.

Definition at line 274 of file vtkOpenGLRenderWindow.h.

◆ GetDefaultTextureInternalFormat()

int vtkOpenGLRenderWindow::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.

◆ GetOpenGLSupportMessage()

std::string vtkOpenGLRenderWindow::GetOpenGLSupportMessage ( )
inline

Return a message profiding additional details about the results of calling SupportsOpenGL() This can be used to retrieve more specifics about what failed.

Definition at line 289 of file vtkOpenGLRenderWindow.h.

◆ SupportsOpenGL()

int vtkOpenGLRenderWindow::SupportsOpenGL ( )
overridevirtual

Does this render window support OpenGL? 0-false, 1-true.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkOpenVRRenderWindow, and vtkOSOpenGLRenderWindow.

◆ ReportCapabilities()

const char* vtkOpenGLRenderWindow::ReportCapabilities ( )
overridevirtual

Get report of capabilities for the render window.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkWin32OpenGLRenderWindow, vtkXOpenGLRenderWindow, vtkOpenVRRenderWindow, and vtkOSOpenGLRenderWindow.

◆ Initialize()

virtual void vtkOpenGLRenderWindow::Initialize ( void   )
inlinevirtual

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.

Reimplemented in vtkEGLRenderWindow, vtkOSOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, vtkSDL2OpenGLRenderWindow, vtkOpenVRRenderWindow, vtkCocoaRenderWindow, vtkIOSRenderWindow, and vtkXOpenGLRenderWindow.

Definition at line 307 of file vtkOpenGLRenderWindow.h.

◆ RegisterGraphicsResources()

void vtkOpenGLRenderWindow::RegisterGraphicsResources ( vtkGenericOpenGLResourceFreeCallback cb)
inline

Definition at line 311 of file vtkOpenGLRenderWindow.h.

◆ UnregisterGraphicsResources()

void vtkOpenGLRenderWindow::UnregisterGraphicsResources ( vtkGenericOpenGLResourceFreeCallback cb)
inline

Definition at line 320 of file vtkOpenGLRenderWindow.h.

◆ PushContext()

virtual void vtkOpenGLRenderWindow::PushContext ( )
inlinevirtual

Ability to push and pop this window's context as the current context.

The idea being to if needed make this window's context current and when done releasing resources restore the prior context. The default implementation here is only meant as a backup for subclasses that lack a proper implementation.

Reimplemented in vtkCocoaRenderWindow, vtkXOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, and vtkSDL2OpenGLRenderWindow.

Definition at line 338 of file vtkOpenGLRenderWindow.h.

◆ PopContext()

virtual void vtkOpenGLRenderWindow::PopContext ( )
inlinevirtual

◆ InitializeFromCurrentContext()

bool vtkOpenGLRenderWindow::InitializeFromCurrentContext ( )
overridevirtual

Initialize the render window from the information associated with the currently activated OpenGL context.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkXOpenGLRenderWindow, and vtkWin32OpenGLRenderWindow.

◆ SetSwapControl()

virtual bool vtkOpenGLRenderWindow::SetSwapControl ( int  )
inlinevirtual

Set the number of vertical syncs required between frames.

A value of 0 means swap buffers as quickly as possible regardless of the vertical refresh. A value of 1 means swap buffers in sync with the vertical refresh to eliminate tearing. A value of -1 means use a value of 1 unless we missed a frame in which case swap immediately. Returns true if the call succeeded.

Reimplemented in vtkXOpenGLRenderWindow, vtkWin32OpenGLRenderWindow, and vtkSDL2OpenGLRenderWindow.

Definition at line 356 of file vtkOpenGLRenderWindow.h.

◆ GetState()

virtual vtkOpenGLState* vtkOpenGLRenderWindow::GetState ( )
inlinevirtual

Reimplemented in vtkOpenVRRenderWindow.

Definition at line 360 of file vtkOpenGLRenderWindow.h.

◆ GetTQuad2DVBO()

vtkOpenGLBufferObject* vtkOpenGLRenderWindow::GetTQuad2DVBO ( )

◆ GetNoiseTextureUnit()

int vtkOpenGLRenderWindow::GetNoiseTextureUnit ( )

◆ End()

void vtkOpenGLRenderWindow::End ( )
overridevirtual

Update the system, if needed, at end of render process.

Reimplemented from vtkRenderWindow.

◆ Render()

void vtkOpenGLRenderWindow::Render ( )
overridevirtual

Handle opengl specific code and calls superclass.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkXOpenGLRenderWindow, and vtkOpenVRRenderWindow.

◆ StereoMidpoint()

void vtkOpenGLRenderWindow::StereoMidpoint ( )
overridevirtual

Intermediate method performs operations required between the rendering of the left and right eye.

Reimplemented from vtkRenderWindow.

Reimplemented in vtkOpenVRRenderWindow.

◆ GetBufferNeedsResolving()

bool vtkOpenGLRenderWindow::GetBufferNeedsResolving ( )

◆ ReleaseGraphicsResources()

void vtkOpenGLRenderWindow::ReleaseGraphicsResources ( vtkWindow )
overridevirtual

Free up any graphics resources associated with this window a value of NULL means the context may already be destroyed.

Reimplemented from vtkWindow.

Reimplemented in vtkOpenVRRenderWindow.

◆ BlitDisplayFramebuffer() [1/2]

void vtkOpenGLRenderWindow::BlitDisplayFramebuffer ( )

Blit a display framebuffer into a currently bound draw destination.

◆ BlitDisplayFramebuffer() [2/2]

void vtkOpenGLRenderWindow::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.

◆ BlitToRenderFramebuffer() [1/2]

void vtkOpenGLRenderWindow::BlitToRenderFramebuffer ( bool  includeDepth)

Blit the currently bound read buffer to the renderbuffer.

This is useful for taking rendering from an external system and then having VTK draw on top of it.

◆ BlitToRenderFramebuffer() [2/2]

void vtkOpenGLRenderWindow::BlitToRenderFramebuffer ( int  srcX,
int  srcY,
int  srcWidth,
int  srcHeight,
int  destX,
int  destY,
int  destWidth,
int  destHeight,
int  bufferMode,
int  interpolation 
)

◆ SetFrameBlitMode()

virtual void vtkOpenGLRenderWindow::SetFrameBlitMode ( FrameBlitModes  )
virtual

SetGet how to handle blits at the end of a Frame() call.

Only happens when SwapBuffers is true.

◆ GetFrameBlitMode()

virtual FrameBlitModes vtkOpenGLRenderWindow::GetFrameBlitMode ( )
virtual

◆ SetFrameBlitModeToBlitToHardware()

void vtkOpenGLRenderWindow::SetFrameBlitModeToBlitToHardware ( )
inline

Definition at line 437 of file vtkOpenGLRenderWindow.h.

◆ SetFrameBlitModeToBlitToCurrent()

void vtkOpenGLRenderWindow::SetFrameBlitModeToBlitToCurrent ( )
inline

Definition at line 438 of file vtkOpenGLRenderWindow.h.

◆ SetFrameBlitModeToNoBlit()

void vtkOpenGLRenderWindow::SetFrameBlitModeToNoBlit ( )
inline

Definition at line 439 of file vtkOpenGLRenderWindow.h.

◆ BlitDisplayFramebuffersToHardware()

virtual void vtkOpenGLRenderWindow::BlitDisplayFramebuffersToHardware ( )
protectedvirtual

Reimplemented in vtkIOSRenderWindow.

◆ ReadPixels()

virtual int vtkOpenGLRenderWindow::ReadPixels ( const vtkRecti rect,
int  front,
int  glFormat,
int  glType,
void *  data,
int  right = 0 
)
protectedvirtual

◆ CreateFramebuffers()

int vtkOpenGLRenderWindow::CreateFramebuffers ( int  width,
int  height 
)
protected

Create the offScreen framebuffer Return if the creation was successful or not.

Precondition
positive_width: width>0
positive_height: height>0
not_initialized: !OffScreenUseFrameBuffer
Postcondition
valid_result: (result==0 || result==1)

◆ CreateAWindow()

virtual void vtkOpenGLRenderWindow::CreateAWindow ( )
protectedpure virtual

◆ DestroyWindow()

virtual void vtkOpenGLRenderWindow::DestroyWindow ( )
protectedpure virtual

◆ SaveGLState()

void vtkOpenGLRenderWindow::SaveGLState ( )
protected

Query and save OpenGL state.

◆ RestoreGLState()

void vtkOpenGLRenderWindow::RestoreGLState ( )
protected

Restore OpenGL state at end of the rendering.

Member Data Documentation

◆ Resources

std::set<vtkGenericOpenGLResourceFreeCallback*> vtkOpenGLRenderWindow::Resources

Definition at line 309 of file vtkOpenGLRenderWindow.h.

◆ FrameBlitMode

FrameBlitModes vtkOpenGLRenderWindow::FrameBlitMode
protected

Definition at line 450 of file vtkOpenGLRenderWindow.h.

◆ ResolveQuad

vtkOpenGLQuadHelper* vtkOpenGLRenderWindow::ResolveQuad
protected

Definition at line 453 of file vtkOpenGLRenderWindow.h.

◆ OpenGLSupportTested

bool vtkOpenGLRenderWindow::OpenGLSupportTested
protected

Definition at line 457 of file vtkOpenGLRenderWindow.h.

◆ OpenGLSupportResult

int vtkOpenGLRenderWindow::OpenGLSupportResult
protected

Definition at line 458 of file vtkOpenGLRenderWindow.h.

◆ OpenGLSupportMessage

std::string vtkOpenGLRenderWindow::OpenGLSupportMessage
protected

Definition at line 459 of file vtkOpenGLRenderWindow.h.

◆ RenderFramebuffer

vtkOpenGLFramebufferObject* vtkOpenGLRenderWindow::RenderFramebuffer
protected

Definition at line 473 of file vtkOpenGLRenderWindow.h.

◆ DisplayFramebuffer

vtkOpenGLFramebufferObject* vtkOpenGLRenderWindow::DisplayFramebuffer
protected

Definition at line 474 of file vtkOpenGLRenderWindow.h.

◆ ResolveFramebuffer

vtkOpenGLFramebufferObject* vtkOpenGLRenderWindow::ResolveFramebuffer
protected

Definition at line 478 of file vtkOpenGLRenderWindow.h.

◆ GLStateIntegers

std::map<std::string, int> vtkOpenGLRenderWindow::GLStateIntegers
protected

Definition at line 500 of file vtkOpenGLRenderWindow.h.

◆ OwnContext

vtkTypeBool vtkOpenGLRenderWindow::OwnContext
protected

Flag telling if the context has been created here or was inherited.

Definition at line 505 of file vtkOpenGLRenderWindow.h.

◆ ContextCreationTime

vtkTimeStamp vtkOpenGLRenderWindow::ContextCreationTime
protected

Definition at line 507 of file vtkOpenGLRenderWindow.h.

◆ DrawPixelsTextureObject

vtkTextureObject* vtkOpenGLRenderWindow::DrawPixelsTextureObject
protected

Definition at line 509 of file vtkOpenGLRenderWindow.h.

◆ Initialized

bool vtkOpenGLRenderWindow::Initialized
protected

Definition at line 511 of file vtkOpenGLRenderWindow.h.

◆ GlewInitValid

bool vtkOpenGLRenderWindow::GlewInitValid
protected

Definition at line 512 of file vtkOpenGLRenderWindow.h.

◆ MaximumHardwareLineWidth

float vtkOpenGLRenderWindow::MaximumHardwareLineWidth
protected

Definition at line 514 of file vtkOpenGLRenderWindow.h.

◆ Capabilities

char* vtkOpenGLRenderWindow::Capabilities
protected

Definition at line 516 of file vtkOpenGLRenderWindow.h.

◆ TQuad2DVBO

vtkOpenGLBufferObject* vtkOpenGLRenderWindow::TQuad2DVBO
protected

Definition at line 519 of file vtkOpenGLRenderWindow.h.

◆ NoiseTextureObject

vtkTextureObject* vtkOpenGLRenderWindow::NoiseTextureObject
protected

Definition at line 522 of file vtkOpenGLRenderWindow.h.

◆ FirstRenderTime

double vtkOpenGLRenderWindow::FirstRenderTime
protected

Definition at line 524 of file vtkOpenGLRenderWindow.h.

◆ LastMultiSamples

int vtkOpenGLRenderWindow::LastMultiSamples
protected

Definition at line 527 of file vtkOpenGLRenderWindow.h.

◆ ScreenSize

int vtkOpenGLRenderWindow::ScreenSize[2]
protected

Definition at line 529 of file vtkOpenGLRenderWindow.h.


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