VTK  9.2.6
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
vtkOpenXRManager Class Reference

Singleton class that holds a collection of utility functions and member variables to communicate with the OpenXR runtime. More...

#include <vtkOpenXRManager.h>

Collaboration diagram for vtkOpenXRManager:
[legend]

Classes

struct  Action_t
 
struct  RenderResources_t
 This struct stores all needed information to render the images and send it to the user We can't make a vector of struct because OpenXR SDK needs an array of XrXXX for xrEnumerate functions. More...
 
struct  SwapchainOpenGL_t
 Swapchain structure for OpenGL backend. More...
 

Public Types

enum  ControllerIndex {
  Inactive = -1, Left = 0, Right = 1, Head = 2,
  Generic = 3, NumberOfControllers = 4
}
 

Public Member Functions

uint32_t GetViewCount ()
 Return the number of OpenXR views (typically one per physical display / eye) More...
 
const std::array< XrPath, 2 > & GetSubactionPaths ()
 
void DestroyActionSets ()
 Iterate over and destroy all action sets that have been created. More...
 
bool ApplyVibration (const Action_t &actionT, const int hand, const float amplitude=0.5f, const float duration=25000000.0f, const float frequency=XR_FREQUENCY_UNSPECIFIED)
 Apply haptic vibration action to emit vibration on hand to emit on amplitude 0.0 to 1.0. More...
 
bool XrCheckError (const XrResult &, const std::string &message)
 Utility function to check the XrResult, print the result message and raise an error if the result failed. More...
 
bool XrCheckWarn (const XrResult &, const std::string &message)
 Utility function to check the XrResult, print the result message and raise a warning if the result failed. More...
 
void PrintInstanceProperties ()
 Utility functions to print information about OpenXR manager internal structures. More...
 
void PrintSystemProperties (XrSystemProperties *system_properties)
 Utility functions to print information about OpenXR manager internal structures. More...
 
void PrintSupportedViewConfigs ()
 Utility functions to print information about OpenXR manager internal structures. More...
 
void PrintViewConfigViewInfo (const std::vector< XrViewConfigurationView > &)
 Utility functions to print information about OpenXR manager internal structures. More...
 
bool PrintReferenceSpaces ()
 Utility functions to print information about OpenXR manager internal structures. More...
 
bool Initialize (vtkOpenGLRenderWindow *)
 Initialize the OpenXR SDK to render images in a virtual reality device. More...
 
void Finalize ()
 End the OpenXR session and destroy it and the OpenXR instance. More...
 
std::tuple< uint32_t, uint32_t > GetRecommendedImageRectSize ()
 Return as a tuple the OpenXR recommended texture size to be sent to the device. More...
 
std::string GetOpenXRPropertiesAsString ()
 Return the OpenXR properties as a string, with format "RuntimeName MAJOR.MINOR.PATCH". More...
 
const XrPosef * GetViewPose (uint32_t eye)
 Returns a pointer to the view pose that contains the view orientation and position for the specified eye, or nullptr if eye exceeds or equals the number of configured views. More...
 
const XrFovf * GetProjectionFov (uint32_t eye)
 Returns a pointer to the projection field of view for the specified eye, or nullptr if eye exceeds or equals the number of configured views. More...
 
bool IsDepthExtensionSupported ()
 Return true if the runtime supports the depth extension. More...
 
bool GetShouldRenderCurrentFrame ()
 Return true if the current frame should be rendered. More...
 
bool BeginSession ()
 Start the OpenXR session. More...
 
const XrSession & GetSession ()
 Return the OpenXR Session. More...
 
const XrInstance & GetXrRuntimeInstance ()
 Return the instance used to communicate with the runtime. More...
 
bool IsSessionRunning ()
 Return true if the OpenXR session is currently running, ie. More...
 
bool WaitAndBeginFrame ()
 This function is used to start a frame. More...
 
bool PrepareRendering (uint32_t eye, GLuint &colorTextureId, GLuint &depthTextureId)
 Prepare the rendering resources for the specified eye and store in colorTextureId and in depthTextureId (if the depth extension is supported) the OpenGL texture in which we need to draw pixels. More...
 
