API Documentation
Loading...
Searching...
No Matches
VulkanXRInstance Class Reference

he connection between the NDEVR API and the OpenXR library, using Vulkan as the engine backend. More...

#include <XRInstance.h>

Inheritance diagram for VulkanXRInstance:
[legend]
Collaboration diagram for VulkanXRInstance:
[legend]

Public Member Functions

VkResult createVkInstance (const VkInstanceCreateInfo &create_info) final override
 
XrFormFactor formFactor ()
 
virtual XrResult getVulkanGraphicsRequirements2KHR (XrInstance instance, XrSystemId systemId, XrGraphicsRequirementsVulkan2KHR *graphicsRequirements)
 
void init () override
 
void initializeXRInstance ()
 
void initializeXRSystem ()
 
uint04 setupExtensions (const char **&extensions) final override
 
 VulkanXRInstance ()
 
XrInstance xrInstance () const
 
XrSystemId xrSystemID () const
 
virtual ~VulkanXRInstance ()
 
- Public Member Functions inherited from VulkanInstance
void cleanup ()
 
virtual uint04 deviceSuitableScore (VkPhysicalDevice device)
 
bool isSoftwareRendered () const
 
bool isValid () const
 
ProgressInfolog ()
 
const Buffer< VkPhysicalDevice > & physicalDevices () const
 
void setDeviceLost ()
 
void setLog (ProgressInfo *log)
 
bool supportsKHRSwapchain () const
 
bool supportsTriangleFan () const
 
bool supportsValidation () const
 
const StringsurfaceType () const
 
const Buffer< String > & validationLayers () const
 
VkInstance vkInstance () const
 
 VulkanInstance ()
 
 VulkanInstance (VulkanInstance &&instance) noexcept
 
String vulkanLibUsed () const
 
virtual ~VulkanInstance ()
 

Protected Attributes

XrSystemId m_system_id { XR_NULL_SYSTEM_ID }
 
XrInstance m_xr_instance { XR_NULL_HANDLE }
 
- Protected Attributes inherited from VulkanInstance
Buffer< VkExtensionProperties, uint04, ObjectAllocator< true > > m_available_extension_info
 
Buffer< VkLayerProperties, uint04, ObjectAllocator< true > > m_available_layer_info
 
Buffer< VkPhysicalDevicem_available_physical_devices
 
Time m_creation_time
 
VkDebugReportCallbackEXT m_debug_callback
 
Buffer< Stringm_extensions
 
bool m_is_init = false
 
bool m_is_software_rendered = false
 
ProgressInfom_log
 
bool m_supports_tri_fan
 
bool m_supports_validation
 
String m_surface_type
 
Buffer< Stringm_validation_layers
 
VkInstance m_vk_instance
 

Additional Inherited Members

- Static Public Member Functions inherited from VulkanInstance
static DynamicPointer< VulkanInstance > & DefaultVulkanInstance ()
 
static String HardwareRenderedVulkanLib ()
 
static void setupModule (Module &module)
 
static String SoftwareRenderedVulkanLib ()
 
static Module VulkanBackupModule ()
 
- Static Public Attributes inherited from VulkanInstance
static Buffer< VulkanInstance * > s_instances
 
- Protected Member Functions inherited from VulkanInstance
virtual VkApplicationInfo applicationInfo (const String &app_name)
 
bool checkExtensionSupport (const String &layer)
 
bool checkLayerSupport (const String &layer)
 
bool checkValidationSupport ()
 
virtual VkSurfaceFormatKHR chooseSwapSurfaceFormat (const Buffer< VkSurfaceFormatKHR, uint04, ObjectAllocator< true > > &availableFormats)
 
virtual VkInstanceCreateInfo createInfo ()
 
Time creationTime () const
 
void initializeAll ()
 
virtual void setAvailableExtensionInfo ()
 
virtual void setAvailableLayerInfo ()
 
virtual void setAvailablePhysicalDevices ()
 
virtual void setupDebug ()
 
virtual void setupInstance ()
 
virtual uint04 setupLayers (const char **&layers)
 

Detailed Description

he connection between the NDEVR API and the OpenXR library, using Vulkan as the engine backend.


Constructor & Destructor Documentation

◆ VulkanXRInstance()

◆ ~VulkanXRInstance()

virtual ~VulkanXRInstance ( )
virtual

Member Function Documentation

◆ createVkInstance()

VkResult createVkInstance ( const VkInstanceCreateInfo & create_info)
finaloverridevirtual

Reimplemented from VulkanInstance.

◆ formFactor()

XrFormFactor formFactor ( )
inline

◆ getVulkanGraphicsRequirements2KHR()

virtual XrResult getVulkanGraphicsRequirements2KHR ( XrInstance instance,
XrSystemId systemId,
XrGraphicsRequirementsVulkan2KHR * graphicsRequirements )
virtual

◆ init()

void init ( )
overridevirtual

Reimplemented from VulkanInstance.

◆ initializeXRInstance()

void initializeXRInstance ( )

◆ initializeXRSystem()

void initializeXRSystem ( )

◆ setupExtensions()

uint04 setupExtensions ( const char **& extensions)
finaloverridevirtual

Reimplemented from VulkanInstance.

◆ xrInstance()

XrInstance xrInstance ( ) const
inline

◆ xrSystemID()

XrSystemId xrSystemID ( ) const
inline

Member Data Documentation

◆ m_system_id

XrSystemId m_system_id { XR_NULL_SYSTEM_ID }
protected

◆ m_xr_instance

XrInstance m_xr_instance { XR_NULL_HANDLE }
protected

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