11 #ifndef vtkOpenXRManagerOpenGLGraphics_h
12 #define vtkOpenXRManagerOpenGLGraphics_h
15 #include "vtkRenderingOpenXRModule.h"
17 #include "vtkRenderingOpenGLConfigure.h"
24 struct XrGraphicsBindingOpenGLXlibKHR;
25 typedef XrGraphicsBindingOpenGLXlibKHR XrGraphicsBindingOpenGL;
27 struct XrGraphicsBindingOpenGLWin32KHR;
28 typedef XrGraphicsBindingOpenGLWin32KHR XrGraphicsBindingOpenGL;
30 struct XrSwapchainImageOpenGLKHR;
32 VTK_ABI_NAMESPACE_BEGIN
99 std::vector<XrSwapchainImageOpenGLKHR>
Images;
117 VTK_ABI_NAMESPACE_END
virtual void GetColorSwapchainImage(uint32_t eyeIndex, uint32_t imgIndex, void *texture)=0
Fill texture with the swapchain image for the specified eye.
std::shared_ptr< XrGraphicsBindingOpenGL > GraphicsBinding
const void * GetGraphicsBinding() override
Return pointer to the XrGraphicsBindingOpenGL structure required to create the OpenXR session...
virtual void GetDepthSwapchainImage(uint32_t eyeIndex, uint32_t imgIndex, void *texture)=0
Fill texture with the swapchain image for the specified eye.
virtual void EnumerateDepthSwapchainImages(XrSwapchain swapchain, uint32_t eyeIndex)=0
Acquire swapchain images using xrEnumerateSwapchainImages and store them at the specified eye index...
OpenGL structure to store swapchain images.
std::vector< XrSwapchainImageOpenGLKHR > Images
virtual const std::vector< int64_t > & GetSupportedDepthFormats()=0
Return the list of pixel formats supported by VTK.
virtual const char * GetBackendExtensionName()=0
Return the extension name to enable a specific rendering backend.
OpenXR manager OpenGL graphics implementation.
OpenXR manager graphics implementation.
virtual const std::vector< int64_t > & GetSupportedColorFormats()=0
Return the list of pixel formats supported by VTK.
virtual bool CheckGraphicsRequirements(XrInstance instance, XrSystemId id)=0
OpenXR requires checking graphics requirements before creating a session.
virtual void SetNumberOfSwapchains(uint32_t viewCount)=0
Resize the internal vectors storing the color and depth swapchains.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual bool CreateGraphicsBinding(vtkOpenGLRenderWindow *helperWindow)=0
Create the graphics binding and store it in GraphicsBindings ptr.
virtual void EnumerateColorSwapchainImages(XrSwapchain swapchain, uint32_t eyeIndex)=0
Acquire swapchain images using xrEnumerateSwapchainImages and store them at the specified eye index...