void ReleaseSwapchainImage (uint32_t eye)
 When the rendering in a swapchain image is done, it must be released with this function. More...
 
bool EndFrame ()
 Submit the composition layers for the predicted display time of the current frame. More...
 
bool PollEvent (XrEventDataBuffer &eventData)
 Store in eventData the result of xrPollEvent. More...
 
XrPath GetXrPath (const std::string &path)
 Get the XrPath from the well-formed string path. More...
 
bool CreateActionSet (const std::string &actionSetName, const std::string &localizedActionSetName)
 Creates an action set and add it to the vector of action sets. More...
 
bool SelectActiveActionSet (unsigned int index)
 Selects the current active action set from the ActionSets vector using its index. More...
 
bool AttachSessionActionSets ()
 Attach all action sets in the ActionSets vector to the session. More...
 
bool CreateOneAction (Action_t &actionT, const std::string &name, const std::string &localizedName)
 Creates one action with name name and localizedName localizedName and store the action handle inside actionT using the selected active action set. More...
 
bool SuggestActions (const std::string &profile, std::vector< XrActionSuggestedBinding > &actionSuggestedBindings)
 Suggest actions stored in actionSuggestedBindings for the interaction profile profile. More...
 
bool SyncActions ()
 Update the action states using the active action set. More...
 
bool UpdateActionData (Action_t &action_t, const int hand)
 Update the action data and store it in action_t.States for one hand. More...
 

Static Public Member Functions

static vtkOpenXRManagerGetInstance ()
 Return the singleton instance. More...
 

Protected Member Functions

 vtkOpenXRManager ()=default
 
 ~vtkOpenXRManager ()=default
 
bool LoadControllerModels ()
 
bool CreateInstance ()
 OpenXR Instance creation. More...
 
std::vector< const char * > SelectExtensions ()
 OpenXR Instance creation. More...
 
void PrintOptionalExtensions ()
 Print the optional extensions which were found and enabled. More...
 
bool CreateSystem ()
 OpenXR System creation. More...
 
bool CheckGraphicsRequirements ()
 OpenXR requires checking graphics requirements before creating a session. More...
 
bool CreateGraphicsBinding (vtkOpenGLRenderWindow *helperWindow)
 Create the graphics binding and store it in GraphicsBindings ptr. More...
 
bool CreateSession ()
 Create the session and pass the GraphicsBinding to the next pointer of the XrSessionCreateInfo. More...
 
bool CreateSwapchains ()
 Swapchaines creation : there is one swapchain per view / display. More...
 
bool CreateConfigViews ()
 There is one configuration view per view, and it contains the recommended texture resolution in pixels and the recommended swapchain samples. More...
 
std::tuple< int64_t, int64_t > SelectSwapchainPixelFormats ()
 During the creation of the swapchains, we need to check the runtime available pixels formats, and we pick the first one from the list of our supported color and depth formats returned by GetSupportedColorFormats and GetSupportedDepthFormats. More...
 
const std::vector< int64_t > & GetSupportedColorFormats ()
 During the creation of the swapchains, we need to check the runtime available pixels formats, and we pick the first one from the list of our supported color and depth formats returned by GetSupportedColorFormats and GetSupportedDepthFormats. More...
 
const std::vector< int64_t > & GetSupportedDepthFormats ()
 During the creation of the swapchains, we need to check the runtime available pixels formats, and we pick the first one from the list of our supported color and depth formats returned by GetSupportedColorFormats and GetSupportedDepthFormats. More...
 
SwapchainOpenGL_t CreateSwapchainOpenGL (int64_t format, uint32_t width, uint32_t height, uint32_t sampleCount, XrSwapchainCreateFlags createFlags, XrSwapchainUsageFlags usageFlags)
 Create an XrSwapchain handle used to present rendered image to the user with the given parameters for the XrSwapchainCreateInfo structure. More...
 
bool CreateReferenceSpace ()
 Creates the reference space of type ReferenceSpaceType that will be used to locate views. More...
 
bool CreateOneActionSpace (const XrAction &action, const XrPath &subactionPath, const XrPosef &poseInActionSpace, XrSpace &space)
 For pose actions, we must create an action space to locate it. More...
 
