VTK  9.3.0
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  Swapchain_t
 Swapchain structure storing information common to all rendering backend. More...
 

Public Types

enum  OutputLevel { DebugOutput = 0 , WarningOutput = 1 , ErrorOutput = 2 }
 
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)
 
const std::array< XrPath, 2 > & GetSubactionPaths ()
 
void DestroyActionSets ()
 Iterate over and destroy all action sets that have been created.
 
bool ApplyVibration (const Action_t &actionT, int hand, float amplitude=0.5f, float duration=25000000.0f, float frequency=XR_FREQUENCY_UNSPECIFIED)
 Apply haptic vibration action to emit vibration on hand to emit on amplitude 0.0 to 1.0.
 
bool XrCheckOutput (OutputLevel level, const XrResult &, const std::string &message)
 Utility function to check the XrResult, print the result message as a debug, warning or error message if the result failed.
 
void PrintInstanceProperties ()
 Utility functions to print information about OpenXR manager internal structures.
 
void PrintSystemProperties (XrSystemProperties *system_properties)
 Utility functions to print information about OpenXR manager internal structures.
 
void PrintSupportedViewConfigs ()
 Utility functions to print information about OpenXR manager internal structures.
 
void PrintViewConfigViewInfo (const std::vector< XrViewConfigurationView > &)
 Utility functions to print information about OpenXR manager internal structures.
 
bool PrintReferenceSpaces ()
 Utility functions to print information about OpenXR manager internal structures.
 
bool Initialize (vtkOpenGLRenderWindow *)
 Initialize the OpenXR SDK to render images in a virtual reality device.
 
void Finalize ()
 End the OpenXR session and destroy it and the OpenXR instance.
 
std::tuple< uint32_t, uint32_t > GetRecommendedImageRectSize ()
 Return as a tuple the OpenXR recommended texture size to be sent to the device.
 
uint32_t GetRecommendedSampleCount ()
 Return the recommended swapchain sample count.
 
std::string GetOpenXRPropertiesAsString ()
 Return the OpenXR properties as a string, with format "RuntimeName MAJOR.MINOR.PATCH".
 
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.
 
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.
 
bool IsDepthExtensionSupported ()
 Return true if the runtime supports the depth extension.
 
bool GetShouldRenderCurrentFrame ()
 Return true if the current frame should be rendered.
 
bool BeginSession ()
 Start the OpenXR session.
 
const XrSession & GetSession ()
 Return the OpenXR Session.
 
const XrInstance & GetXrRuntimeInstance ()
 Return the instance used to communicate with the runtime.
 
bool IsSessionRunning ()
 Return true if the OpenXR session is currently running, ie.
 
bool WaitAndBeginFrame ()
 This function is used to start a frame.
 
bool PrepareRendering (uint32_t eye, void *colorTextureId, void *depthTextureId)
 Prepare the rendering resources for the specified eye and store in colorTextureId and in depthTextureId (if the depth extension is supported) the texture in which we need to draw pixels.
 
void ReleaseSwapchainImage (uint32_t eye)
 When the rendering in a swapchain image is done, it must be released with this function.
 
bool EndFrame ()
 Submit the composition layers for the predicted display time of the current frame.
 
bool PollEvent (XrEventDataBuffer &eventData)
 Store in eventData the result of xrPollEvent.
 
XrPath GetXrPath (const std::string &path)
 Get the XrPath from the well-formed string path.
 
bool CreateActionSet (const std::string &actionSetName, const std::string &localizedActionSetName)
 Creates an action set and add it to the vector of action sets.
 
bool SelectActiveActionSet (unsigned int index)
 Selects the current active action set from the ActionSets vector using its index.
 
bool AttachSessionActionSets ()
 Attach all action sets in the ActionSets vector to the session.
 
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.
 
bool SuggestActions (const std::string &profile, std::vector< XrActionSuggestedBinding > &actionSuggestedBindings)
 Suggest actions stored in actionSuggestedBindings for the interaction profile profile.
 
bool SyncActions ()
 Update the action states using the active action set.
 
