MCPcopy Create free account
hub / github.com/LibreVR/Revive / ovr_GetInstanceExtensionsVk

Function ovr_GetInstanceExtensionsVk

ReviveXR/REV_CAPI_Vk.cpp:29–58  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

27
28OVR_PUBLIC_FUNCTION(ovrResult)
29ovr_GetInstanceExtensionsVk(
30 ovrGraphicsLuid luid,
31 char* extensionNames,
32 uint32_t* inoutExtensionNamesSize)
33{
34 if (!inoutExtensionNamesSize)
35 ovrError_InvalidParameter;
36
37 if (Runtime::Get().Supports(XR_KHR_VULKAN_ENABLE_EXTENSION_NAME))
38 {
39 XR_FUNCTION(g_Instance, GetVulkanInstanceExtensionsKHR);
40
41 XrSystemId system;
42 XrSystemGetInfo info = XR_TYPE(SYSTEM_GET_INFO);
43 info.formFactor = XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY;
44 CHK_XR(xrGetSystem(g_Instance, &info, &system));
45 CHK_XR(GetVulkanInstanceExtensionsKHR(g_Instance, system, *inoutExtensionNamesSize, inoutExtensionNamesSize, extensionNames));
46 }
47 else
48 {
49 uint32_t size = *inoutExtensionNamesSize;
50 *inoutExtensionNamesSize = 1;
51
52 if (extensionNames && size >= 1)
53 *extensionNames = '\0';
54 if (size < 1)
55 return ovrError_InsufficientArraySize;
56 }
57 return ovrSuccess;
58}
59
60OVR_PUBLIC_FUNCTION(ovrResult)
61ovr_GetDeviceExtensionsVk(

Callers

nothing calls this directly

Calls 1

SupportsMethod · 0.80

Tested by

no test coverage detected