bool CreateSubactionPaths ()
 Creates one subaction path for each hand. More...
 
uint32_t WaitAndAcquireSwapchainImage (const XrSwapchain &swapchainHandle)
 When preparing the rendering for an eye, we must ask the runtime for a texture to draw in it. More...
 

Protected Attributes

XrInstance Instance
 
XrSystemId SystemId
 
XrSession Session
 
XrSessionState SessionState
 
XrSpace ReferenceSpace
 
XrEnvironmentBlendMode EnvironmentBlendMode
 
xr::ExtensionDispatchTable Extensions
 
bool HasOpenGLExtension = false
 
std::shared_ptr< void > GraphicsBinding
 
std::array< XrPath, 2 > SubactionPaths
 
std::vector< XrActionSet > ActionSets
 
XrActionSet * ActiveActionSet = nullptr
 
XrTime PredictedDisplayTime
 Store the frame predicted display time in WaitAndBeginFrame To get the action data at this time and to submit it in EndFrame. More...
 
bool SessionRunning = false
 
bool ShouldRenderCurrentFrame = false
 
bool StorePoseVelocities = false
 
struct {
   bool   DepthExtensionSupported { false }
 
   bool   ControllerModelExtensionSupported { false }
 
   bool   UnboundedRefSpaceSupported { false }
 
   bool   SpatialAnchorSupported { false }
 
