// Copyright (c) 2018-2022, The Khronos Group Inc. // // SPDX-License-Identifier: Apache-2.0 OR MIT // // This file includes headers with types which openxr.h depends on in order // to compile when platforms, graphics apis, and the like are enabled. #pragma once #ifdef XR_USE_PLATFORM_ANDROID #include #include #include #endif // XR_USE_PLATFORM_ANDROID #ifdef XR_USE_PLATFORM_WIN32 #include #if !(WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)) // Enable desktop partition APIs, such as RegOpenKeyEx, LoadLibraryEx, PathFileExists etc. #undef WINAPI_PARTITION_DESKTOP #define WINAPI_PARTITION_DESKTOP 1 #endif #ifndef NOMINMAX #define NOMINMAX #endif // !NOMINMAX #ifndef WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN #endif // !WIN32_LEAN_AND_MEAN #include #include #endif // XR_USE_PLATFORM_WIN32 #ifdef XR_USE_GRAPHICS_API_D3D11 #include #endif // XR_USE_GRAPHICS_API_D3D11 #ifdef XR_USE_GRAPHICS_API_D3D12 #include #endif // XR_USE_GRAPHICS_API_D3D12 #ifdef XR_USE_PLATFORM_XLIB #include #include #ifdef Success #undef Success #endif // Success #ifdef Always #undef Always #endif // Always #ifdef None #undef None #endif // None #endif // XR_USE_PLATFORM_XLIB #ifdef XR_USE_PLATFORM_XCB #include #endif // XR_USE_PLATFORM_XCB #ifdef XR_USE_GRAPHICS_API_OPENGL #if defined(XR_USE_PLATFORM_XLIB) || defined(XR_USE_PLATFORM_XCB) #include #endif // (XR_USE_PLATFORM_XLIB || XR_USE_PLATFORM_XCB) #ifdef XR_USE_PLATFORM_XCB #include #endif // XR_USE_PLATFORM_XCB #ifdef XR_USE_PLATFORM_MACOS #include #endif // XR_USE_PLATFORM_MACOS #endif // XR_USE_GRAPHICS_API_OPENGL #ifdef XR_USE_GRAPHICS_API_OPENGL_ES #include #endif // XR_USE_GRAPHICS_API_OPENGL_ES #ifdef XR_USE_GRAPHICS_API_VULKAN #include #endif // XR_USE_GRAPHICS_API_VULKAN #ifdef XR_USE_PLATFORM_WAYLAND #include "wayland-client.h" #endif // XR_USE_PLATFORM_WAYLAND