Update for Vulkan-Docs 1.3.271
This commit is contained in:
parent
7d92fe7b68
commit
9d27c893cd
@ -9,8 +9,9 @@
|
|||||||
#define VULKAN_HPP
|
#define VULKAN_HPP
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <array> // ArrayWrapperND
|
#include <array> // ArrayWrapperND
|
||||||
#include <string> // std::string
|
#include <string.h> // strnlen
|
||||||
|
#include <string> // std::string
|
||||||
#include <vulkan/vulkan.h>
|
#include <vulkan/vulkan.h>
|
||||||
#include <vulkan/vulkan_hpp_macros.hpp>
|
#include <vulkan/vulkan_hpp_macros.hpp>
|
||||||
|
|
||||||
@ -55,7 +56,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h
|
|||||||
# include <span>
|
# include <span>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static_assert( VK_HEADER_VERSION == 270, "Wrong VK_HEADER_VERSION!" );
|
static_assert( VK_HEADER_VERSION == 271, "Wrong VK_HEADER_VERSION!" );
|
||||||
|
|
||||||
// <tuple> includes <sys/sysmacros.h> through some other header
|
// <tuple> includes <sys/sysmacros.h> through some other header
|
||||||
// this results in major(x) being resolved to gnu_dev_major(x)
|
// this results in major(x) being resolved to gnu_dev_major(x)
|
||||||
@ -134,14 +135,14 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0>
|
template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0>
|
||||||
operator std::string() const
|
operator std::string() const
|
||||||
{
|
{
|
||||||
return std::string( this->data(), N );
|
return std::string( this->data(), strnlen( this->data(), N ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 17 <= VULKAN_HPP_CPP_VERSION
|
#if 17 <= VULKAN_HPP_CPP_VERSION
|
||||||
template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0>
|
template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0>
|
||||||
operator std::string_view() const
|
operator std::string_view() const
|
||||||
{
|
{
|
||||||
return std::string_view( this->data(), N );
|
return std::string_view( this->data(), strnlen( this->data(), N ) );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -5796,12 +5797,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
return ::vkSetLatencyMarkerNV( device, swapchain, pLatencyMarkerInfo );
|
return ::vkSetLatencyMarkerNV( device, swapchain, pLatencyMarkerInfo );
|
||||||
}
|
}
|
||||||
|
|
||||||
void vkGetLatencyTimingsNV( VkDevice device,
|
void vkGetLatencyTimingsNV( VkDevice device, VkSwapchainKHR swapchain, VkGetLatencyMarkerInfoNV * pLatencyMarkerInfo ) const VULKAN_HPP_NOEXCEPT
|
||||||
VkSwapchainKHR swapchain,
|
|
||||||
uint32_t * pTimingCount,
|
|
||||||
VkGetLatencyMarkerInfoNV * pLatencyMarkerInfo ) const VULKAN_HPP_NOEXCEPT
|
|
||||||
{
|
{
|
||||||
return ::vkGetLatencyTimingsNV( device, swapchain, pTimingCount, pLatencyMarkerInfo );
|
return ::vkGetLatencyTimingsNV( device, swapchain, pLatencyMarkerInfo );
|
||||||
}
|
}
|
||||||
|
|
||||||
void vkQueueNotifyOutOfBandNV( VkQueue queue, const VkOutOfBandQueueTypeInfoNV * pQueueTypeInfo ) const VULKAN_HPP_NOEXCEPT
|
void vkQueueNotifyOutOfBandNV( VkQueue queue, const VkOutOfBandQueueTypeInfoNV * pQueueTypeInfo ) const VULKAN_HPP_NOEXCEPT
|
||||||
|
@ -69,7 +69,7 @@ extern "C" {
|
|||||||
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
|
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
|
||||||
|
|
||||||
// Version of this file
|
// Version of this file
|
||||||
#define VK_HEADER_VERSION 270
|
#define VK_HEADER_VERSION 271
|
||||||
|
|
||||||
// Complete version of this file
|
// Complete version of this file
|
||||||
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
|
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
|
||||||
@ -10779,8 +10779,8 @@ typedef enum VkDebugReportObjectTypeEXT {
|
|||||||
VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT = 1000029001,
|
VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT = 1000029001,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000,
|
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000150000,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
|
VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV = 1000307000,
|
VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV_EXT = 1000307000,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV = 1000307001,
|
VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV_EXT = 1000307001,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT = 1000366000,
|
VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT = 1000366000,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
|
VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
|
||||||
VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
|
VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
|
||||||
@ -17790,7 +17790,7 @@ typedef struct VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT {
|
|||||||
|
|
||||||
// VK_NV_low_latency2 is a preprocessor guard. Do not pass it to API calls.
|
// VK_NV_low_latency2 is a preprocessor guard. Do not pass it to API calls.
|
||||||
#define VK_NV_low_latency2 1
|
#define VK_NV_low_latency2 1
|
||||||
#define VK_NV_LOW_LATENCY_2_SPEC_VERSION 1
|
#define VK_NV_LOW_LATENCY_2_SPEC_VERSION 2
|
||||||
#define VK_NV_LOW_LATENCY_2_EXTENSION_NAME "VK_NV_low_latency2"
|
#define VK_NV_LOW_LATENCY_2_EXTENSION_NAME "VK_NV_low_latency2"
|
||||||
|
|
||||||
typedef enum VkLatencyMarkerNV {
|
typedef enum VkLatencyMarkerNV {
|
||||||
@ -17858,6 +17858,7 @@ typedef struct VkLatencyTimingsFrameReportNV {
|
|||||||
typedef struct VkGetLatencyMarkerInfoNV {
|
typedef struct VkGetLatencyMarkerInfoNV {
|
||||||
VkStructureType sType;
|
VkStructureType sType;
|
||||||
const void* pNext;
|
const void* pNext;
|
||||||
|
uint32_t timingCount;
|
||||||
VkLatencyTimingsFrameReportNV* pTimings;
|
VkLatencyTimingsFrameReportNV* pTimings;
|
||||||
} VkGetLatencyMarkerInfoNV;
|
} VkGetLatencyMarkerInfoNV;
|
||||||
|
|
||||||
@ -17889,7 +17890,7 @@ typedef struct VkLatencySurfaceCapabilitiesNV {
|
|||||||
typedef VkResult (VKAPI_PTR *PFN_vkSetLatencySleepModeNV)(VkDevice device, VkSwapchainKHR swapchain, const VkLatencySleepModeInfoNV* pSleepModeInfo);
|
typedef VkResult (VKAPI_PTR *PFN_vkSetLatencySleepModeNV)(VkDevice device, VkSwapchainKHR swapchain, const VkLatencySleepModeInfoNV* pSleepModeInfo);
|
||||||
typedef VkResult (VKAPI_PTR *PFN_vkLatencySleepNV)(VkDevice device, VkSwapchainKHR swapchain, const VkLatencySleepInfoNV* pSleepInfo);
|
typedef VkResult (VKAPI_PTR *PFN_vkLatencySleepNV)(VkDevice device, VkSwapchainKHR swapchain, const VkLatencySleepInfoNV* pSleepInfo);
|
||||||
typedef void (VKAPI_PTR *PFN_vkSetLatencyMarkerNV)(VkDevice device, VkSwapchainKHR swapchain, const VkSetLatencyMarkerInfoNV* pLatencyMarkerInfo);
|
typedef void (VKAPI_PTR *PFN_vkSetLatencyMarkerNV)(VkDevice device, VkSwapchainKHR swapchain, const VkSetLatencyMarkerInfoNV* pLatencyMarkerInfo);
|
||||||
typedef void (VKAPI_PTR *PFN_vkGetLatencyTimingsNV)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pTimingCount, VkGetLatencyMarkerInfoNV* pLatencyMarkerInfo);
|
typedef void (VKAPI_PTR *PFN_vkGetLatencyTimingsNV)(VkDevice device, VkSwapchainKHR swapchain, VkGetLatencyMarkerInfoNV* pLatencyMarkerInfo);
|
||||||
typedef void (VKAPI_PTR *PFN_vkQueueNotifyOutOfBandNV)(VkQueue queue, const VkOutOfBandQueueTypeInfoNV* pQueueTypeInfo);
|
typedef void (VKAPI_PTR *PFN_vkQueueNotifyOutOfBandNV)(VkQueue queue, const VkOutOfBandQueueTypeInfoNV* pQueueTypeInfo);
|
||||||
|
|
||||||
#ifndef VK_NO_PROTOTYPES
|
#ifndef VK_NO_PROTOTYPES
|
||||||
@ -17911,7 +17912,6 @@ VKAPI_ATTR void VKAPI_CALL vkSetLatencyMarkerNV(
|
|||||||
VKAPI_ATTR void VKAPI_CALL vkGetLatencyTimingsNV(
|
VKAPI_ATTR void VKAPI_CALL vkGetLatencyTimingsNV(
|
||||||
VkDevice device,
|
VkDevice device,
|
||||||
VkSwapchainKHR swapchain,
|
VkSwapchainKHR swapchain,
|
||||||
uint32_t* pTimingCount,
|
|
||||||
VkGetLatencyMarkerInfoNV* pLatencyMarkerInfo);
|
VkGetLatencyMarkerInfoNV* pLatencyMarkerInfo);
|
||||||
|
|
||||||
VKAPI_ATTR void VKAPI_CALL vkQueueNotifyOutOfBandNV(
|
VKAPI_ATTR void VKAPI_CALL vkQueueNotifyOutOfBandNV(
|
||||||
|
@ -4676,8 +4676,8 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT,
|
eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT,
|
||||||
eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT,
|
eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT,
|
||||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||||
eCudaModuleNV = VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV,
|
eCudaModuleNV = VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV_EXT,
|
||||||
eCudaFunctionNV = VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV,
|
eCudaFunctionNV = VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV_EXT,
|
||||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||||
#if defined( VK_USE_PLATFORM_FUCHSIA )
|
#if defined( VK_USE_PLATFORM_FUCHSIA )
|
||||||
eBufferCollectionFUCHSIA = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT
|
eBufferCollectionFUCHSIA = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT
|
||||||
@ -7326,8 +7326,8 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||||
//=== VK_NV_cuda_kernel_launch ===
|
//=== VK_NV_cuda_kernel_launch ===
|
||||||
case VULKAN_HPP_NAMESPACE::ObjectType::eCudaModuleNV: return VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
case VULKAN_HPP_NAMESPACE::ObjectType::eCudaModuleNV: return VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaModuleNV;
|
||||||
case VULKAN_HPP_NAMESPACE::ObjectType::eCudaFunctionNV: return VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
case VULKAN_HPP_NAMESPACE::ObjectType::eCudaFunctionNV: return VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaFunctionNV;
|
||||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||||
|
|
||||||
#if defined( VK_USE_PLATFORM_FUCHSIA )
|
#if defined( VK_USE_PLATFORM_FUCHSIA )
|
||||||
|
@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <set>
|
#include <set>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
#include <vulkan/vulkan.hpp>
|
#include <vulkan/vulkan.hpp>
|
||||||
|
|
||||||
namespace VULKAN_HPP_NAMESPACE
|
namespace VULKAN_HPP_NAMESPACE
|
||||||
|
@ -23170,29 +23170,24 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
template <typename Dispatch>
|
template <typename Dispatch>
|
||||||
VULKAN_HPP_INLINE void Device::getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
|
VULKAN_HPP_INLINE void Device::getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
|
||||||
uint32_t * pTimingCount,
|
|
||||||
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV * pLatencyMarkerInfo,
|
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV * pLatencyMarkerInfo,
|
||||||
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
|
Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
|
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
|
||||||
d.vkGetLatencyTimingsNV(
|
d.vkGetLatencyTimingsNV( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<VkGetLatencyMarkerInfoNV *>( pLatencyMarkerInfo ) );
|
||||||
m_device, static_cast<VkSwapchainKHR>( swapchain ), pTimingCount, reinterpret_cast<VkGetLatencyMarkerInfoNV *>( pLatencyMarkerInfo ) );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
|
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
|
||||||
template <typename Dispatch>
|
template <typename Dispatch>
|
||||||
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<uint32_t, VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV>
|
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV
|
||||||
Device::getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
|
Device::getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain, Dispatch const & d ) const VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
|
VULKAN_HPP_ASSERT( d.getVkHeaderVersion() == VK_HEADER_VERSION );
|
||||||
|
|
||||||
std::pair<uint32_t, VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV> data_;
|
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV latencyMarkerInfo;
|
||||||
uint32_t & timingCount = data_.first;
|
d.vkGetLatencyTimingsNV( m_device, static_cast<VkSwapchainKHR>( swapchain ), reinterpret_cast<VkGetLatencyMarkerInfoNV *>( &latencyMarkerInfo ) );
|
||||||
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV & latencyMarkerInfo = data_.second;
|
|
||||||
d.vkGetLatencyTimingsNV(
|
|
||||||
m_device, static_cast<VkSwapchainKHR>( swapchain ), &timingCount, reinterpret_cast<VkGetLatencyMarkerInfoNV *>( &latencyMarkerInfo ) );
|
|
||||||
|
|
||||||
return data_;
|
return latencyMarkerInfo;
|
||||||
}
|
}
|
||||||
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
|
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
|
||||||
|
|
||||||
|
@ -7179,7 +7179,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaFunctionNV;
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaFunctionNV;
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
||||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaFunctionNV;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
VULKAN_HPP_CONSTEXPR CudaFunctionNV() = default;
|
VULKAN_HPP_CONSTEXPR CudaFunctionNV() = default;
|
||||||
@ -7244,6 +7244,12 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
using Type = VULKAN_HPP_NAMESPACE::CudaFunctionNV;
|
using Type = VULKAN_HPP_NAMESPACE::CudaFunctionNV;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
template <>
|
||||||
|
struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaFunctionNV>
|
||||||
|
{
|
||||||
|
using Type = VULKAN_HPP_NAMESPACE::CudaFunctionNV;
|
||||||
|
};
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CudaFunctionNV>
|
struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CudaFunctionNV>
|
||||||
{
|
{
|
||||||
@ -7260,7 +7266,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaModuleNV;
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaModuleNV;
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
||||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaModuleNV;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
VULKAN_HPP_CONSTEXPR CudaModuleNV() = default;
|
VULKAN_HPP_CONSTEXPR CudaModuleNV() = default;
|
||||||
@ -7325,6 +7331,12 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
using Type = VULKAN_HPP_NAMESPACE::CudaModuleNV;
|
using Type = VULKAN_HPP_NAMESPACE::CudaModuleNV;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
template <>
|
||||||
|
struct CppType<VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT, VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaModuleNV>
|
||||||
|
{
|
||||||
|
using Type = VULKAN_HPP_NAMESPACE::CudaModuleNV;
|
||||||
|
};
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CudaModuleNV>
|
struct isVulkanHandleType<VULKAN_HPP_NAMESPACE::CudaModuleNV>
|
||||||
{
|
{
|
||||||
@ -13562,12 +13574,11 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
||||||
void getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
|
void getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
|
||||||
uint32_t * pTimingCount,
|
|
||||||
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV * pLatencyMarkerInfo,
|
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV * pLatencyMarkerInfo,
|
||||||
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
|
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
|
||||||
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
|
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
|
||||||
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
||||||
VULKAN_HPP_NODISCARD std::pair<uint32_t, VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV>
|
VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV
|
||||||
getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
|
getLatencyTimingsNV( VULKAN_HPP_NAMESPACE::SwapchainKHR swapchain,
|
||||||
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
|
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
|
||||||
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
|
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
|
||||||
|
@ -5191,6 +5191,7 @@ namespace std
|
|||||||
std::size_t seed = 0;
|
std::size_t seed = 0;
|
||||||
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.sType );
|
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.sType );
|
||||||
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.pNext );
|
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.pNext );
|
||||||
|
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.timingCount );
|
||||||
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.pTimings );
|
VULKAN_HPP_HASH_COMBINE( seed, getLatencyMarkerInfoNV.pTimings );
|
||||||
return seed;
|
return seed;
|
||||||
}
|
}
|
||||||
|
@ -28,6 +28,13 @@
|
|||||||
# error "vulkan.hpp needs at least c++ standard version 11"
|
# error "vulkan.hpp needs at least c++ standard version 11"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// include headers holding feature-test macros
|
||||||
|
#if 20 <= VULKAN_HPP_CPP_VERSION
|
||||||
|
# include <version>
|
||||||
|
#else
|
||||||
|
# include <ciso646>
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
|
#if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
|
||||||
# if !defined( VULKAN_HPP_NO_SMART_HANDLE )
|
# if !defined( VULKAN_HPP_NO_SMART_HANDLE )
|
||||||
# define VULKAN_HPP_NO_SMART_HANDLE
|
# define VULKAN_HPP_NO_SMART_HANDLE
|
||||||
|
@ -6482,7 +6482,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaFunctionNV;
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaFunctionNV;
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
||||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaFunctionNV;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CudaFunctionNV( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
|
CudaFunctionNV( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
|
||||||
@ -6604,7 +6604,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaModuleNV;
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::ObjectType objectType = VULKAN_HPP_NAMESPACE::ObjectType::eCudaModuleNV;
|
||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
static VULKAN_HPP_CONST_OR_CONSTEXPR VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT debugReportObjectType =
|
||||||
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eUnknown;
|
VULKAN_HPP_NAMESPACE::DebugReportObjectTypeEXT::eCudaModuleNV;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CudaModuleNV( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
|
CudaModuleNV( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::Device const & device,
|
||||||
@ -11650,7 +11650,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
void setLatencyMarkerNV( const VULKAN_HPP_NAMESPACE::SetLatencyMarkerInfoNV & latencyMarkerInfo ) const VULKAN_HPP_NOEXCEPT;
|
void setLatencyMarkerNV( const VULKAN_HPP_NAMESPACE::SetLatencyMarkerInfoNV & latencyMarkerInfo ) const VULKAN_HPP_NOEXCEPT;
|
||||||
|
|
||||||
VULKAN_HPP_NODISCARD std::pair<uint32_t, VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV> getLatencyTimingsNV() const VULKAN_HPP_NOEXCEPT;
|
VULKAN_HPP_NODISCARD VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV getLatencyTimingsNV() const VULKAN_HPP_NOEXCEPT;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
VULKAN_HPP_NAMESPACE::Device m_device = {};
|
VULKAN_HPP_NAMESPACE::Device m_device = {};
|
||||||
@ -21106,20 +21106,15 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
reinterpret_cast<const VkSetLatencyMarkerInfoNV *>( &latencyMarkerInfo ) );
|
reinterpret_cast<const VkSetLatencyMarkerInfoNV *>( &latencyMarkerInfo ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE std::pair<uint32_t, VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV>
|
VULKAN_HPP_NODISCARD VULKAN_HPP_INLINE VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV SwapchainKHR::getLatencyTimingsNV() const VULKAN_HPP_NOEXCEPT
|
||||||
SwapchainKHR::getLatencyTimingsNV() const VULKAN_HPP_NOEXCEPT
|
|
||||||
{
|
{
|
||||||
VULKAN_HPP_ASSERT( getDispatcher()->vkGetLatencyTimingsNV && "Function <vkGetLatencyTimingsNV> requires <VK_NV_low_latency2>" );
|
VULKAN_HPP_ASSERT( getDispatcher()->vkGetLatencyTimingsNV && "Function <vkGetLatencyTimingsNV> requires <VK_NV_low_latency2>" );
|
||||||
|
|
||||||
std::pair<uint32_t, VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV> data_;
|
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV latencyMarkerInfo;
|
||||||
uint32_t & timingCount = data_.first;
|
getDispatcher()->vkGetLatencyTimingsNV(
|
||||||
VULKAN_HPP_NAMESPACE::GetLatencyMarkerInfoNV & latencyMarkerInfo = data_.second;
|
static_cast<VkDevice>( m_device ), static_cast<VkSwapchainKHR>( m_swapchain ), reinterpret_cast<VkGetLatencyMarkerInfoNV *>( &latencyMarkerInfo ) );
|
||||||
getDispatcher()->vkGetLatencyTimingsNV( static_cast<VkDevice>( m_device ),
|
|
||||||
static_cast<VkSwapchainKHR>( m_swapchain ),
|
|
||||||
&timingCount,
|
|
||||||
reinterpret_cast<VkGetLatencyMarkerInfoNV *>( &latencyMarkerInfo ) );
|
|
||||||
|
|
||||||
return data_;
|
return latencyMarkerInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
VULKAN_HPP_INLINE void Queue::notifyOutOfBandNV( const VULKAN_HPP_NAMESPACE::OutOfBandQueueTypeInfoNV & queueTypeInfo ) const VULKAN_HPP_NOEXCEPT
|
VULKAN_HPP_INLINE void Queue::notifyOutOfBandNV( const VULKAN_HPP_NAMESPACE::OutOfBandQueueTypeInfoNV & queueTypeInfo ) const VULKAN_HPP_NOEXCEPT
|
||||||
|
@ -38980,9 +38980,11 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGetLatencyMarkerInfoNV;
|
static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eGetLatencyMarkerInfoNV;
|
||||||
|
|
||||||
#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
|
#if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
|
||||||
VULKAN_HPP_CONSTEXPR GetLatencyMarkerInfoNV( VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * pTimings_ = {},
|
VULKAN_HPP_CONSTEXPR GetLatencyMarkerInfoNV( uint32_t timingCount_ = {},
|
||||||
const void * pNext_ = nullptr ) VULKAN_HPP_NOEXCEPT
|
VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * pTimings_ = {},
|
||||||
|
const void * pNext_ = nullptr ) VULKAN_HPP_NOEXCEPT
|
||||||
: pNext( pNext_ )
|
: pNext( pNext_ )
|
||||||
|
, timingCount( timingCount_ )
|
||||||
, pTimings( pTimings_ )
|
, pTimings( pTimings_ )
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -38994,6 +38996,14 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
|
||||||
|
GetLatencyMarkerInfoNV( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV> const & timings_,
|
||||||
|
const void * pNext_ = nullptr )
|
||||||
|
: pNext( pNext_ ), timingCount( static_cast<uint32_t>( timings_.size() ) ), pTimings( timings_.data() )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
|
||||||
|
|
||||||
GetLatencyMarkerInfoNV & operator=( GetLatencyMarkerInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
|
GetLatencyMarkerInfoNV & operator=( GetLatencyMarkerInfoNV const & rhs ) VULKAN_HPP_NOEXCEPT = default;
|
||||||
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
|
#endif /*VULKAN_HPP_NO_STRUCT_CONSTRUCTORS*/
|
||||||
|
|
||||||
@ -39010,12 +39020,28 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VULKAN_HPP_CONSTEXPR_14 GetLatencyMarkerInfoNV & setTimingCount( uint32_t timingCount_ ) VULKAN_HPP_NOEXCEPT
|
||||||
|
{
|
||||||
|
timingCount = timingCount_;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
VULKAN_HPP_CONSTEXPR_14 GetLatencyMarkerInfoNV & setPTimings( VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * pTimings_ ) VULKAN_HPP_NOEXCEPT
|
VULKAN_HPP_CONSTEXPR_14 GetLatencyMarkerInfoNV & setPTimings( VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * pTimings_ ) VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
pTimings = pTimings_;
|
pTimings = pTimings_;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
|
|
||||||
|
# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
|
||||||
|
GetLatencyMarkerInfoNV &
|
||||||
|
setTimings( VULKAN_HPP_NAMESPACE::ArrayProxyNoTemporaries<VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV> const & timings_ ) VULKAN_HPP_NOEXCEPT
|
||||||
|
{
|
||||||
|
timingCount = static_cast<uint32_t>( timings_.size() );
|
||||||
|
pTimings = timings_.data();
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
|
||||||
|
#endif /*VULKAN_HPP_NO_STRUCT_SETTERS*/
|
||||||
|
|
||||||
operator VkGetLatencyMarkerInfoNV const &() const VULKAN_HPP_NOEXCEPT
|
operator VkGetLatencyMarkerInfoNV const &() const VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
@ -39031,11 +39057,11 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
# if 14 <= VULKAN_HPP_CPP_VERSION
|
# if 14 <= VULKAN_HPP_CPP_VERSION
|
||||||
auto
|
auto
|
||||||
# else
|
# else
|
||||||
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void * const &, VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * const &>
|
std::tuple<VULKAN_HPP_NAMESPACE::StructureType const &, const void * const &, uint32_t const &, VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * const &>
|
||||||
# endif
|
# endif
|
||||||
reflect() const VULKAN_HPP_NOEXCEPT
|
reflect() const VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
return std::tie( sType, pNext, pTimings );
|
return std::tie( sType, pNext, timingCount, pTimings );
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -39047,7 +39073,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
# if defined( VULKAN_HPP_USE_REFLECT )
|
# if defined( VULKAN_HPP_USE_REFLECT )
|
||||||
return this->reflect() == rhs.reflect();
|
return this->reflect() == rhs.reflect();
|
||||||
# else
|
# else
|
||||||
return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( pTimings == rhs.pTimings );
|
return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( timingCount == rhs.timingCount ) && ( pTimings == rhs.pTimings );
|
||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -39058,9 +39084,10 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
public:
|
public:
|
||||||
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGetLatencyMarkerInfoNV;
|
VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::eGetLatencyMarkerInfoNV;
|
||||||
const void * pNext = {};
|
const void * pNext = {};
|
||||||
VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * pTimings = {};
|
uint32_t timingCount = {};
|
||||||
|
VULKAN_HPP_NAMESPACE::LatencyTimingsFrameReportNV * pTimings = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
|
@ -64,9 +64,8 @@ def regSortCategoryKey(feature):
|
|||||||
return 0.5
|
return 0.5
|
||||||
else:
|
else:
|
||||||
return 0
|
return 0
|
||||||
if (feature.category == 'ARB'
|
|
||||||
or feature.category == 'KHR'
|
if feature.category.upper() in ['ARB', 'KHR', 'OES']:
|
||||||
or feature.category == 'OES'):
|
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
return 2
|
return 2
|
||||||
|
@ -52,45 +52,20 @@ import operator
|
|||||||
import pyparsing as pp
|
import pyparsing as pp
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
from apiconventions import APIConventions as APIConventions
|
||||||
|
conventions = APIConventions()
|
||||||
|
|
||||||
def markupPassthrough(name):
|
def markupPassthrough(name):
|
||||||
"""Pass a name (leaf or operator) through without applying markup"""
|
"""Pass a name (leaf or operator) through without applying markup"""
|
||||||
return name
|
return name
|
||||||
|
|
||||||
# A regexp matching Vulkan and VulkanSC core version names
|
|
||||||
# The Conventions is_api_version_name() method is similar, but does not
|
|
||||||
# return the matches.
|
|
||||||
apiVersionNamePat = re.compile(r'(VK|VKSC)_VERSION_([0-9]+)_([0-9]+)')
|
|
||||||
|
|
||||||
def apiVersionNameMatch(name):
|
|
||||||
"""Return [ apivariant, major, minor ] if name is an API version name,
|
|
||||||
or [ None, None, None ] if it is not."""
|
|
||||||
|
|
||||||
match = apiVersionNamePat.match(name)
|
|
||||||
if match is not None:
|
|
||||||
return [ match.group(1), match.group(2), match.group(3) ]
|
|
||||||
else:
|
|
||||||
return [ None, None, None ]
|
|
||||||
|
|
||||||
def leafMarkupAsciidoc(name):
|
def leafMarkupAsciidoc(name):
|
||||||
"""Markup a leaf name as an asciidoc link to an API version or extension
|
"""Markup a leaf name as an asciidoc link to an API version or extension
|
||||||
anchor.
|
anchor.
|
||||||
|
|
||||||
- name - version or extension name"""
|
- name - version or extension name"""
|
||||||
|
|
||||||
(apivariant, major, minor) = apiVersionNameMatch(name)
|
return conventions.formatVersionOrExtension(name)
|
||||||
|
|
||||||
if apivariant is not None:
|
|
||||||
version = major + '.' + minor
|
|
||||||
if apivariant == 'VKSC':
|
|
||||||
# Vulkan SC has a different anchor pattern for version appendices
|
|
||||||
if version == '1.0':
|
|
||||||
return 'Vulkan SC 1.0'
|
|
||||||
else:
|
|
||||||
return f'<<versions-sc-{version}, Version SC {version}>>'
|
|
||||||
else:
|
|
||||||
return f'<<versions-{version}, Version {version}>>'
|
|
||||||
else:
|
|
||||||
return f'apiext:{name}'
|
|
||||||
|
|
||||||
def leafMarkupC(name):
|
def leafMarkupC(name):
|
||||||
"""Markup a leaf name as a C expression, using conventions of the
|
"""Markup a leaf name as a C expression, using conventions of the
|
||||||
@ -344,6 +319,10 @@ def dependencyMarkup(dependency):
|
|||||||
return markupTraverse(parsed)
|
return markupTraverse(parsed)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
for str in [ 'VK_VERSION_1_0', 'cl_khr_extension_name', 'XR_VERSION_3_2', 'CL_VERSION_1_0' ]:
|
||||||
|
print(f'{str} -> {conventions.formatVersionOrExtension(str)}')
|
||||||
|
import sys
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
termdict = {
|
termdict = {
|
||||||
'VK_VERSION_1_1' : True,
|
'VK_VERSION_1_1' : True,
|
||||||
|
@ -32,12 +32,12 @@ TYPES_KNOWN_ALWAYS_VALID = set(('char',
|
|||||||
))
|
))
|
||||||
|
|
||||||
# Split an extension name into vendor ID and name portions
|
# Split an extension name into vendor ID and name portions
|
||||||
EXT_NAME_DECOMPOSE_RE = re.compile(r'[A-Z]+_(?P<vendor>[A-Z]+)_(?P<name>[\w_]+)')
|
EXT_NAME_DECOMPOSE_RE = re.compile(r'(?P<prefix>[A-Za-z]+)_(?P<vendor>[A-Za-z]+)_(?P<name>[\w_]+)')
|
||||||
|
|
||||||
# Match an API version name.
|
# Match an API version name.
|
||||||
|
# Match object includes API prefix, major, and minor version numbers.
|
||||||
# This could be refined further for specific APIs.
|
# This could be refined further for specific APIs.
|
||||||
API_VERSION_NAME_RE = re.compile(r'[A-Z]+_VERSION_[0-9]')
|
API_VERSION_NAME_RE = re.compile(r'(?P<apivariant>[A-Za-z]+)_VERSION_(?P<major>[0-9]+)_(?P<minor>[0-9]+)')
|
||||||
|
|
||||||
|
|
||||||
class ProseListFormats(Enum):
|
class ProseListFormats(Enum):
|
||||||
"""A connective, possibly with a quantifier."""
|
"""A connective, possibly with a quantifier."""
|
||||||
@ -80,10 +80,39 @@ class ConventionsBase(abc.ABC):
|
|||||||
self._command_prefix = None
|
self._command_prefix = None
|
||||||
self._type_prefix = None
|
self._type_prefix = None
|
||||||
|
|
||||||
def formatExtension(self, name):
|
def formatVersionOrExtension(self, name):
|
||||||
"""Mark up an extension name as a link the spec."""
|
"""Mark up an API version or extension name as a link in the spec."""
|
||||||
|
|
||||||
|
# Is this a version name?
|
||||||
|
match = API_VERSION_NAME_RE.match(name)
|
||||||
|
if match is not None:
|
||||||
|
return self.formatVersion(name,
|
||||||
|
match.group('apivariant'),
|
||||||
|
match.group('major'),
|
||||||
|
match.group('minor'))
|
||||||
|
else:
|
||||||
|
# If not, assumed to be an extension name. Might be worth checking.
|
||||||
|
return self.formatExtension(name)
|
||||||
|
|
||||||
|
def formatVersion(self, name, apivariant, major, minor):
|
||||||
|
"""Mark up an API version name as a link in the spec."""
|
||||||
return '`<<{}>>`'.format(name)
|
return '`<<{}>>`'.format(name)
|
||||||
|
|
||||||
|
def formatExtension(self, name):
|
||||||
|
"""Mark up an extension name as a link in the spec."""
|
||||||
|
return '`<<{}>>`'.format(name)
|
||||||
|
|
||||||
|
def formatSPIRVlink(self, name):
|
||||||
|
"""Mark up a SPIR-V extension name as an external link in the spec.
|
||||||
|
Since these are external links, the formatting probably will be
|
||||||
|
the same for all APIs creating such links, so long as they use
|
||||||
|
the asciidoctor {spirv} attribute for the base path to the SPIR-V
|
||||||
|
extensions."""
|
||||||
|
|
||||||
|
(vendor, _) = self.extension_name_split(name)
|
||||||
|
|
||||||
|
return f'{{spirv}}/{vendor}/{name}.html[{name}]'
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
def null(self):
|
def null(self):
|
||||||
@ -260,6 +289,42 @@ class ConventionsBase(abc.ABC):
|
|||||||
Must implement."""
|
Must implement."""
|
||||||
raise NotImplementedError
|
raise NotImplementedError
|
||||||
|
|
||||||
|
@property
|
||||||
|
def extension_name_prefix(self):
|
||||||
|
"""Return extension name prefix.
|
||||||
|
|
||||||
|
Typically two uppercase letters followed by an underscore.
|
||||||
|
|
||||||
|
Assumed to be the same as api_prefix, but some APIs use different
|
||||||
|
case conventions."""
|
||||||
|
|
||||||
|
return self.api_prefix
|
||||||
|
|
||||||
|
@property
|
||||||
|
def write_contacts(self):
|
||||||
|
"""Return whether contact list should be written to extension appendices"""
|
||||||
|
return False
|
||||||
|
|
||||||
|
@property
|
||||||
|
def write_extension_type(self):
|
||||||
|
"""Return whether extension type should be written to extension appendices"""
|
||||||
|
return True
|
||||||
|
|
||||||
|
@property
|
||||||
|
def write_extension_number(self):
|
||||||
|
"""Return whether extension number should be written to extension appendices"""
|
||||||
|
return True
|
||||||
|
|
||||||
|
@property
|
||||||
|
def write_extension_revision(self):
|
||||||
|
"""Return whether extension revision number should be written to extension appendices"""
|
||||||
|
return True
|
||||||
|
|
||||||
|
@property
|
||||||
|
def write_refpage_include(self):
|
||||||
|
"""Return whether refpage include should be written to extension appendices"""
|
||||||
|
return True
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def api_version_prefix(self):
|
def api_version_prefix(self):
|
||||||
"""Return API core version token prefix.
|
"""Return API core version token prefix.
|
||||||
@ -375,6 +440,16 @@ class ConventionsBase(abc.ABC):
|
|||||||
documentation includes."""
|
documentation includes."""
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def extension_name_split(self, name):
|
||||||
|
"""Split an extension name, returning (vendor, rest of name).
|
||||||
|
The API prefix of the name is ignored."""
|
||||||
|
|
||||||
|
match = EXT_NAME_DECOMPOSE_RE.match(name)
|
||||||
|
vendor = match.group('vendor')
|
||||||
|
bare_name = match.group('name')
|
||||||
|
|
||||||
|
return (vendor, bare_name)
|
||||||
|
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
def extension_file_path(self, name):
|
def extension_file_path(self, name):
|
||||||
"""Return file path to an extension appendix relative to a directory
|
"""Return file path to an extension appendix relative to a directory
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
"""Utility functions not closely tied to other spec_tools types."""
|
"""Utility functions not closely tied to other spec_tools types."""
|
||||||
# Copyright (c) 2018-2019 Collabora, Ltd.
|
# Copyright (c) 2018-2019 Collabora, Ltd.
|
||||||
# Copyright 2013-2023 The Khronos Group Inc.
|
# Copyright 2013-2023 The Khronos Group Inc.
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"version info": {
|
"version info": {
|
||||||
"schema version": 2,
|
"schema version": 2,
|
||||||
"api version": "1.3.270",
|
"api version": "1.3.271",
|
||||||
"comment": "from git branch: github-main commit: b4792eab92a1d132ef95b56a7681cc6af69b570e",
|
"comment": "from git branch: github-main commit: dbad946f7edc9137dbb972ea8e271592e3fb9746",
|
||||||
"date": "2023-11-10 11:37:06Z"
|
"date": "2023-11-27 05:16:04Z"
|
||||||
},
|
},
|
||||||
"validation": {
|
"validation": {
|
||||||
"vkGetInstanceProcAddr": {
|
"vkGetInstanceProcAddr": {
|
||||||
@ -3892,8 +3892,8 @@
|
|||||||
"vkDestroySemaphore": {
|
"vkDestroySemaphore": {
|
||||||
"core": [
|
"core": [
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkDestroySemaphore-semaphore-01137",
|
"vuid": "VUID-vkDestroySemaphore-semaphore-05149",
|
||||||
"text": "All submitted batches that refer to <code>semaphore</code> <strong class=\"purple\">must</strong> have completed execution",
|
"text": "All submitted batches that refer to <code>semaphore</code> <strong class=\"purple\">must</strong> have completed execution",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -7646,13 +7646,13 @@
|
|||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkImageMemoryBarrier2-image-03319",
|
"vuid": "VUID-VkImageMemoryBarrier2-image-03320",
|
||||||
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include either or both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is not enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkImageMemoryBarrier2-image-03320",
|
"vuid": "VUID-VkImageMemoryBarrier2-image-03319",
|
||||||
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is not enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include either or both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -7945,13 +7945,13 @@
|
|||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkImageMemoryBarrier-image-03319",
|
"vuid": "VUID-VkImageMemoryBarrier-image-03320",
|
||||||
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include either or both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is not enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkImageMemoryBarrier-image-03320",
|
"vuid": "VUID-VkImageMemoryBarrier-image-03319",
|
||||||
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is not enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include either or both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -8083,13 +8083,13 @@
|
|||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkHostImageLayoutTransitionInfoEXT-image-03319",
|
"vuid": "VUID-VkHostImageLayoutTransitionInfoEXT-image-03320",
|
||||||
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include either or both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is not enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkHostImageLayoutTransitionInfoEXT-image-03320",
|
"vuid": "VUID-VkHostImageLayoutTransitionInfoEXT-image-03319",
|
||||||
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is not enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>image</code> has a depth/stencil format with both depth and stencil and the <a href=\"#features-separateDepthStencilLayouts\"><code>separateDepthStencilLayouts</code></a> feature is enabled, then the <code>aspectMask</code> member of <code>subresourceRange</code> <strong class=\"purple\">must</strong> include either or both <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> and <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -11977,12 +11977,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkRenderPassBeginInfo-None-08996",
|
"vuid": "VUID-VkRenderPassBeginInfo-None-08996",
|
||||||
"text": "If <a href=\"#VkDeviceGroupRenderPassBeginInfo\">VkDeviceGroupRenderPassBeginInfo</a>::<code>deviceRenderAreaCount</code> is 0, <code>renderArea.extent.width</code> <strong class=\"purple\">must</strong> be greater than 0",
|
"text": "If the <code>pNext</code> chain does not contain <a href=\"#VkDeviceGroupRenderPassBeginInfo\">VkDeviceGroupRenderPassBeginInfo</a> or its <code>deviceRenderAreaCount</code> member is equal to 0, <code>renderArea.extent.width</code> <strong class=\"purple\">must</strong> be greater than 0",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkRenderPassBeginInfo-None-08997",
|
"vuid": "VUID-VkRenderPassBeginInfo-None-08997",
|
||||||
"text": "If <a href=\"#VkDeviceGroupRenderPassBeginInfo\">VkDeviceGroupRenderPassBeginInfo</a>::<code>deviceRenderAreaCount</code> is 0, <code>renderArea.extent.height</code> <strong class=\"purple\">must</strong> be greater than 0",
|
"text": "If the <code>pNext</code> chain does not contain <a href=\"#VkDeviceGroupRenderPassBeginInfo\">VkDeviceGroupRenderPassBeginInfo</a> or its <code>deviceRenderAreaCount</code> member is equal to 0, <code>renderArea.extent.height</code> <strong class=\"purple\">must</strong> be greater than 0",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -14068,16 +14068,6 @@
|
|||||||
},
|
},
|
||||||
"vkGetCudaModuleCacheNV": {
|
"vkGetCudaModuleCacheNV": {
|
||||||
"core": [
|
"core": [
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetCudaModuleCacheNV-pCacheSize-09414",
|
|
||||||
"text": "<code>pCacheSize</code> <strong class=\"purple\">must</strong> be a pointer containing the amount of bytes to be copied in <code>pCacheData</code>. If <code>pCacheData</code> is NULL, the function will return in this pointer the total amount of bytes required to later perform the copy into <code>pCacheData</code>.",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetCudaModuleCacheNV-pCacheData-09415",
|
|
||||||
"text": "<code>pCacheData</code> <strong class=\"purple\">may</strong> be a pointer to a buffer in which the binary cache will be copied. The amount of bytes copied is defined by the value in <code>pCacheSize</code>. This pointer <strong class=\"purple\">may</strong> be NULL. In this case, the function will write the total amount of required data in <code>pCacheSize</code>.",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetCudaModuleCacheNV-device-parameter",
|
"vuid": "VUID-vkGetCudaModuleCacheNV-device-parameter",
|
||||||
"text": "<code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle",
|
"text": "<code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle",
|
||||||
@ -22164,12 +22154,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout-mipLevel-01716",
|
"vuid": "VUID-vkGetImageSubresourceLayout-mipLevel-01716",
|
||||||
"text": "The <code>mipLevel</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>mipLevels</code> specified in <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> when <code>image</code> was created",
|
"text": "The <code>mipLevel</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>mipLevels</code> specified in <code>image</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout-arrayLayer-01717",
|
"vuid": "VUID-vkGetImageSubresourceLayout-arrayLayer-01717",
|
||||||
"text": "The <code>arrayLayer</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>arrayLayers</code> specified in <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> when <code>image</code> was created",
|
"text": "The <code>arrayLayer</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>arrayLayers</code> specified in <code>image</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -22198,12 +22188,12 @@
|
|||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout-image-01895",
|
"vuid": "VUID-vkGetImageSubresourceLayout-image-09432",
|
||||||
"text": "If <code>image</code> was created with the <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID</code> external memory handle type, then <code>image</code> <strong class=\"purple\">must</strong> be bound to memory",
|
"text": "If <code>image</code> was created with the <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID</code> external memory handle type, then <code>image</code> <strong class=\"purple\">must</strong> be bound to memory",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout-tiling-02271",
|
"vuid": "VUID-vkGetImageSubresourceLayout-tiling-09433",
|
||||||
"text": "If the <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT</code>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_MEMORY_PLANE<em>_i_</em>BIT_EXT</code> and the index <em>i</em> <strong class=\"purple\">must</strong> be less than the <a href=\"#VkDrmFormatModifierPropertiesEXT\">VkDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifierPlaneCount</code> associated with the image’s <code>format</code> and <a href=\"#VkImageDrmFormatModifierPropertiesEXT\">VkImageDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifier</code>",
|
"text": "If the <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT</code>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_MEMORY_PLANE<em>_i_</em>BIT_EXT</code> and the index <em>i</em> <strong class=\"purple\">must</strong> be less than the <a href=\"#VkDrmFormatModifierPropertiesEXT\">VkDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifierPlaneCount</code> associated with the image’s <code>format</code> and <a href=\"#VkImageDrmFormatModifierPropertiesEXT\">VkImageDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifier</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
@ -22257,12 +22247,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-mipLevel-01716",
|
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-mipLevel-01716",
|
||||||
"text": "The <code>mipLevel</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>mipLevels</code> specified in <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> when <code>image</code> was created",
|
"text": "The <code>mipLevel</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>mipLevels</code> specified in <code>image</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-arrayLayer-01717",
|
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-arrayLayer-01717",
|
||||||
"text": "The <code>arrayLayer</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>arrayLayers</code> specified in <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> when <code>image</code> was created",
|
"text": "The <code>arrayLayer</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>arrayLayers</code> specified in <code>image</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -22291,12 +22281,12 @@
|
|||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-image-01895",
|
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-image-09434",
|
||||||
"text": "If <code>image</code> was created with the <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID</code> external memory handle type, then <code>image</code> <strong class=\"purple\">must</strong> be bound to memory",
|
"text": "If <code>image</code> was created with the <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID</code> external memory handle type, then <code>image</code> <strong class=\"purple\">must</strong> be bound to memory",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-tiling-02271",
|
"vuid": "VUID-vkGetImageSubresourceLayout2KHR-tiling-09435",
|
||||||
"text": "If the <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT</code>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_MEMORY_PLANE<em>_i_</em>BIT_EXT</code> and the index <em>i</em> <strong class=\"purple\">must</strong> be less than the <a href=\"#VkDrmFormatModifierPropertiesEXT\">VkDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifierPlaneCount</code> associated with the image’s <code>format</code> and <a href=\"#VkImageDrmFormatModifierPropertiesEXT\">VkImageDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifier</code>",
|
"text": "If the <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT</code>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_MEMORY_PLANE<em>_i_</em>BIT_EXT</code> and the index <em>i</em> <strong class=\"purple\">must</strong> be less than the <a href=\"#VkDrmFormatModifierPropertiesEXT\">VkDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifierPlaneCount</code> associated with the image’s <code>format</code> and <a href=\"#VkImageDrmFormatModifierPropertiesEXT\">VkImageDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifier</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
@ -22402,47 +22392,37 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-mipLevel-01716",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-mipLevel-01716",
|
||||||
"text": "The <code>mipLevel</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>mipLevels</code> specified in <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> when <code>image</code> was created",
|
"text": "The <code>mipLevel</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>mipLevels</code> specified in <code>pCreateInfo</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-arrayLayer-01717",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-arrayLayer-01717",
|
||||||
"text": "The <code>arrayLayer</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>arrayLayers</code> specified in <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a> when <code>image</code> was created",
|
"text": "The <code>arrayLayer</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be less than the <code>arrayLayers</code> specified in <code>pCreateInfo</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-08886",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-08886",
|
||||||
"text": "If <code>format</code> of the <code>image</code> is a color format, <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_LINEAR</code> or <code>VK_IMAGE_TILING_OPTIMAL</code>, and does not have a <a href=\"#formats-requiring-sampler-ycbcr-conversion\">multi-planar image format</a>, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_COLOR_BIT</code>",
|
"text": "If <code>format</code> of the <code>pCreateInfo</code> is a color format, <code>tiling</code> of the <code>pCreateInfo</code> is <code>VK_IMAGE_TILING_LINEAR</code> or <code>VK_IMAGE_TILING_OPTIMAL</code>, and does not have a <a href=\"#formats-requiring-sampler-ycbcr-conversion\">multi-planar image format</a>, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_COLOR_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-04462",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-04462",
|
||||||
"text": "If <code>format</code> of the <code>image</code> has a depth component, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> contain <code>VK_IMAGE_ASPECT_DEPTH_BIT</code>",
|
"text": "If <code>format</code> of the <code>pCreateInfo</code> has a depth component, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> contain <code>VK_IMAGE_ASPECT_DEPTH_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-04463",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-04463",
|
||||||
"text": "If <code>format</code> of the <code>image</code> has a stencil component, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> contain <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>format</code> of the <code>pCreateInfo</code> has a stencil component, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> contain <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-04464",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-format-04464",
|
||||||
"text": "If <code>format</code> of the <code>image</code> does not contain a stencil or depth component, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> not contain <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> or <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
"text": "If <code>format</code> of the <code>pCreateInfo</code> does not contain a stencil or depth component, the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> not contain <code>VK_IMAGE_ASPECT_DEPTH_BIT</code> or <code>VK_IMAGE_ASPECT_STENCIL_BIT</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-tiling-08717",
|
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-tiling-08717",
|
||||||
"text": "If the <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_LINEAR</code> and has a <a href=\"#formats-requiring-sampler-ycbcr-conversion\">multi-planar image format</a>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be a single valid <a href=\"#formats-planes-image-aspect\">multi-planar aspect mask</a> bit",
|
"text": "If the <code>tiling</code> of the <code>pCreateInfo</code> is <code>VK_IMAGE_TILING_LINEAR</code> and has a <a href=\"#formats-requiring-sampler-ycbcr-conversion\">multi-planar image format</a>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be a single valid <a href=\"#formats-planes-image-aspect\">multi-planar aspect mask</a> bit",
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-image-01895",
|
|
||||||
"text": "If <code>image</code> was created with the <code>VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID</code> external memory handle type, then <code>image</code> <strong class=\"purple\">must</strong> be bound to memory",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-VkDeviceImageSubresourceInfoKHR-tiling-02271",
|
|
||||||
"text": "If the <code>tiling</code> of the <code>image</code> is <code>VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT</code>, then the <code>aspectMask</code> member of <code>pSubresource</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_ASPECT_MEMORY_PLANE<em>_i_</em>BIT_EXT</code> and the index <em>i</em> <strong class=\"purple\">must</strong> be less than the <a href=\"#VkDrmFormatModifierPropertiesEXT\">VkDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifierPlaneCount</code> associated with the image’s <code>format</code> and <a href=\"#VkImageDrmFormatModifierPropertiesEXT\">VkImageDrmFormatModifierPropertiesEXT</a>::<code>drmFormatModifier</code>",
|
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -32364,16 +32344,6 @@
|
|||||||
},
|
},
|
||||||
"vkCmdResetQueryPool": {
|
"vkCmdResetQueryPool": {
|
||||||
"core": [
|
"core": [
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdResetQueryPool-firstQuery-00796",
|
|
||||||
"text": "<code>firstQuery</code> <strong class=\"purple\">must</strong> be less than the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdResetQueryPool-firstQuery-00797",
|
|
||||||
"text": "The sum of <code>firstQuery</code> and <code>queryCount</code> <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkCmdResetQueryPool-None-02841",
|
"vuid": "VUID-vkCmdResetQueryPool-None-02841",
|
||||||
"text": "All queries used by the command <strong class=\"purple\">must</strong> not be active",
|
"text": "All queries used by the command <strong class=\"purple\">must</strong> not be active",
|
||||||
@ -32428,16 +32398,6 @@
|
|||||||
"text": "The <a href=\"#features-hostQueryReset\"><code>hostQueryReset</code></a> feature <strong class=\"purple\">must</strong> be enabled",
|
"text": "The <a href=\"#features-hostQueryReset\"><code>hostQueryReset</code></a> feature <strong class=\"purple\">must</strong> be enabled",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkResetQueryPool-firstQuery-02666",
|
|
||||||
"text": "<code>firstQuery</code> <strong class=\"purple\">must</strong> be less than the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkResetQueryPool-firstQuery-02667",
|
|
||||||
"text": "The sum of <code>firstQuery</code> and <code>queryCount</code> <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkResetQueryPool-firstQuery-02741",
|
"vuid": "VUID-vkResetQueryPool-firstQuery-02741",
|
||||||
"text": "Submitted commands that refer to the range specified by <code>firstQuery</code> and <code>queryCount</code> in <code>queryPool</code> <strong class=\"purple\">must</strong> have completed execution",
|
"text": "Submitted commands that refer to the range specified by <code>firstQuery</code> and <code>queryCount</code> in <code>queryPool</code> <strong class=\"purple\">must</strong> have completed execution",
|
||||||
@ -33023,11 +32983,6 @@
|
|||||||
"text": "All queries used by the command <strong class=\"purple\">must</strong> not be uninitialized",
|
"text": "All queries used by the command <strong class=\"purple\">must</strong> not be uninitialized",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-firstQuery-00813",
|
|
||||||
"text": "<code>firstQuery</code> <strong class=\"purple\">must</strong> be less than the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-flags-02828",
|
"vuid": "VUID-vkGetQueryPoolResults-flags-02828",
|
||||||
"text": "If <code>VK_QUERY_RESULT_64_BIT</code> is not set in <code>flags</code> and the <code>queryType</code> used to create <code>queryPool</code> was not <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, then <code>pData</code> and <code>stride</code> <strong class=\"purple\">must</strong> be multiples of <code>4</code>",
|
"text": "If <code>VK_QUERY_RESULT_64_BIT</code> is not set in <code>flags</code> and the <code>queryType</code> used to create <code>queryPool</code> was not <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, then <code>pData</code> and <code>stride</code> <strong class=\"purple\">must</strong> be multiples of <code>4</code>",
|
||||||
@ -33053,41 +33008,11 @@
|
|||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, then <code>stride</code> <strong class=\"purple\">must</strong> be large enough to contain the <a href=\"#VkQueryPoolPerformanceCreateInfoKHR\">VkQueryPoolPerformanceCreateInfoKHR</a>::<code>counterIndexCount</code> used to create <code>queryPool</code> times the size of <a href=\"#VkPerformanceCounterResultKHR\">VkPerformanceCounterResultKHR</a>",
|
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, then <code>stride</code> <strong class=\"purple\">must</strong> be large enough to contain the <a href=\"#VkQueryPoolPerformanceCreateInfoKHR\">VkQueryPoolPerformanceCreateInfoKHR</a>::<code>counterIndexCount</code> used to create <code>queryPool</code> times the size of <a href=\"#VkPerformanceCounterResultKHR\">VkPerformanceCounterResultKHR</a>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-firstQuery-00816",
|
|
||||||
"text": "The sum of <code>firstQuery</code> and <code>queryCount</code> <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-dataSize-00817",
|
"vuid": "VUID-vkGetQueryPoolResults-dataSize-00817",
|
||||||
"text": "<code>dataSize</code> <strong class=\"purple\">must</strong> be large enough to contain the result of each query, as described <a href=\"#queries-operation-memorylayout\">here</a>",
|
"text": "<code>dataSize</code> <strong class=\"purple\">must</strong> be large enough to contain the result of each query, as described <a href=\"#queries-operation-memorylayout\">here</a>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-queryType-00818",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_TIMESTAMP</code>, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_QUERY_RESULT_PARTIAL_BIT</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-queryType-03230",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_QUERY_RESULT_WITH_AVAILABILITY_BIT</code>, <code>VK_QUERY_RESULT_WITH_STATUS_BIT_KHR</code>, <code>VK_QUERY_RESULT_PARTIAL_BIT</code>, or <code>VK_QUERY_RESULT_64_BIT</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-queryType-03231",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, the <code>queryPool</code> <strong class=\"purple\">must</strong> have been recorded once for each pass as retrieved via a call to <a href=\"#vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR\">vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR</a>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-queryType-04810",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR</code>, then <code>flags</code> <strong class=\"purple\">must</strong> include <code>VK_QUERY_RESULT_WITH_STATUS_BIT_KHR</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-flags-04811",
|
|
||||||
"text": "If <code>flags</code> includes <code>VK_QUERY_RESULT_WITH_STATUS_BIT_KHR</code>, then it <strong class=\"purple\">must</strong> not include <code>VK_QUERY_RESULT_WITH_AVAILABILITY_BIT</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetQueryPoolResults-device-parameter",
|
"vuid": "VUID-vkGetQueryPoolResults-device-parameter",
|
||||||
"text": "<code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle",
|
"text": "<code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle",
|
||||||
@ -33132,16 +33057,6 @@
|
|||||||
"text": "<code>dstOffset</code> <strong class=\"purple\">must</strong> be less than the size of <code>dstBuffer</code>",
|
"text": "<code>dstOffset</code> <strong class=\"purple\">must</strong> be less than the size of <code>dstBuffer</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-firstQuery-00820",
|
|
||||||
"text": "<code>firstQuery</code> <strong class=\"purple\">must</strong> be less than the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-firstQuery-00821",
|
|
||||||
"text": "The sum of <code>firstQuery</code> and <code>queryCount</code> <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-flags-00822",
|
"vuid": "VUID-vkCmdCopyQueryPoolResults-flags-00822",
|
||||||
"text": "If <code>VK_QUERY_RESULT_64_BIT</code> is not set in <code>flags</code> then <code>dstOffset</code> and <code>stride</code> <strong class=\"purple\">must</strong> be multiples of <code>4</code>",
|
"text": "If <code>VK_QUERY_RESULT_64_BIT</code> is not set in <code>flags</code> then <code>dstOffset</code> and <code>stride</code> <strong class=\"purple\">must</strong> be multiples of <code>4</code>",
|
||||||
@ -33167,41 +33082,16 @@
|
|||||||
"text": "If <code>dstBuffer</code> is non-sparse then it <strong class=\"purple\">must</strong> be bound completely and contiguously to a single <code>VkDeviceMemory</code> object",
|
"text": "If <code>dstBuffer</code> is non-sparse then it <strong class=\"purple\">must</strong> be bound completely and contiguously to a single <code>VkDeviceMemory</code> object",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-00827",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_TIMESTAMP</code>, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_QUERY_RESULT_PARTIAL_BIT</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-03232",
|
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-03232",
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, <a href=\"#VkPhysicalDevicePerformanceQueryPropertiesKHR\">VkPhysicalDevicePerformanceQueryPropertiesKHR</a>::<code>allowCommandBufferQueryCopies</code> <strong class=\"purple\">must</strong> be <code>VK_TRUE</code>",
|
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, <a href=\"#VkPhysicalDevicePerformanceQueryPropertiesKHR\">VkPhysicalDevicePerformanceQueryPropertiesKHR</a>::<code>allowCommandBufferQueryCopies</code> <strong class=\"purple\">must</strong> be <code>VK_TRUE</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-03233",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, <code>flags</code> <strong class=\"purple\">must</strong> not contain <code>VK_QUERY_RESULT_WITH_AVAILABILITY_BIT</code>, <code>VK_QUERY_RESULT_WITH_STATUS_BIT_KHR</code>, <code>VK_QUERY_RESULT_PARTIAL_BIT</code>, or <code>VK_QUERY_RESULT_64_BIT</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-03234",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, the <code>queryPool</code> <strong class=\"purple\">must</strong> have been submitted once for each pass as retrieved via a call to <a href=\"#vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR\">vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR</a>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-02734",
|
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-02734",
|
||||||
"text": "<a href=\"#vkCmdCopyQueryPoolResults\">vkCmdCopyQueryPoolResults</a> <strong class=\"purple\">must</strong> not be called if the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL</code>",
|
"text": "<a href=\"#vkCmdCopyQueryPoolResults\">vkCmdCopyQueryPoolResults</a> <strong class=\"purple\">must</strong> not be called if the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-queryType-06901",
|
|
||||||
"text": "If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR</code>, then <code>flags</code> <strong class=\"purple\">must</strong> include <code>VK_QUERY_RESULT_WITH_STATUS_BIT_KHR</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-flags-06902",
|
|
||||||
"text": "If <code>flags</code> includes <code>VK_QUERY_RESULT_WITH_STATUS_BIT_KHR</code>, then it <strong class=\"purple\">must</strong> not include <code>VK_QUERY_RESULT_WITH_AVAILABILITY_BIT</code>",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkCmdCopyQueryPoolResults-None-07429",
|
"vuid": "VUID-vkCmdCopyQueryPoolResults-None-07429",
|
||||||
"text": "All queries used by the command <strong class=\"purple\">must</strong> not be active",
|
"text": "All queries used by the command <strong class=\"purple\">must</strong> not be active",
|
||||||
@ -71346,7 +71236,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkCmdBeginTransformFeedbackEXT-None-06233",
|
"vuid": "VUID-vkCmdBeginTransformFeedbackEXT-None-06233",
|
||||||
"text": "A valid graphics pipeline <strong class=\"purple\">must</strong> be bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>",
|
"text": "If the <a href=\"#features-shaderObject\"><code>shaderObject</code></a> feature is not enabled, a valid graphics pipeline <strong class=\"purple\">must</strong> be bound to <code>VK_PIPELINE_BIND_POINT_GRAPHICS</code>",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -94723,11 +94613,6 @@
|
|||||||
"text": "<code>swapchain</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSwapchainKHR\">VkSwapchainKHR</a> handle",
|
"text": "<code>swapchain</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSwapchainKHR\">VkSwapchainKHR</a> handle",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"vuid": "VUID-vkGetLatencyTimingsNV-pTimingCount-parameter",
|
|
||||||
"text": "<code>pTimingCount</code> <strong class=\"purple\">must</strong> be a valid pointer to a <code>uint32_t</code> value",
|
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"vuid": "VUID-vkGetLatencyTimingsNV-pLatencyMarkerInfo-parameter",
|
"vuid": "VUID-vkGetLatencyTimingsNV-pLatencyMarkerInfo-parameter",
|
||||||
"text": "<code>pLatencyMarkerInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkGetLatencyMarkerInfoNV\">VkGetLatencyMarkerInfoNV</a> structure",
|
"text": "<code>pLatencyMarkerInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkGetLatencyMarkerInfoNV\">VkGetLatencyMarkerInfoNV</a> structure",
|
||||||
@ -94749,7 +94634,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkGetLatencyMarkerInfoNV-pTimings-parameter",
|
"vuid": "VUID-VkGetLatencyMarkerInfoNV-pTimings-parameter",
|
||||||
"text": "<code>pTimings</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkLatencyTimingsFrameReportNV\">VkLatencyTimingsFrameReportNV</a> structure",
|
"text": "If <code>timingCount</code> is not <code>0</code>, and <code>pTimings</code> is not <code>NULL</code>, <code>pTimings</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>timingCount</code> <a href=\"#VkLatencyTimingsFrameReportNV\">VkLatencyTimingsFrameReportNV</a> structures",
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@ -100820,12 +100705,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"vuid": "VUID-VkCuModuleCreateInfoNVX-pData-parameter",
|
"vuid": "VUID-VkCuModuleCreateInfoNVX-pData-parameter",
|
||||||
"text": "<code>pData</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>dataSize</code> bytes",
|
"text": "If <code>dataSize</code> is not <code>0</code>, <code>pData</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>dataSize</code> bytes",
|
||||||
"page": "vkspec"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"vuid": "VUID-VkCuModuleCreateInfoNVX-dataSize-arraylength",
|
|
||||||
"text": "<code>dataSize</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>",
|
|
||||||
"page": "vkspec"
|
"page": "vkspec"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -175,7 +175,7 @@ branch of the member gitlab server.
|
|||||||
#define <name>VKSC_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0</type>
|
#define <name>VKSC_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0</type>
|
||||||
|
|
||||||
<type api="vulkan" category="define">// Version of this file
|
<type api="vulkan" category="define">// Version of this file
|
||||||
#define <name>VK_HEADER_VERSION</name> 270</type>
|
#define <name>VK_HEADER_VERSION</name> 271</type>
|
||||||
<type api="vulkan" category="define" requires="VK_HEADER_VERSION">// Complete version of this file
|
<type api="vulkan" category="define" requires="VK_HEADER_VERSION">// Complete version of this file
|
||||||
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, VK_HEADER_VERSION)</type>
|
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, VK_HEADER_VERSION)</type>
|
||||||
<type api="vulkansc" category="define">// Version of this file
|
<type api="vulkansc" category="define">// Version of this file
|
||||||
@ -1861,7 +1861,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DBlockShape</name><comment>Sparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
|
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DBlockShape</name><comment>Sparse resources support: GPU will access all 2D (single sample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
|
||||||
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DMultisampleBlockShape</name><comment>Sparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
|
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard2DMultisampleBlockShape</name><comment>Sparse resources support: GPU will access all 2D (multisample) sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
|
||||||
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard3DBlockShape</name><comment>Sparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
|
<member limittype="bitmask"><type>VkBool32</type> <name>residencyStandard3DBlockShape</name><comment>Sparse resources support: GPU will access all 3D sparse resources using the standard sparse image block shapes (based on pixel format)</comment></member>
|
||||||
<member limittype="bitmask"><type>VkBool32</type> <name>residencyAlignedMipSize</name><comment>Sparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail</comment></member>
|
<member limittype="not"><type>VkBool32</type> <name>residencyAlignedMipSize</name><comment>Sparse resources support: Images with mip level dimensions that are NOT a multiple of the sparse image block dimensions will be placed in the mip tail</comment></member>
|
||||||
<member limittype="bitmask"><type>VkBool32</type> <name>residencyNonResidentStrict</name><comment>Sparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded</comment></member>
|
<member limittype="bitmask"><type>VkBool32</type> <name>residencyNonResidentStrict</name><comment>Sparse resources support: GPU can consistently access non-resident regions of a resource, all reads return as if data is 0, writes are discarded</comment></member>
|
||||||
</type>
|
</type>
|
||||||
<type category="struct" name="VkPhysicalDeviceLimits" returnedonly="true">
|
<type category="struct" name="VkPhysicalDeviceLimits" returnedonly="true">
|
||||||
@ -7248,8 +7248,8 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<type category="struct" name="VkCuModuleCreateInfoNVX">
|
<type category="struct" name="VkCuModuleCreateInfoNVX">
|
||||||
<member values="VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
|
<member values="VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
|
||||||
<member optional="true">const <type>void</type>* <name>pNext</name></member>
|
<member optional="true">const <type>void</type>* <name>pNext</name></member>
|
||||||
<member><type>size_t</type> <name>dataSize</name></member>
|
<member optional="true"><type>size_t</type> <name>dataSize</name></member>
|
||||||
<member len="dataSize">const <type>void</type>* <name>pData</name></member>
|
<member len="dataSize">const <type>void</type>* <name>pData</name></member>
|
||||||
</type>
|
</type>
|
||||||
<type category="struct" name="VkCuFunctionCreateInfoNVX">
|
<type category="struct" name="VkCuFunctionCreateInfoNVX">
|
||||||
<member values="VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
|
<member values="VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"><type>VkStructureType</type> <name>sType</name></member>
|
||||||
@ -8739,7 +8739,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<type category="struct" name="VkPhysicalDeviceExternalFormatResolvePropertiesANDROID" structextends="VkPhysicalDeviceProperties2" returnedonly="true">
|
<type category="struct" name="VkPhysicalDeviceExternalFormatResolvePropertiesANDROID" structextends="VkPhysicalDeviceProperties2" returnedonly="true">
|
||||||
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID"><type>VkStructureType</type> <name>sType</name></member>
|
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID"><type>VkStructureType</type> <name>sType</name></member>
|
||||||
<member optional="true"><type>void</type>* <name>pNext</name></member>
|
<member optional="true"><type>void</type>* <name>pNext</name></member>
|
||||||
<member limittype="noauto"><type>VkBool32</type> <name>nullColorAttachmentWithExternalFormatResolve</name></member>
|
<member limittype="not"><type>VkBool32</type> <name>nullColorAttachmentWithExternalFormatResolve</name></member>
|
||||||
<member limittype="noauto"><type>VkChromaLocation</type> <name>externalFormatResolveChromaOffsetX</name></member>
|
<member limittype="noauto"><type>VkChromaLocation</type> <name>externalFormatResolveChromaOffsetX</name></member>
|
||||||
<member limittype="noauto"><type>VkChromaLocation</type> <name>externalFormatResolveChromaOffsetY</name></member>
|
<member limittype="noauto"><type>VkChromaLocation</type> <name>externalFormatResolveChromaOffsetY</name></member>
|
||||||
</type>
|
</type>
|
||||||
@ -8770,7 +8770,8 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<type category="struct" name="VkGetLatencyMarkerInfoNV">
|
<type category="struct" name="VkGetLatencyMarkerInfoNV">
|
||||||
<member values="VK_STRUCTURE_TYPE_GET_LATENCY_MARKER_INFO_NV"><type>VkStructureType</type> <name>sType</name></member>
|
<member values="VK_STRUCTURE_TYPE_GET_LATENCY_MARKER_INFO_NV"><type>VkStructureType</type> <name>sType</name></member>
|
||||||
<member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member>
|
<member optional="true" noautovalidity="true">const <type>void</type>* <name>pNext</name></member>
|
||||||
<member><type>VkLatencyTimingsFrameReportNV</type>* <name>pTimings</name></member>
|
<member optional="true"><type>uint32_t</type> <name>timingCount</name></member>
|
||||||
|
<member optional="true" len="timingCount"><type>VkLatencyTimingsFrameReportNV</type>* <name>pTimings</name></member>
|
||||||
</type>
|
</type>
|
||||||
<type category="struct" name="VkLatencyTimingsFrameReportNV">
|
<type category="struct" name="VkLatencyTimingsFrameReportNV">
|
||||||
<member values="VK_STRUCTURE_TYPE_LATENCY_TIMINGS_FRAME_REPORT_NV"><type>VkStructureType</type> <name>sType</name></member>
|
<member values="VK_STRUCTURE_TYPE_LATENCY_TIMINGS_FRAME_REPORT_NV"><type>VkStructureType</type> <name>sType</name></member>
|
||||||
@ -15033,7 +15034,6 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<proto><type>void</type> <name>vkGetLatencyTimingsNV</name></proto>
|
<proto><type>void</type> <name>vkGetLatencyTimingsNV</name></proto>
|
||||||
<param><type>VkDevice</type> <name>device</name></param>
|
<param><type>VkDevice</type> <name>device</name></param>
|
||||||
<param><type>VkSwapchainKHR</type> <name>swapchain</name></param>
|
<param><type>VkSwapchainKHR</type> <name>swapchain</name></param>
|
||||||
<param><type>uint32_t</type>* <name>pTimingCount</name></param>
|
|
||||||
<param><type>VkGetLatencyMarkerInfoNV</type>* <name>pLatencyMarkerInfo</name></param>
|
<param><type>VkGetLatencyMarkerInfoNV</type>* <name>pLatencyMarkerInfo</name></param>
|
||||||
</command>
|
</command>
|
||||||
<command>
|
<command>
|
||||||
@ -18438,10 +18438,18 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<enum bitpos="25" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX"/>
|
<enum bitpos="25" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX"/>
|
||||||
</require>
|
</require>
|
||||||
</extension>
|
</extension>
|
||||||
<extension name="VK_AMD_extension_136" number="136" author="AMD" contact="Mais Alnasser @malnasse" supported="disabled">
|
<extension name="VK_KHR_extension_136" number="136" type="device" author="KHR" contact="Tobias Hector @tobski" supported="disabled">
|
||||||
<require>
|
<require>
|
||||||
<enum value="0" name="VK_AMD_EXTENSION_136_SPEC_VERSION"/>
|
<enum value="0" name="VK_KHR_EXTENSION_136_SPEC_VERSION"/>
|
||||||
<enum value=""VK_AMD_extension_136"" name="VK_AMD_EXTENSION_136_EXTENSION_NAME"/>
|
<enum value=""VK_KHR_extension_136"" name="VK_KHR_EXTENSION_136_EXTENSION_NAME"/>
|
||||||
|
<enum bitpos="28" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_28_BIT_KHR"/>
|
||||||
|
<enum bitpos="29" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_29_BIT_KHR"/>
|
||||||
|
<enum bitpos="30" extends="VkBufferUsageFlagBits" name="VK_BUFFER_USAGE_RESERVED_30_BIT_KHR"/>
|
||||||
|
</require>
|
||||||
|
<require depends="VK_KHR_maintenance5">
|
||||||
|
<enum bitpos="28" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_RESERVED_28_BIT_KHR"/>
|
||||||
|
<enum bitpos="29" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_RESERVED_29_BIT_KHR"/>
|
||||||
|
<enum bitpos="30" extends="VkBufferUsageFlagBits2KHR" name="VK_BUFFER_USAGE_2_RESERVED_30_BIT_KHR"/>
|
||||||
</require>
|
</require>
|
||||||
</extension>
|
</extension>
|
||||||
<extension name="VK_AMD_mixed_attachment_samples" number="137" type="device" author="AMD" contact="Matthaeus G. Chajdas @anteru" supported="vulkan">
|
<extension name="VK_AMD_mixed_attachment_samples" number="137" type="device" author="AMD" contact="Matthaeus G. Chajdas @anteru" supported="vulkan">
|
||||||
@ -20815,8 +20823,6 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV"/>
|
<enum offset="4" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV"/>
|
||||||
<enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_CUDA_MODULE_NV"/>
|
<enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_CUDA_MODULE_NV"/>
|
||||||
<enum offset="1" extends="VkObjectType" name="VK_OBJECT_TYPE_CUDA_FUNCTION_NV"/>
|
<enum offset="1" extends="VkObjectType" name="VK_OBJECT_TYPE_CUDA_FUNCTION_NV"/>
|
||||||
<enum offset="0" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV"/>
|
|
||||||
<enum offset="1" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV"/>
|
|
||||||
<type name="VkCudaModuleNV"/>
|
<type name="VkCudaModuleNV"/>
|
||||||
<type name="VkCudaFunctionNV"/>
|
<type name="VkCudaFunctionNV"/>
|
||||||
<type name="VkCudaModuleCreateInfoNV"/>
|
<type name="VkCudaModuleCreateInfoNV"/>
|
||||||
@ -20831,6 +20837,10 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<command name="vkDestroyCudaFunctionNV"/>
|
<command name="vkDestroyCudaFunctionNV"/>
|
||||||
<command name="vkCmdCudaLaunchKernelNV"/>
|
<command name="vkCmdCudaLaunchKernelNV"/>
|
||||||
</require>
|
</require>
|
||||||
|
<require depends="VK_EXT_debug_report">
|
||||||
|
<enum offset="0" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV_EXT"/>
|
||||||
|
<enum offset="1" extends="VkDebugReportObjectTypeEXT" name="VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV_EXT"/>
|
||||||
|
</require>
|
||||||
</extension>
|
</extension>
|
||||||
<extension name="VK_KHR_object_refresh" number="309" type="device" author="KHR" contact="Aidan Fabius @afabius" supported="vulkansc" ratified="vulkansc">
|
<extension name="VK_KHR_object_refresh" number="309" type="device" author="KHR" contact="Aidan Fabius @afabius" supported="vulkansc" ratified="vulkansc">
|
||||||
<require>
|
<require>
|
||||||
@ -22493,7 +22503,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<enum value=""VK_SEC_extension_451"" name="VK_SEC_EXTENSION_451_EXTENSION_NAME"/>
|
<enum value=""VK_SEC_extension_451"" name="VK_SEC_EXTENSION_451_EXTENSION_NAME"/>
|
||||||
</require>
|
</require>
|
||||||
</extension>
|
</extension>
|
||||||
<extension name="VK_EXT_nested_command_buffer" number="452" type="device" depends="VK_KHR_get_physical_device_properties2" author="EXT" contact="Piers Daniell @pdaniell-nv" supported="vulkan">
|
<extension name="VK_EXT_nested_command_buffer" number="452" type="device" depends="VK_KHR_get_physical_device_properties2" author="EXT" contact="Piers Daniell @pdaniell-nv" supported="vulkan" ratified="vulkan">
|
||||||
<require>
|
<require>
|
||||||
<enum value="1" name="VK_EXT_NESTED_COMMAND_BUFFER_SPEC_VERSION"/>
|
<enum value="1" name="VK_EXT_NESTED_COMMAND_BUFFER_SPEC_VERSION"/>
|
||||||
<enum value=""VK_EXT_nested_command_buffer"" name="VK_EXT_NESTED_COMMAND_BUFFER_EXTENSION_NAME"/>
|
<enum value=""VK_EXT_nested_command_buffer"" name="VK_EXT_NESTED_COMMAND_BUFFER_EXTENSION_NAME"/>
|
||||||
@ -23321,7 +23331,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
</extension>
|
</extension>
|
||||||
<extension name="VK_NV_low_latency2" number="506" author="NV" depends="VK_VERSION_1_2,VK_KHR_timeline_semaphore" contact="Charles Hansen @cshansen" type="device" supported="vulkan">
|
<extension name="VK_NV_low_latency2" number="506" author="NV" depends="VK_VERSION_1_2,VK_KHR_timeline_semaphore" contact="Charles Hansen @cshansen" type="device" supported="vulkan">
|
||||||
<require>
|
<require>
|
||||||
<enum value="1" name="VK_NV_LOW_LATENCY_2_SPEC_VERSION"/>
|
<enum value="2" name="VK_NV_LOW_LATENCY_2_SPEC_VERSION"/>
|
||||||
<enum value=""VK_NV_low_latency2"" name="VK_NV_LOW_LATENCY_2_EXTENSION_NAME"/>
|
<enum value=""VK_NV_low_latency2"" name="VK_NV_LOW_LATENCY_2_EXTENSION_NAME"/>
|
||||||
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_LATENCY_SLEEP_MODE_INFO_NV"/>
|
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_LATENCY_SLEEP_MODE_INFO_NV"/>
|
||||||
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_LATENCY_SLEEP_INFO_NV"/>
|
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_LATENCY_SLEEP_INFO_NV"/>
|
||||||
@ -23703,6 +23713,12 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<enum value=""VK_KHR_extension_554"" name="VK_KHR_EXTENSION_554_EXTENSION_NAME"/>
|
<enum value=""VK_KHR_extension_554"" name="VK_KHR_EXTENSION_554_EXTENSION_NAME"/>
|
||||||
</require>
|
</require>
|
||||||
</extension>
|
</extension>
|
||||||
|
<extension name="VK_IMG_extension_555" number="555" author="IMG" contact="Jarred Davies" supported="disabled">
|
||||||
|
<require>
|
||||||
|
<enum value="0" name="VK_IMG_EXTENSION_555_SPEC_VERSION"/>
|
||||||
|
<enum value=""VK_IMG_extension_555"" name="VK_IMG_EXTENSION_555_EXTENSION_NAME"/>
|
||||||
|
</require>
|
||||||
|
</extension>
|
||||||
</extensions>
|
</extensions>
|
||||||
<formats>
|
<formats>
|
||||||
<format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8">
|
<format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8">
|
||||||
@ -25322,6 +25338,15 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||||||
<spirvextension name="SPV_AMDX_shader_enqueue">
|
<spirvextension name="SPV_AMDX_shader_enqueue">
|
||||||
<enable extension="VK_AMDX_shader_enqueue"/>
|
<enable extension="VK_AMDX_shader_enqueue"/>
|
||||||
</spirvextension>
|
</spirvextension>
|
||||||
|
<spirvextension name="SPV_HUAWEI_cluster_culling_shader">
|
||||||
|
<enable extension="VK_HUAWEI_cluster_culling_shader"/>
|
||||||
|
</spirvextension>
|
||||||
|
<spirvextension name="SPV_HUAWEI_subpass_shading">
|
||||||
|
<enable extension="VK_HUAWEI_subpass_shading"/>
|
||||||
|
</spirvextension>
|
||||||
|
<spirvextension name="SPV_NV_ray_tracing_motion_blur">
|
||||||
|
<enable extension="VK_NV_ray_tracing_motion_blur"/>
|
||||||
|
</spirvextension>
|
||||||
</spirvextensions>
|
</spirvextensions>
|
||||||
<spirvcapabilities comment="SPIR-V Capabilities allowed in Vulkan and what is required to use it">
|
<spirvcapabilities comment="SPIR-V Capabilities allowed in Vulkan and what is required to use it">
|
||||||
<spirvcapability name="Matrix">
|
<spirvcapability name="Matrix">
|
||||||
|
@ -50,9 +50,21 @@ class VulkanConventions(ConventionsBase):
|
|||||||
"""Preferred spelling of NULL."""
|
"""Preferred spelling of NULL."""
|
||||||
return '`NULL`'
|
return '`NULL`'
|
||||||
|
|
||||||
|
def formatVersion(self, name, apivariant, major, minor):
|
||||||
|
"""Mark up an API version name as a link in the spec."""
|
||||||
|
version = f'{major}.{minor}'
|
||||||
|
if apivariant == 'VKSC':
|
||||||
|
# Vulkan SC has a different anchor pattern for version appendices
|
||||||
|
if version == '1.0':
|
||||||
|
return 'Vulkan SC 1.0'
|
||||||
|
else:
|
||||||
|
return f'<<versions-sc-{version}, Version SC {version}>>'
|
||||||
|
else:
|
||||||
|
return f'<<versions-{version}, Version {version}>>'
|
||||||
|
|
||||||
def formatExtension(self, name):
|
def formatExtension(self, name):
|
||||||
"""Mark up an extension name as a link the spec."""
|
"""Mark up an extension name as a link in the spec."""
|
||||||
return '`apiext:{}`'.format(name)
|
return f'apiext:{name}'
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def struct_macro(self):
|
def struct_macro(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user