   bool   HandTrackingSupported { false }
 
OptionalExtensions
 Structure to hold optional extensions loaded with SelectExtensions. More...
 
std::unique_ptr< RenderResources_tRenderResources {}
 

Static Protected Attributes

static constexpr XrFormFactor FormFactor = XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY
 
static constexpr XrViewConfigurationType ViewType = XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO
 
static constexpr uint32_t StereoViewCount = 2
 
static constexpr XrReferenceSpaceType ReferenceSpaceType = XR_REFERENCE_SPACE_TYPE_STAGE
 

Detailed Description

Singleton class that holds a collection of utility functions and member variables to communicate with the OpenXR runtime.

vtkOpenXRManager is not a vtkObject, the singleton unique instance gets allocated on the stack the first time vtkOpenXRManager::GetInstance() is called.

Definition at line 40 of file vtkOpenXRManager.h.

Member Enumeration Documentation

Enumerator
Inactive 
Left 
Right 
Head 
Generic 
NumberOfControllers 

Definition at line 326 of file vtkOpenXRManager.h.

Constructor & Destructor Documentation

vtkOpenXRManager::vtkOpenXRManager ( )
protecteddefault
vtkOpenXRManager::~vtkOpenXRManager ( )
protecteddefault

Member Function Documentation

static vtkOpenXRManager& vtkOpenXRManager::GetInstance ( )
inlinestatic

Return the singleton instance.

Definition at line 47 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::XrCheckError ( const XrResult &  ,
const std::string &  message 
)

Utility function to check the XrResult, print the result message and raise an error if the result failed.

bool vtkOpenXRManager::XrCheckWarn ( const XrResult &  ,
const std::string &  message 
)

Utility function to check the XrResult, print the result message and raise a warning if the result failed.

void vtkOpenXRManager::PrintInstanceProperties ( )

Utility functions to print information about OpenXR manager internal structures.

void vtkOpenXRManager::PrintSystemProperties ( XrSystemProperties *  system_properties)

Utility functions to print information about OpenXR manager internal structures.

void vtkOpenXRManager::PrintSupportedViewConfigs ( )

Utility functions to print information about OpenXR manager internal structures.

void vtkOpenXRManager::PrintViewConfigViewInfo ( const std::vector< XrViewConfigurationView > &  )

Utility functions to print information about OpenXR manager internal structures.

bool vtkOpenXRManager::PrintReferenceSpaces ( )

Utility functions to print information about OpenXR manager internal structures.

bool vtkOpenXRManager::Initialize ( vtkOpenGLRenderWindow )

Initialize the OpenXR SDK to render images in a virtual reality device.

The helper window must be a vtkWin32OpenGLRenderWindow if the platform is Win32, else a vtkXOpenGLRenderWindow if the platform is X.

void vtkOpenXRManager::Finalize ( )

End the OpenXR session and destroy it and the OpenXR instance.

std::tuple<uint32_t, uint32_t> vtkOpenXRManager::GetRecommendedImageRectSize ( )

Return as a tuple the OpenXR recommended texture size to be sent to the device.

uint32_t vtkOpenXRManager::GetViewCount ( )
inline

Return the number of OpenXR views (typically one per physical display / eye)

Definition at line 107 of file vtkOpenXRManager.h.

std::string vtkOpenXRManager::GetOpenXRPropertiesAsString ( )

Return the OpenXR properties as a string, with format "RuntimeName MAJOR.MINOR.PATCH".

const XrPosef* vtkOpenXRManager::GetViewPose ( uint32_t  eye)
inline

Returns a pointer to the view pose that contains the view orientation and position for the specified eye, or nullptr if eye exceeds or equals the number of configured views.

This class retains responsibility for the memory pointed to by the return value.

Definition at line 127 of file vtkOpenXRManager.h.

const XrFovf* vtkOpenXRManager::GetProjectionFov ( uint32_t  eye)
inline

Returns a pointer to the projection field of view for the specified eye, or nullptr if eye exceeds or equals the number of configured views.

This class retains responsibility for the memory pointed to by the return value.

Definition at line 143 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::IsDepthExtensionSupported ( )
inline

Return true if the runtime supports the depth extension.

Definition at line 157 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::GetShouldRenderCurrentFrame ( )
inline

Return true if the current frame should be rendered.

This value is updated each time we call WaitAndBeginFrame and EndFrame.

Definition at line 166 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::BeginSession ( )

Start the OpenXR session.

If successful, SessionRunning becomes true.

const XrSession& vtkOpenXRManager::GetSession ( )
inline

Return the OpenXR Session.

Definition at line 181 of file vtkOpenXRManager.h.

const XrInstance& vtkOpenXRManager::GetXrRuntimeInstance ( )
inline

Return the instance used to communicate with the runtime.

Definition at line 188 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::IsSessionRunning ( )
inline

Return true if the OpenXR session is currently running, ie.

the call to BeginSession was successful.

Definition at line 196 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::WaitAndBeginFrame ( )

This function is used to start a frame.

If the frame should be rendered, then we locate the views to update the view pose and projection for each eye / display

bool vtkOpenXRManager::PrepareRendering ( uint32_t  eye,
GLuint &  colorTextureId,
GLuint &  depthTextureId 
)

Prepare the rendering resources for the specified eye and store in colorTextureId and in depthTextureId (if the depth extension is supported) the OpenGL texture in which we need to draw pixels.

Return true if no error occurred.

void vtkOpenXRManager::ReleaseSwapchainImage ( uint32_t  eye)

When the rendering in a swapchain image is done, it must be released with this function.

bool vtkOpenXRManager::EndFrame ( )

Submit the composition layers for the predicted display time of the current frame.

It must be called at the end of each frame.

bool vtkOpenXRManager::PollEvent ( XrEventDataBuffer &  eventData)

Store in eventData the result of xrPollEvent.

XrPath vtkOpenXRManager::GetXrPath ( const std::string &  path)

Get the XrPath from the well-formed string path.

const std::array<XrPath, 2>& vtkOpenXRManager::GetSubactionPaths ( )
inline

Definition at line 248 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::CreateActionSet ( const std::string &  actionSetName,
const std::string &  localizedActionSetName 
)

Creates an action set and add it to the vector of action sets.

bool vtkOpenXRManager::SelectActiveActionSet ( unsigned int  index)

Selects the current active action set from the ActionSets vector using its index.

bool vtkOpenXRManager::AttachSessionActionSets ( )

Attach all action sets in the ActionSets vector to the session.

void vtkOpenXRManager::DestroyActionSets ( )

Iterate over and destroy all action sets that have been created.

bool vtkOpenXRManager::CreateOneAction ( Action_t actionT,
const std::string &  name,
const std::string &  localizedName 
)

Creates one action with name name and localizedName localizedName and store the action handle inside actionT using the selected active action set.

bool vtkOpenXRManager::SuggestActions ( const std::string &  profile,
std::vector< XrActionSuggestedBinding > &  actionSuggestedBindings 
)

Suggest actions stored in actionSuggestedBindings for the interaction profile profile.

bool vtkOpenXRManager::SyncActions ( )

Update the action states using the active action set.

This function should be called before UpdateActionData

bool vtkOpenXRManager::UpdateActionData ( Action_t action_t,
const int  hand 
)

Update the action data and store it in action_t.States for one hand.

For pose actions :

