52 #ifndef vtkOpenXRRenderWindow_h
53 #define vtkOpenXRRenderWindow_h
55 #include "vtkRenderingOpenXRModule.h"
146 uint32_t GetDeviceHandleForOpenXRHandle(uint32_t
index);
163 bool BindTextureToFramebuffer(FramebufferDesc& framebufferDesc);
166 void RenderOneEye(
const uint32_t eye);
174 std::array<bool, 2> ModelsActiveState = {
true,
true };
void RenderFramebuffer(FramebufferDesc &framebufferDesc)
represent and manipulate 4x4 transformation matrices
virtual void RenderModels()=0
Render the controller and base station models.
static vtkRenderWindow * New()
Construct an instance of vtkRenderWindow with its screen size set to 300x300, borders turned on...
vtkNew< vtkMatrix4x4 > TempMatrix4x4
vtkTypeBool GetEventPending() override
Check to see if a mouse button has been pressed or mouse wheel activated.
void AddRenderer(vtkRenderer *) override
Add a renderer to the list of renderers.
abstract specification for renderers
vtkRenderWindowInteractor * MakeRenderWindowInteractor() override=0
Create an interactor to control renderers in this window.
virtual bool CreateFramebuffers(uint32_t viewCount=2)=0
platform-independent render window interaction including picking and frame rate control.
const char * ReportCapabilities() override
Get report of capabilities for the render window.
void Finalize() override
Finalize the rendering window.
virtual void StereoUpdate()
Update the system, if needed, due to stereo rendering.
void Initialize() override
Initialize the rendering window.
vtkEventDataDevice
platform-independent event data structures
virtual bool GetSizeFromAPI()=0
Attempt to get the size of the display from the API and store it in this->Size.
void SetModelActiveState(const int hand, bool state)
Set the active state (active: true / inactive: false) of the specified hand.
void Render() override
Overridden to not release resources that would interfere with an external application's rendering...
virtual void StereoRenderComplete()
Handles work required once both views have been rendered when using stereo rendering.
virtual void UpdateHMDMatrixPose()
Update the HMD pose.
void StereoMidpoint() override
Intermediate method performs operations required between the rendering of the left and right eye...