11#ifndef vtkOpenXRManagerOpenGLGraphics_h
12#define vtkOpenXRManagerOpenGLGraphics_h
15#include "vtkRenderingOpenXRModule.h"
17#include "vtkRenderingOpenGLConfigure.h"
24struct XrGraphicsBindingOpenGLXlibKHR;
25typedef XrGraphicsBindingOpenGLXlibKHR XrGraphicsBindingOpenGL;
27struct XrGraphicsBindingOpenGLWin32KHR;
28typedef XrGraphicsBindingOpenGLWin32KHR XrGraphicsBindingOpenGL;
30struct XrSwapchainImageOpenGLKHR;
32VTK_ABI_NAMESPACE_BEGIN
99 std::vector<XrSwapchainImageOpenGLKHR>
Images;
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.
static vtkOpenXRManagerOpenGLGraphics * New()
const std::vector< int64_t > & GetSupportedColorFormats() override
Return the list of GL formats supported by vtkOpenGLRenderWindow.
void EnumerateDepthSwapchainImages(XrSwapchain swapchain, uint32_t scIndex) override
Acquire OpenGL swapchain images for the specified eye index.
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.
const char * GetBackendExtensionName() override
Return the extension name corresponding to the OpenGL rendering backend.
vtkOpenXRManagerOpenGLGraphics()
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
void EnumerateColorSwapchainImages(XrSwapchain swapchain, uint32_t scIndex) override
Acquire OpenGL swapchain images for the specified eye index.
const void * GetGraphicsBinding() override
Return pointer to the XrGraphicsBindingOpenGL structure required to create the OpenXR session.
~vtkOpenXRManagerOpenGLGraphics() override
const std::vector< int64_t > & GetSupportedDepthFormats() override
Return the list of GL formats supported by vtkOpenGLRenderWindow.
OpenGL structure to store swapchain images.
std::vector< XrSwapchainImageOpenGLKHR > Images