diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp index 2efc911..df24587 100644 --- a/include/vulkan/vulkan.hpp +++ b/include/vulkan/vulkan.hpp @@ -53,7 +53,7 @@ # include # define VULKAN_HPP_ASSERT assert #endif -static_assert( VK_HEADER_VERSION == 78 , "Wrong VK_HEADER_VERSION!" ); +static_assert( VK_HEADER_VERSION == 79 , "Wrong VK_HEADER_VERSION!" ); // 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default. // To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION @@ -30548,6 +30548,13 @@ public: }; static_assert( sizeof( DescriptorSetLayoutBindingFlagsCreateInfoEXT ) == sizeof( VkDescriptorSetLayoutBindingFlagsCreateInfoEXT ), "struct and wrapper have different size!" ); + enum class VendorId + { + eViv = VK_VENDOR_ID_VIV, + eVsi = VK_VENDOR_ID_VSI, + eKazan = VK_VENDOR_ID_KAZAN + }; + template Result enumerateInstanceVersion( uint32_t* pApiVersion, Dispatch const &d = Dispatch() ); #ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE @@ -43114,6 +43121,17 @@ public: return "{" + result.substr(0, result.size() - 3) + "}"; } + VULKAN_HPP_INLINE std::string to_string(VendorId value) + { + switch (value) + { + case VendorId::eViv: return "Viv"; + case VendorId::eVsi: return "Vsi"; + case VendorId::eKazan: return "Kazan"; + default: return "invalid"; + } + } + class DispatchLoaderDynamic { public: diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 75b4cf9..93aa65b 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -43,7 +43,7 @@ extern "C" { #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff) #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff) // Version of this file -#define VK_HEADER_VERSION 78 +#define VK_HEADER_VERSION 79 #define VK_NULL_HANDLE 0 @@ -1214,6 +1214,16 @@ typedef enum VkObjectType { VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF } VkObjectType; +typedef enum VkVendorId { + VK_VENDOR_ID_VIV = 0x10001, + VK_VENDOR_ID_VSI = 0x10002, + VK_VENDOR_ID_KAZAN = 0x10003, + VK_VENDOR_ID_BEGIN_RANGE = VK_VENDOR_ID_VIV, + VK_VENDOR_ID_END_RANGE = VK_VENDOR_ID_KAZAN, + VK_VENDOR_ID_RANGE_SIZE = (VK_VENDOR_ID_KAZAN - VK_VENDOR_ID_VIV + 1), + VK_VENDOR_ID_MAX_ENUM = 0x7FFFFFFF +} VkVendorId; + typedef VkFlags VkInstanceCreateFlags; typedef enum VkFormatFeatureFlagBits { diff --git a/registry/validusage.json b/registry/validusage.json index 22f65ba..1bd6b30 100644 --- a/registry/validusage.json +++ b/registry/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.1.78", - "comment": "from git branch: master commit: 9582bcb54e2cd0ea9441664fa6563e2687a9e32d", - "date": "2018-06-26 18:07:14Z" + "api version": "1.1.79", + "comment": "from git branch: master commit: ff9357a4bad5fa49b99b9d3f69d254e2a3f0f575", + "date": "2018-07-02 20:23:28Z" }, "validation": { "vkGetInstanceProcAddr": { @@ -5797,10 +5797,6 @@ { "vuid": "VUID-vkGetDeviceGroupPeerMemoryFeatures-pPeerMemoryFeatures-parameter", "text": " pPeerMemoryFeatures must be a valid pointer to a VkPeerMemoryFeatureFlags value" - }, - { - "vuid": "VUID-vkGetDeviceGroupPeerMemoryFeatures-pPeerMemoryFeatures-requiredbitmask", - "text": " pPeerMemoryFeatures must not be 0" } ] }, @@ -8964,6 +8960,10 @@ } ], "core": [ + { + "vuid": "VUID-VkDescriptorImageInfo-imageView-01976", + "text": " If imageView is created from a depth/stencil image, the aspectMask used to create the imageView must include either VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT but not both." + }, { "vuid": "VUID-VkDescriptorImageInfo-imageLayout-00344", "text": " imageLayout must match the actual VkImageLayout of each subresource accessible from imageView at the time this descriptor is accessed" diff --git a/registry/vk.xml b/registry/vk.xml index 5ae506e..99f0c6a 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -44,13 +44,6 @@ private version is maintained in the master branch of the member gitlab server. - - - - - - - @@ -153,7 +146,7 @@ server. // Vulkan 1.1 version number #define VK_API_VERSION_1_1 VK_MAKE_VERSION(1, 1, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 78 +#define VK_HEADER_VERSION 79 #define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; @@ -515,6 +508,9 @@ server. + Enumerated types in the header, but not used by the API + + The PFN_vk*Function types are used by VkAllocationCallbacks below typedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( void* pUserData, @@ -4179,6 +4175,15 @@ server. + + Vendor IDs are now represented as enums instead of the old + <vendorids> tag, allowing them to be included in the + API headers. + + + + + @@ -6328,6 +6333,7 @@ server. + @@ -8826,5 +8832,11 @@ server. + + + + + +