| VTK 9.0.1

Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkOpenVRRenderWindow Class Reference

OpenVR rendering window. More...

`#include <vtkOpenVRRenderWindow.h>`

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

## Classes
struct | FramebufferDesc

## Public Types
enum | { PhysicalToWorldMatrixModified = vtkCommand::UserEvent + 200 }
typedef vtkOpenGLRenderWindow | Superclass
Public Types inherited from vtkOpenGLRenderWindow
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...
vtkOpenVRRenderWindow * | NewInstance () const
void | PrintSelf (ostream &os, vtkIndent indent)
| Methods invoked by print to print information about the object including superclasses. More...
vr::IVRSystem * | GetHMD ()
| Get the system pointer. More...
vtkRenderWindowInteractor * | MakeRenderWindowInteractor () override
| Create an interactor to control renderers in this window. More...
void | RenderOverlay ()
| Draw the overlay. More...
virtual vtkOpenVROverlay * | GetDashboardOverlay ()
| Set/Get the overlay to use on the VR dashboard. More...
void | SetDashboardOverlay (vtkOpenVROverlay *)
void | UpdateHMDMatrixPose ()
| Update the HMD pose based on hardware pose and physical to world transform. More...
GLuint | GetLeftResolveBufferId ()
| Get the frame buffers used for rendering. More...
GLuint | GetRightResolveBufferId ()
void | GetRenderBufferSize (int &width, int &height)
vtkOpenVRModel * | GetTrackedDeviceModel (vtkEventDataDevice idx)
| Get the VRModel corresponding to the tracked device. More...
vtkOpenVRModel * | GetTrackedDeviceModel (vr::TrackedDeviceIndex_t idx)
vtkOpenVRModel * | GetTrackedDeviceModel (vtkEventDataDevice idx, uint32_t index)
vr::IVRRenderModels * | GetOpenVRRenderModels ()
| Get the openVR Render Models. More...
vr::TrackedDeviceIndex_t | GetTrackedDeviceIndexForDevice (vtkEventDataDevice dev)
| Get the index corresponding to the tracked device. More...
vr::TrackedDeviceIndex_t | GetTrackedDeviceIndexForDevice (vtkEventDataDevice dev, uint32_t index)
uint32_t | GetNumberOfTrackedDevicesForDevice (vtkEventDataDevice dev)
void | GetTrackedDevicePose (vtkEventDataDevice idx, vr::TrackedDevicePose_t **pose)
| Get the most recent pose corresponding to the tracked device. More...
void | GetTrackedDevicePose (vtkEventDataDevice idx, uint32_t index, vr::TrackedDevicePose_t **pose)
vr::TrackedDevicePose_t & | GetTrackedDevicePose (vr::TrackedDeviceIndex_t idx)
void | InitializeViewFromCamera (vtkCamera *cam)
| Initialize the HMD to World setting and camera settings so that the VR world view most closely matched the view from the provided camera. More...
virtual void | SetPhysicalViewDirection (double, double, double)
| Set/get physical coordinate system in world coordinate system. More...
virtual void | SetPhysicalViewDirection (double[3])
virtual double * | GetPhysicalViewDirection ()
virtual void | GetPhysicalViewDirection (double &, double &, double &)
virtual void | GetPhysicalViewDirection (double[3])
virtual void | SetPhysicalViewUp (double, double, double)
| Set/get physical coordinate system in world coordinate system. More...
virtual void | SetPhysicalViewUp (double[3])
virtual double * | GetPhysicalViewUp ()
virtual void | GetPhysicalViewUp (double &, double &, double &)
virtual void | GetPhysicalViewUp (double[3])
virtual void | SetPhysicalTranslation (double, double, double)
| Set/get physical coordinate system in world coordinate system. More...
virtual void | SetPhysicalTranslation (double[3])
virtual double * | GetPhysicalTranslation ()
virtual void | GetPhysicalTranslation (double &, double &, double &)
virtual void | GetPhysicalTranslation (double[3])
virtual void | SetPhysicalScale (double)
| Set/get physical coordinate system in world coordinate system. More...
virtual double | GetPhysicalScale ()
void | SetPhysicalToWorldMatrix (vtkMatrix4x4 *matrix)
| Set physical to world transform matrix. More...
void | GetPhysicalToWorldMatrix (vtkMatrix4x4 *matrix)
| Get physical to world transform matrix. More...
virtual void | SetTrackHMD (bool)
| When on the camera will track the HMD position. More...
virtual bool | GetTrackHMD ()
virtual void | AddRenderer (vtkRenderer *) override
| Add a renderer to the list of renderers. More...
virtual void | Start (void)
| Begin the rendering process. More...
virtual void | StereoUpdate ()
| Update the system, if needed, due to stereo rendering. More...
virtual void | StereoMidpoint ()
| Intermediate method performs operations required between the rendering of the left and right eye. More...
virtual void | StereoRenderComplete ()
| Handles work required once both views have been rendered when using stereo rendering. More...
virtual void | Initialize (void)
| Initialize the rendering window. More...
virtual void | Finalize (void)
| Finalize the rendering window. More...
void | MakeCurrent ()
| Make this windows OpenGL context the current context. More...
virtual bool | IsCurrent ()
| Tells if this window is the current OpenGL context for the calling thread. More...
const char * | ReportCapabilities ()
| Get report of capabilities for the render window. More...
vtkTypeBool | IsDirect ()
| Is this render window using hardware acceleration? 0-false, 1-true. More...
virtual vtkTypeBool | GetEventPending ()
| Check to see if a mouse button has been pressed or mouse wheel activated. More...
virtual int * | GetScreenSize ()
| Get the current size of the screen in pixels. More...
void | SetSize (int width, int height) override
| Set the size of the window in screen coordinates in pixels. More...
void | SetSize (int a[2]) override
void | SetPosition (int x, int y) override
| Set the position (x and y) of the rendering window in screen coordinates (in pixels). More...
void | SetPosition (int a[2]) override
void | SetWindowInfo (const char *)
void | SetNextWindowInfo (const char *)
void | SetParentInfo (const char *)
virtual void * | GetGenericDisplayId ()
virtual void * | GetGenericWindowId ()
virtual void * | GetGenericParentId ()
virtual void * | GetGenericContext ()
virtual void * | GetGenericDrawable ()
virtual void | SetDisplayId (void *)
| Dummy stubs for vtkWindow API. More...
void | SetWindowId (void *)
void | SetParentId (void *)
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...
void | ShowCursor ()
virtual void | SetFullScreen (vtkTypeBool)
| Turn on/off rendering full screen window size. More...
virtual void | WindowRemap (void)
| Remap the rendering window. More...
virtual void | SetNextWindowId (void *)
virtual int | SupportsOpenGL ()
| Does this render window support OpenGL? 0-false, 1-true. More...
void | Render ()
| Overridden to not release resources that would interfere with an external application's rendering. More...
virtual vtkOpenGLRenderWindow * | GetHelperWindow ()
| Set/Get the window to use for the openGL context. More...
void | SetHelperWindow (vtkOpenGLRenderWindow *val)
vtkOpenGLState * | GetState () override
void | ReleaseGraphicsResources (vtkWindow *) override
| Free up any graphics resources associated with this window a value of nullptr means the context may already be destroyed. More...
Public Member Functions inherited from vtkOpenGLRenderWindow
vtkOpenGLRenderWindow * | NewInstance () const
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 *z) 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 ()
| Return the OpenGL name of the back left buffer. More...
unsigned int | GetBackRightBuffer ()
| Return the OpenGL name of the back right buffer. More...
unsigned int | GetFrontLeftBuffer ()
| Return the OpenGL name of the front left buffer. More...
unsigned int | GetFrontRightBuffer ()
| Return the OpenGL name of the front right buffer. More...
unsigned int | GetBackBuffer ()
| Return the OpenGL name of the back left buffer. More...
unsigned int | GetFrontBuffer ()
| Return the OpenGL name of the front left buffer. More...
virtual vtkMTimeType | GetContextCreationTime ()
| Get the time when the OpenGL context was created. More...
vtkOpenGLShaderCache * | GetShaderCache ()
| Returns an Shader Cache object. More...
vtkOpenGLVertexBufferObjectCache * | GetVBOCache ()
| Returns the VBO Cache. More...
virtual vtkOpenGLFramebufferObject * | GetOffScreenFramebuffer ()
| Returns the offscreen framebuffer object if any. More...
vtkTextureUnitManager * | GetTextureUnitManager ()
| 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...
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 unsigned int | GetDefaultFrameBufferId ()
| Returns the id for the frame buffer object, if any, used by the render window in which the window does all its rendering. More...
virtual bool | SetSwapControl (int)
| Set the number of vertical syncs required between frames. More...
vtkOpenGLBufferObject * | GetTQuad2DVBO ()
int | GetNoiseTextureUnit ()
void | End () override
| Update the system, if needed, at end of render process. More...
bool | GetBufferNeedsResolving ()
Public Member Functions inherited from vtkRenderWindow
vtkRenderWindow * | NewInstance () const
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...
vtkRendererCollection * | GetRenderers ()
| 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 | CopyResultFrame ()
| Performed at the end of the rendering process to generate image. More...
virtual void | SetCursorPosition (int, int)
virtual void | SetCurrentCursor (int)
| Change the shape of the cursor. More...
virtual int | GetCurrentCursor ()
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 | 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 | 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 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 vtkRenderWindowInteractor * | GetInteractor ()
| Get the interactor associated with this render window. More...
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...
virtual void | SetSharedRenderWindow (vtkRenderWindow *)
| Set/Get an already existing window that this window should share data with if possible. More...
virtual vtkRenderWindow * | GetSharedRenderWindow ()
virtual bool | GetPlatformSupportsRenderWindowSharing ()
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 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
vtkWindow * | NewInstance () const
virtual int * | GetPosition ()
| Get the position (x and y) of the rendering window in screen coordinates (in pixels). More...
virtual int * | GetSize ()
| Get the size (width and height) of the rendering window in screen coordinates (in pixels). More...
int * | GetActualSize ()
| GetSize() returns the size * this->TileScale, whereas this method returns the size without multiplying with the tile scale. 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 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)
vtkCommand * | GetCommand (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 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...
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...
void | PrintRevisions (ostream &)
| Legacy. More...

## Static Public Member Functions
static vtkOpenVRRenderWindow * | New ()
static vtkTypeBool | IsTypeOf (const char *type)
static vtkOpenVRRenderWindow * | SafeDownCast (vtkObjectBase *o)
Static Public Member Functions inherited from vtkOpenGLRenderWindow
static vtkTypeBool | IsTypeOf (const char *type)
static vtkOpenGLRenderWindow * | SafeDownCast (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 vtkRenderWindow * | SafeDownCast (vtkObjectBase *o)
static vtkRenderWindow * | New ()
| 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 vtkWindow * | SafeDownCast (vtkObjectBase *o)
Static Public Member Functions inherited from vtkObject
static vtkObject * | New ()
| 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 vtkObjectBase * | New ()
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...

## Protected Member Functions
virtual vtkObjectBase * | NewInstanceInternal () const
| vtkOpenVRRenderWindow ()
| ~vtkOpenVRRenderWindow () override
virtual void | CreateAWindow ()
| Create a not-off-screen window. More...
virtual void | DestroyWindow ()
| Destroy a not-off-screen window. More...
bool | CreateFrameBuffer (int nWidth, int nHeight, FramebufferDesc &framebufferDesc)
std::string | GetTrackedDeviceString (vr::IVRSystem *pHmd, vr::TrackedDeviceIndex_t unDevice, vr::TrackedDeviceProperty prop, vr::TrackedPropertyError *peError=nullptr)
vtkOpenVRModel * | FindOrLoadRenderModel (const char *modelName)
void | RenderModels ()
Protected Member Functions inherited from vtkOpenGLRenderWindow
| vtkOpenGLRenderWindow ()
| ~vtkOpenGLRenderWindow () override
virtual int | ReadPixels (const vtkRecti &rect, int front, int glFormat, int glType, void *data, int right=0)
int | CreateOffScreenFramebuffer (int width, int height)
| Create the offScreen framebuffer Return if the creation was successful or not. 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 | CollectRevisions (ostream &)
virtual void | ReportReferences (vtkGarbageCollector *)
| vtkObjectBase (const vtkObjectBase &)
void | operator= (const vtkObjectBase &)

## Protected Attributes
std::string | m_strDriver
std::string | m_strDisplay
vr::IVRSystem * | HMD
vr::IVRRenderModels * | OpenVRRenderModels
FramebufferDesc | LeftEyeDesc
FramebufferDesc | RightEyeDesc
std::vector< vtkOpenVRModel * > | VTKRenderModels
vtkOpenVRModel * | TrackedDeviceToRenderModel [vr::k_unMaxTrackedDeviceCount]
vr::TrackedDevicePose_t | TrackedDevicePose [vr::k_unMaxTrackedDeviceCount]
vtkTransform * | HMDTransform
double | PhysicalViewDirection [3]
| -Z axis of the Physical to World matrix More...
double | PhysicalViewUp [3]
| Y axis of the Physical to World matrix. More...
double | PhysicalTranslation [3]
| Inverse of the translation component of the Physical to World matrix, in mm. More...
double | PhysicalScale
| Scale of the Physical to World matrix. More...
vtkOpenVROverlay * | DashboardOverlay
bool | TrackHMD
vtkOpenGLRenderWindow * | HelperWindow
Protected Attributes inherited from vtkOpenGLRenderWindow
bool | OpenGLSupportTested
int | OpenGLSupportResult
std::string | OpenGLSupportMessage
vtkOpenGLFramebufferObject * | OffScreenFramebuffer
std::map< std::string, int > | GLStateIntegers
unsigned int | BackLeftBuffer
unsigned int | BackRightBuffer
unsigned int | FrontLeftBuffer
unsigned int | FrontRightBuffer
unsigned int | DefaultFrameBufferId
int | OwnContext
| Flag telling if the context has been created here or was inherited. More...
vtkTimeStamp | ContextCreationTime
vtkTextureObject * | DrawPixelsTextureObject
bool | Initialized
bool | GlewInitValid
float | MaximumHardwareLineWidth
char * | Capabilities
vtkOpenGLBufferObject * | TQuad2DVBO
vtkTextureObject * | NoiseTextureObject
double | FirstRenderTime
int | LastMultiSamples
int | ScreenSize [2]
Protected Attributes inherited from vtkRenderWindow
vtkRendererCollection * | Renderers
vtkNew< vtkRenderTimerLog > | RenderTimer
vtkTypeBool | Borders
vtkTypeBool | FullScreen
int | OldScreen [5]
vtkTypeBool | PointSmoothing
vtkTypeBool | LineSmoothing
vtkTypeBool | PolygonSmoothing
vtkTypeBool | StereoRender
int | StereoType
vtkTypeBool | StereoCapableWindow
vtkTypeBool | AlphaBitPlanes
vtkRenderWindowInteractor * | Interactor
vtkSmartPointer< vtkUnsignedCharArray > | StereoBuffer
vtkSmartPointer< vtkUnsignedCharArray > | ResultFrame
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
double | AbortCheckTime
| The universal time since the last abort check occurred. More...
vtkRenderWindow * | SharedRenderWindow
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
Public Attributes inherited from vtkOpenGLRenderWindow
std::set< vtkGenericOpenGLResourceFreeCallback * > | Resources

## Detailed Description

OpenVR rendering window.

vtkOpenVRRenderWindow is a concrete implementation of the abstract class vtkRenderWindow. vtkOpenVRRenderer interfaces to the OpenVR graphics library

This class and its similar classes are designed to be drop in replacements for VTK. If you link to this module and turn on the CMake option VTK_OPENVR_OBJECT_FACTORY, the object factory mechanism should replace the core rendering classes such as RenderWindow with OpenVR specialized versions. The goal is for VTK programs to be able to use the OpenVR library with little to no changes.

This class handles the bulk of interfacing to OpenVR. It supports one renderer currently. The renderer is assumed to cover the entire window which is what makes sense to VR. Overlay renderers can probably be made to work with this but consider how overlays will appear in a HMD if they do not track the viewpoint etc. This class is based on sample code from the OpenVR project.

OpenVR provides HMD and controller positions in "Physical" coordinate system. Origin: user's eye position at the time of calibration. Axis directions: x = user's right; y = user's up; z = user's back. Unit: meter.

Renderer shows actors in World coordinate system. Transformation between Physical and World coordinate systems is defined by PhysicalToWorldMatrix. This matrix determines the user's position and orientation in the rendered scene and scaling (magnification) of rendered actors.

Definition at line 70 of file vtkOpenVRRenderWindow.h.

## Member Typedef Documentation

## ◆ Superclass

typedef vtkOpenGLRenderWindow vtkOpenVRRenderWindow::Superclass

Definition at line 79 of file vtkOpenVRRenderWindow.h.

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum

Enumerator
PhysicalToWorldMatrixModified |

Definition at line 73 of file vtkOpenVRRenderWindow.h.

## Constructor & Destructor Documentation

## ◆ vtkOpenVRRenderWindow()

vtkOpenVRRenderWindow::vtkOpenVRRenderWindow | ( |  | ) |
| protected

## ◆ ~vtkOpenVRRenderWindow()

vtkOpenVRRenderWindow::~vtkOpenVRRenderWindow | ( |  | ) |
| override protected

## Member Function Documentation

## ◆ New()

static vtkOpenVRRenderWindow* vtkOpenVRRenderWindow::New | ( |  | ) |
| static

## ◆ IsTypeOf()

static vtkTypeBool vtkOpenVRRenderWindow::IsTypeOf | ( | const char * | type | ) |
| static

## ◆ IsA()

virtual vtkTypeBool vtkOpenVRRenderWindow::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 vtkOpenGLRenderWindow.

## ◆ SafeDownCast()

static vtkOpenVRRenderWindow* vtkOpenVRRenderWindow::SafeDownCast | ( | vtkObjectBase * | o | ) |
| static

## ◆ NewInstanceInternal()

virtual vtkObjectBase* vtkOpenVRRenderWindow::NewInstanceInternal | ( |  | ) | const
| protected virtual

Reimplemented from vtkOpenGLRenderWindow.

## ◆ NewInstance()

vtkOpenVRRenderWindow* vtkOpenVRRenderWindow::NewInstance | ( |  | ) | const

## ◆ PrintSelf()

void vtkOpenVRRenderWindow::PrintSelf | ( | ostream & | os,
|  | vtkIndent | indent
| ) |  |
| virtual

Methods invoked by print to print information about the object including superclasses.

Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkOpenGLRenderWindow.

## ◆ GetHMD()

vr::IVRSystem* vtkOpenVRRenderWindow::GetHMD | ( |  | ) |
| inline

Get the system pointer.

Definition at line 85 of file vtkOpenVRRenderWindow.h.

## ◆ MakeRenderWindowInteractor()

vtkRenderWindowInteractor* vtkOpenVRRenderWindow::MakeRenderWindowInteractor | ( |  | ) |
| override virtual

Create an interactor to control renderers in this window.

Creates one specific to OpenVR

Reimplemented from vtkRenderWindow.

## ◆ RenderOverlay()

void vtkOpenVRRenderWindow::RenderOverlay | ( |  | ) |

Draw the overlay.

## ◆ GetDashboardOverlay()

virtual vtkOpenVROverlay* vtkOpenVRRenderWindow::GetDashboardOverlay | ( |  | ) |
| virtual

Set/Get the overlay to use on the VR dashboard.

## ◆ SetDashboardOverlay()

void vtkOpenVRRenderWindow::SetDashboardOverlay | ( | vtkOpenVROverlay * |  | ) |

## ◆ UpdateHMDMatrixPose()

void vtkOpenVRRenderWindow::UpdateHMDMatrixPose | ( |  | ) |

Update the HMD pose based on hardware pose and physical to world transform.

VR camera properties are directly modified based on physical to world to simulate

See also
  PhysicalTranslation,
  PhysicalScale, etc.

## ◆ GetLeftResolveBufferId()

GLuint vtkOpenVRRenderWindow::GetLeftResolveBufferId | ( |  | ) |
| inline

Get the frame buffers used for rendering.

Definition at line 117 of file vtkOpenVRRenderWindow.h.

## ◆ GetRightResolveBufferId()

GLuint vtkOpenVRRenderWindow::GetRightResolveBufferId | ( |  | ) |
| inline

Definition at line 118 of file vtkOpenVRRenderWindow.h.

## ◆ GetRenderBufferSize()

void vtkOpenVRRenderWindow::GetRenderBufferSize | ( | int & | width,
|  | int & | height
| ) |  |
| inline

Definition at line 119 of file vtkOpenVRRenderWindow.h.

## ◆ GetTrackedDeviceModel() [1/3]

vtkOpenVRModel* vtkOpenVRRenderWindow::GetTrackedDeviceModel | ( | vtkEventDataDevice | idx | ) |
| inline

Get the VRModel corresponding to the tracked device.

Definition at line 129 of file vtkOpenVRRenderWindow.h.

## ◆ GetTrackedDeviceModel() [2/3]

vtkOpenVRModel* vtkOpenVRRenderWindow::GetTrackedDeviceModel | ( | vr::TrackedDeviceIndex_t | idx | ) |
| inline

Definition at line 133 of file vtkOpenVRRenderWindow.h.

## ◆ GetTrackedDeviceModel() [3/3]

vtkOpenVRModel* vtkOpenVRRenderWindow::GetTrackedDeviceModel | ( | vtkEventDataDevice | idx,
|  | uint32_t | index
| ) |  |

## ◆ GetOpenVRRenderModels()

vr::IVRRenderModels* vtkOpenVRRenderWindow::GetOpenVRRenderModels | ( |  | ) |
| inline

Get the openVR Render Models.

Definition at line 142 of file vtkOpenVRRenderWindow.h.

## ◆ GetTrackedDeviceIndexForDevice() [1/2]

vr::TrackedDeviceIndex_t vtkOpenVRRenderWindow::GetTrackedDeviceIndexForDevice | ( | vtkEventDataDevice | dev | ) |
| inline

Get the index corresponding to the tracked device.

Definition at line 147 of file vtkOpenVRRenderWindow.h.

## ◆ GetTrackedDeviceIndexForDevice() [2/2]

vr::TrackedDeviceIndex_t vtkOpenVRRenderWindow::GetTrackedDeviceIndexForDevice | ( | vtkEventDataDevice | dev,
|  | uint32_t | index
| ) |  |

## ◆ GetNumberOfTrackedDevicesForDevice()

uint32_t vtkOpenVRRenderWindow::GetNumberOfTrackedDevicesForDevice | ( | vtkEventDataDevice | dev | ) |

## ◆ GetTrackedDevicePose() [1/3]

void vtkOpenVRRenderWindow::GetTrackedDevicePose | ( | vtkEventDataDevice | idx,
|  | vr::TrackedDevicePose_t ** | pose
| ) |  |
| inline

Get the most recent pose corresponding to the tracked device.

Definition at line 157 of file vtkOpenVRRenderWindow.h.

## ◆ GetTrackedDevicePose() [2/3]

void vtkOpenVRRenderWindow::GetTrackedDevicePose | ( | vtkEventDataDevice | idx,
|  | uint32_t | index,
|  | vr::TrackedDevicePose_t ** | pose
| ) |  |

## ◆ GetTrackedDevicePose() [3/3]

vr::TrackedDevicePose_t& vtkOpenVRRenderWindow::GetTrackedDevicePose | ( | vr::TrackedDeviceIndex_t | idx | ) |
| inline

Definition at line 162 of file vtkOpenVRRenderWindow.h.

## ◆ InitializeViewFromCamera()

void vtkOpenVRRenderWindow::InitializeViewFromCamera | ( | vtkCamera * | cam | ) |

Initialize the HMD to World setting and camera settings so that the VR world view most closely matched the view from the provided camera.

This method is useful for initialing a VR world from an existing on screen window and camera. The Renderer and its camera must already be created and set when this is called.

## ◆ SetPhysicalViewDirection() [1/2]

virtual void vtkOpenVRRenderWindow::SetPhysicalViewDirection | ( | double | ,
|  | double | ,
|  | double |
| ) |  |
| virtual

Set/get physical coordinate system in world coordinate system.

View direction is the -Z axis of the physical coordinate system in world coordinate system.

See also
  SetPhysicalViewUp,
  SetPhysicalTranslation,
  SetPhysicalScale,
  SetPhysicalToWorldMatrix

## ◆ SetPhysicalViewDirection() [2/2]

virtual void vtkOpenVRRenderWindow::SetPhysicalViewDirection | ( | double | [3] | ) |
| virtual

## ◆ GetPhysicalViewDirection() [1/3]

virtual double* vtkOpenVRRenderWindow::GetPhysicalViewDirection | ( |  | ) |
| virtual

## ◆ GetPhysicalViewDirection() [2/3]

virtual void vtkOpenVRRenderWindow::GetPhysicalViewDirection | ( | double & | ,
|  | double & | ,
|  | double & |
| ) |  |
| virtual

## ◆ GetPhysicalViewDirection() [3/3]

virtual void vtkOpenVRRenderWindow::GetPhysicalViewDirection | ( | double | [3] | ) |
| virtual

## ◆ SetPhysicalViewUp() [1/2]

virtual void vtkOpenVRRenderWindow::SetPhysicalViewUp | ( | double | ,
|  | double | ,
|  | double |
| ) |  |
| virtual

Set/get physical coordinate system in world coordinate system.

View up is the +Y axis of the physical coordinate system in world coordinate system.

See also
  SetPhysicalViewDirection,
  SetPhysicalTranslation,
  SetPhysicalScale,
  SetPhysicalToWorldMatrix

## ◆ SetPhysicalViewUp() [2/2]

virtual void vtkOpenVRRenderWindow::SetPhysicalViewUp | ( | double | [3] | ) |
| virtual

## ◆ GetPhysicalViewUp() [1/3]

virtual double* vtkOpenVRRenderWindow::GetPhysicalViewUp | ( |  | ) |
| virtual

## ◆ GetPhysicalViewUp() [2/3]

virtual void vtkOpenVRRenderWindow::GetPhysicalViewUp | ( | double & | ,
|  | double & | ,
|  | double & |
| ) |  |
| virtual

## ◆ GetPhysicalViewUp() [3/3]

virtual void vtkOpenVRRenderWindow::GetPhysicalViewUp | ( | double | [3] | ) |
| virtual

## ◆ SetPhysicalTranslation() [1/2]

virtual void vtkOpenVRRenderWindow::SetPhysicalTranslation | ( | double | ,
|  | double | ,
|  | double |
| ) |  |
| virtual

Set/get physical coordinate system in world coordinate system.

Position of the physical coordinate system origin in world coordinates.

See also
  SetPhysicalViewDirection,
  SetPhysicalViewUp,
  SetPhysicalScale,
  SetPhysicalToWorldMatrix

## ◆ SetPhysicalTranslation() [2/2]

virtual void vtkOpenVRRenderWindow::SetPhysicalTranslation | ( | double | [3] | ) |
| virtual

## ◆ GetPhysicalTranslation() [1/3]

virtual double* vtkOpenVRRenderWindow::GetPhysicalTranslation | ( |  | ) |
| virtual

## ◆ GetPhysicalTranslation() [2/3]

virtual void vtkOpenVRRenderWindow::GetPhysicalTranslation | ( | double & | ,
|  | double & | ,
|  | double & |
| ) |  |
| virtual

## ◆ GetPhysicalTranslation() [3/3]

virtual void vtkOpenVRRenderWindow::GetPhysicalTranslation | ( | double | [3] | ) |
| virtual

## ◆ SetPhysicalScale()

virtual void vtkOpenVRRenderWindow::SetPhysicalScale | ( | double |  | ) |
| virtual

Set/get physical coordinate system in world coordinate system.

Ratio of distance in world coordinate and physical and system (PhysicalScale = distance_World / distance_Physical). Example: if world coordinate system is in mm then PhysicalScale = 1000.0 makes objects appear in real size. PhysicalScale = 100.0 makes objects appear 10x larger than real size.

## ◆ GetPhysicalScale()

virtual double vtkOpenVRRenderWindow::GetPhysicalScale | ( |  | ) |
| virtual

## ◆ SetPhysicalToWorldMatrix()

void vtkOpenVRRenderWindow::SetPhysicalToWorldMatrix | ( | vtkMatrix4x4 * | matrix | ) |

Set physical to world transform matrix.

Members calculated and set from the matrix:

See also
  PhysicalViewDirection,
  PhysicalViewUp,
  PhysicalTranslation,
  PhysicalScale The x axis scale is used for
  PhysicalScale

## ◆ GetPhysicalToWorldMatrix()

void vtkOpenVRRenderWindow::GetPhysicalToWorldMatrix | ( | vtkMatrix4x4 * | matrix | ) |

Get physical to world transform matrix.

Members used to calculate the matrix:

See also
  PhysicalViewDirection,
  PhysicalViewUp,
  PhysicalTranslation,
  PhysicalScale

## ◆ SetTrackHMD()

virtual void vtkOpenVRRenderWindow::SetTrackHMD | ( | bool |  | ) |
| virtual

When on the camera will track the HMD position.

On is the default.

## ◆ GetTrackHMD()

virtual bool vtkOpenVRRenderWindow::GetTrackHMD | ( |  | ) |
| virtual

## ◆ AddRenderer()

virtual void vtkOpenVRRenderWindow::AddRenderer | ( | vtkRenderer * |  | ) |
| override virtual

Add a renderer to the list of renderers.

Reimplemented from vtkRenderWindow.

## ◆ Start()

virtual void vtkOpenVRRenderWindow::Start | ( | void |  | ) |
| virtual

Begin the rendering process.

Reimplemented from vtkOpenGLRenderWindow.

## ◆ StereoUpdate()

virtual void vtkOpenVRRenderWindow::StereoUpdate | ( |  | ) |
| virtual

Update the system, if needed, due to stereo rendering.

For some stereo methods, subclasses might need to switch some hardware settings here.

Reimplemented from vtkRenderWindow.

## ◆ StereoMidpoint()

virtual void vtkOpenVRRenderWindow::StereoMidpoint | ( |  | ) |
| virtual

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

Reimplemented from vtkOpenGLRenderWindow.

## ◆ StereoRenderComplete()

virtual void vtkOpenVRRenderWindow::StereoRenderComplete | ( |  | ) |
| virtual

Handles work required once both views have been rendered when using stereo rendering.

Reimplemented from vtkRenderWindow.

## ◆ Initialize()

virtual void vtkOpenVRRenderWindow::Initialize | ( | void |  | ) |
| virtual

Initialize the rendering window.

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

Reimplemented from vtkOpenGLRenderWindow.

## ◆ Finalize()

virtual void vtkOpenVRRenderWindow::Finalize | ( | void |  | ) |
| virtual

Finalize the rendering window.

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

Reimplemented from vtkRenderWindow.

## ◆ MakeCurrent()

void vtkOpenVRRenderWindow::MakeCurrent | ( |  | ) |
| virtual

Make this windows OpenGL context the current context.

Reimplemented from vtkRenderWindow.

## ◆ IsCurrent()

virtual bool vtkOpenVRRenderWindow::IsCurrent | ( |  | ) |
| virtual

Tells if this window is the current OpenGL context for the calling thread.

Reimplemented from vtkRenderWindow.

## ◆ ReportCapabilities()

const char* vtkOpenVRRenderWindow::ReportCapabilities | ( |  | ) |
| inline virtual

Get report of capabilities for the render window.

Reimplemented from vtkOpenGLRenderWindow.

Definition at line 310 of file vtkOpenVRRenderWindow.h.

## ◆ IsDirect()

vtkTypeBool vtkOpenVRRenderWindow::IsDirect | ( |  | ) |
| inline virtual

Is this render window using hardware acceleration? 0-false, 1-true.

Reimplemented from vtkRenderWindow.

Definition at line 315 of file vtkOpenVRRenderWindow.h.

## ◆ GetEventPending()

virtual vtkTypeBool vtkOpenVRRenderWindow::GetEventPending | ( |  | ) |
| inline virtual

Check to see if a mouse button has been pressed or mouse wheel activated.

All other events are ignored by this method. Maybe should return 1 always?

Reimplemented from vtkRenderWindow.

Definition at line 322 of file vtkOpenVRRenderWindow.h.

## ◆ GetScreenSize()

virtual int* vtkOpenVRRenderWindow::GetScreenSize | ( |  | ) |
| virtual

Get the current size of the screen in pixels.

Reimplemented from vtkWindow.

## ◆ SetSize() [1/2]

void vtkOpenVRRenderWindow::SetSize | ( | int | width,
|  | int | height
| ) |  |
| override virtual

Set the size of the window in screen coordinates in pixels.

This resizes the operating system's window and redraws it.

If the size has changed, this method will fire vtkCommand::WindowResizeEvent.

Reimplemented from vtkOpenGLRenderWindow.

## ◆ SetSize() [2/2]

void vtkOpenVRRenderWindow::SetSize | ( | int | a[2] | ) |
| inline override virtual

Reimplemented from vtkOpenGLRenderWindow.

Definition at line 338 of file vtkOpenVRRenderWindow.h.

## ◆ SetPosition() [1/2]

void vtkOpenVRRenderWindow::SetPosition | ( | int | x,
|  | int | y
| ) |  |
| override virtual

Set the position (x and y) of the rendering window in screen coordinates (in pixels).

This resizes the operating system's view/window and redraws it.

Reimplemented from vtkWindow.

## ◆ SetPosition() [2/2]

void vtkOpenVRRenderWindow::SetPosition | ( | int | a[2] | ) |
| inline override virtual

Reimplemented from vtkWindow.

Definition at line 348 of file vtkOpenVRRenderWindow.h.

## ◆ SetWindowInfo()

void vtkOpenVRRenderWindow::SetWindowInfo | ( | const char * |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 352 of file vtkOpenVRRenderWindow.h.

## ◆ SetNextWindowInfo()

void vtkOpenVRRenderWindow::SetNextWindowInfo | ( | const char * |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 353 of file vtkOpenVRRenderWindow.h.

## ◆ SetParentInfo()

void vtkOpenVRRenderWindow::SetParentInfo | ( | const char * |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 354 of file vtkOpenVRRenderWindow.h.

## ◆ GetGenericDisplayId()

virtual void* vtkOpenVRRenderWindow::GetGenericDisplayId | ( |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 355 of file vtkOpenVRRenderWindow.h.

## ◆ GetGenericWindowId()

virtual void* vtkOpenVRRenderWindow::GetGenericWindowId | ( |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 356 of file vtkOpenVRRenderWindow.h.

## ◆ GetGenericParentId()

virtual void* vtkOpenVRRenderWindow::GetGenericParentId | ( |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 357 of file vtkOpenVRRenderWindow.h.

## ◆ GetGenericContext()

virtual void* vtkOpenVRRenderWindow::GetGenericContext | ( |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 358 of file vtkOpenVRRenderWindow.h.

## ◆ GetGenericDrawable()

virtual void* vtkOpenVRRenderWindow::GetGenericDrawable | ( |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 359 of file vtkOpenVRRenderWindow.h.

## ◆ SetDisplayId()

virtual void vtkOpenVRRenderWindow::SetDisplayId | ( | void * |  | ) |
| inline virtual

Dummy stubs for vtkWindow API.

Reimplemented from vtkRenderWindow.

Definition at line 360 of file vtkOpenVRRenderWindow.h.

## ◆ SetWindowId()

void vtkOpenVRRenderWindow::SetWindowId | ( | void * |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 361 of file vtkOpenVRRenderWindow.h.

## ◆ SetParentId()

void vtkOpenVRRenderWindow::SetParentId | ( | void * |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 362 of file vtkOpenVRRenderWindow.h.

## ◆ HideCursor()

void vtkOpenVRRenderWindow::HideCursor | ( |  | ) |
| inline virtual

Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to display a 3D cursor instead.

Set cursor position in window (note that (0,0) is the lower left corner).

Reimplemented from vtkRenderWindow.

Definition at line 363 of file vtkOpenVRRenderWindow.h.

## ◆ ShowCursor()

void vtkOpenVRRenderWindow::ShowCursor | ( |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 364 of file vtkOpenVRRenderWindow.h.

## ◆ SetFullScreen()

virtual void vtkOpenVRRenderWindow::SetFullScreen | ( | vtkTypeBool |  | ) |
| inline virtual

Turn on/off rendering full screen window size.

Reimplemented from vtkRenderWindow.

Definition at line 365 of file vtkOpenVRRenderWindow.h.

## ◆ WindowRemap()

virtual void vtkOpenVRRenderWindow::WindowRemap | ( | void |  | ) |
| inline virtual

Remap the rendering window.

This probably only works on UNIX right now. It is useful for changing properties that can't normally be changed once the window is up.

Reimplemented from vtkRenderWindow.

Definition at line 366 of file vtkOpenVRRenderWindow.h.

## ◆ SetNextWindowId()

virtual void vtkOpenVRRenderWindow::SetNextWindowId | ( | void * |  | ) |
| inline virtual

Reimplemented from vtkRenderWindow.

Definition at line 367 of file vtkOpenVRRenderWindow.h.

## ◆ SupportsOpenGL()

virtual int vtkOpenVRRenderWindow::SupportsOpenGL | ( |  | ) |
| inline virtual

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

Reimplemented from vtkOpenGLRenderWindow.

Definition at line 372 of file vtkOpenVRRenderWindow.h.

## ◆ Render()

void vtkOpenVRRenderWindow::Render | ( |  | ) |
| virtual

Overridden to not release resources that would interfere with an external application's rendering.

Avoiding round trip.

Reimplemented from vtkOpenGLRenderWindow.

## ◆ GetHelperWindow()

virtual vtkOpenGLRenderWindow* vtkOpenVRRenderWindow::GetHelperWindow | ( |  | ) |
| virtual

Set/Get the window to use for the openGL context.

## ◆ SetHelperWindow()

void vtkOpenVRRenderWindow::SetHelperWindow | ( | vtkOpenGLRenderWindow * | val | ) |

## ◆ GetState()

vtkOpenGLState* vtkOpenVRRenderWindow::GetState | ( |  | ) |
| override virtual

Reimplemented from vtkOpenGLRenderWindow.

## ◆ ReleaseGraphicsResources()

void vtkOpenVRRenderWindow::ReleaseGraphicsResources | ( | vtkWindow * |  | ) |
| override virtual

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

Reimplemented from vtkOpenGLRenderWindow.

## ◆ CreateAWindow()

virtual void vtkOpenVRRenderWindow::CreateAWindow | ( |  | ) |
| inline protected virtual

Create a not-off-screen window.

Implements vtkOpenGLRenderWindow.

Definition at line 400 of file vtkOpenVRRenderWindow.h.

## ◆ DestroyWindow()

virtual void vtkOpenVRRenderWindow::DestroyWindow | ( |  | ) |
| inline protected virtual

Destroy a not-off-screen window.

Implements vtkOpenGLRenderWindow.

Definition at line 401 of file vtkOpenVRRenderWindow.h.

## ◆ CreateFrameBuffer()

bool vtkOpenVRRenderWindow::CreateFrameBuffer | ( | int | nWidth,
|  | int | nHeight,
|  | FramebufferDesc & | framebufferDesc
| ) |  |
| protected

## ◆ GetTrackedDeviceString()

std::string vtkOpenVRRenderWindow::GetTrackedDeviceString | ( | vr::IVRSystem * | pHmd,
|  | vr::TrackedDeviceIndex_t | unDevice,
|  | vr::TrackedDeviceProperty | prop,
|  | vr::TrackedPropertyError * | peError = `nullptr`
| ) |  |
| protected

## ◆ FindOrLoadRenderModel()

vtkOpenVRModel* vtkOpenVRRenderWindow::FindOrLoadRenderModel | ( | const char * | modelName | ) |
| protected

## ◆ RenderModels()

void vtkOpenVRRenderWindow::RenderModels | ( |  | ) |
| protected

## Member Data Documentation

## ◆ m_strDriver

std::string vtkOpenVRRenderWindow::m_strDriver
| protected

Definition at line 403 of file vtkOpenVRRenderWindow.h.

## ◆ m_strDisplay

std::string vtkOpenVRRenderWindow::m_strDisplay
| protected

Definition at line 404 of file vtkOpenVRRenderWindow.h.

## ◆ HMD

vr::IVRSystem* vtkOpenVRRenderWindow::HMD
| protected

Definition at line 405 of file vtkOpenVRRenderWindow.h.

## ◆ OpenVRRenderModels

vr::IVRRenderModels* vtkOpenVRRenderWindow::OpenVRRenderModels
| protected

Definition at line 406 of file vtkOpenVRRenderWindow.h.

## ◆ LeftEyeDesc

FramebufferDesc vtkOpenVRRenderWindow::LeftEyeDesc
| protected

Definition at line 413 of file vtkOpenVRRenderWindow.h.

## ◆ RightEyeDesc

FramebufferDesc vtkOpenVRRenderWindow::RightEyeDesc
| protected

Definition at line 414 of file vtkOpenVRRenderWindow.h.

## ◆ VTKRenderModels

std::vector<vtkOpenVRModel*> vtkOpenVRRenderWindow::VTKRenderModels
| protected

Definition at line 425 of file vtkOpenVRRenderWindow.h.

## ◆ TrackedDeviceToRenderModel

vtkOpenVRModel* vtkOpenVRRenderWindow::TrackedDeviceToRenderModel[vr::k_unMaxTrackedDeviceCount]
| protected

Definition at line 426 of file vtkOpenVRRenderWindow.h.

## ◆ TrackedDevicePose

vr::TrackedDevicePose_t vtkOpenVRRenderWindow::TrackedDevicePose[vr::k_unMaxTrackedDeviceCount]
| protected

Definition at line 427 of file vtkOpenVRRenderWindow.h.

## ◆ HMDTransform

vtkTransform* vtkOpenVRRenderWindow::HMDTransform
| protected

Definition at line 430 of file vtkOpenVRRenderWindow.h.

## ◆ PhysicalViewDirection

double vtkOpenVRRenderWindow::PhysicalViewDirection[3]
| protected

-Z axis of the Physical to World matrix

Definition at line 432 of file vtkOpenVRRenderWindow.h.

## ◆ PhysicalViewUp

double vtkOpenVRRenderWindow::PhysicalViewUp[3]
| protected

Y axis of the Physical to World matrix.

Definition at line 434 of file vtkOpenVRRenderWindow.h.

## ◆ PhysicalTranslation

double vtkOpenVRRenderWindow::PhysicalTranslation[3]
| protected

Inverse of the translation component of the Physical to World matrix, in mm.

Definition at line 436 of file vtkOpenVRRenderWindow.h.

## ◆ PhysicalScale

double vtkOpenVRRenderWindow::PhysicalScale
| protected

Scale of the Physical to World matrix.

Definition at line 438 of file vtkOpenVRRenderWindow.h.

## ◆ DashboardOverlay

vtkOpenVROverlay* vtkOpenVRRenderWindow::DashboardOverlay
| protected

Definition at line 441 of file vtkOpenVRRenderWindow.h.

## ◆ TrackHMD

bool vtkOpenVRRenderWindow::TrackHMD
| protected

Definition at line 443 of file vtkOpenVRRenderWindow.h.

## ◆ HelperWindow

vtkOpenGLRenderWindow* vtkOpenVRRenderWindow::HelperWindow
| protected

Definition at line 445 of file vtkOpenVRRenderWindow.h.

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

- Rendering/OpenVR/vtkOpenVRRenderWindow.h