21 #ifndef XrGraphicsExtensions_h
22 #define XrGraphicsExtensions_h
24 #ifdef XR_USE_PLATFORM_WIN32
25 #define FOR_EACH_WIN32_EXTENSION_FUNCTION(_) _(xrConvertWin32PerformanceCounterToTimeKHR)
27 #define FOR_EACH_WIN32_EXTENSION_FUNCTION(_)
30 #ifdef XR_USE_GRAPHICS_API_D3D11
31 #define FOR_EACH_D3D11_EXTENSION_FUNCTION(_) _(xrGetD3D11GraphicsRequirementsKHR)
33 #define FOR_EACH_D3D11_EXTENSION_FUNCTION(_)
36 #ifdef XR_USE_GRAPHICS_API_OPENGL
37 #define FOR_EACH_OPENGL_EXTENSION_FUNCTION(_) _(xrGetOpenGLGraphicsRequirementsKHR)
39 #define FOR_EACH_OPENGL_EXTENSION_FUNCTION(_)
42 #define FOR_EACH_EXTENSION_FUNCTION(_) \
43 FOR_EACH_WIN32_EXTENSION_FUNCTION(_) \
44 FOR_EACH_OPENGL_EXTENSION_FUNCTION(_) \
45 FOR_EACH_D3D11_EXTENSION_FUNCTION(_)
47 #define GET_INSTANCE_PROC_ADDRESS(name) \
48 (void)xrGetInstanceProcAddr( \
49 instance, #name, reinterpret_cast<PFN_xrVoidFunction*>(const_cast<PFN_##name*>(&name)));
50 #define DEFINE_PROC_MEMBER(name) PFN_##name name{ nullptr };
54 VTK_ABI_NAMESPACE_BEGIN
68 #undef DEFINE_PROC_MEMBER
69 #undef GET_INSTANCE_PROC_ADDRESS
70 #undef FOR_EACH_EXTENSION_FUNCTION
#define GET_INSTANCE_PROC_ADDRESS(name)
FOR_EACH_EXTENSION_FUNCTION(DEFINE_PROC_MEMBER)
void PopulateDispatchTable(XrInstance instance)
#define DEFINE_PROC_MEMBER(name)
GraphicsExtensionDispatchTable()=default