diff --git a/include/vulkan/vk_icd.h b/include/vulkan/vk_icd.h index 4cdb2eb..5dd11ff 100644 --- a/include/vulkan/vk_icd.h +++ b/include/vulkan/vk_icd.h @@ -1,3 +1,36 @@ +// +// File: vk_icd.h +// +/* + * Copyright (c) 2015-2016 The Khronos Group Inc. + * Copyright (c) 2015-2016 Valve Corporation + * Copyright (c) 2015-2016 LunarG, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and/or associated documentation files (the "Materials"), to + * deal in the Materials without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Materials, and to permit persons to whom the Materials are + * furnished to do so, subject to the following conditions: + * + * The above copyright notice(s) and this permission notice shall be included in + * all copies or substantial portions of the Materials. + * + * The Materials are Confidential Information as defined by the Khronos + * Membership Agreement until designated non-confidential by Khronos, at which + * point this condition clause shall be removed. + * + * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR + * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE + * USE OR OTHER DEALINGS IN THE MATERIALS. + * + */ + #ifndef VKICD_H #define VKICD_H @@ -9,20 +42,20 @@ * The ICD must initialize this variable using the SET_LOADER_MAGIC_VALUE macro. */ -#define ICD_LOADER_MAGIC 0x01CDC0DE +#define ICD_LOADER_MAGIC 0x01CDC0DE typedef union _VK_LOADER_DATA { - uintptr_t loaderMagic; - void *loaderData; + uintptr_t loaderMagic; + void *loaderData; } VK_LOADER_DATA; -static inline void set_loader_magic_value(void* pNewObject) { - VK_LOADER_DATA *loader_info = (VK_LOADER_DATA *) pNewObject; +static inline void set_loader_magic_value(void *pNewObject) { + VK_LOADER_DATA *loader_info = (VK_LOADER_DATA *)pNewObject; loader_info->loaderMagic = ICD_LOADER_MAGIC; } -static inline bool valid_loader_magic_value(void* pNewObject) { - const VK_LOADER_DATA *loader_info = (VK_LOADER_DATA *) pNewObject; +static inline bool valid_loader_magic_value(void *pNewObject) { + const VK_LOADER_DATA *loader_info = (VK_LOADER_DATA *)pNewObject; return (loader_info->loaderMagic & 0xffffffff) == ICD_LOADER_MAGIC; } @@ -39,48 +72,47 @@ typedef enum _VkIcdWsiPlatform { } VkIcdWsiPlatform; typedef struct _VkIcdSurfaceBase { - VkIcdWsiPlatform platform; + VkIcdWsiPlatform platform; } VkIcdSurfaceBase; #ifdef VK_USE_PLATFORM_MIR_KHR typedef struct _VkIcdSurfaceMir { - VkIcdSurfaceBase base; - MirConnection* connection; - MirSurface* mirSurface; + VkIcdSurfaceBase base; + MirConnection *connection; + MirSurface *mirSurface; } VkIcdSurfaceMir; #endif // VK_USE_PLATFORM_MIR_KHR #ifdef VK_USE_PLATFORM_WAYLAND_KHR typedef struct _VkIcdSurfaceWayland { - VkIcdSurfaceBase base; - struct wl_display* display; - struct wl_surface* surface; + VkIcdSurfaceBase base; + struct wl_display *display; + struct wl_surface *surface; } VkIcdSurfaceWayland; #endif // VK_USE_PLATFORM_WAYLAND_KHR #ifdef VK_USE_PLATFORM_WIN32_KHR typedef struct _VkIcdSurfaceWin32 { - VkIcdSurfaceBase base; - HINSTANCE hinstance; - HWND hwnd; + VkIcdSurfaceBase base; + HINSTANCE hinstance; + HWND hwnd; } VkIcdSurfaceWin32; #endif // VK_USE_PLATFORM_WIN32_KHR #ifdef VK_USE_PLATFORM_XCB_KHR typedef struct _VkIcdSurfaceXcb { - VkIcdSurfaceBase base; - xcb_connection_t* connection; - xcb_window_t window; + VkIcdSurfaceBase base; + xcb_connection_t *connection; + xcb_window_t window; } VkIcdSurfaceXcb; #endif // VK_USE_PLATFORM_XCB_KHR #ifdef VK_USE_PLATFORM_XLIB_KHR typedef struct _VkIcdSurfaceXlib { - VkIcdSurfaceBase base; - Display* dpy; - Window window; + VkIcdSurfaceBase base; + Display *dpy; + Window window; } VkIcdSurfaceXlib; #endif // VK_USE_PLATFORM_XLIB_KHR #endif // VKICD_H -