From 5a7389ed345e3aaf769470201453bc22f82fde90 Mon Sep 17 00:00:00 2001 From: Jon Ashburn Date: Tue, 8 Mar 2016 09:30:30 -0700 Subject: loader: gllvl #50, Add support for the WSI extension KHR_display Change-Id: I8d5ecc7500beba3042a6b9147b2f3fd3055b3b1d --- include/vulkan/vk_icd.h | 13 ++++++++++++- include/vulkan/vk_layer.h | 14 ++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/vulkan/vk_icd.h b/include/vulkan/vk_icd.h index 60b29e03..fdb1e6e4 100644 --- a/include/vulkan/vk_icd.h +++ b/include/vulkan/vk_icd.h @@ -30,7 +30,7 @@ #ifndef VKICD_H #define VKICD_H -#include "vk_platform.h" +#include "vulkan.h" /* * The ICD must reserve space for a pointer for the loader's dispatch @@ -65,6 +65,7 @@ typedef enum _VkIcdWsiPlatform { VK_ICD_WSI_PLATFORM_WIN32, VK_ICD_WSI_PLATFORM_XCB, VK_ICD_WSI_PLATFORM_XLIB, + VK_ICD_WSI_PLATFORM_DISPLAY } VkIcdWsiPlatform; typedef struct _VkIcdSurfaceBase { @@ -111,4 +112,14 @@ typedef struct _VkIcdSurfaceXlib { } VkIcdSurfaceXlib; #endif // VK_USE_PLATFORM_XLIB_KHR +typedef struct _VkIcdSurfaceDisplay { + VkIcdSurfaceBase base; + VkDisplayModeKHR displayMode; + uint32_t planeIndex; + uint32_t planeStackIndex; + VkSurfaceTransformFlagBitsKHR transform; + float globalAlpha; + VkDisplayPlaneAlphaFlagBitsKHR alphaMode; + VkExtent2D imageExtent; +} VkIcdSurfaceDisplay; #endif // VKICD_H diff --git a/include/vulkan/vk_layer.h b/include/vulkan/vk_layer.h index 9be3f1c7..95d88025 100644 --- a/include/vulkan/vk_layer.h +++ b/include/vulkan/vk_layer.h @@ -225,6 +225,20 @@ typedef struct VkLayerInstanceDispatchTable_ { #ifdef VK_USE_PLATFORM_ANDROID_KHR PFN_vkCreateAndroidSurfaceKHR CreateAndroidSurfaceKHR; #endif + PFN_vkGetPhysicalDeviceDisplayPropertiesKHR + GetPhysicalDeviceDisplayPropertiesKHR; + PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR + GetPhysicalDeviceDisplayPlanePropertiesKHR; + PFN_vkGetDisplayPlaneSupportedDisplaysKHR + GetDisplayPlaneSupportedDisplaysKHR; + PFN_vkGetDisplayModePropertiesKHR + GetDisplayModePropertiesKHR; + PFN_vkCreateDisplayModeKHR + CreateDisplayModeKHR; + PFN_vkGetDisplayPlaneCapabilitiesKHR + GetDisplayPlaneCapabilitiesKHR; + PFN_vkCreateDisplayPlaneSurfaceKHR + CreateDisplayPlaneSurfaceKHR; } VkLayerInstanceDispatchTable; // LL node for tree of dbg callback functions -- cgit v1.2.3