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
OpenXR manager graphics implementation.
OpenXR manager OpenGL graphics implementation.
void EnumerateSwapchainImages(XrSwapchain swapchain, SwapchainImagesOpenGL &swapchainImages)
Acquire OpenGL swapchain images an store them in swapchainImages.
bool CreateGraphicsBinding(vtkOpenGLRenderWindow *helperWindow) override
Fill the pointer to the XrGraphicsBindingOpenGL structure.
const void * GetGraphicsBinding() override
Return pointer to the XrGraphicsBindingOpenGL structure required to create the OpenXR session.
void EnumerateDepthSwapchainImages(XrSwapchain swapchain, uint32_t scIndex) override
Acquire OpenGL swapchain images for the specified eye index.
const std::vector< int64_t > & GetSupportedDepthFormats() override
Return the list of GL formats supported by vtkOpenGLRenderWindow.
bool CheckGraphicsRequirements(XrInstance instance, XrSystemId id) override
Check OpenGL version supported by the runtime.
void GetColorSwapchainImage(uint32_t scIndex, uint32_t imgIndex, void *texture) override
Fill texture with the OpenGL texture id for the specified eye scIndex.
vtkOpenXRManagerOpenGLGraphics()
const std::vector< int64_t > & GetSupportedColorFormats() override
Return the list of GL formats supported by vtkOpenGLRenderWindow.
void GetDepthSwapchainImage(uint32_t scIndex, uint32_t imgIndex, void *texture) override
Fill texture with the OpenGL texture id for the specified eye scIndex.
void SetNumberOfSwapchains(uint32_t viewCount) override
Resize the internal vectors storing the color and depth swapchains.
std::shared_ptr< XrGraphicsBindingOpenGL > GraphicsBinding
static vtkOpenXRManagerOpenGLGraphics * New()
void EnumerateColorSwapchainImages(XrSwapchain swapchain, uint32_t scIndex) override
Acquire OpenGL swapchain images for the specified eye index.
const char * GetBackendExtensionName() override
Return the extension name corresponding to the OpenGL rendering backend.
~vtkOpenXRManagerOpenGLGraphics() override
OpenGL structure to store swapchain images.
std::vector< XrSwapchainImageOpenGLKHR > Images