bool UpdateActionData (Action_t &action_t, int hand)
 Update the action data and store it in action_t.States for one hand.
 
void SetGraphicsStrategy (vtkOpenXRManagerGraphics *gs)
 Set/Get the rendering backend strategy.
 
vtkOpenXRManagerGraphicsGetGraphicsStrategy ()
 Set/Get the rendering backend strategy.
 
void SetConnectionStrategy (vtkOpenXRManagerConnection *cs)
 Set/Get the connection strategy.
 
vtkOpenXRManagerConnectionGetConnectionStrategy ()
 Set/Get the connection strategy.
 

Static Public Member Functions

static vtkOpenXRManagerGetInstance ()
 Return the singleton instance.
 

Protected Member Functions

 vtkOpenXRManager ()
 
 ~vtkOpenXRManager ()=default
 
bool LoadControllerModels ()
 
bool CreateInstance ()
 OpenXR Instance creation.
 
std::vector< const char * > SelectExtensions ()
 OpenXR Instance creation.
 
void PrintOptionalExtensions ()
 Print the optional extensions which were found and enabled.
 
bool CreateSystem ()
 OpenXR System creation.
 
bool CreateSystemProperties ()
 Enable system properties such as hand tracking, and choose environment blend modes.
 
bool CreateSession ()
 Create the session and pass the GraphicsBinding to the next pointer of the XrSessionCreateInfo.
 
bool CreateSwapchains ()
 Swapchaines creation : there is one swapchain per view / display.
 
bool CreateConfigViews ()
 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 > 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 vtkOpenXRManagerGraphics::GetSupportedColorFormats and vtkOpenXRManagerGraphics::GetSupportedDepthFormats.
 