  • we locate its space in the ReferenceSpace space using the PredictedDisplayTime
  • we can store its pose velocity if StorePoseVelocities is true.
bool vtkOpenXRManager::ApplyVibration ( const Action_t actionT,
const int  hand,
const float  amplitude = 0.5f,
const float  duration = 25000000.0f,
const float  frequency = XR_FREQUENCY_UNSPECIFIED 
)

Apply haptic vibration action to emit vibration on hand to emit on amplitude 0.0 to 1.0.

duration nanoseconds, default 25ms frequency (hz)

bool vtkOpenXRManager::CreateInstance ( )
protected

OpenXR Instance creation.

This is where we select the extensions using SelectExtensions

std::vector<const char*> vtkOpenXRManager::SelectExtensions ( )
protected

OpenXR Instance creation.

This is where we select the extensions using SelectExtensions

void vtkOpenXRManager::PrintOptionalExtensions ( )
protected

Print the optional extensions which were found and enabled.

bool vtkOpenXRManager::CreateSystem ( )
protected

OpenXR System creation.

bool vtkOpenXRManager::CheckGraphicsRequirements ( )
protected

OpenXR requires checking graphics requirements before creating a session.

This uses a function pointer loaded with the selected graphics API extension.

bool vtkOpenXRManager::CreateGraphicsBinding ( vtkOpenGLRenderWindow helperWindow)
protected

Create the graphics binding and store it in GraphicsBindings ptr.

It points to a XrGraphicsBindingXXX structure, depending on the desired rendering backend.

Precondition
helperWindow must be initialized
bool vtkOpenXRManager::CreateSession ( )
protected

Create the session and pass the GraphicsBinding to the next pointer of the XrSessionCreateInfo.

Precondition
CreateGraphicsBinding must be called
bool vtkOpenXRManager::CreateSwapchains ( )
protected

Swapchaines creation : there is one swapchain per view / display.

This function calls CreateConfigViews

bool vtkOpenXRManager::CreateConfigViews ( )
protected

There is one configuration view per view, and it contains the recommended texture resolution in pixels and the recommended swapchain samples.

std::tuple<int64_t, int64_t> vtkOpenXRManager::SelectSwapchainPixelFormats ( )
protected

During the creation of the swapchains, we need to check the runtime available pixels formats, and we pick the first one from the list of our supported color and depth formats returned by GetSupportedColorFormats and GetSupportedDepthFormats.

const std::vector<int64_t>& vtkOpenXRManager::GetSupportedColorFormats ( )
protected

During the creation of the swapchains, we need to check the runtime available pixels formats, and we pick the first one from the list of our supported color and depth formats returned by GetSupportedColorFormats and GetSupportedDepthFormats.

const std::vector<int64_t>& vtkOpenXRManager::GetSupportedDepthFormats ( )
protected

During the creation of the swapchains, we need to check the runtime available pixels formats, and we pick the first one from the list of our supported color and depth formats returned by GetSupportedColorFormats and GetSupportedDepthFormats.

SwapchainOpenGL_t vtkOpenXRManager::CreateSwapchainOpenGL ( int64_t  format,
uint32_t  width,
uint32_t  height,
uint32_t  sampleCount,
XrSwapchainCreateFlags  createFlags,
XrSwapchainUsageFlags  usageFlags 
)
protected

Create an XrSwapchain handle used to present rendered image to the user with the given parameters for the XrSwapchainCreateInfo structure.

bool vtkOpenXRManager::CreateReferenceSpace ( )
protected

Creates the reference space of type ReferenceSpaceType that will be used to locate views.

bool vtkOpenXRManager::LoadControllerModels ( )
protected
bool vtkOpenXRManager::CreateOneActionSpace ( const XrAction &  action,
const XrPath &  subactionPath,
const XrPosef &  poseInActionSpace,
XrSpace &  space 
)
protected

For pose actions, we must create an action space to locate it.

bool vtkOpenXRManager::CreateSubactionPaths ( )
protected

Creates one subaction path for each hand.

uint32_t vtkOpenXRManager::WaitAndAcquireSwapchainImage ( const XrSwapchain &  swapchainHandle)
protected

When preparing the rendering for an eye, we must ask the runtime for a texture to draw in it.

Member Data Documentation

constexpr XrFormFactor vtkOpenXRManager::FormFactor = XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY
staticprotected

Definition at line 481 of file vtkOpenXRManager.h.

constexpr XrViewConfigurationType vtkOpenXRManager::ViewType = XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO
staticprotected

Definition at line 484 of file vtkOpenXRManager.h.

constexpr uint32_t vtkOpenXRManager::StereoViewCount = 2
staticprotected

Definition at line 487 of file vtkOpenXRManager.h.

constexpr XrReferenceSpaceType vtkOpenXRManager::ReferenceSpaceType = XR_REFERENCE_SPACE_TYPE_STAGE
staticprotected

Definition at line 492 of file vtkOpenXRManager.h.

XrInstance vtkOpenXRManager::Instance
protected

Definition at line 495 of file vtkOpenXRManager.h.

XrSystemId vtkOpenXRManager::SystemId
protected

Definition at line 498 of file vtkOpenXRManager.h.

XrSession vtkOpenXRManager::Session
protected

Definition at line 500 of file vtkOpenXRManager.h.

XrSessionState vtkOpenXRManager::SessionState
protected

Definition at line 501 of file vtkOpenXRManager.h.

XrSpace vtkOpenXRManager::ReferenceSpace
protected

Definition at line 502 of file vtkOpenXRManager.h.

XrEnvironmentBlendMode vtkOpenXRManager::EnvironmentBlendMode
protected

Definition at line 509 of file vtkOpenXRManager.h.

xr::ExtensionDispatchTable vtkOpenXRManager::Extensions
protected

Definition at line 512 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::HasOpenGLExtension = false
protected

Definition at line 515 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::DepthExtensionSupported { false }

Definition at line 524 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::ControllerModelExtensionSupported { false }

Definition at line 525 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::UnboundedRefSpaceSupported { false }

Definition at line 526 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::SpatialAnchorSupported { false }

Definition at line 527 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::HandTrackingSupported { false }

Definition at line 528 of file vtkOpenXRManager.h.

struct { ... } vtkOpenXRManager::OptionalExtensions

Structure to hold optional extensions loaded with SelectExtensions.

std::shared_ptr<void> vtkOpenXRManager::GraphicsBinding
protected

Definition at line 532 of file vtkOpenXRManager.h.

std::unique_ptr<RenderResources_t> vtkOpenXRManager::RenderResources {}
protected

Definition at line 567 of file vtkOpenXRManager.h.

std::array<XrPath, 2> vtkOpenXRManager::SubactionPaths
protected

Definition at line 571 of file vtkOpenXRManager.h.

std::vector<XrActionSet> vtkOpenXRManager::ActionSets
protected

Definition at line 573 of file vtkOpenXRManager.h.

XrActionSet* vtkOpenXRManager::ActiveActionSet = nullptr
protected

Definition at line 574 of file vtkOpenXRManager.h.

XrTime vtkOpenXRManager::PredictedDisplayTime
protected

Store the frame predicted display time in WaitAndBeginFrame To get the action data at this time and to submit it in EndFrame.

Definition at line 580 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::SessionRunning = false
protected

Definition at line 582 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::ShouldRenderCurrentFrame = false
protected

Definition at line 585 of file vtkOpenXRManager.h.

bool vtkOpenXRManager::StorePoseVelocities = false
protected

Definition at line 588 of file vtkOpenXRManager.h.


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