blob: d05c8490a5bc853ae1426761f151b97e0bd70dc4 [file] [log] [blame]
Jon Ashburnb25e4fc2016-03-07 11:07:19 -07001#ifndef VULKAN_H_
2#define VULKAN_H_ 1
Courtney Goeltzenleuchterac191122015-07-12 12:21:19 -06003
Courtney Goeltzenleuchter64d1a712015-04-08 18:04:29 -06004/*
Mark Lobodzinskidbe7dce2018-01-08 08:17:24 -07005** Copyright (c) 2015-2018 The Khronos Group Inc.
Jon Ashburnf6e6a152016-04-22 08:49:39 -06006**
Jon Ashburn3ebf1252016-04-19 11:30:31 -06007** Licensed under the Apache License, Version 2.0 (the "License");
8** you may not use this file except in compliance with the License.
9** You may obtain a copy of the License at
Courtney Goeltzenleuchter64d1a712015-04-08 18:04:29 -060010**
Jon Ashburn3ebf1252016-04-19 11:30:31 -060011** http://www.apache.org/licenses/LICENSE-2.0
Courtney Goeltzenleuchter64d1a712015-04-08 18:04:29 -060012**
Jon Ashburn3ebf1252016-04-19 11:30:31 -060013** Unless required by applicable law or agreed to in writing, software
14** distributed under the License is distributed on an "AS IS" BASIS,
15** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16** See the License for the specific language governing permissions and
17** limitations under the License.
Courtney Goeltzenleuchter64d1a712015-04-08 18:04:29 -060018*/
19
Courtney Goeltzenleuchterac191122015-07-12 12:21:19 -060020#include "vk_platform.h"
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070021#include "vulkan_core.h"
Ian Elliott3a2d1e42015-11-18 12:24:57 -070022
23#ifdef VK_USE_PLATFORM_ANDROID_KHR
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070024#include "vulkan_android.h"
Mark Young39389872017-01-19 21:10:49 -070025#endif
26
Mark Young39389872017-01-19 21:10:49 -070027
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070028#ifdef VK_USE_PLATFORM_IOS_MVK
29#include "vulkan_ios.h"
Mark Young39389872017-01-19 21:10:49 -070030#endif
31
Mark Youngabc2d6e2017-07-07 07:59:56 -060032
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070033#ifdef VK_USE_PLATFORM_MACOS_MVK
34#include "vulkan_macos.h"
Mark Youngabc2d6e2017-07-07 07:59:56 -060035#endif
36
Mark Youngabc2d6e2017-07-07 07:59:56 -060037
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070038#ifdef VK_USE_PLATFORM_MIR_KHR
39#include <mir_toolkit/client_types.h>
40#include "vulkan_mir.h"
Mark Youngabc2d6e2017-07-07 07:59:56 -060041#endif
Mark Lobodzinski1577dab2016-09-27 08:23:59 -060042
43
Mark Young39389872017-01-19 21:10:49 -070044#ifdef VK_USE_PLATFORM_VI_NN
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070045#include "vulkan_vi.h"
Mark Young0f183a82017-02-28 09:58:04 -070046#endif
47
Mark Lobodzinski2d589822016-12-12 09:44:34 -070048
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070049#ifdef VK_USE_PLATFORM_WAYLAND_KHR
50#include <wayland-client.h>
51#include "vulkan_wayland.h"
Mark Lobodzinski2d589822016-12-12 09:44:34 -070052#endif
53
Mark Young0f183a82017-02-28 09:58:04 -070054
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070055#ifdef VK_USE_PLATFORM_WIN32_KHR
56#include <windows.h>
57#include "vulkan_win32.h"
Mark Young0f183a82017-02-28 09:58:04 -070058#endif
59
Mark Young39389872017-01-19 21:10:49 -070060
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070061#ifdef VK_USE_PLATFORM_XCB_KHR
62#include <xcb/xcb.h>
63#include "vulkan_xcb.h"
Mark Young39389872017-01-19 21:10:49 -070064#endif
65
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070066
67#ifdef VK_USE_PLATFORM_XLIB_KHR
68#include <X11/Xlib.h>
69#include "vulkan_xlib.h"
70#endif
71
72
Mark Young39389872017-01-19 21:10:49 -070073#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070074#include <X11/Xlib.h>
Mark Young39389872017-01-19 21:10:49 -070075#include <X11/extensions/Xrandr.h>
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070076#include "vulkan_xlib_xrandr.h"
Mark Young39389872017-01-19 21:10:49 -070077#endif
78
Mike Schuchardtb4c9f672018-02-21 15:59:17 -070079#endif // VULKAN_H_