macOS: Add macOS support
This commit is contained in:
parent
8dc4305370
commit
09e2a11785
@ -44,12 +44,12 @@
|
|||||||
#define CURRENT_LOADER_ICD_INTERFACE_VERSION 5
|
#define CURRENT_LOADER_ICD_INTERFACE_VERSION 5
|
||||||
#define MIN_SUPPORTED_LOADER_ICD_INTERFACE_VERSION 0
|
#define MIN_SUPPORTED_LOADER_ICD_INTERFACE_VERSION 0
|
||||||
#define MIN_PHYS_DEV_EXTENSION_ICD_INTERFACE_VERSION 4
|
#define MIN_PHYS_DEV_EXTENSION_ICD_INTERFACE_VERSION 4
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkNegotiateLoaderICDInterfaceVersion)(uint32_t *pVersion);
|
typedef VkResult(VKAPI_PTR *PFN_vkNegotiateLoaderICDInterfaceVersion)(uint32_t *pVersion);
|
||||||
|
|
||||||
// This is defined in vk_layer.h which will be found by the loader, but if an ICD is building against this
|
// This is defined in vk_layer.h which will be found by the loader, but if an ICD is building against this
|
||||||
// file directly, it won't be found.
|
// file directly, it won't be found.
|
||||||
#ifndef PFN_GetPhysicalDeviceProcAddr
|
#ifndef PFN_GetPhysicalDeviceProcAddr
|
||||||
typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char* pName);
|
typedef PFN_vkVoidFunction(VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char *pName);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -85,6 +85,9 @@ typedef enum {
|
|||||||
VK_ICD_WSI_PLATFORM_WIN32,
|
VK_ICD_WSI_PLATFORM_WIN32,
|
||||||
VK_ICD_WSI_PLATFORM_XCB,
|
VK_ICD_WSI_PLATFORM_XCB,
|
||||||
VK_ICD_WSI_PLATFORM_XLIB,
|
VK_ICD_WSI_PLATFORM_XLIB,
|
||||||
|
VK_ICD_WSI_PLATFORM_ANDROID,
|
||||||
|
VK_ICD_WSI_PLATFORM_MACOS,
|
||||||
|
VK_ICD_WSI_PLATFORM_IOS,
|
||||||
VK_ICD_WSI_PLATFORM_DISPLAY
|
VK_ICD_WSI_PLATFORM_DISPLAY
|
||||||
} VkIcdWsiPlatform;
|
} VkIcdWsiPlatform;
|
||||||
|
|
||||||
@ -98,7 +101,7 @@ typedef struct {
|
|||||||
MirConnection *connection;
|
MirConnection *connection;
|
||||||
MirSurface *mirSurface;
|
MirSurface *mirSurface;
|
||||||
} VkIcdSurfaceMir;
|
} VkIcdSurfaceMir;
|
||||||
#endif // VK_USE_PLATFORM_MIR_KHR
|
#endif // VK_USE_PLATFORM_MIR_KHR
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -106,7 +109,7 @@ typedef struct {
|
|||||||
struct wl_display *display;
|
struct wl_display *display;
|
||||||
struct wl_surface *surface;
|
struct wl_surface *surface;
|
||||||
} VkIcdSurfaceWayland;
|
} VkIcdSurfaceWayland;
|
||||||
#endif // VK_USE_PLATFORM_WAYLAND_KHR
|
#endif // VK_USE_PLATFORM_WAYLAND_KHR
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -114,7 +117,7 @@ typedef struct {
|
|||||||
HINSTANCE hinstance;
|
HINSTANCE hinstance;
|
||||||
HWND hwnd;
|
HWND hwnd;
|
||||||
} VkIcdSurfaceWin32;
|
} VkIcdSurfaceWin32;
|
||||||
#endif // VK_USE_PLATFORM_WIN32_KHR
|
#endif // VK_USE_PLATFORM_WIN32_KHR
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -122,7 +125,7 @@ typedef struct {
|
|||||||
xcb_connection_t *connection;
|
xcb_connection_t *connection;
|
||||||
xcb_window_t window;
|
xcb_window_t window;
|
||||||
} VkIcdSurfaceXcb;
|
} VkIcdSurfaceXcb;
|
||||||
#endif // VK_USE_PLATFORM_XCB_KHR
|
#endif // VK_USE_PLATFORM_XCB_KHR
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -130,13 +133,28 @@ typedef struct {
|
|||||||
Display *dpy;
|
Display *dpy;
|
||||||
Window window;
|
Window window;
|
||||||
} VkIcdSurfaceXlib;
|
} VkIcdSurfaceXlib;
|
||||||
#endif // VK_USE_PLATFORM_XLIB_KHR
|
#endif // VK_USE_PLATFORM_XLIB_KHR
|
||||||
|
|
||||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||||
typedef struct {
|
typedef struct {
|
||||||
ANativeWindow* window;
|
VkIcdSurfaceBase base;
|
||||||
|
ANativeWindow *window;
|
||||||
} VkIcdSurfaceAndroid;
|
} VkIcdSurfaceAndroid;
|
||||||
#endif //VK_USE_PLATFORM_ANDROID_KHR
|
#endif // VK_USE_PLATFORM_ANDROID_KHR
|
||||||
|
|
||||||
|
#ifdef VK_USE_PLATFORM_MACOS_MVK
|
||||||
|
typedef struct {
|
||||||
|
VkIcdSurfaceBase base;
|
||||||
|
const void *pView;
|
||||||
|
} VkIcdSurfaceMacOS;
|
||||||
|
#endif // VK_USE_PLATFORM_MACOS_MVK
|
||||||
|
|
||||||
|
#ifdef VK_USE_PLATFORM_IOS_MVK
|
||||||
|
typedef struct {
|
||||||
|
VkIcdSurfaceBase base;
|
||||||
|
const void *pView;
|
||||||
|
} VkIcdSurfaceIOS;
|
||||||
|
#endif // VK_USE_PLATFORM_IOS_MVK
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
VkIcdSurfaceBase base;
|
VkIcdSurfaceBase base;
|
||||||
@ -149,4 +167,4 @@ typedef struct {
|
|||||||
VkExtent2D imageExtent;
|
VkExtent2D imageExtent;
|
||||||
} VkIcdSurfaceDisplay;
|
} VkIcdSurfaceDisplay;
|
||||||
|
|
||||||
#endif // VKICD_H
|
#endif // VKICD_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user