Swapchain_t CreateSwapchain (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.
 
bool CreateReferenceSpace ()
 Creates the reference space of type ReferenceSpaceType that will be used to locate views.
 
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.
 
bool CreateSubactionPaths ()
 Creates one subaction path for each hand.
 
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.
 

Protected Attributes

XrReferenceSpaceType ReferenceSpaceType = XR_REFERENCE_SPACE_TYPE_STAGE
 
XrInstance Instance
 
XrSystemId SystemId
 
XrSession Session
 
XrSessionState SessionState
 
XrSpace ReferenceSpace
 
XrEnvironmentBlendMode EnvironmentBlendMode
 
bool RenderingBackendExtensionSupported = false
 
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.
 
bool SessionRunning = false
 
bool ShouldRenderCurrentFrame = false
 
bool StorePoseVelocities = false
 
vtkSmartPointer< vtkOpenXRManagerGraphicsGraphicsStrategy
 
vtkSmartPointer< vtkOpenXRManagerConnectionConnectionStrategy
 
struct { 
 
   bool   DepthExtensionSupported { false } 
 
   bool   ControllerModelExtensionSupported { false } 
 
   bool   UnboundedRefSpaceSupported { false } 
 
   bool   SpatialAnchorSupported { false } 
 
   bool   HandInteractionSupported { false } 
 
   bool   HandTrackingSupported { false } 
 
   bool   RemotingSupported { false } 
 
OptionalExtensions 
 Structure to hold optional extensions loaded with SelectExtensions.
 
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
 

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 32 of file vtkOpenXRManager.h.

Member Enumeration Documentation

◆ OutputLevel

Enumerator
DebugOutput 
WarningOutput 
ErrorOutput 

Definition at line 46 of file vtkOpenXRManager.h.

◆ ControllerIndex

Enumerator
Inactive 
Left 
Right 
Head 
Generic 
NumberOfControllers 

Definition at line 324 of file vtkOpenXRManager.h.

Constructor & Destructor Documentation

◆ vtkOpenXRManager()

vtkOpenXRManager::vtkOpenXRManager ( )
protected

◆ ~vtkOpenXRManager()

vtkOpenXRManager::~vtkOpenXRManager ( )
protecteddefault

Member Function Documentation

◆ GetInstance()

static vtkOpenXRManager & vtkOpenXRManager::GetInstance ( )
inlinestatic

Return the singleton instance.

Definition at line 39 of file vtkOpenXRManager.h.

◆ XrCheckOutput()

bool vtkOpenXRManager::XrCheckOutput ( OutputLevel  level,
const XrResult &  ,
const std::string &  message 
)

Utility function to check the XrResult, print the result message as a debug, warning or error message if the result failed.

◆ PrintInstanceProperties()

void vtkOpenXRManager::PrintInstanceProperties ( )

Utility functions to print information about OpenXR manager internal structures.

◆ PrintSystemProperties()

void vtkOpenXRManager::PrintSystemProperties ( XrSystemProperties *  system_properties)

Utility functions to print information about OpenXR manager internal structures.

◆ PrintSupportedViewConfigs()

void vtkOpenXRManager::PrintSupportedViewConfigs ( )

Utility functions to print information about OpenXR manager internal structures.

◆ PrintViewConfigViewInfo()

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

Utility functions to print information about OpenXR manager internal structures.

◆ PrintReferenceSpaces()

bool vtkOpenXRManager::PrintReferenceSpaces ( )

Utility functions to print information about OpenXR manager internal structures.

◆ Initialize()

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.

◆ Finalize()

void vtkOpenXRManager::Finalize ( )

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

◆ GetRecommendedImageRectSize()

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

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

◆ GetRecommendedSampleCount()

uint32_t vtkOpenXRManager::GetRecommendedSampleCount ( )

Return the recommended swapchain sample count.

◆ GetViewCount()

uint32_t vtkOpenXRManager::GetViewCount ( )
inline

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

Definition at line 105 of file vtkOpenXRManager.h.

◆ GetOpenXRPropertiesAsString()

std::string vtkOpenXRManager::GetOpenXRPropertiesAsString ( )

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

◆ GetViewPose()

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 125 of file vtkOpenXRManager.h.

◆ GetProjectionFov()

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 141 of file vtkOpenXRManager.h.

◆ IsDepthExtensionSupported()

bool vtkOpenXRManager::IsDepthExtensionSupported ( )
inline

Return true if the runtime supports the depth extension.

Definition at line 155 of file vtkOpenXRManager.h.

◆ GetShouldRenderCurrentFrame()

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 164 of file vtkOpenXRManager.h.

◆ BeginSession()

bool vtkOpenXRManager::BeginSession ( )

Start the OpenXR session.

If successful, SessionRunning becomes true.

◆ GetSession()

const XrSession & vtkOpenXRManager::GetSession ( )
inline

Return the OpenXR Session.

Definition at line 179 of file vtkOpenXRManager.h.

◆ GetXrRuntimeInstance()

const XrInstance & vtkOpenXRManager::GetXrRuntimeInstance ( )
inline

Return the instance used to communicate with the runtime.

Definition at line 186 of file vtkOpenXRManager.h.

◆ IsSessionRunning()

bool vtkOpenXRManager::IsSessionRunning ( )
inline

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

the call to BeginSession was successful.

Definition at line 194 of file vtkOpenXRManager.h.

◆ WaitAndBeginFrame()

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

◆ PrepareRendering()

bool vtkOpenXRManager::PrepareRendering ( uint32_t  eye,
void *  colorTextureId,
void *  depthTextureId 
)

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

Return true if no error occurred.

◆ ReleaseSwapchainImage()

void vtkOpenXRManager::ReleaseSwapchainImage ( uint32_t  eye)

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

◆ EndFrame()

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.

◆ PollEvent()

bool vtkOpenXRManager::PollEvent ( XrEventDataBuffer &  eventData)

Store in eventData the result of xrPollEvent.

◆ GetXrPath()

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

Get the XrPath from the well-formed string path.

◆ GetSubactionPaths()

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

Definition at line 246 of file vtkOpenXRManager.h.

◆ CreateActionSet()

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

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

◆ SelectActiveActionSet()

bool vtkOpenXRManager::SelectActiveActionSet ( unsigned int  index)

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

◆ AttachSessionActionSets()

bool vtkOpenXRManager::AttachSessionActionSets ( )

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

◆ DestroyActionSets()

void vtkOpenXRManager::DestroyActionSets ( )

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

◆ CreateOneAction()

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.

◆ SuggestActions()

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

Suggest actions stored in actionSuggestedBindings for the interaction profile profile.

◆ SyncActions()

bool vtkOpenXRManager::SyncActions ( )

Update the action states using the active action set.

This function should be called before UpdateActionData

◆ UpdateActionData()

bool vtkOpenXRManager::UpdateActionData ( Action_t action_t,
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.

◆ ApplyVibration()

bool vtkOpenXRManager::ApplyVibration ( const Action_t actionT,
int  hand,
float  amplitude = 0.5f,
float  duration = 25000000.0f,
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)

◆ SetGraphicsStrategy()

void vtkOpenXRManager::SetGraphicsStrategy ( vtkOpenXRManagerGraphics gs)
inline

Set/Get the rendering backend strategy.

Definition at line 355 of file vtkOpenXRManager.h.

◆ GetGraphicsStrategy()

vtkOpenXRManagerGraphics * vtkOpenXRManager::GetGraphicsStrategy ( )
inline

Set/Get the rendering backend strategy.

Definition at line 356 of file vtkOpenXRManager.h.

◆ SetConnectionStrategy()

void vtkOpenXRManager::SetConnectionStrategy ( vtkOpenXRManagerConnection cs)
inline

Set/Get the connection strategy.

Definition at line 363 of file vtkOpenXRManager.h.

◆ GetConnectionStrategy()

vtkOpenXRManagerConnection * vtkOpenXRManager::GetConnectionStrategy ( )
inline

Set/Get the connection strategy.

Definition at line 364 of file vtkOpenXRManager.h.

◆ CreateInstance()

bool vtkOpenXRManager::CreateInstance ( )
protected

OpenXR Instance creation.

This is where we select the extensions using SelectExtensions

◆ SelectExtensions()

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

OpenXR Instance creation.

This is where we select the extensions using SelectExtensions

◆ PrintOptionalExtensions()

void vtkOpenXRManager::PrintOptionalExtensions ( )
protected

Print the optional extensions which were found and enabled.

◆ CreateSystem()

bool vtkOpenXRManager::CreateSystem ( )
protected

OpenXR System creation.

◆ CreateSystemProperties()

bool vtkOpenXRManager::CreateSystemProperties ( )
protected

Enable system properties such as hand tracking, and choose environment blend modes.

◆ CreateSession()

bool vtkOpenXRManager::CreateSession ( )
protected

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

Precondition
CreateGraphicsBinding must be called

◆ CreateSwapchains()

bool vtkOpenXRManager::CreateSwapchains ( )
protected

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

This function calls CreateConfigViews

◆ 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.

◆ SelectSwapchainPixelFormats()

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 vtkOpenXRManagerGraphics::GetSupportedColorFormats and vtkOpenXRManagerGraphics::GetSupportedDepthFormats.

◆ CreateSwapchain()

Swapchain_t vtkOpenXRManager::CreateSwapchain ( 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.

◆ CreateReferenceSpace()

bool vtkOpenXRManager::CreateReferenceSpace ( )
protected

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

◆ LoadControllerModels()

bool vtkOpenXRManager::LoadControllerModels ( )
protected

◆ CreateOneActionSpace()

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.

◆ CreateSubactionPaths()

bool vtkOpenXRManager::CreateSubactionPaths ( )
protected

Creates one subaction path for each hand.

◆ WaitAndAcquireSwapchainImage()

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

◆ FormFactor

constexpr XrFormFactor vtkOpenXRManager::FormFactor = XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY
staticconstexprprotected

Definition at line 482 of file vtkOpenXRManager.h.

◆ ViewType

constexpr XrViewConfigurationType vtkOpenXRManager::ViewType = XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO
staticconstexprprotected

Definition at line 485 of file vtkOpenXRManager.h.

◆ StereoViewCount

constexpr uint32_t vtkOpenXRManager::StereoViewCount = 2
staticconstexprprotected

Definition at line 488 of file vtkOpenXRManager.h.

◆ ReferenceSpaceType

XrReferenceSpaceType vtkOpenXRManager::ReferenceSpaceType = XR_REFERENCE_SPACE_TYPE_STAGE
protected

Definition at line 493 of file vtkOpenXRManager.h.

◆ Instance

XrInstance vtkOpenXRManager::Instance
protected

Definition at line 496 of file vtkOpenXRManager.h.

◆ SystemId

XrSystemId vtkOpenXRManager::SystemId
protected

Definition at line 499 of file vtkOpenXRManager.h.

◆ Session

XrSession vtkOpenXRManager::Session
protected

Definition at line 501 of file vtkOpenXRManager.h.

◆ SessionState

XrSessionState vtkOpenXRManager::SessionState
protected

Definition at line 502 of file vtkOpenXRManager.h.

◆ ReferenceSpace

XrSpace vtkOpenXRManager::ReferenceSpace
protected

Definition at line 503 of file vtkOpenXRManager.h.

◆ EnvironmentBlendMode

XrEnvironmentBlendMode vtkOpenXRManager::EnvironmentBlendMode
protected

Definition at line 510 of file vtkOpenXRManager.h.

◆ RenderingBackendExtensionSupported

bool vtkOpenXRManager::RenderingBackendExtensionSupported = false
protected

Definition at line 513 of file vtkOpenXRManager.h.

◆ DepthExtensionSupported

bool vtkOpenXRManager::DepthExtensionSupported { false }

Definition at line 522 of file vtkOpenXRManager.h.

◆ ControllerModelExtensionSupported

bool vtkOpenXRManager::ControllerModelExtensionSupported { false }

Definition at line 523 of file vtkOpenXRManager.h.

◆ UnboundedRefSpaceSupported

bool vtkOpenXRManager::UnboundedRefSpaceSupported { false }

Definition at line 524 of file vtkOpenXRManager.h.

◆ SpatialAnchorSupported

bool vtkOpenXRManager::SpatialAnchorSupported { false }

Definition at line 525 of file vtkOpenXRManager.h.

◆ HandInteractionSupported

bool vtkOpenXRManager::HandInteractionSupported { false }

Definition at line 526 of file vtkOpenXRManager.h.

◆ HandTrackingSupported

bool vtkOpenXRManager::HandTrackingSupported { false }

Definition at line 527 of file vtkOpenXRManager.h.

◆ RemotingSupported

bool vtkOpenXRManager::RemotingSupported { false }

Definition at line 528 of file vtkOpenXRManager.h.

◆ [struct]

struct { ... } vtkOpenXRManager::OptionalExtensions

Structure to hold optional extensions loaded with SelectExtensions.

◆ RenderResources

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

Definition at line 565 of file vtkOpenXRManager.h.

◆ SubactionPaths

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

Definition at line 569 of file vtkOpenXRManager.h.

◆ ActionSets

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

Definition at line 571 of file vtkOpenXRManager.h.

◆ ActiveActionSet

XrActionSet* vtkOpenXRManager::ActiveActionSet = nullptr
protected

Definition at line 572 of file vtkOpenXRManager.h.

◆ PredictedDisplayTime

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 578 of file vtkOpenXRManager.h.

◆ SessionRunning

bool vtkOpenXRManager::SessionRunning = false
protected

Definition at line 580 of file vtkOpenXRManager.h.

◆ ShouldRenderCurrentFrame

bool vtkOpenXRManager::ShouldRenderCurrentFrame = false
protected

Definition at line 583 of file vtkOpenXRManager.h.

◆ StorePoseVelocities

bool vtkOpenXRManager::StorePoseVelocities = false
protected

Definition at line 586 of file vtkOpenXRManager.h.

◆ GraphicsStrategy

vtkSmartPointer<vtkOpenXRManagerGraphics> vtkOpenXRManager::GraphicsStrategy
protected

Definition at line 588 of file vtkOpenXRManager.h.

◆ ConnectionStrategy

vtkSmartPointer<vtkOpenXRManagerConnection> vtkOpenXRManager::ConnectionStrategy
protected

Definition at line 590 of file vtkOpenXRManager.h.


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