1 // Copyright 2015-2021 The Khronos Group Inc. 2 // 3 // SPDX-License-Identifier: Apache-2.0 OR MIT 4 // 5 6 // This header is generated from the Khronos Vulkan XML API Registry. 7 8 #ifndef VULKAN_HPP 9 #define VULKAN_HPP 10 11 #if defined( _MSVC_LANG ) 12 # define VULKAN_HPP_CPLUSPLUS _MSVC_LANG 13 #else 14 # define VULKAN_HPP_CPLUSPLUS __cplusplus 15 #endif 16 17 #if 201703L < VULKAN_HPP_CPLUSPLUS 18 # define VULKAN_HPP_CPP_VERSION 20 19 #elif 201402L < VULKAN_HPP_CPLUSPLUS 20 # define VULKAN_HPP_CPP_VERSION 17 21 #elif 201103L < VULKAN_HPP_CPLUSPLUS 22 # define VULKAN_HPP_CPP_VERSION 14 23 #elif 199711L < VULKAN_HPP_CPLUSPLUS 24 # define VULKAN_HPP_CPP_VERSION 11 25 #else 26 # error "vulkan.hpp needs at least c++ standard version 11" 27 #endif 28 29 #include <algorithm> 30 #include <array> 31 #include <cstddef> 32 #include <cstdint> 33 #include <cstring> 34 #include <functional> 35 #include <initializer_list> 36 #include <sstream> 37 #include <string> 38 #include <system_error> 39 #include <tuple> 40 #include <type_traits> 41 #include <vulkan/vulkan.h> 42 #if 17 <= VULKAN_HPP_CPP_VERSION 43 # include <string_view> 44 #endif 45 46 #if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) 47 # if !defined( VULKAN_HPP_NO_SMART_HANDLE ) 48 # define VULKAN_HPP_NO_SMART_HANDLE 49 # endif 50 #else 51 # include <memory> 52 # include <vector> 53 #endif 54 55 #if defined( VULKAN_HPP_NO_CONSTRUCTORS ) 56 # if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS ) 57 # define VULKAN_HPP_NO_STRUCT_CONSTRUCTORS 58 # endif 59 # if !defined( VULKAN_HPP_NO_UNION_CONSTRUCTORS ) 60 # define VULKAN_HPP_NO_UNION_CONSTRUCTORS 61 # endif 62 #endif 63 64 #if defined( VULKAN_HPP_NO_SETTERS ) 65 # if !defined( VULKAN_HPP_NO_STRUCT_SETTERS ) 66 # define VULKAN_HPP_NO_STRUCT_SETTERS 67 # endif 68 # if !defined( VULKAN_HPP_NO_UNION_SETTERS ) 69 # define VULKAN_HPP_NO_UNION_SETTERS 70 # endif 71 #endif 72 73 #if !defined( VULKAN_HPP_ASSERT ) 74 # include <cassert> 75 # define VULKAN_HPP_ASSERT assert 76 #endif 77 78 #if !defined( VULKAN_HPP_ASSERT_ON_RESULT ) 79 # define VULKAN_HPP_ASSERT_ON_RESULT VULKAN_HPP_ASSERT 80 #endif 81 82 #if !defined( VULKAN_HPP_STATIC_ASSERT ) 83 # define VULKAN_HPP_STATIC_ASSERT static_assert 84 #endif 85 86 #if !defined( VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL ) 87 # define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 1 88 #endif 89 90 #if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL == 1 91 # if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ ) 92 # include <dlfcn.h> 93 # elif defined( _WIN32 ) 94 typedef struct HINSTANCE__ * HINSTANCE; 95 # if defined( _WIN64 ) 96 typedef int64_t( __stdcall * FARPROC )(); 97 # else 98 typedef int( __stdcall * FARPROC )(); 99 # endif 100 extern "C" __declspec( dllimport ) HINSTANCE __stdcall LoadLibraryA( char const * lpLibFileName ); 101 extern "C" __declspec( dllimport ) int __stdcall FreeLibrary( HINSTANCE hLibModule ); 102 extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE hModule, const char * lpProcName ); 103 # endif 104 #endif 105 106 #if !defined( __has_include ) 107 # define __has_include( x ) false 108 #endif 109 110 #if ( 201711 <= __cpp_impl_three_way_comparison ) && __has_include( <compare> ) && !defined( VULKAN_HPP_NO_SPACESHIP_OPERATOR ) 111 # define VULKAN_HPP_HAS_SPACESHIP_OPERATOR 112 #endif 113 #if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) 114 # include <compare> 115 #endif 116 117 #if ( 201803 <= __cpp_lib_span ) 118 # define VULKAN_HPP_SUPPORT_SPAN 119 # include <span> 120 #endif 121 122 static_assert( VK_HEADER_VERSION == 196, "Wrong VK_HEADER_VERSION!" ); 123 124 // 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default. 125 // To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION 126 #if ( VK_USE_64_BIT_PTR_DEFINES == 1 ) 127 # if !defined( VULKAN_HPP_TYPESAFE_CONVERSION ) 128 # define VULKAN_HPP_TYPESAFE_CONVERSION 129 # endif 130 #endif 131 132 // <tuple> includes <sys/sysmacros.h> through some other header 133 // this results in major(x) being resolved to gnu_dev_major(x) 134 // which is an expression in a constructor initializer list. 135 #if defined( major ) 136 # undef major 137 #endif 138 #if defined( minor ) 139 # undef minor 140 #endif 141 142 // Windows defines MemoryBarrier which is deprecated and collides 143 // with the VULKAN_HPP_NAMESPACE::MemoryBarrier struct. 144 #if defined( MemoryBarrier ) 145 # undef MemoryBarrier 146 #endif 147 148 #if !defined( VULKAN_HPP_HAS_UNRESTRICTED_UNIONS ) 149 # if defined( __clang__ ) 150 # if __has_feature( cxx_unrestricted_unions ) 151 # define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS 152 # endif 153 # elif defined( __GNUC__ ) 154 # define GCC_VERSION ( __GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__ ) 155 # if 40600 <= GCC_VERSION 156 # define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS 157 # endif 158 # elif defined( _MSC_VER ) 159 # if 1900 <= _MSC_VER 160 # define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS 161 # endif 162 # endif 163 #endif 164 165 #if !defined( VULKAN_HPP_INLINE ) 166 # if defined( __clang__ ) 167 # if __has_attribute( always_inline ) 168 # define VULKAN_HPP_INLINE __attribute__( ( always_inline ) ) __inline__ 169 # else 170 # define VULKAN_HPP_INLINE inline 171 # endif 172 # elif defined( __GNUC__ ) 173 # define VULKAN_HPP_INLINE __attribute__( ( always_inline ) ) __inline__ 174 # elif defined( _MSC_VER ) 175 # define VULKAN_HPP_INLINE inline 176 # else 177 # define VULKAN_HPP_INLINE inline 178 # endif 179 #endif 180 181 #if defined( VULKAN_HPP_TYPESAFE_CONVERSION ) 182 # define VULKAN_HPP_TYPESAFE_EXPLICIT 183 #else 184 # define VULKAN_HPP_TYPESAFE_EXPLICIT explicit 185 #endif 186 187 #if defined( __cpp_constexpr ) 188 # define VULKAN_HPP_CONSTEXPR constexpr 189 # if __cpp_constexpr >= 201304 190 # define VULKAN_HPP_CONSTEXPR_14 constexpr 191 # else 192 # define VULKAN_HPP_CONSTEXPR_14 193 # endif 194 # define VULKAN_HPP_CONST_OR_CONSTEXPR constexpr 195 #else 196 # define VULKAN_HPP_CONSTEXPR 197 # define VULKAN_HPP_CONSTEXPR_14 198 # define VULKAN_HPP_CONST_OR_CONSTEXPR const 199 #endif 200 201 #if !defined( VULKAN_HPP_NOEXCEPT ) 202 # if defined( _MSC_VER ) && ( _MSC_VER <= 1800 ) 203 # define VULKAN_HPP_NOEXCEPT 204 # else 205 # define VULKAN_HPP_NOEXCEPT noexcept 206 # define VULKAN_HPP_HAS_NOEXCEPT 1 207 # if defined( VULKAN_HPP_NO_EXCEPTIONS ) 208 # define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS noexcept 209 # else 210 # define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS 211 # endif 212 # endif 213 #endif 214 215 #if 14 <= VULKAN_HPP_CPP_VERSION 216 # define VULKAN_HPP_DEPRECATED( msg ) [[deprecated( msg )]] 217 #else 218 # define VULKAN_HPP_DEPRECATED( msg ) 219 #endif 220 221 #if ( 17 <= VULKAN_HPP_CPP_VERSION ) && !defined( VULKAN_HPP_NO_NODISCARD_WARNINGS ) 222 # define VULKAN_HPP_NODISCARD [[nodiscard]] 223 # if defined( VULKAN_HPP_NO_EXCEPTIONS ) 224 # define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS [[nodiscard]] 225 # else 226 # define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS 227 # endif 228 #else 229 # define VULKAN_HPP_NODISCARD 230 # define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS 231 #endif 232 233 #if !defined( VULKAN_HPP_NAMESPACE ) 234 # define VULKAN_HPP_NAMESPACE vk 235 #endif 236 237 #define VULKAN_HPP_STRINGIFY2( text ) #text 238 #define VULKAN_HPP_STRINGIFY( text ) VULKAN_HPP_STRINGIFY2( text ) 239 #define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE ) 240 241 namespace VULKAN_HPP_NAMESPACE 242 { 243 #if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) 244 template <typename T> 245 class ArrayProxy 246 { 247 public: ArrayProxy()248 VULKAN_HPP_CONSTEXPR ArrayProxy() VULKAN_HPP_NOEXCEPT 249 : m_count( 0 ) 250 , m_ptr( nullptr ) 251 {} 252 ArrayProxy(std::nullptr_t)253 VULKAN_HPP_CONSTEXPR ArrayProxy( std::nullptr_t ) VULKAN_HPP_NOEXCEPT 254 : m_count( 0 ) 255 , m_ptr( nullptr ) 256 {} 257 ArrayProxy(T & value)258 ArrayProxy( T & value ) VULKAN_HPP_NOEXCEPT 259 : m_count( 1 ) 260 , m_ptr( &value ) 261 {} 262 263 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(typename std::remove_const<T>::type & value)264 ArrayProxy( typename std::remove_const<T>::type & value ) VULKAN_HPP_NOEXCEPT 265 : m_count( 1 ) 266 , m_ptr( &value ) 267 {} 268 ArrayProxy(uint32_t count,T * ptr)269 ArrayProxy( uint32_t count, T * ptr ) VULKAN_HPP_NOEXCEPT 270 : m_count( count ) 271 , m_ptr( ptr ) 272 {} 273 274 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(uint32_t count,typename std::remove_const<T>::type * ptr)275 ArrayProxy( uint32_t count, typename std::remove_const<T>::type * ptr ) VULKAN_HPP_NOEXCEPT 276 : m_count( count ) 277 , m_ptr( ptr ) 278 {} 279 280 # if __GNUC__ >= 9 281 # pragma GCC diagnostic push 282 # pragma GCC diagnostic ignored "-Winit-list-lifetime" 283 # endif 284 ArrayProxy(std::initializer_list<T> const & list)285 ArrayProxy( std::initializer_list<T> const & list ) VULKAN_HPP_NOEXCEPT 286 : m_count( static_cast<uint32_t>( list.size() ) ) 287 , m_ptr( list.begin() ) 288 {} 289 290 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::initializer_list<typename std::remove_const<T>::type> const & list)291 ArrayProxy( std::initializer_list<typename std::remove_const<T>::type> const & list ) VULKAN_HPP_NOEXCEPT 292 : m_count( static_cast<uint32_t>( list.size() ) ) 293 , m_ptr( list.begin() ) 294 {} 295 ArrayProxy(std::initializer_list<T> & list)296 ArrayProxy( std::initializer_list<T> & list ) VULKAN_HPP_NOEXCEPT 297 : m_count( static_cast<uint32_t>( list.size() ) ) 298 , m_ptr( list.begin() ) 299 {} 300 301 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::initializer_list<typename std::remove_const<T>::type> & list)302 ArrayProxy( std::initializer_list<typename std::remove_const<T>::type> & list ) VULKAN_HPP_NOEXCEPT 303 : m_count( static_cast<uint32_t>( list.size() ) ) 304 , m_ptr( list.begin() ) 305 {} 306 307 # if __GNUC__ >= 9 308 # pragma GCC diagnostic pop 309 # endif 310 311 template <size_t N> ArrayProxy(std::array<T,N> const & data)312 ArrayProxy( std::array<T, N> const & data ) VULKAN_HPP_NOEXCEPT 313 : m_count( N ) 314 , m_ptr( data.data() ) 315 {} 316 317 template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::array<typename std::remove_const<T>::type,N> const & data)318 ArrayProxy( std::array<typename std::remove_const<T>::type, N> const & data ) VULKAN_HPP_NOEXCEPT 319 : m_count( N ) 320 , m_ptr( data.data() ) 321 {} 322 323 template <size_t N> ArrayProxy(std::array<T,N> & data)324 ArrayProxy( std::array<T, N> & data ) VULKAN_HPP_NOEXCEPT 325 : m_count( N ) 326 , m_ptr( data.data() ) 327 {} 328 329 template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::array<typename std::remove_const<T>::type,N> & data)330 ArrayProxy( std::array<typename std::remove_const<T>::type, N> & data ) VULKAN_HPP_NOEXCEPT 331 : m_count( N ) 332 , m_ptr( data.data() ) 333 {} 334 335 template <class Allocator = std::allocator<typename std::remove_const<T>::type>> ArrayProxy(std::vector<T,Allocator> const & data)336 ArrayProxy( std::vector<T, Allocator> const & data ) VULKAN_HPP_NOEXCEPT 337 : m_count( static_cast<uint32_t>( data.size() ) ) 338 , m_ptr( data.data() ) 339 {} 340 341 template <class Allocator = std::allocator<typename std::remove_const<T>::type>, 342 typename B = T, 343 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::vector<typename std::remove_const<T>::type,Allocator> const & data)344 ArrayProxy( std::vector<typename std::remove_const<T>::type, Allocator> const & data ) VULKAN_HPP_NOEXCEPT 345 : m_count( static_cast<uint32_t>( data.size() ) ) 346 , m_ptr( data.data() ) 347 {} 348 349 template <class Allocator = std::allocator<typename std::remove_const<T>::type>> ArrayProxy(std::vector<T,Allocator> & data)350 ArrayProxy( std::vector<T, Allocator> & data ) VULKAN_HPP_NOEXCEPT 351 : m_count( static_cast<uint32_t>( data.size() ) ) 352 , m_ptr( data.data() ) 353 {} 354 355 template <class Allocator = std::allocator<typename std::remove_const<T>::type>, 356 typename B = T, 357 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::vector<typename std::remove_const<T>::type,Allocator> & data)358 ArrayProxy( std::vector<typename std::remove_const<T>::type, Allocator> & data ) VULKAN_HPP_NOEXCEPT 359 : m_count( static_cast<uint32_t>( data.size() ) ) 360 , m_ptr( data.data() ) 361 {} 362 363 # if defined( VULKAN_HPP_SUPPORT_SPAN ) 364 template <size_t N = std::dynamic_extent> ArrayProxy(std::span<T,N> const & data)365 ArrayProxy( std::span<T, N> const & data ) VULKAN_HPP_NOEXCEPT 366 : m_count( static_cast<uint32_t>( data.size() ) ) 367 , m_ptr( data.data() ) 368 {} 369 370 template <size_t N = std::dynamic_extent, 371 typename B = T, 372 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::span<typename std::remove_const<T>::type,N> const & data)373 ArrayProxy( std::span<typename std::remove_const<T>::type, N> const & data ) VULKAN_HPP_NOEXCEPT 374 : m_count( static_cast<uint32_t>( data.size() ) ) 375 , m_ptr( data.data() ) 376 {} 377 378 template <size_t N = std::dynamic_extent> ArrayProxy(std::span<T,N> & data)379 ArrayProxy( std::span<T, N> & data ) VULKAN_HPP_NOEXCEPT 380 : m_count( static_cast<uint32_t>( data.size() ) ) 381 , m_ptr( data.data() ) 382 {} 383 384 template <size_t N = std::dynamic_extent, 385 typename B = T, 386 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxy(std::span<typename std::remove_const<T>::type,N> & data)387 ArrayProxy( std::span<typename std::remove_const<T>::type, N> & data ) VULKAN_HPP_NOEXCEPT 388 : m_count( static_cast<uint32_t>( data.size() ) ) 389 , m_ptr( data.data() ) 390 {} 391 # endif 392 begin() const393 const T * begin() const VULKAN_HPP_NOEXCEPT 394 { 395 return m_ptr; 396 } 397 end() const398 const T * end() const VULKAN_HPP_NOEXCEPT 399 { 400 return m_ptr + m_count; 401 } 402 front() const403 const T & front() const VULKAN_HPP_NOEXCEPT 404 { 405 VULKAN_HPP_ASSERT( m_count && m_ptr ); 406 return *m_ptr; 407 } 408 back() const409 const T & back() const VULKAN_HPP_NOEXCEPT 410 { 411 VULKAN_HPP_ASSERT( m_count && m_ptr ); 412 return *( m_ptr + m_count - 1 ); 413 } 414 empty() const415 bool empty() const VULKAN_HPP_NOEXCEPT 416 { 417 return ( m_count == 0 ); 418 } 419 size() const420 uint32_t size() const VULKAN_HPP_NOEXCEPT 421 { 422 return m_count; 423 } 424 data() const425 T * data() const VULKAN_HPP_NOEXCEPT 426 { 427 return m_ptr; 428 } 429 430 private: 431 uint32_t m_count; 432 T * m_ptr; 433 }; 434 435 template <typename T> 436 class ArrayProxyNoTemporaries 437 { 438 public: ArrayProxyNoTemporaries()439 VULKAN_HPP_CONSTEXPR ArrayProxyNoTemporaries() VULKAN_HPP_NOEXCEPT 440 : m_count( 0 ) 441 , m_ptr( nullptr ) 442 {} 443 ArrayProxyNoTemporaries(std::nullptr_t)444 VULKAN_HPP_CONSTEXPR ArrayProxyNoTemporaries( std::nullptr_t ) VULKAN_HPP_NOEXCEPT 445 : m_count( 0 ) 446 , m_ptr( nullptr ) 447 {} 448 ArrayProxyNoTemporaries(T & value)449 ArrayProxyNoTemporaries( T & value ) VULKAN_HPP_NOEXCEPT 450 : m_count( 1 ) 451 , m_ptr( &value ) 452 {} 453 454 ArrayProxyNoTemporaries( T && value ) = delete; 455 456 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(typename std::remove_const<T>::type & value)457 ArrayProxyNoTemporaries( typename std::remove_const<T>::type & value ) VULKAN_HPP_NOEXCEPT 458 : m_count( 1 ) 459 , m_ptr( &value ) 460 {} 461 462 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> 463 ArrayProxyNoTemporaries( typename std::remove_const<T>::type && value ) = delete; 464 ArrayProxyNoTemporaries(uint32_t count,T * ptr)465 ArrayProxyNoTemporaries( uint32_t count, T * ptr ) VULKAN_HPP_NOEXCEPT 466 : m_count( count ) 467 , m_ptr( ptr ) 468 {} 469 470 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(uint32_t count,typename std::remove_const<T>::type * ptr)471 ArrayProxyNoTemporaries( uint32_t count, typename std::remove_const<T>::type * ptr ) VULKAN_HPP_NOEXCEPT 472 : m_count( count ) 473 , m_ptr( ptr ) 474 {} 475 ArrayProxyNoTemporaries(std::initializer_list<T> const & list)476 ArrayProxyNoTemporaries( std::initializer_list<T> const & list ) VULKAN_HPP_NOEXCEPT 477 : m_count( static_cast<uint32_t>( list.size() ) ) 478 , m_ptr( list.begin() ) 479 {} 480 481 ArrayProxyNoTemporaries( std::initializer_list<T> const && list ) = delete; 482 483 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::initializer_list<typename std::remove_const<T>::type> const & list)484 ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> const & list ) 485 VULKAN_HPP_NOEXCEPT 486 : m_count( static_cast<uint32_t>( list.size() ) ) 487 , m_ptr( list.begin() ) 488 {} 489 490 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> 491 ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> const && list ) = delete; 492 ArrayProxyNoTemporaries(std::initializer_list<T> & list)493 ArrayProxyNoTemporaries( std::initializer_list<T> & list ) VULKAN_HPP_NOEXCEPT 494 : m_count( static_cast<uint32_t>( list.size() ) ) 495 , m_ptr( list.begin() ) 496 {} 497 498 ArrayProxyNoTemporaries( std::initializer_list<T> && list ) = delete; 499 500 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::initializer_list<typename std::remove_const<T>::type> & list)501 ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> & list ) VULKAN_HPP_NOEXCEPT 502 : m_count( static_cast<uint32_t>( list.size() ) ) 503 , m_ptr( list.begin() ) 504 {} 505 506 template <typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> 507 ArrayProxyNoTemporaries( std::initializer_list<typename std::remove_const<T>::type> && list ) = delete; 508 509 template <size_t N> ArrayProxyNoTemporaries(std::array<T,N> const & data)510 ArrayProxyNoTemporaries( std::array<T, N> const & data ) VULKAN_HPP_NOEXCEPT 511 : m_count( N ) 512 , m_ptr( data.data() ) 513 {} 514 515 template <size_t N> 516 ArrayProxyNoTemporaries( std::array<T, N> const && data ) = delete; 517 518 template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::array<typename std::remove_const<T>::type,N> const & data)519 ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> const & data ) VULKAN_HPP_NOEXCEPT 520 : m_count( N ) 521 , m_ptr( data.data() ) 522 {} 523 524 template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> 525 ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> const && data ) = delete; 526 527 template <size_t N> ArrayProxyNoTemporaries(std::array<T,N> & data)528 ArrayProxyNoTemporaries( std::array<T, N> & data ) VULKAN_HPP_NOEXCEPT 529 : m_count( N ) 530 , m_ptr( data.data() ) 531 {} 532 533 template <size_t N> 534 ArrayProxyNoTemporaries( std::array<T, N> && data ) = delete; 535 536 template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::array<typename std::remove_const<T>::type,N> & data)537 ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> & data ) VULKAN_HPP_NOEXCEPT 538 : m_count( N ) 539 , m_ptr( data.data() ) 540 {} 541 542 template <size_t N, typename B = T, typename std::enable_if<std::is_const<B>::value, int>::type = 0> 543 ArrayProxyNoTemporaries( std::array<typename std::remove_const<T>::type, N> && data ) = delete; 544 545 template <class Allocator = std::allocator<typename std::remove_const<T>::type>> ArrayProxyNoTemporaries(std::vector<T,Allocator> const & data)546 ArrayProxyNoTemporaries( std::vector<T, Allocator> const & data ) VULKAN_HPP_NOEXCEPT 547 : m_count( static_cast<uint32_t>( data.size() ) ) 548 , m_ptr( data.data() ) 549 {} 550 551 template <class Allocator = std::allocator<typename std::remove_const<T>::type>> 552 ArrayProxyNoTemporaries( std::vector<T, Allocator> const && data ) = delete; 553 554 template <class Allocator = std::allocator<typename std::remove_const<T>::type>, 555 typename B = T, 556 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::vector<typename std::remove_const<T>::type,Allocator> const & data)557 ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> const & data ) 558 VULKAN_HPP_NOEXCEPT 559 : m_count( static_cast<uint32_t>( data.size() ) ) 560 , m_ptr( data.data() ) 561 {} 562 563 template <class Allocator = std::allocator<typename std::remove_const<T>::type>, 564 typename B = T, 565 typename std::enable_if<std::is_const<B>::value, int>::type = 0> 566 ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> const && data ) = delete; 567 568 template <class Allocator = std::allocator<typename std::remove_const<T>::type>> ArrayProxyNoTemporaries(std::vector<T,Allocator> & data)569 ArrayProxyNoTemporaries( std::vector<T, Allocator> & data ) VULKAN_HPP_NOEXCEPT 570 : m_count( static_cast<uint32_t>( data.size() ) ) 571 , m_ptr( data.data() ) 572 {} 573 574 template <class Allocator = std::allocator<typename std::remove_const<T>::type>> 575 ArrayProxyNoTemporaries( std::vector<T, Allocator> && data ) = delete; 576 577 template <class Allocator = std::allocator<typename std::remove_const<T>::type>, 578 typename B = T, 579 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::vector<typename std::remove_const<T>::type,Allocator> & data)580 ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> & data ) VULKAN_HPP_NOEXCEPT 581 : m_count( static_cast<uint32_t>( data.size() ) ) 582 , m_ptr( data.data() ) 583 {} 584 585 template <class Allocator = std::allocator<typename std::remove_const<T>::type>, 586 typename B = T, 587 typename std::enable_if<std::is_const<B>::value, int>::type = 0> 588 ArrayProxyNoTemporaries( std::vector<typename std::remove_const<T>::type, Allocator> && data ) = delete; 589 590 # if defined( VULKAN_HPP_SUPPORT_SPAN ) 591 template <size_t N = std::dynamic_extent> ArrayProxyNoTemporaries(std::span<T,N> const & data)592 ArrayProxyNoTemporaries( std::span<T, N> const & data ) VULKAN_HPP_NOEXCEPT 593 : m_count( static_cast<uint32_t>( data.size() ) ) 594 , m_ptr( data.data() ) 595 {} 596 597 template <size_t N = std::dynamic_extent, 598 typename B = T, 599 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::span<typename std::remove_const<T>::type,N> const & data)600 ArrayProxyNoTemporaries( std::span<typename std::remove_const<T>::type, N> const & data ) VULKAN_HPP_NOEXCEPT 601 : m_count( static_cast<uint32_t>( data.size() ) ) 602 , m_ptr( data.data() ) 603 {} 604 605 template <size_t N = std::dynamic_extent> ArrayProxyNoTemporaries(std::span<T,N> & data)606 ArrayProxyNoTemporaries( std::span<T, N> & data ) VULKAN_HPP_NOEXCEPT 607 : m_count( static_cast<uint32_t>( data.size() ) ) 608 , m_ptr( data.data() ) 609 {} 610 611 template <size_t N = std::dynamic_extent, 612 typename B = T, 613 typename std::enable_if<std::is_const<B>::value, int>::type = 0> ArrayProxyNoTemporaries(std::span<typename std::remove_const<T>::type,N> & data)614 ArrayProxyNoTemporaries( std::span<typename std::remove_const<T>::type, N> & data ) VULKAN_HPP_NOEXCEPT 615 : m_count( static_cast<uint32_t>( data.size() ) ) 616 , m_ptr( data.data() ) 617 {} 618 # endif 619 begin() const620 const T * begin() const VULKAN_HPP_NOEXCEPT 621 { 622 return m_ptr; 623 } 624 end() const625 const T * end() const VULKAN_HPP_NOEXCEPT 626 { 627 return m_ptr + m_count; 628 } 629 front() const630 const T & front() const VULKAN_HPP_NOEXCEPT 631 { 632 VULKAN_HPP_ASSERT( m_count && m_ptr ); 633 return *m_ptr; 634 } 635 back() const636 const T & back() const VULKAN_HPP_NOEXCEPT 637 { 638 VULKAN_HPP_ASSERT( m_count && m_ptr ); 639 return *( m_ptr + m_count - 1 ); 640 } 641 empty() const642 bool empty() const VULKAN_HPP_NOEXCEPT 643 { 644 return ( m_count == 0 ); 645 } 646 size() const647 uint32_t size() const VULKAN_HPP_NOEXCEPT 648 { 649 return m_count; 650 } 651 data() const652 T * data() const VULKAN_HPP_NOEXCEPT 653 { 654 return m_ptr; 655 } 656 657 private: 658 uint32_t m_count; 659 T * m_ptr; 660 }; 661 #endif 662 663 template <typename T, size_t N> 664 class ArrayWrapper1D : public std::array<T, N> 665 { 666 public: ArrayWrapper1D()667 VULKAN_HPP_CONSTEXPR ArrayWrapper1D() VULKAN_HPP_NOEXCEPT : std::array<T, N>() {} 668 ArrayWrapper1D(std::array<T,N> const & data)669 VULKAN_HPP_CONSTEXPR ArrayWrapper1D( std::array<T, N> const & data ) VULKAN_HPP_NOEXCEPT : std::array<T, N>( data ) 670 {} 671 672 #if ( VK_USE_64_BIT_PTR_DEFINES == 0 ) 673 // on 32 bit compiles, needs overloads on index type int to resolve ambiguities operator [](int index) const674 VULKAN_HPP_CONSTEXPR T const & operator[]( int index ) const VULKAN_HPP_NOEXCEPT 675 { 676 return std::array<T, N>::operator[]( index ); 677 } 678 operator [](int index)679 T & operator[]( int index ) VULKAN_HPP_NOEXCEPT 680 { 681 return std::array<T, N>::operator[]( index ); 682 } 683 #endif 684 operator T const*() const685 operator T const *() const VULKAN_HPP_NOEXCEPT 686 { 687 return this->data(); 688 } 689 operator T*()690 operator T *() VULKAN_HPP_NOEXCEPT 691 { 692 return this->data(); 693 } 694 695 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator std::string() const696 operator std::string() const 697 { 698 return std::string( this->data() ); 699 } 700 701 #if 17 <= VULKAN_HPP_CPP_VERSION 702 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator std::string_view() const703 operator std::string_view() const 704 { 705 return std::string_view( this->data() ); 706 } 707 #endif 708 709 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator <(ArrayWrapper1D<char,N> const & rhs) const710 bool operator<( ArrayWrapper1D<char, N> const & rhs ) const VULKAN_HPP_NOEXCEPT 711 { 712 return *static_cast<std::array<char, N> const *>( this ) < *static_cast<std::array<char, N> const *>( &rhs ); 713 } 714 715 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator <=(ArrayWrapper1D<char,N> const & rhs) const716 bool operator<=( ArrayWrapper1D<char, N> const & rhs ) const VULKAN_HPP_NOEXCEPT 717 { 718 return *static_cast<std::array<char, N> const *>( this ) <= *static_cast<std::array<char, N> const *>( &rhs ); 719 } 720 721 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator >(ArrayWrapper1D<char,N> const & rhs) const722 bool operator>( ArrayWrapper1D<char, N> const & rhs ) const VULKAN_HPP_NOEXCEPT 723 { 724 return *static_cast<std::array<char, N> const *>( this ) > *static_cast<std::array<char, N> const *>( &rhs ); 725 } 726 727 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator >=(ArrayWrapper1D<char,N> const & rhs) const728 bool operator>=( ArrayWrapper1D<char, N> const & rhs ) const VULKAN_HPP_NOEXCEPT 729 { 730 return *static_cast<std::array<char, N> const *>( this ) >= *static_cast<std::array<char, N> const *>( &rhs ); 731 } 732 733 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator ==(ArrayWrapper1D<char,N> const & rhs) const734 bool operator==( ArrayWrapper1D<char, N> const & rhs ) const VULKAN_HPP_NOEXCEPT 735 { 736 return *static_cast<std::array<char, N> const *>( this ) == *static_cast<std::array<char, N> const *>( &rhs ); 737 } 738 739 template <typename B = T, typename std::enable_if<std::is_same<B, char>::value, int>::type = 0> operator !=(ArrayWrapper1D<char,N> const & rhs) const740 bool operator!=( ArrayWrapper1D<char, N> const & rhs ) const VULKAN_HPP_NOEXCEPT 741 { 742 return *static_cast<std::array<char, N> const *>( this ) != *static_cast<std::array<char, N> const *>( &rhs ); 743 } 744 }; 745 746 // specialization of relational operators between std::string and arrays of chars 747 template <size_t N> operator <(std::string const & lhs,ArrayWrapper1D<char,N> const & rhs)748 bool operator<( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT 749 { 750 return lhs < rhs.data(); 751 } 752 753 template <size_t N> operator <=(std::string const & lhs,ArrayWrapper1D<char,N> const & rhs)754 bool operator<=( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT 755 { 756 return lhs <= rhs.data(); 757 } 758 759 template <size_t N> operator >(std::string const & lhs,ArrayWrapper1D<char,N> const & rhs)760 bool operator>( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT 761 { 762 return lhs > rhs.data(); 763 } 764 765 template <size_t N> operator >=(std::string const & lhs,ArrayWrapper1D<char,N> const & rhs)766 bool operator>=( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT 767 { 768 return lhs >= rhs.data(); 769 } 770 771 template <size_t N> operator ==(std::string const & lhs,ArrayWrapper1D<char,N> const & rhs)772 bool operator==( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT 773 { 774 return lhs == rhs.data(); 775 } 776 777 template <size_t N> operator !=(std::string const & lhs,ArrayWrapper1D<char,N> const & rhs)778 bool operator!=( std::string const & lhs, ArrayWrapper1D<char, N> const & rhs ) VULKAN_HPP_NOEXCEPT 779 { 780 return lhs != rhs.data(); 781 } 782 783 template <typename T, size_t N, size_t M> 784 class ArrayWrapper2D : public std::array<ArrayWrapper1D<T, M>, N> 785 { 786 public: ArrayWrapper2D()787 VULKAN_HPP_CONSTEXPR ArrayWrapper2D() VULKAN_HPP_NOEXCEPT : std::array<ArrayWrapper1D<T, M>, N>() {} 788 ArrayWrapper2D(std::array<std::array<T,M>,N> const & data)789 VULKAN_HPP_CONSTEXPR ArrayWrapper2D( std::array<std::array<T, M>, N> const & data ) VULKAN_HPP_NOEXCEPT 790 : std::array<ArrayWrapper1D<T, M>, N>( *reinterpret_cast<std::array<ArrayWrapper1D<T, M>, N> const *>( &data ) ) 791 {} 792 }; 793 794 template <typename FlagBitsType> 795 struct FlagTraits 796 { 797 enum 798 { 799 allFlags = 0 800 }; 801 }; 802 803 template <typename BitType> 804 class Flags 805 { 806 public: 807 using MaskType = typename std::underlying_type<BitType>::type; 808 809 // constructors Flags()810 VULKAN_HPP_CONSTEXPR Flags() VULKAN_HPP_NOEXCEPT : m_mask( 0 ) {} 811 Flags(BitType bit)812 VULKAN_HPP_CONSTEXPR Flags( BitType bit ) VULKAN_HPP_NOEXCEPT : m_mask( static_cast<MaskType>( bit ) ) {} 813 814 VULKAN_HPP_CONSTEXPR Flags( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT = default; 815 Flags(MaskType flags)816 VULKAN_HPP_CONSTEXPR explicit Flags( MaskType flags ) VULKAN_HPP_NOEXCEPT : m_mask( flags ) {} 817 818 // relational operators 819 #if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) 820 auto operator<=>( Flags<BitType> const & ) const = default; 821 #else operator <(Flags<BitType> const & rhs) const822 VULKAN_HPP_CONSTEXPR bool operator<( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 823 { 824 return m_mask < rhs.m_mask; 825 } 826 operator <=(Flags<BitType> const & rhs) const827 VULKAN_HPP_CONSTEXPR bool operator<=( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 828 { 829 return m_mask <= rhs.m_mask; 830 } 831 operator >(Flags<BitType> const & rhs) const832 VULKAN_HPP_CONSTEXPR bool operator>( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 833 { 834 return m_mask > rhs.m_mask; 835 } 836 operator >=(Flags<BitType> const & rhs) const837 VULKAN_HPP_CONSTEXPR bool operator>=( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 838 { 839 return m_mask >= rhs.m_mask; 840 } 841 operator ==(Flags<BitType> const & rhs) const842 VULKAN_HPP_CONSTEXPR bool operator==( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 843 { 844 return m_mask == rhs.m_mask; 845 } 846 operator !=(Flags<BitType> const & rhs) const847 VULKAN_HPP_CONSTEXPR bool operator!=( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 848 { 849 return m_mask != rhs.m_mask; 850 } 851 #endif 852 853 // logical operator operator !() const854 VULKAN_HPP_CONSTEXPR bool operator!() const VULKAN_HPP_NOEXCEPT 855 { 856 return !m_mask; 857 } 858 859 // bitwise operators operator &(Flags<BitType> const & rhs) const860 VULKAN_HPP_CONSTEXPR Flags<BitType> operator&( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 861 { 862 return Flags<BitType>( m_mask & rhs.m_mask ); 863 } 864 operator |(Flags<BitType> const & rhs) const865 VULKAN_HPP_CONSTEXPR Flags<BitType> operator|( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 866 { 867 return Flags<BitType>( m_mask | rhs.m_mask ); 868 } 869 operator ^(Flags<BitType> const & rhs) const870 VULKAN_HPP_CONSTEXPR Flags<BitType> operator^( Flags<BitType> const & rhs ) const VULKAN_HPP_NOEXCEPT 871 { 872 return Flags<BitType>( m_mask ^ rhs.m_mask ); 873 } 874 operator ~() const875 VULKAN_HPP_CONSTEXPR Flags<BitType> operator~() const VULKAN_HPP_NOEXCEPT 876 { 877 return Flags<BitType>( m_mask ^ FlagTraits<BitType>::allFlags ); 878 } 879 880 // assignment operators 881 VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT = default; 882 operator |=(Flags<BitType> const & rhs)883 VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator|=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT 884 { 885 m_mask |= rhs.m_mask; 886 return *this; 887 } 888 operator &=(Flags<BitType> const & rhs)889 VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator&=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT 890 { 891 m_mask &= rhs.m_mask; 892 return *this; 893 } 894 operator ^=(Flags<BitType> const & rhs)895 VULKAN_HPP_CONSTEXPR_14 Flags<BitType> & operator^=( Flags<BitType> const & rhs ) VULKAN_HPP_NOEXCEPT 896 { 897 m_mask ^= rhs.m_mask; 898 return *this; 899 } 900 901 // cast operators operator bool() const902 explicit VULKAN_HPP_CONSTEXPR operator bool() const VULKAN_HPP_NOEXCEPT 903 { 904 return !!m_mask; 905 } 906 operator MaskType() const907 explicit VULKAN_HPP_CONSTEXPR operator MaskType() const VULKAN_HPP_NOEXCEPT 908 { 909 return m_mask; 910 } 911 912 #if defined( VULKAN_HPP_FLAGS_MASK_TYPE_AS_PUBLIC ) 913 public: 914 #else 915 private: 916 #endif 917 MaskType m_mask; 918 }; 919 920 #if !defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) 921 // relational operators only needed for pre C++20 922 template <typename BitType> operator <(BitType bit,Flags<BitType> const & flags)923 VULKAN_HPP_CONSTEXPR bool operator<( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 924 { 925 return flags.operator>( bit ); 926 } 927 928 template <typename BitType> operator <=(BitType bit,Flags<BitType> const & flags)929 VULKAN_HPP_CONSTEXPR bool operator<=( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 930 { 931 return flags.operator>=( bit ); 932 } 933 934 template <typename BitType> operator >(BitType bit,Flags<BitType> const & flags)935 VULKAN_HPP_CONSTEXPR bool operator>( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 936 { 937 return flags.operator<( bit ); 938 } 939 940 template <typename BitType> operator >=(BitType bit,Flags<BitType> const & flags)941 VULKAN_HPP_CONSTEXPR bool operator>=( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 942 { 943 return flags.operator<=( bit ); 944 } 945 946 template <typename BitType> operator ==(BitType bit,Flags<BitType> const & flags)947 VULKAN_HPP_CONSTEXPR bool operator==( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 948 { 949 return flags.operator==( bit ); 950 } 951 952 template <typename BitType> operator !=(BitType bit,Flags<BitType> const & flags)953 VULKAN_HPP_CONSTEXPR bool operator!=( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 954 { 955 return flags.operator!=( bit ); 956 } 957 #endif 958 959 // bitwise operators 960 template <typename BitType> operator &(BitType bit,Flags<BitType> const & flags)961 VULKAN_HPP_CONSTEXPR Flags<BitType> operator&( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 962 { 963 return flags.operator&( bit ); 964 } 965 966 template <typename BitType> operator |(BitType bit,Flags<BitType> const & flags)967 VULKAN_HPP_CONSTEXPR Flags<BitType> operator|( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 968 { 969 return flags.operator|( bit ); 970 } 971 972 template <typename BitType> operator ^(BitType bit,Flags<BitType> const & flags)973 VULKAN_HPP_CONSTEXPR Flags<BitType> operator^( BitType bit, Flags<BitType> const & flags ) VULKAN_HPP_NOEXCEPT 974 { 975 return flags.operator^( bit ); 976 } 977 978 template <typename RefType> 979 class Optional 980 { 981 public: Optional(RefType & reference)982 Optional( RefType & reference ) VULKAN_HPP_NOEXCEPT 983 { 984 m_ptr = &reference; 985 } Optional(RefType * ptr)986 Optional( RefType * ptr ) VULKAN_HPP_NOEXCEPT 987 { 988 m_ptr = ptr; 989 } Optional(std::nullptr_t)990 Optional( std::nullptr_t ) VULKAN_HPP_NOEXCEPT 991 { 992 m_ptr = nullptr; 993 } 994 operator RefType*() const995 operator RefType *() const VULKAN_HPP_NOEXCEPT 996 { 997 return m_ptr; 998 } operator ->() const999 RefType const * operator->() const VULKAN_HPP_NOEXCEPT 1000 { 1001 return m_ptr; 1002 } operator bool() const1003 explicit operator bool() const VULKAN_HPP_NOEXCEPT 1004 { 1005 return !!m_ptr; 1006 } 1007 1008 private: 1009 RefType * m_ptr; 1010 }; 1011 1012 template <typename X, typename Y> 1013 struct StructExtends 1014 { 1015 enum 1016 { 1017 value = false 1018 }; 1019 }; 1020 1021 template <typename Type, class...> 1022 struct IsPartOfStructureChain 1023 { 1024 static const bool valid = false; 1025 }; 1026 1027 template <typename Type, typename Head, typename... Tail> 1028 struct IsPartOfStructureChain<Type, Head, Tail...> 1029 { 1030 static const bool valid = std::is_same<Type, Head>::value || IsPartOfStructureChain<Type, Tail...>::valid; 1031 }; 1032 1033 template <size_t Index, typename T, typename... ChainElements> 1034 struct StructureChainContains 1035 { 1036 static const bool value = 1037 std::is_same<T, typename std::tuple_element<Index, std::tuple<ChainElements...>>::type>::value || 1038 StructureChainContains<Index - 1, T, ChainElements...>::value; 1039 }; 1040 1041 template <typename T, typename... ChainElements> 1042 struct StructureChainContains<0, T, ChainElements...> 1043 { 1044 static const bool value = 1045 std::is_same<T, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value; 1046 }; 1047 1048 template <size_t Index, typename... ChainElements> 1049 struct StructureChainValidation 1050 { 1051 using TestType = typename std::tuple_element<Index, std::tuple<ChainElements...>>::type; 1052 static const bool valid = 1053 StructExtends<TestType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value && 1054 ( TestType::allowDuplicate || !StructureChainContains<Index - 1, TestType, ChainElements...>::value ) && 1055 StructureChainValidation<Index - 1, ChainElements...>::valid; 1056 }; 1057 1058 template <typename... ChainElements> 1059 struct StructureChainValidation<0, ChainElements...> 1060 { 1061 static const bool valid = true; 1062 }; 1063 1064 template <typename... ChainElements> 1065 class StructureChain : public std::tuple<ChainElements...> 1066 { 1067 public: StructureChain()1068 StructureChain() VULKAN_HPP_NOEXCEPT 1069 { 1070 static_assert( StructureChainValidation<sizeof...( ChainElements ) - 1, ChainElements...>::valid, 1071 "The structure chain is not valid!" ); 1072 link<sizeof...( ChainElements ) - 1>(); 1073 } 1074 StructureChain(StructureChain const & rhs)1075 StructureChain( StructureChain const & rhs ) VULKAN_HPP_NOEXCEPT : std::tuple<ChainElements...>( rhs ) 1076 { 1077 static_assert( StructureChainValidation<sizeof...( ChainElements ) - 1, ChainElements...>::valid, 1078 "The structure chain is not valid!" ); 1079 link<sizeof...( ChainElements ) - 1>(); 1080 } 1081 StructureChain(StructureChain && rhs)1082 StructureChain( StructureChain && rhs ) VULKAN_HPP_NOEXCEPT 1083 : std::tuple<ChainElements...>( std::forward<std::tuple<ChainElements...>>( rhs ) ) 1084 { 1085 static_assert( StructureChainValidation<sizeof...( ChainElements ) - 1, ChainElements...>::valid, 1086 "The structure chain is not valid!" ); 1087 link<sizeof...( ChainElements ) - 1>(); 1088 } 1089 StructureChain(ChainElements const &...elems)1090 StructureChain( ChainElements const &... elems ) VULKAN_HPP_NOEXCEPT : std::tuple<ChainElements...>( elems... ) 1091 { 1092 static_assert( StructureChainValidation<sizeof...( ChainElements ) - 1, ChainElements...>::valid, 1093 "The structure chain is not valid!" ); 1094 link<sizeof...( ChainElements ) - 1>(); 1095 } 1096 operator =(StructureChain const & rhs)1097 StructureChain & operator=( StructureChain const & rhs ) VULKAN_HPP_NOEXCEPT 1098 { 1099 std::tuple<ChainElements...>::operator=( rhs ); 1100 link<sizeof...( ChainElements ) - 1>(); 1101 return *this; 1102 } 1103 1104 StructureChain & operator=( StructureChain && rhs ) = delete; 1105 1106 template <typename T = typename std::tuple_element<0, std::tuple<ChainElements...>>::type, size_t Which = 0> get()1107 T & get() VULKAN_HPP_NOEXCEPT 1108 { 1109 return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>( 1110 static_cast<std::tuple<ChainElements...> &>( *this ) ); 1111 } 1112 1113 template <typename T = typename std::tuple_element<0, std::tuple<ChainElements...>>::type, size_t Which = 0> get() const1114 T const & get() const VULKAN_HPP_NOEXCEPT 1115 { 1116 return std::get<ChainElementIndex<0, T, Which, void, ChainElements...>::value>( 1117 static_cast<std::tuple<ChainElements...> const &>( *this ) ); 1118 } 1119 1120 template <typename T0, typename T1, typename... Ts> get()1121 std::tuple<T0 &, T1 &, Ts &...> get() VULKAN_HPP_NOEXCEPT 1122 { 1123 return std::tie( get<T0>(), get<T1>(), get<Ts>()... ); 1124 } 1125 1126 template <typename T0, typename T1, typename... Ts> get() const1127 std::tuple<T0 const &, T1 const &, Ts const &...> get() const VULKAN_HPP_NOEXCEPT 1128 { 1129 return std::tie( get<T0>(), get<T1>(), get<Ts>()... ); 1130 } 1131 1132 template <typename ClassType, size_t Which = 0> 1133 typename std::enable_if< 1134 std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value && 1135 ( Which == 0 ), 1136 bool>::type isLinked() const1137 isLinked() const VULKAN_HPP_NOEXCEPT 1138 { 1139 return true; 1140 } 1141 1142 template <typename ClassType, size_t Which = 0> 1143 typename std::enable_if< 1144 !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value || 1145 ( Which != 0 ), 1146 bool>::type isLinked() const1147 isLinked() const VULKAN_HPP_NOEXCEPT 1148 { 1149 static_assert( IsPartOfStructureChain<ClassType, ChainElements...>::valid, 1150 "Can't unlink Structure that's not part of this StructureChain!" ); 1151 return isLinked( reinterpret_cast<VkBaseInStructure const *>( &get<ClassType, Which>() ) ); 1152 } 1153 1154 template <typename ClassType, size_t Which = 0> 1155 typename std::enable_if< 1156 !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value || 1157 ( Which != 0 ), 1158 void>::type relink()1159 relink() VULKAN_HPP_NOEXCEPT 1160 { 1161 static_assert( IsPartOfStructureChain<ClassType, ChainElements...>::valid, 1162 "Can't relink Structure that's not part of this StructureChain!" ); 1163 auto pNext = reinterpret_cast<VkBaseInStructure *>( &get<ClassType, Which>() ); 1164 VULKAN_HPP_ASSERT( !isLinked( pNext ) ); 1165 auto & headElement = std::get<0>( static_cast<std::tuple<ChainElements...> &>( *this ) ); 1166 pNext->pNext = reinterpret_cast<VkBaseInStructure const *>( headElement.pNext ); 1167 headElement.pNext = pNext; 1168 } 1169 1170 template <typename ClassType, size_t Which = 0> 1171 typename std::enable_if< 1172 !std::is_same<ClassType, typename std::tuple_element<0, std::tuple<ChainElements...>>::type>::value || 1173 ( Which != 0 ), 1174 void>::type unlink()1175 unlink() VULKAN_HPP_NOEXCEPT 1176 { 1177 static_assert( IsPartOfStructureChain<ClassType, ChainElements...>::valid, 1178 "Can't unlink Structure that's not part of this StructureChain!" ); 1179 unlink( reinterpret_cast<VkBaseOutStructure const *>( &get<ClassType, Which>() ) ); 1180 } 1181 1182 private: 1183 template <int Index, typename T, int Which, typename, class First, class... Types> 1184 struct ChainElementIndex : ChainElementIndex<Index + 1, T, Which, void, Types...> 1185 {}; 1186 1187 template <int Index, typename T, int Which, class First, class... Types> 1188 struct ChainElementIndex<Index, 1189 T, 1190 Which, 1191 typename std::enable_if<!std::is_same<T, First>::value, void>::type, 1192 First, 1193 Types...> : ChainElementIndex<Index + 1, T, Which, void, Types...> 1194 {}; 1195 1196 template <int Index, typename T, int Which, class First, class... Types> 1197 struct ChainElementIndex<Index, 1198 T, 1199 Which, 1200 typename std::enable_if<std::is_same<T, First>::value, void>::type, 1201 First, 1202 Types...> : ChainElementIndex<Index + 1, T, Which - 1, void, Types...> 1203 {}; 1204 1205 template <int Index, typename T, class First, class... Types> 1206 struct ChainElementIndex<Index, 1207 T, 1208 0, 1209 typename std::enable_if<std::is_same<T, First>::value, void>::type, 1210 First, 1211 Types...> : std::integral_constant<int, Index> 1212 {}; 1213 isLinked(VkBaseInStructure const * pNext) const1214 bool isLinked( VkBaseInStructure const * pNext ) const VULKAN_HPP_NOEXCEPT 1215 { 1216 VkBaseInStructure const * elementPtr = reinterpret_cast<VkBaseInStructure const *>( 1217 &std::get<0>( static_cast<std::tuple<ChainElements...> const &>( *this ) ) ); 1218 while ( elementPtr ) 1219 { 1220 if ( elementPtr->pNext == pNext ) 1221 { 1222 return true; 1223 } 1224 elementPtr = elementPtr->pNext; 1225 } 1226 return false; 1227 } 1228 1229 template <size_t Index> link()1230 typename std::enable_if<Index != 0, void>::type link() VULKAN_HPP_NOEXCEPT 1231 { 1232 auto & x = std::get<Index - 1>( static_cast<std::tuple<ChainElements...> &>( *this ) ); 1233 x.pNext = &std::get<Index>( static_cast<std::tuple<ChainElements...> &>( *this ) ); 1234 link<Index - 1>(); 1235 } 1236 1237 template <size_t Index> link()1238 typename std::enable_if<Index == 0, void>::type link() VULKAN_HPP_NOEXCEPT 1239 {} 1240 unlink(VkBaseOutStructure const * pNext)1241 void unlink( VkBaseOutStructure const * pNext ) VULKAN_HPP_NOEXCEPT 1242 { 1243 VkBaseOutStructure * elementPtr = 1244 reinterpret_cast<VkBaseOutStructure *>( &std::get<0>( static_cast<std::tuple<ChainElements...> &>( *this ) ) ); 1245 while ( elementPtr && ( elementPtr->pNext != pNext ) ) 1246 { 1247 elementPtr = elementPtr->pNext; 1248 } 1249 if ( elementPtr ) 1250 { 1251 elementPtr->pNext = pNext->pNext; 1252 } 1253 else 1254 { 1255 VULKAN_HPP_ASSERT( false ); // fires, if the ClassType member has already been unlinked ! 1256 } 1257 } 1258 }; 1259 1260 #if !defined( VULKAN_HPP_NO_SMART_HANDLE ) 1261 template <typename Type, typename Dispatch> 1262 class UniqueHandleTraits; 1263 1264 template <typename Type, typename Dispatch> 1265 class UniqueHandle : public UniqueHandleTraits<Type, Dispatch>::deleter 1266 { 1267 private: 1268 using Deleter = typename UniqueHandleTraits<Type, Dispatch>::deleter; 1269 1270 public: 1271 using element_type = Type; 1272 UniqueHandle()1273 UniqueHandle() : Deleter(), m_value() {} 1274 UniqueHandle(Type const & value,Deleter const & deleter=Deleter ())1275 explicit UniqueHandle( Type const & value, Deleter const & deleter = Deleter() ) VULKAN_HPP_NOEXCEPT 1276 : Deleter( deleter ) 1277 , m_value( value ) 1278 {} 1279 1280 UniqueHandle( UniqueHandle const & ) = delete; 1281 UniqueHandle(UniqueHandle && other)1282 UniqueHandle( UniqueHandle && other ) VULKAN_HPP_NOEXCEPT 1283 : Deleter( std::move( static_cast<Deleter &>( other ) ) ) 1284 , m_value( other.release() ) 1285 {} 1286 ~UniqueHandle()1287 ~UniqueHandle() VULKAN_HPP_NOEXCEPT 1288 { 1289 if ( m_value ) 1290 { 1291 this->destroy( m_value ); 1292 } 1293 } 1294 1295 UniqueHandle & operator=( UniqueHandle const & ) = delete; 1296 operator =(UniqueHandle && other)1297 UniqueHandle & operator=( UniqueHandle && other ) VULKAN_HPP_NOEXCEPT 1298 { 1299 reset( other.release() ); 1300 *static_cast<Deleter *>( this ) = std::move( static_cast<Deleter &>( other ) ); 1301 return *this; 1302 } 1303 operator bool() const1304 explicit operator bool() const VULKAN_HPP_NOEXCEPT 1305 { 1306 return m_value.operator bool(); 1307 } 1308 operator ->() const1309 Type const * operator->() const VULKAN_HPP_NOEXCEPT 1310 { 1311 return &m_value; 1312 } 1313 operator ->()1314 Type * operator->() VULKAN_HPP_NOEXCEPT 1315 { 1316 return &m_value; 1317 } 1318 operator *() const1319 Type const & operator*() const VULKAN_HPP_NOEXCEPT 1320 { 1321 return m_value; 1322 } 1323 operator *()1324 Type & operator*() VULKAN_HPP_NOEXCEPT 1325 { 1326 return m_value; 1327 } 1328 get() const1329 const Type & get() const VULKAN_HPP_NOEXCEPT 1330 { 1331 return m_value; 1332 } 1333 get()1334 Type & get() VULKAN_HPP_NOEXCEPT 1335 { 1336 return m_value; 1337 } 1338 reset(Type const & value=Type ())1339 void reset( Type const & value = Type() ) VULKAN_HPP_NOEXCEPT 1340 { 1341 if ( m_value != value ) 1342 { 1343 if ( m_value ) 1344 { 1345 this->destroy( m_value ); 1346 } 1347 m_value = value; 1348 } 1349 } 1350 release()1351 Type release() VULKAN_HPP_NOEXCEPT 1352 { 1353 Type value = m_value; 1354 m_value = nullptr; 1355 return value; 1356 } 1357 swap(UniqueHandle<Type,Dispatch> & rhs)1358 void swap( UniqueHandle<Type, Dispatch> & rhs ) VULKAN_HPP_NOEXCEPT 1359 { 1360 std::swap( m_value, rhs.m_value ); 1361 std::swap( static_cast<Deleter &>( *this ), static_cast<Deleter &>( rhs ) ); 1362 } 1363 1364 private: 1365 Type m_value; 1366 }; 1367 1368 template <typename UniqueType> 1369 VULKAN_HPP_INLINE std::vector<typename UniqueType::element_type> uniqueToRaw(std::vector<UniqueType> const & handles)1370 uniqueToRaw( std::vector<UniqueType> const & handles ) 1371 { 1372 std::vector<typename UniqueType::element_type> newBuffer( handles.size() ); 1373 std::transform( 1374 handles.begin(), handles.end(), newBuffer.begin(), []( UniqueType const & handle ) { return handle.get(); } ); 1375 return newBuffer; 1376 } 1377 1378 template <typename Type, typename Dispatch> swap(UniqueHandle<Type,Dispatch> & lhs,UniqueHandle<Type,Dispatch> & rhs)1379 VULKAN_HPP_INLINE void swap( UniqueHandle<Type, Dispatch> & lhs, 1380 UniqueHandle<Type, Dispatch> & rhs ) VULKAN_HPP_NOEXCEPT 1381 { 1382 lhs.swap( rhs ); 1383 } 1384 #endif 1385 1386 class DispatchLoaderBase 1387 { 1388 public: 1389 DispatchLoaderBase() = default; DispatchLoaderBase(std::nullptr_t)1390 DispatchLoaderBase( std::nullptr_t ) 1391 #if !defined( NDEBUG ) 1392 : m_valid( false ) 1393 #endif 1394 {} 1395 1396 #if !defined( NDEBUG ) getVkHeaderVersion() const1397 size_t getVkHeaderVersion() const 1398 { 1399 VULKAN_HPP_ASSERT( m_valid ); 1400 return vkHeaderVersion; 1401 } 1402 1403 private: 1404 size_t vkHeaderVersion = VK_HEADER_VERSION; 1405 bool m_valid = true; 1406 #endif 1407 }; 1408 1409 #if !defined( VK_NO_PROTOTYPES ) 1410 class DispatchLoaderStatic : public DispatchLoaderBase 1411 { 1412 public: 1413 //=== VK_VERSION_1_0 === 1414 vkCreateInstance(const VkInstanceCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkInstance * pInstance) const1415 VkResult vkCreateInstance( const VkInstanceCreateInfo * pCreateInfo, 1416 const VkAllocationCallbacks * pAllocator, 1417 VkInstance * pInstance ) const VULKAN_HPP_NOEXCEPT 1418 { 1419 return ::vkCreateInstance( pCreateInfo, pAllocator, pInstance ); 1420 } 1421 vkDestroyInstance(VkInstance instance,const VkAllocationCallbacks * pAllocator) const1422 void vkDestroyInstance( VkInstance instance, const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1423 { 1424 return ::vkDestroyInstance( instance, pAllocator ); 1425 } 1426 vkEnumeratePhysicalDevices(VkInstance instance,uint32_t * pPhysicalDeviceCount,VkPhysicalDevice * pPhysicalDevices) const1427 VkResult vkEnumeratePhysicalDevices( VkInstance instance, 1428 uint32_t * pPhysicalDeviceCount, 1429 VkPhysicalDevice * pPhysicalDevices ) const VULKAN_HPP_NOEXCEPT 1430 { 1431 return ::vkEnumeratePhysicalDevices( instance, pPhysicalDeviceCount, pPhysicalDevices ); 1432 } 1433 vkGetPhysicalDeviceFeatures(VkPhysicalDevice physicalDevice,VkPhysicalDeviceFeatures * pFeatures) const1434 void vkGetPhysicalDeviceFeatures( VkPhysicalDevice physicalDevice, 1435 VkPhysicalDeviceFeatures * pFeatures ) const VULKAN_HPP_NOEXCEPT 1436 { 1437 return ::vkGetPhysicalDeviceFeatures( physicalDevice, pFeatures ); 1438 } 1439 vkGetPhysicalDeviceFormatProperties(VkPhysicalDevice physicalDevice,VkFormat format,VkFormatProperties * pFormatProperties) const1440 void vkGetPhysicalDeviceFormatProperties( VkPhysicalDevice physicalDevice, 1441 VkFormat format, 1442 VkFormatProperties * pFormatProperties ) const VULKAN_HPP_NOEXCEPT 1443 { 1444 return ::vkGetPhysicalDeviceFormatProperties( physicalDevice, format, pFormatProperties ); 1445 } 1446 vkGetPhysicalDeviceImageFormatProperties(VkPhysicalDevice physicalDevice,VkFormat format,VkImageType type,VkImageTiling tiling,VkImageUsageFlags usage,VkImageCreateFlags flags,VkImageFormatProperties * pImageFormatProperties) const1447 VkResult vkGetPhysicalDeviceImageFormatProperties( VkPhysicalDevice physicalDevice, 1448 VkFormat format, 1449 VkImageType type, 1450 VkImageTiling tiling, 1451 VkImageUsageFlags usage, 1452 VkImageCreateFlags flags, 1453 VkImageFormatProperties * pImageFormatProperties ) const 1454 VULKAN_HPP_NOEXCEPT 1455 { 1456 return ::vkGetPhysicalDeviceImageFormatProperties( 1457 physicalDevice, format, type, tiling, usage, flags, pImageFormatProperties ); 1458 } 1459 vkGetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice,VkPhysicalDeviceProperties * pProperties) const1460 void vkGetPhysicalDeviceProperties( VkPhysicalDevice physicalDevice, 1461 VkPhysicalDeviceProperties * pProperties ) const VULKAN_HPP_NOEXCEPT 1462 { 1463 return ::vkGetPhysicalDeviceProperties( physicalDevice, pProperties ); 1464 } 1465 vkGetPhysicalDeviceQueueFamilyProperties(VkPhysicalDevice physicalDevice,uint32_t * pQueueFamilyPropertyCount,VkQueueFamilyProperties * pQueueFamilyProperties) const1466 void vkGetPhysicalDeviceQueueFamilyProperties( VkPhysicalDevice physicalDevice, 1467 uint32_t * pQueueFamilyPropertyCount, 1468 VkQueueFamilyProperties * pQueueFamilyProperties ) const 1469 VULKAN_HPP_NOEXCEPT 1470 { 1471 return ::vkGetPhysicalDeviceQueueFamilyProperties( 1472 physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties ); 1473 } 1474 vkGetPhysicalDeviceMemoryProperties(VkPhysicalDevice physicalDevice,VkPhysicalDeviceMemoryProperties * pMemoryProperties) const1475 void vkGetPhysicalDeviceMemoryProperties( 1476 VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties * pMemoryProperties ) const VULKAN_HPP_NOEXCEPT 1477 { 1478 return ::vkGetPhysicalDeviceMemoryProperties( physicalDevice, pMemoryProperties ); 1479 } 1480 vkGetInstanceProcAddr(VkInstance instance,const char * pName) const1481 PFN_vkVoidFunction vkGetInstanceProcAddr( VkInstance instance, const char * pName ) const VULKAN_HPP_NOEXCEPT 1482 { 1483 return ::vkGetInstanceProcAddr( instance, pName ); 1484 } 1485 vkGetDeviceProcAddr(VkDevice device,const char * pName) const1486 PFN_vkVoidFunction vkGetDeviceProcAddr( VkDevice device, const char * pName ) const VULKAN_HPP_NOEXCEPT 1487 { 1488 return ::vkGetDeviceProcAddr( device, pName ); 1489 } 1490 vkCreateDevice(VkPhysicalDevice physicalDevice,const VkDeviceCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDevice * pDevice) const1491 VkResult vkCreateDevice( VkPhysicalDevice physicalDevice, 1492 const VkDeviceCreateInfo * pCreateInfo, 1493 const VkAllocationCallbacks * pAllocator, 1494 VkDevice * pDevice ) const VULKAN_HPP_NOEXCEPT 1495 { 1496 return ::vkCreateDevice( physicalDevice, pCreateInfo, pAllocator, pDevice ); 1497 } 1498 vkDestroyDevice(VkDevice device,const VkAllocationCallbacks * pAllocator) const1499 void vkDestroyDevice( VkDevice device, const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1500 { 1501 return ::vkDestroyDevice( device, pAllocator ); 1502 } 1503 vkEnumerateInstanceExtensionProperties(const char * pLayerName,uint32_t * pPropertyCount,VkExtensionProperties * pProperties) const1504 VkResult vkEnumerateInstanceExtensionProperties( const char * pLayerName, 1505 uint32_t * pPropertyCount, 1506 VkExtensionProperties * pProperties ) const VULKAN_HPP_NOEXCEPT 1507 { 1508 return ::vkEnumerateInstanceExtensionProperties( pLayerName, pPropertyCount, pProperties ); 1509 } 1510 vkEnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice,const char * pLayerName,uint32_t * pPropertyCount,VkExtensionProperties * pProperties) const1511 VkResult vkEnumerateDeviceExtensionProperties( VkPhysicalDevice physicalDevice, 1512 const char * pLayerName, 1513 uint32_t * pPropertyCount, 1514 VkExtensionProperties * pProperties ) const VULKAN_HPP_NOEXCEPT 1515 { 1516 return ::vkEnumerateDeviceExtensionProperties( physicalDevice, pLayerName, pPropertyCount, pProperties ); 1517 } 1518 vkEnumerateInstanceLayerProperties(uint32_t * pPropertyCount,VkLayerProperties * pProperties) const1519 VkResult vkEnumerateInstanceLayerProperties( uint32_t * pPropertyCount, 1520 VkLayerProperties * pProperties ) const VULKAN_HPP_NOEXCEPT 1521 { 1522 return ::vkEnumerateInstanceLayerProperties( pPropertyCount, pProperties ); 1523 } 1524 vkEnumerateDeviceLayerProperties(VkPhysicalDevice physicalDevice,uint32_t * pPropertyCount,VkLayerProperties * pProperties) const1525 VkResult vkEnumerateDeviceLayerProperties( VkPhysicalDevice physicalDevice, 1526 uint32_t * pPropertyCount, 1527 VkLayerProperties * pProperties ) const VULKAN_HPP_NOEXCEPT 1528 { 1529 return ::vkEnumerateDeviceLayerProperties( physicalDevice, pPropertyCount, pProperties ); 1530 } 1531 vkGetDeviceQueue(VkDevice device,uint32_t queueFamilyIndex,uint32_t queueIndex,VkQueue * pQueue) const1532 void vkGetDeviceQueue( VkDevice device, 1533 uint32_t queueFamilyIndex, 1534 uint32_t queueIndex, 1535 VkQueue * pQueue ) const VULKAN_HPP_NOEXCEPT 1536 { 1537 return ::vkGetDeviceQueue( device, queueFamilyIndex, queueIndex, pQueue ); 1538 } 1539 vkQueueSubmit(VkQueue queue,uint32_t submitCount,const VkSubmitInfo * pSubmits,VkFence fence) const1540 VkResult vkQueueSubmit( VkQueue queue, 1541 uint32_t submitCount, 1542 const VkSubmitInfo * pSubmits, 1543 VkFence fence ) const VULKAN_HPP_NOEXCEPT 1544 { 1545 return ::vkQueueSubmit( queue, submitCount, pSubmits, fence ); 1546 } 1547 vkQueueWaitIdle(VkQueue queue) const1548 VkResult vkQueueWaitIdle( VkQueue queue ) const VULKAN_HPP_NOEXCEPT 1549 { 1550 return ::vkQueueWaitIdle( queue ); 1551 } 1552 vkDeviceWaitIdle(VkDevice device) const1553 VkResult vkDeviceWaitIdle( VkDevice device ) const VULKAN_HPP_NOEXCEPT 1554 { 1555 return ::vkDeviceWaitIdle( device ); 1556 } 1557 vkAllocateMemory(VkDevice device,const VkMemoryAllocateInfo * pAllocateInfo,const VkAllocationCallbacks * pAllocator,VkDeviceMemory * pMemory) const1558 VkResult vkAllocateMemory( VkDevice device, 1559 const VkMemoryAllocateInfo * pAllocateInfo, 1560 const VkAllocationCallbacks * pAllocator, 1561 VkDeviceMemory * pMemory ) const VULKAN_HPP_NOEXCEPT 1562 { 1563 return ::vkAllocateMemory( device, pAllocateInfo, pAllocator, pMemory ); 1564 } 1565 vkFreeMemory(VkDevice device,VkDeviceMemory memory,const VkAllocationCallbacks * pAllocator) const1566 void vkFreeMemory( VkDevice device, 1567 VkDeviceMemory memory, 1568 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1569 { 1570 return ::vkFreeMemory( device, memory, pAllocator ); 1571 } 1572 vkMapMemory(VkDevice device,VkDeviceMemory memory,VkDeviceSize offset,VkDeviceSize size,VkMemoryMapFlags flags,void ** ppData) const1573 VkResult vkMapMemory( VkDevice device, 1574 VkDeviceMemory memory, 1575 VkDeviceSize offset, 1576 VkDeviceSize size, 1577 VkMemoryMapFlags flags, 1578 void ** ppData ) const VULKAN_HPP_NOEXCEPT 1579 { 1580 return ::vkMapMemory( device, memory, offset, size, flags, ppData ); 1581 } 1582 vkUnmapMemory(VkDevice device,VkDeviceMemory memory) const1583 void vkUnmapMemory( VkDevice device, VkDeviceMemory memory ) const VULKAN_HPP_NOEXCEPT 1584 { 1585 return ::vkUnmapMemory( device, memory ); 1586 } 1587 vkFlushMappedMemoryRanges(VkDevice device,uint32_t memoryRangeCount,const VkMappedMemoryRange * pMemoryRanges) const1588 VkResult vkFlushMappedMemoryRanges( VkDevice device, 1589 uint32_t memoryRangeCount, 1590 const VkMappedMemoryRange * pMemoryRanges ) const VULKAN_HPP_NOEXCEPT 1591 { 1592 return ::vkFlushMappedMemoryRanges( device, memoryRangeCount, pMemoryRanges ); 1593 } 1594 vkInvalidateMappedMemoryRanges(VkDevice device,uint32_t memoryRangeCount,const VkMappedMemoryRange * pMemoryRanges) const1595 VkResult vkInvalidateMappedMemoryRanges( VkDevice device, 1596 uint32_t memoryRangeCount, 1597 const VkMappedMemoryRange * pMemoryRanges ) const VULKAN_HPP_NOEXCEPT 1598 { 1599 return ::vkInvalidateMappedMemoryRanges( device, memoryRangeCount, pMemoryRanges ); 1600 } 1601 vkGetDeviceMemoryCommitment(VkDevice device,VkDeviceMemory memory,VkDeviceSize * pCommittedMemoryInBytes) const1602 void vkGetDeviceMemoryCommitment( VkDevice device, 1603 VkDeviceMemory memory, 1604 VkDeviceSize * pCommittedMemoryInBytes ) const VULKAN_HPP_NOEXCEPT 1605 { 1606 return ::vkGetDeviceMemoryCommitment( device, memory, pCommittedMemoryInBytes ); 1607 } 1608 vkBindBufferMemory(VkDevice device,VkBuffer buffer,VkDeviceMemory memory,VkDeviceSize memoryOffset) const1609 VkResult vkBindBufferMemory( VkDevice device, 1610 VkBuffer buffer, 1611 VkDeviceMemory memory, 1612 VkDeviceSize memoryOffset ) const VULKAN_HPP_NOEXCEPT 1613 { 1614 return ::vkBindBufferMemory( device, buffer, memory, memoryOffset ); 1615 } 1616 vkBindImageMemory(VkDevice device,VkImage image,VkDeviceMemory memory,VkDeviceSize memoryOffset) const1617 VkResult vkBindImageMemory( VkDevice device, 1618 VkImage image, 1619 VkDeviceMemory memory, 1620 VkDeviceSize memoryOffset ) const VULKAN_HPP_NOEXCEPT 1621 { 1622 return ::vkBindImageMemory( device, image, memory, memoryOffset ); 1623 } 1624 vkGetBufferMemoryRequirements(VkDevice device,VkBuffer buffer,VkMemoryRequirements * pMemoryRequirements) const1625 void vkGetBufferMemoryRequirements( VkDevice device, 1626 VkBuffer buffer, 1627 VkMemoryRequirements * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 1628 { 1629 return ::vkGetBufferMemoryRequirements( device, buffer, pMemoryRequirements ); 1630 } 1631 vkGetImageMemoryRequirements(VkDevice device,VkImage image,VkMemoryRequirements * pMemoryRequirements) const1632 void vkGetImageMemoryRequirements( VkDevice device, 1633 VkImage image, 1634 VkMemoryRequirements * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 1635 { 1636 return ::vkGetImageMemoryRequirements( device, image, pMemoryRequirements ); 1637 } 1638 vkGetImageSparseMemoryRequirements(VkDevice device,VkImage image,uint32_t * pSparseMemoryRequirementCount,VkSparseImageMemoryRequirements * pSparseMemoryRequirements) const1639 void vkGetImageSparseMemoryRequirements( VkDevice device, 1640 VkImage image, 1641 uint32_t * pSparseMemoryRequirementCount, 1642 VkSparseImageMemoryRequirements * pSparseMemoryRequirements ) const 1643 VULKAN_HPP_NOEXCEPT 1644 { 1645 return ::vkGetImageSparseMemoryRequirements( 1646 device, image, pSparseMemoryRequirementCount, pSparseMemoryRequirements ); 1647 } 1648 vkGetPhysicalDeviceSparseImageFormatProperties(VkPhysicalDevice physicalDevice,VkFormat format,VkImageType type,VkSampleCountFlagBits samples,VkImageUsageFlags usage,VkImageTiling tiling,uint32_t * pPropertyCount,VkSparseImageFormatProperties * pProperties) const1649 void vkGetPhysicalDeviceSparseImageFormatProperties( VkPhysicalDevice physicalDevice, 1650 VkFormat format, 1651 VkImageType type, 1652 VkSampleCountFlagBits samples, 1653 VkImageUsageFlags usage, 1654 VkImageTiling tiling, 1655 uint32_t * pPropertyCount, 1656 VkSparseImageFormatProperties * pProperties ) const 1657 VULKAN_HPP_NOEXCEPT 1658 { 1659 return ::vkGetPhysicalDeviceSparseImageFormatProperties( 1660 physicalDevice, format, type, samples, usage, tiling, pPropertyCount, pProperties ); 1661 } 1662 vkQueueBindSparse(VkQueue queue,uint32_t bindInfoCount,const VkBindSparseInfo * pBindInfo,VkFence fence) const1663 VkResult vkQueueBindSparse( VkQueue queue, 1664 uint32_t bindInfoCount, 1665 const VkBindSparseInfo * pBindInfo, 1666 VkFence fence ) const VULKAN_HPP_NOEXCEPT 1667 { 1668 return ::vkQueueBindSparse( queue, bindInfoCount, pBindInfo, fence ); 1669 } 1670 vkCreateFence(VkDevice device,const VkFenceCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkFence * pFence) const1671 VkResult vkCreateFence( VkDevice device, 1672 const VkFenceCreateInfo * pCreateInfo, 1673 const VkAllocationCallbacks * pAllocator, 1674 VkFence * pFence ) const VULKAN_HPP_NOEXCEPT 1675 { 1676 return ::vkCreateFence( device, pCreateInfo, pAllocator, pFence ); 1677 } 1678 vkDestroyFence(VkDevice device,VkFence fence,const VkAllocationCallbacks * pAllocator) const1679 void vkDestroyFence( VkDevice device, 1680 VkFence fence, 1681 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1682 { 1683 return ::vkDestroyFence( device, fence, pAllocator ); 1684 } 1685 vkResetFences(VkDevice device,uint32_t fenceCount,const VkFence * pFences) const1686 VkResult vkResetFences( VkDevice device, uint32_t fenceCount, const VkFence * pFences ) const VULKAN_HPP_NOEXCEPT 1687 { 1688 return ::vkResetFences( device, fenceCount, pFences ); 1689 } 1690 vkGetFenceStatus(VkDevice device,VkFence fence) const1691 VkResult vkGetFenceStatus( VkDevice device, VkFence fence ) const VULKAN_HPP_NOEXCEPT 1692 { 1693 return ::vkGetFenceStatus( device, fence ); 1694 } 1695 vkWaitForFences(VkDevice device,uint32_t fenceCount,const VkFence * pFences,VkBool32 waitAll,uint64_t timeout) const1696 VkResult vkWaitForFences( VkDevice device, 1697 uint32_t fenceCount, 1698 const VkFence * pFences, 1699 VkBool32 waitAll, 1700 uint64_t timeout ) const VULKAN_HPP_NOEXCEPT 1701 { 1702 return ::vkWaitForFences( device, fenceCount, pFences, waitAll, timeout ); 1703 } 1704 vkCreateSemaphore(VkDevice device,const VkSemaphoreCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSemaphore * pSemaphore) const1705 VkResult vkCreateSemaphore( VkDevice device, 1706 const VkSemaphoreCreateInfo * pCreateInfo, 1707 const VkAllocationCallbacks * pAllocator, 1708 VkSemaphore * pSemaphore ) const VULKAN_HPP_NOEXCEPT 1709 { 1710 return ::vkCreateSemaphore( device, pCreateInfo, pAllocator, pSemaphore ); 1711 } 1712 vkDestroySemaphore(VkDevice device,VkSemaphore semaphore,const VkAllocationCallbacks * pAllocator) const1713 void vkDestroySemaphore( VkDevice device, 1714 VkSemaphore semaphore, 1715 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1716 { 1717 return ::vkDestroySemaphore( device, semaphore, pAllocator ); 1718 } 1719 vkCreateEvent(VkDevice device,const VkEventCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkEvent * pEvent) const1720 VkResult vkCreateEvent( VkDevice device, 1721 const VkEventCreateInfo * pCreateInfo, 1722 const VkAllocationCallbacks * pAllocator, 1723 VkEvent * pEvent ) const VULKAN_HPP_NOEXCEPT 1724 { 1725 return ::vkCreateEvent( device, pCreateInfo, pAllocator, pEvent ); 1726 } 1727 vkDestroyEvent(VkDevice device,VkEvent event,const VkAllocationCallbacks * pAllocator) const1728 void vkDestroyEvent( VkDevice device, 1729 VkEvent event, 1730 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1731 { 1732 return ::vkDestroyEvent( device, event, pAllocator ); 1733 } 1734 vkGetEventStatus(VkDevice device,VkEvent event) const1735 VkResult vkGetEventStatus( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT 1736 { 1737 return ::vkGetEventStatus( device, event ); 1738 } 1739 vkSetEvent(VkDevice device,VkEvent event) const1740 VkResult vkSetEvent( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT 1741 { 1742 return ::vkSetEvent( device, event ); 1743 } 1744 vkResetEvent(VkDevice device,VkEvent event) const1745 VkResult vkResetEvent( VkDevice device, VkEvent event ) const VULKAN_HPP_NOEXCEPT 1746 { 1747 return ::vkResetEvent( device, event ); 1748 } 1749 vkCreateQueryPool(VkDevice device,const VkQueryPoolCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkQueryPool * pQueryPool) const1750 VkResult vkCreateQueryPool( VkDevice device, 1751 const VkQueryPoolCreateInfo * pCreateInfo, 1752 const VkAllocationCallbacks * pAllocator, 1753 VkQueryPool * pQueryPool ) const VULKAN_HPP_NOEXCEPT 1754 { 1755 return ::vkCreateQueryPool( device, pCreateInfo, pAllocator, pQueryPool ); 1756 } 1757 vkDestroyQueryPool(VkDevice device,VkQueryPool queryPool,const VkAllocationCallbacks * pAllocator) const1758 void vkDestroyQueryPool( VkDevice device, 1759 VkQueryPool queryPool, 1760 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1761 { 1762 return ::vkDestroyQueryPool( device, queryPool, pAllocator ); 1763 } 1764 vkGetQueryPoolResults(VkDevice device,VkQueryPool queryPool,uint32_t firstQuery,uint32_t queryCount,size_t dataSize,void * pData,VkDeviceSize stride,VkQueryResultFlags flags) const1765 VkResult vkGetQueryPoolResults( VkDevice device, 1766 VkQueryPool queryPool, 1767 uint32_t firstQuery, 1768 uint32_t queryCount, 1769 size_t dataSize, 1770 void * pData, 1771 VkDeviceSize stride, 1772 VkQueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT 1773 { 1774 return ::vkGetQueryPoolResults( device, queryPool, firstQuery, queryCount, dataSize, pData, stride, flags ); 1775 } 1776 vkCreateBuffer(VkDevice device,const VkBufferCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkBuffer * pBuffer) const1777 VkResult vkCreateBuffer( VkDevice device, 1778 const VkBufferCreateInfo * pCreateInfo, 1779 const VkAllocationCallbacks * pAllocator, 1780 VkBuffer * pBuffer ) const VULKAN_HPP_NOEXCEPT 1781 { 1782 return ::vkCreateBuffer( device, pCreateInfo, pAllocator, pBuffer ); 1783 } 1784 vkDestroyBuffer(VkDevice device,VkBuffer buffer,const VkAllocationCallbacks * pAllocator) const1785 void vkDestroyBuffer( VkDevice device, 1786 VkBuffer buffer, 1787 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1788 { 1789 return ::vkDestroyBuffer( device, buffer, pAllocator ); 1790 } 1791 vkCreateBufferView(VkDevice device,const VkBufferViewCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkBufferView * pView) const1792 VkResult vkCreateBufferView( VkDevice device, 1793 const VkBufferViewCreateInfo * pCreateInfo, 1794 const VkAllocationCallbacks * pAllocator, 1795 VkBufferView * pView ) const VULKAN_HPP_NOEXCEPT 1796 { 1797 return ::vkCreateBufferView( device, pCreateInfo, pAllocator, pView ); 1798 } 1799 vkDestroyBufferView(VkDevice device,VkBufferView bufferView,const VkAllocationCallbacks * pAllocator) const1800 void vkDestroyBufferView( VkDevice device, 1801 VkBufferView bufferView, 1802 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1803 { 1804 return ::vkDestroyBufferView( device, bufferView, pAllocator ); 1805 } 1806 vkCreateImage(VkDevice device,const VkImageCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkImage * pImage) const1807 VkResult vkCreateImage( VkDevice device, 1808 const VkImageCreateInfo * pCreateInfo, 1809 const VkAllocationCallbacks * pAllocator, 1810 VkImage * pImage ) const VULKAN_HPP_NOEXCEPT 1811 { 1812 return ::vkCreateImage( device, pCreateInfo, pAllocator, pImage ); 1813 } 1814 vkDestroyImage(VkDevice device,VkImage image,const VkAllocationCallbacks * pAllocator) const1815 void vkDestroyImage( VkDevice device, 1816 VkImage image, 1817 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1818 { 1819 return ::vkDestroyImage( device, image, pAllocator ); 1820 } 1821 vkGetImageSubresourceLayout(VkDevice device,VkImage image,const VkImageSubresource * pSubresource,VkSubresourceLayout * pLayout) const1822 void vkGetImageSubresourceLayout( VkDevice device, 1823 VkImage image, 1824 const VkImageSubresource * pSubresource, 1825 VkSubresourceLayout * pLayout ) const VULKAN_HPP_NOEXCEPT 1826 { 1827 return ::vkGetImageSubresourceLayout( device, image, pSubresource, pLayout ); 1828 } 1829 vkCreateImageView(VkDevice device,const VkImageViewCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkImageView * pView) const1830 VkResult vkCreateImageView( VkDevice device, 1831 const VkImageViewCreateInfo * pCreateInfo, 1832 const VkAllocationCallbacks * pAllocator, 1833 VkImageView * pView ) const VULKAN_HPP_NOEXCEPT 1834 { 1835 return ::vkCreateImageView( device, pCreateInfo, pAllocator, pView ); 1836 } 1837 vkDestroyImageView(VkDevice device,VkImageView imageView,const VkAllocationCallbacks * pAllocator) const1838 void vkDestroyImageView( VkDevice device, 1839 VkImageView imageView, 1840 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1841 { 1842 return ::vkDestroyImageView( device, imageView, pAllocator ); 1843 } 1844 vkCreateShaderModule(VkDevice device,const VkShaderModuleCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkShaderModule * pShaderModule) const1845 VkResult vkCreateShaderModule( VkDevice device, 1846 const VkShaderModuleCreateInfo * pCreateInfo, 1847 const VkAllocationCallbacks * pAllocator, 1848 VkShaderModule * pShaderModule ) const VULKAN_HPP_NOEXCEPT 1849 { 1850 return ::vkCreateShaderModule( device, pCreateInfo, pAllocator, pShaderModule ); 1851 } 1852 vkDestroyShaderModule(VkDevice device,VkShaderModule shaderModule,const VkAllocationCallbacks * pAllocator) const1853 void vkDestroyShaderModule( VkDevice device, 1854 VkShaderModule shaderModule, 1855 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1856 { 1857 return ::vkDestroyShaderModule( device, shaderModule, pAllocator ); 1858 } 1859 vkCreatePipelineCache(VkDevice device,const VkPipelineCacheCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkPipelineCache * pPipelineCache) const1860 VkResult vkCreatePipelineCache( VkDevice device, 1861 const VkPipelineCacheCreateInfo * pCreateInfo, 1862 const VkAllocationCallbacks * pAllocator, 1863 VkPipelineCache * pPipelineCache ) const VULKAN_HPP_NOEXCEPT 1864 { 1865 return ::vkCreatePipelineCache( device, pCreateInfo, pAllocator, pPipelineCache ); 1866 } 1867 vkDestroyPipelineCache(VkDevice device,VkPipelineCache pipelineCache,const VkAllocationCallbacks * pAllocator) const1868 void vkDestroyPipelineCache( VkDevice device, 1869 VkPipelineCache pipelineCache, 1870 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1871 { 1872 return ::vkDestroyPipelineCache( device, pipelineCache, pAllocator ); 1873 } 1874 vkGetPipelineCacheData(VkDevice device,VkPipelineCache pipelineCache,size_t * pDataSize,void * pData) const1875 VkResult vkGetPipelineCacheData( VkDevice device, 1876 VkPipelineCache pipelineCache, 1877 size_t * pDataSize, 1878 void * pData ) const VULKAN_HPP_NOEXCEPT 1879 { 1880 return ::vkGetPipelineCacheData( device, pipelineCache, pDataSize, pData ); 1881 } 1882 vkMergePipelineCaches(VkDevice device,VkPipelineCache dstCache,uint32_t srcCacheCount,const VkPipelineCache * pSrcCaches) const1883 VkResult vkMergePipelineCaches( VkDevice device, 1884 VkPipelineCache dstCache, 1885 uint32_t srcCacheCount, 1886 const VkPipelineCache * pSrcCaches ) const VULKAN_HPP_NOEXCEPT 1887 { 1888 return ::vkMergePipelineCaches( device, dstCache, srcCacheCount, pSrcCaches ); 1889 } 1890 vkCreateGraphicsPipelines(VkDevice device,VkPipelineCache pipelineCache,uint32_t createInfoCount,const VkGraphicsPipelineCreateInfo * pCreateInfos,const VkAllocationCallbacks * pAllocator,VkPipeline * pPipelines) const1891 VkResult vkCreateGraphicsPipelines( VkDevice device, 1892 VkPipelineCache pipelineCache, 1893 uint32_t createInfoCount, 1894 const VkGraphicsPipelineCreateInfo * pCreateInfos, 1895 const VkAllocationCallbacks * pAllocator, 1896 VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT 1897 { 1898 return ::vkCreateGraphicsPipelines( 1899 device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines ); 1900 } 1901 vkCreateComputePipelines(VkDevice device,VkPipelineCache pipelineCache,uint32_t createInfoCount,const VkComputePipelineCreateInfo * pCreateInfos,const VkAllocationCallbacks * pAllocator,VkPipeline * pPipelines) const1902 VkResult vkCreateComputePipelines( VkDevice device, 1903 VkPipelineCache pipelineCache, 1904 uint32_t createInfoCount, 1905 const VkComputePipelineCreateInfo * pCreateInfos, 1906 const VkAllocationCallbacks * pAllocator, 1907 VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT 1908 { 1909 return ::vkCreateComputePipelines( device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines ); 1910 } 1911 vkDestroyPipeline(VkDevice device,VkPipeline pipeline,const VkAllocationCallbacks * pAllocator) const1912 void vkDestroyPipeline( VkDevice device, 1913 VkPipeline pipeline, 1914 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1915 { 1916 return ::vkDestroyPipeline( device, pipeline, pAllocator ); 1917 } 1918 vkCreatePipelineLayout(VkDevice device,const VkPipelineLayoutCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkPipelineLayout * pPipelineLayout) const1919 VkResult vkCreatePipelineLayout( VkDevice device, 1920 const VkPipelineLayoutCreateInfo * pCreateInfo, 1921 const VkAllocationCallbacks * pAllocator, 1922 VkPipelineLayout * pPipelineLayout ) const VULKAN_HPP_NOEXCEPT 1923 { 1924 return ::vkCreatePipelineLayout( device, pCreateInfo, pAllocator, pPipelineLayout ); 1925 } 1926 vkDestroyPipelineLayout(VkDevice device,VkPipelineLayout pipelineLayout,const VkAllocationCallbacks * pAllocator) const1927 void vkDestroyPipelineLayout( VkDevice device, 1928 VkPipelineLayout pipelineLayout, 1929 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1930 { 1931 return ::vkDestroyPipelineLayout( device, pipelineLayout, pAllocator ); 1932 } 1933 vkCreateSampler(VkDevice device,const VkSamplerCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSampler * pSampler) const1934 VkResult vkCreateSampler( VkDevice device, 1935 const VkSamplerCreateInfo * pCreateInfo, 1936 const VkAllocationCallbacks * pAllocator, 1937 VkSampler * pSampler ) const VULKAN_HPP_NOEXCEPT 1938 { 1939 return ::vkCreateSampler( device, pCreateInfo, pAllocator, pSampler ); 1940 } 1941 vkDestroySampler(VkDevice device,VkSampler sampler,const VkAllocationCallbacks * pAllocator) const1942 void vkDestroySampler( VkDevice device, 1943 VkSampler sampler, 1944 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1945 { 1946 return ::vkDestroySampler( device, sampler, pAllocator ); 1947 } 1948 vkCreateDescriptorSetLayout(VkDevice device,const VkDescriptorSetLayoutCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDescriptorSetLayout * pSetLayout) const1949 VkResult vkCreateDescriptorSetLayout( VkDevice device, 1950 const VkDescriptorSetLayoutCreateInfo * pCreateInfo, 1951 const VkAllocationCallbacks * pAllocator, 1952 VkDescriptorSetLayout * pSetLayout ) const VULKAN_HPP_NOEXCEPT 1953 { 1954 return ::vkCreateDescriptorSetLayout( device, pCreateInfo, pAllocator, pSetLayout ); 1955 } 1956 vkDestroyDescriptorSetLayout(VkDevice device,VkDescriptorSetLayout descriptorSetLayout,const VkAllocationCallbacks * pAllocator) const1957 void vkDestroyDescriptorSetLayout( VkDevice device, 1958 VkDescriptorSetLayout descriptorSetLayout, 1959 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1960 { 1961 return ::vkDestroyDescriptorSetLayout( device, descriptorSetLayout, pAllocator ); 1962 } 1963 vkCreateDescriptorPool(VkDevice device,const VkDescriptorPoolCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDescriptorPool * pDescriptorPool) const1964 VkResult vkCreateDescriptorPool( VkDevice device, 1965 const VkDescriptorPoolCreateInfo * pCreateInfo, 1966 const VkAllocationCallbacks * pAllocator, 1967 VkDescriptorPool * pDescriptorPool ) const VULKAN_HPP_NOEXCEPT 1968 { 1969 return ::vkCreateDescriptorPool( device, pCreateInfo, pAllocator, pDescriptorPool ); 1970 } 1971 vkDestroyDescriptorPool(VkDevice device,VkDescriptorPool descriptorPool,const VkAllocationCallbacks * pAllocator) const1972 void vkDestroyDescriptorPool( VkDevice device, 1973 VkDescriptorPool descriptorPool, 1974 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 1975 { 1976 return ::vkDestroyDescriptorPool( device, descriptorPool, pAllocator ); 1977 } 1978 vkResetDescriptorPool(VkDevice device,VkDescriptorPool descriptorPool,VkDescriptorPoolResetFlags flags) const1979 VkResult vkResetDescriptorPool( VkDevice device, 1980 VkDescriptorPool descriptorPool, 1981 VkDescriptorPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT 1982 { 1983 return ::vkResetDescriptorPool( device, descriptorPool, flags ); 1984 } 1985 vkAllocateDescriptorSets(VkDevice device,const VkDescriptorSetAllocateInfo * pAllocateInfo,VkDescriptorSet * pDescriptorSets) const1986 VkResult vkAllocateDescriptorSets( VkDevice device, 1987 const VkDescriptorSetAllocateInfo * pAllocateInfo, 1988 VkDescriptorSet * pDescriptorSets ) const VULKAN_HPP_NOEXCEPT 1989 { 1990 return ::vkAllocateDescriptorSets( device, pAllocateInfo, pDescriptorSets ); 1991 } 1992 vkFreeDescriptorSets(VkDevice device,VkDescriptorPool descriptorPool,uint32_t descriptorSetCount,const VkDescriptorSet * pDescriptorSets) const1993 VkResult vkFreeDescriptorSets( VkDevice device, 1994 VkDescriptorPool descriptorPool, 1995 uint32_t descriptorSetCount, 1996 const VkDescriptorSet * pDescriptorSets ) const VULKAN_HPP_NOEXCEPT 1997 { 1998 return ::vkFreeDescriptorSets( device, descriptorPool, descriptorSetCount, pDescriptorSets ); 1999 } 2000 vkUpdateDescriptorSets(VkDevice device,uint32_t descriptorWriteCount,const VkWriteDescriptorSet * pDescriptorWrites,uint32_t descriptorCopyCount,const VkCopyDescriptorSet * pDescriptorCopies) const2001 void vkUpdateDescriptorSets( VkDevice device, 2002 uint32_t descriptorWriteCount, 2003 const VkWriteDescriptorSet * pDescriptorWrites, 2004 uint32_t descriptorCopyCount, 2005 const VkCopyDescriptorSet * pDescriptorCopies ) const VULKAN_HPP_NOEXCEPT 2006 { 2007 return ::vkUpdateDescriptorSets( 2008 device, descriptorWriteCount, pDescriptorWrites, descriptorCopyCount, pDescriptorCopies ); 2009 } 2010 vkCreateFramebuffer(VkDevice device,const VkFramebufferCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkFramebuffer * pFramebuffer) const2011 VkResult vkCreateFramebuffer( VkDevice device, 2012 const VkFramebufferCreateInfo * pCreateInfo, 2013 const VkAllocationCallbacks * pAllocator, 2014 VkFramebuffer * pFramebuffer ) const VULKAN_HPP_NOEXCEPT 2015 { 2016 return ::vkCreateFramebuffer( device, pCreateInfo, pAllocator, pFramebuffer ); 2017 } 2018 vkDestroyFramebuffer(VkDevice device,VkFramebuffer framebuffer,const VkAllocationCallbacks * pAllocator) const2019 void vkDestroyFramebuffer( VkDevice device, 2020 VkFramebuffer framebuffer, 2021 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2022 { 2023 return ::vkDestroyFramebuffer( device, framebuffer, pAllocator ); 2024 } 2025 vkCreateRenderPass(VkDevice device,const VkRenderPassCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkRenderPass * pRenderPass) const2026 VkResult vkCreateRenderPass( VkDevice device, 2027 const VkRenderPassCreateInfo * pCreateInfo, 2028 const VkAllocationCallbacks * pAllocator, 2029 VkRenderPass * pRenderPass ) const VULKAN_HPP_NOEXCEPT 2030 { 2031 return ::vkCreateRenderPass( device, pCreateInfo, pAllocator, pRenderPass ); 2032 } 2033 vkDestroyRenderPass(VkDevice device,VkRenderPass renderPass,const VkAllocationCallbacks * pAllocator) const2034 void vkDestroyRenderPass( VkDevice device, 2035 VkRenderPass renderPass, 2036 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2037 { 2038 return ::vkDestroyRenderPass( device, renderPass, pAllocator ); 2039 } 2040 vkGetRenderAreaGranularity(VkDevice device,VkRenderPass renderPass,VkExtent2D * pGranularity) const2041 void vkGetRenderAreaGranularity( VkDevice device, 2042 VkRenderPass renderPass, 2043 VkExtent2D * pGranularity ) const VULKAN_HPP_NOEXCEPT 2044 { 2045 return ::vkGetRenderAreaGranularity( device, renderPass, pGranularity ); 2046 } 2047 vkCreateCommandPool(VkDevice device,const VkCommandPoolCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkCommandPool * pCommandPool) const2048 VkResult vkCreateCommandPool( VkDevice device, 2049 const VkCommandPoolCreateInfo * pCreateInfo, 2050 const VkAllocationCallbacks * pAllocator, 2051 VkCommandPool * pCommandPool ) const VULKAN_HPP_NOEXCEPT 2052 { 2053 return ::vkCreateCommandPool( device, pCreateInfo, pAllocator, pCommandPool ); 2054 } 2055 vkDestroyCommandPool(VkDevice device,VkCommandPool commandPool,const VkAllocationCallbacks * pAllocator) const2056 void vkDestroyCommandPool( VkDevice device, 2057 VkCommandPool commandPool, 2058 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2059 { 2060 return ::vkDestroyCommandPool( device, commandPool, pAllocator ); 2061 } 2062 vkResetCommandPool(VkDevice device,VkCommandPool commandPool,VkCommandPoolResetFlags flags) const2063 VkResult vkResetCommandPool( VkDevice device, 2064 VkCommandPool commandPool, 2065 VkCommandPoolResetFlags flags ) const VULKAN_HPP_NOEXCEPT 2066 { 2067 return ::vkResetCommandPool( device, commandPool, flags ); 2068 } 2069 vkAllocateCommandBuffers(VkDevice device,const VkCommandBufferAllocateInfo * pAllocateInfo,VkCommandBuffer * pCommandBuffers) const2070 VkResult vkAllocateCommandBuffers( VkDevice device, 2071 const VkCommandBufferAllocateInfo * pAllocateInfo, 2072 VkCommandBuffer * pCommandBuffers ) const VULKAN_HPP_NOEXCEPT 2073 { 2074 return ::vkAllocateCommandBuffers( device, pAllocateInfo, pCommandBuffers ); 2075 } 2076 vkFreeCommandBuffers(VkDevice device,VkCommandPool commandPool,uint32_t commandBufferCount,const VkCommandBuffer * pCommandBuffers) const2077 void vkFreeCommandBuffers( VkDevice device, 2078 VkCommandPool commandPool, 2079 uint32_t commandBufferCount, 2080 const VkCommandBuffer * pCommandBuffers ) const VULKAN_HPP_NOEXCEPT 2081 { 2082 return ::vkFreeCommandBuffers( device, commandPool, commandBufferCount, pCommandBuffers ); 2083 } 2084 vkBeginCommandBuffer(VkCommandBuffer commandBuffer,const VkCommandBufferBeginInfo * pBeginInfo) const2085 VkResult vkBeginCommandBuffer( VkCommandBuffer commandBuffer, 2086 const VkCommandBufferBeginInfo * pBeginInfo ) const VULKAN_HPP_NOEXCEPT 2087 { 2088 return ::vkBeginCommandBuffer( commandBuffer, pBeginInfo ); 2089 } 2090 vkEndCommandBuffer(VkCommandBuffer commandBuffer) const2091 VkResult vkEndCommandBuffer( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT 2092 { 2093 return ::vkEndCommandBuffer( commandBuffer ); 2094 } 2095 vkResetCommandBuffer(VkCommandBuffer commandBuffer,VkCommandBufferResetFlags flags) const2096 VkResult vkResetCommandBuffer( VkCommandBuffer commandBuffer, 2097 VkCommandBufferResetFlags flags ) const VULKAN_HPP_NOEXCEPT 2098 { 2099 return ::vkResetCommandBuffer( commandBuffer, flags ); 2100 } 2101 vkCmdBindPipeline(VkCommandBuffer commandBuffer,VkPipelineBindPoint pipelineBindPoint,VkPipeline pipeline) const2102 void vkCmdBindPipeline( VkCommandBuffer commandBuffer, 2103 VkPipelineBindPoint pipelineBindPoint, 2104 VkPipeline pipeline ) const VULKAN_HPP_NOEXCEPT 2105 { 2106 return ::vkCmdBindPipeline( commandBuffer, pipelineBindPoint, pipeline ); 2107 } 2108 vkCmdSetViewport(VkCommandBuffer commandBuffer,uint32_t firstViewport,uint32_t viewportCount,const VkViewport * pViewports) const2109 void vkCmdSetViewport( VkCommandBuffer commandBuffer, 2110 uint32_t firstViewport, 2111 uint32_t viewportCount, 2112 const VkViewport * pViewports ) const VULKAN_HPP_NOEXCEPT 2113 { 2114 return ::vkCmdSetViewport( commandBuffer, firstViewport, viewportCount, pViewports ); 2115 } 2116 vkCmdSetScissor(VkCommandBuffer commandBuffer,uint32_t firstScissor,uint32_t scissorCount,const VkRect2D * pScissors) const2117 void vkCmdSetScissor( VkCommandBuffer commandBuffer, 2118 uint32_t firstScissor, 2119 uint32_t scissorCount, 2120 const VkRect2D * pScissors ) const VULKAN_HPP_NOEXCEPT 2121 { 2122 return ::vkCmdSetScissor( commandBuffer, firstScissor, scissorCount, pScissors ); 2123 } 2124 vkCmdSetLineWidth(VkCommandBuffer commandBuffer,float lineWidth) const2125 void vkCmdSetLineWidth( VkCommandBuffer commandBuffer, float lineWidth ) const VULKAN_HPP_NOEXCEPT 2126 { 2127 return ::vkCmdSetLineWidth( commandBuffer, lineWidth ); 2128 } 2129 vkCmdSetDepthBias(VkCommandBuffer commandBuffer,float depthBiasConstantFactor,float depthBiasClamp,float depthBiasSlopeFactor) const2130 void vkCmdSetDepthBias( VkCommandBuffer commandBuffer, 2131 float depthBiasConstantFactor, 2132 float depthBiasClamp, 2133 float depthBiasSlopeFactor ) const VULKAN_HPP_NOEXCEPT 2134 { 2135 return ::vkCmdSetDepthBias( commandBuffer, depthBiasConstantFactor, depthBiasClamp, depthBiasSlopeFactor ); 2136 } 2137 vkCmdSetBlendConstants(VkCommandBuffer commandBuffer,const float blendConstants[4]) const2138 void vkCmdSetBlendConstants( VkCommandBuffer commandBuffer, 2139 const float blendConstants[4] ) const VULKAN_HPP_NOEXCEPT 2140 { 2141 return ::vkCmdSetBlendConstants( commandBuffer, blendConstants ); 2142 } 2143 vkCmdSetDepthBounds(VkCommandBuffer commandBuffer,float minDepthBounds,float maxDepthBounds) const2144 void vkCmdSetDepthBounds( VkCommandBuffer commandBuffer, 2145 float minDepthBounds, 2146 float maxDepthBounds ) const VULKAN_HPP_NOEXCEPT 2147 { 2148 return ::vkCmdSetDepthBounds( commandBuffer, minDepthBounds, maxDepthBounds ); 2149 } 2150 vkCmdSetStencilCompareMask(VkCommandBuffer commandBuffer,VkStencilFaceFlags faceMask,uint32_t compareMask) const2151 void vkCmdSetStencilCompareMask( VkCommandBuffer commandBuffer, 2152 VkStencilFaceFlags faceMask, 2153 uint32_t compareMask ) const VULKAN_HPP_NOEXCEPT 2154 { 2155 return ::vkCmdSetStencilCompareMask( commandBuffer, faceMask, compareMask ); 2156 } 2157 vkCmdSetStencilWriteMask(VkCommandBuffer commandBuffer,VkStencilFaceFlags faceMask,uint32_t writeMask) const2158 void vkCmdSetStencilWriteMask( VkCommandBuffer commandBuffer, 2159 VkStencilFaceFlags faceMask, 2160 uint32_t writeMask ) const VULKAN_HPP_NOEXCEPT 2161 { 2162 return ::vkCmdSetStencilWriteMask( commandBuffer, faceMask, writeMask ); 2163 } 2164 vkCmdSetStencilReference(VkCommandBuffer commandBuffer,VkStencilFaceFlags faceMask,uint32_t reference) const2165 void vkCmdSetStencilReference( VkCommandBuffer commandBuffer, 2166 VkStencilFaceFlags faceMask, 2167 uint32_t reference ) const VULKAN_HPP_NOEXCEPT 2168 { 2169 return ::vkCmdSetStencilReference( commandBuffer, faceMask, reference ); 2170 } 2171 vkCmdBindDescriptorSets(VkCommandBuffer commandBuffer,VkPipelineBindPoint pipelineBindPoint,VkPipelineLayout layout,uint32_t firstSet,uint32_t descriptorSetCount,const VkDescriptorSet * pDescriptorSets,uint32_t dynamicOffsetCount,const uint32_t * pDynamicOffsets) const2172 void vkCmdBindDescriptorSets( VkCommandBuffer commandBuffer, 2173 VkPipelineBindPoint pipelineBindPoint, 2174 VkPipelineLayout layout, 2175 uint32_t firstSet, 2176 uint32_t descriptorSetCount, 2177 const VkDescriptorSet * pDescriptorSets, 2178 uint32_t dynamicOffsetCount, 2179 const uint32_t * pDynamicOffsets ) const VULKAN_HPP_NOEXCEPT 2180 { 2181 return ::vkCmdBindDescriptorSets( commandBuffer, 2182 pipelineBindPoint, 2183 layout, 2184 firstSet, 2185 descriptorSetCount, 2186 pDescriptorSets, 2187 dynamicOffsetCount, 2188 pDynamicOffsets ); 2189 } 2190 vkCmdBindIndexBuffer(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkIndexType indexType) const2191 void vkCmdBindIndexBuffer( VkCommandBuffer commandBuffer, 2192 VkBuffer buffer, 2193 VkDeviceSize offset, 2194 VkIndexType indexType ) const VULKAN_HPP_NOEXCEPT 2195 { 2196 return ::vkCmdBindIndexBuffer( commandBuffer, buffer, offset, indexType ); 2197 } 2198 vkCmdBindVertexBuffers(VkCommandBuffer commandBuffer,uint32_t firstBinding,uint32_t bindingCount,const VkBuffer * pBuffers,const VkDeviceSize * pOffsets) const2199 void vkCmdBindVertexBuffers( VkCommandBuffer commandBuffer, 2200 uint32_t firstBinding, 2201 uint32_t bindingCount, 2202 const VkBuffer * pBuffers, 2203 const VkDeviceSize * pOffsets ) const VULKAN_HPP_NOEXCEPT 2204 { 2205 return ::vkCmdBindVertexBuffers( commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets ); 2206 } 2207 vkCmdDraw(VkCommandBuffer commandBuffer,uint32_t vertexCount,uint32_t instanceCount,uint32_t firstVertex,uint32_t firstInstance) const2208 void vkCmdDraw( VkCommandBuffer commandBuffer, 2209 uint32_t vertexCount, 2210 uint32_t instanceCount, 2211 uint32_t firstVertex, 2212 uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT 2213 { 2214 return ::vkCmdDraw( commandBuffer, vertexCount, instanceCount, firstVertex, firstInstance ); 2215 } 2216 vkCmdDrawIndexed(VkCommandBuffer commandBuffer,uint32_t indexCount,uint32_t instanceCount,uint32_t firstIndex,int32_t vertexOffset,uint32_t firstInstance) const2217 void vkCmdDrawIndexed( VkCommandBuffer commandBuffer, 2218 uint32_t indexCount, 2219 uint32_t instanceCount, 2220 uint32_t firstIndex, 2221 int32_t vertexOffset, 2222 uint32_t firstInstance ) const VULKAN_HPP_NOEXCEPT 2223 { 2224 return ::vkCmdDrawIndexed( commandBuffer, indexCount, instanceCount, firstIndex, vertexOffset, firstInstance ); 2225 } 2226 vkCmdDrawIndirect(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,uint32_t drawCount,uint32_t stride) const2227 void vkCmdDrawIndirect( VkCommandBuffer commandBuffer, 2228 VkBuffer buffer, 2229 VkDeviceSize offset, 2230 uint32_t drawCount, 2231 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 2232 { 2233 return ::vkCmdDrawIndirect( commandBuffer, buffer, offset, drawCount, stride ); 2234 } 2235 vkCmdDrawIndexedIndirect(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,uint32_t drawCount,uint32_t stride) const2236 void vkCmdDrawIndexedIndirect( VkCommandBuffer commandBuffer, 2237 VkBuffer buffer, 2238 VkDeviceSize offset, 2239 uint32_t drawCount, 2240 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 2241 { 2242 return ::vkCmdDrawIndexedIndirect( commandBuffer, buffer, offset, drawCount, stride ); 2243 } 2244 vkCmdDispatch(VkCommandBuffer commandBuffer,uint32_t groupCountX,uint32_t groupCountY,uint32_t groupCountZ) const2245 void vkCmdDispatch( VkCommandBuffer commandBuffer, 2246 uint32_t groupCountX, 2247 uint32_t groupCountY, 2248 uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT 2249 { 2250 return ::vkCmdDispatch( commandBuffer, groupCountX, groupCountY, groupCountZ ); 2251 } 2252 vkCmdDispatchIndirect(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset) const2253 void vkCmdDispatchIndirect( VkCommandBuffer commandBuffer, 2254 VkBuffer buffer, 2255 VkDeviceSize offset ) const VULKAN_HPP_NOEXCEPT 2256 { 2257 return ::vkCmdDispatchIndirect( commandBuffer, buffer, offset ); 2258 } 2259 vkCmdCopyBuffer(VkCommandBuffer commandBuffer,VkBuffer srcBuffer,VkBuffer dstBuffer,uint32_t regionCount,const VkBufferCopy * pRegions) const2260 void vkCmdCopyBuffer( VkCommandBuffer commandBuffer, 2261 VkBuffer srcBuffer, 2262 VkBuffer dstBuffer, 2263 uint32_t regionCount, 2264 const VkBufferCopy * pRegions ) const VULKAN_HPP_NOEXCEPT 2265 { 2266 return ::vkCmdCopyBuffer( commandBuffer, srcBuffer, dstBuffer, regionCount, pRegions ); 2267 } 2268 vkCmdCopyImage(VkCommandBuffer commandBuffer,VkImage srcImage,VkImageLayout srcImageLayout,VkImage dstImage,VkImageLayout dstImageLayout,uint32_t regionCount,const VkImageCopy * pRegions) const2269 void vkCmdCopyImage( VkCommandBuffer commandBuffer, 2270 VkImage srcImage, 2271 VkImageLayout srcImageLayout, 2272 VkImage dstImage, 2273 VkImageLayout dstImageLayout, 2274 uint32_t regionCount, 2275 const VkImageCopy * pRegions ) const VULKAN_HPP_NOEXCEPT 2276 { 2277 return ::vkCmdCopyImage( 2278 commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions ); 2279 } 2280 vkCmdBlitImage(VkCommandBuffer commandBuffer,VkImage srcImage,VkImageLayout srcImageLayout,VkImage dstImage,VkImageLayout dstImageLayout,uint32_t regionCount,const VkImageBlit * pRegions,VkFilter filter) const2281 void vkCmdBlitImage( VkCommandBuffer commandBuffer, 2282 VkImage srcImage, 2283 VkImageLayout srcImageLayout, 2284 VkImage dstImage, 2285 VkImageLayout dstImageLayout, 2286 uint32_t regionCount, 2287 const VkImageBlit * pRegions, 2288 VkFilter filter ) const VULKAN_HPP_NOEXCEPT 2289 { 2290 return ::vkCmdBlitImage( 2291 commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions, filter ); 2292 } 2293 vkCmdCopyBufferToImage(VkCommandBuffer commandBuffer,VkBuffer srcBuffer,VkImage dstImage,VkImageLayout dstImageLayout,uint32_t regionCount,const VkBufferImageCopy * pRegions) const2294 void vkCmdCopyBufferToImage( VkCommandBuffer commandBuffer, 2295 VkBuffer srcBuffer, 2296 VkImage dstImage, 2297 VkImageLayout dstImageLayout, 2298 uint32_t regionCount, 2299 const VkBufferImageCopy * pRegions ) const VULKAN_HPP_NOEXCEPT 2300 { 2301 return ::vkCmdCopyBufferToImage( commandBuffer, srcBuffer, dstImage, dstImageLayout, regionCount, pRegions ); 2302 } 2303 vkCmdCopyImageToBuffer(VkCommandBuffer commandBuffer,VkImage srcImage,VkImageLayout srcImageLayout,VkBuffer dstBuffer,uint32_t regionCount,const VkBufferImageCopy * pRegions) const2304 void vkCmdCopyImageToBuffer( VkCommandBuffer commandBuffer, 2305 VkImage srcImage, 2306 VkImageLayout srcImageLayout, 2307 VkBuffer dstBuffer, 2308 uint32_t regionCount, 2309 const VkBufferImageCopy * pRegions ) const VULKAN_HPP_NOEXCEPT 2310 { 2311 return ::vkCmdCopyImageToBuffer( commandBuffer, srcImage, srcImageLayout, dstBuffer, regionCount, pRegions ); 2312 } 2313 vkCmdUpdateBuffer(VkCommandBuffer commandBuffer,VkBuffer dstBuffer,VkDeviceSize dstOffset,VkDeviceSize dataSize,const void * pData) const2314 void vkCmdUpdateBuffer( VkCommandBuffer commandBuffer, 2315 VkBuffer dstBuffer, 2316 VkDeviceSize dstOffset, 2317 VkDeviceSize dataSize, 2318 const void * pData ) const VULKAN_HPP_NOEXCEPT 2319 { 2320 return ::vkCmdUpdateBuffer( commandBuffer, dstBuffer, dstOffset, dataSize, pData ); 2321 } 2322 vkCmdFillBuffer(VkCommandBuffer commandBuffer,VkBuffer dstBuffer,VkDeviceSize dstOffset,VkDeviceSize size,uint32_t data) const2323 void vkCmdFillBuffer( VkCommandBuffer commandBuffer, 2324 VkBuffer dstBuffer, 2325 VkDeviceSize dstOffset, 2326 VkDeviceSize size, 2327 uint32_t data ) const VULKAN_HPP_NOEXCEPT 2328 { 2329 return ::vkCmdFillBuffer( commandBuffer, dstBuffer, dstOffset, size, data ); 2330 } 2331 vkCmdClearColorImage(VkCommandBuffer commandBuffer,VkImage image,VkImageLayout imageLayout,const VkClearColorValue * pColor,uint32_t rangeCount,const VkImageSubresourceRange * pRanges) const2332 void vkCmdClearColorImage( VkCommandBuffer commandBuffer, 2333 VkImage image, 2334 VkImageLayout imageLayout, 2335 const VkClearColorValue * pColor, 2336 uint32_t rangeCount, 2337 const VkImageSubresourceRange * pRanges ) const VULKAN_HPP_NOEXCEPT 2338 { 2339 return ::vkCmdClearColorImage( commandBuffer, image, imageLayout, pColor, rangeCount, pRanges ); 2340 } 2341 vkCmdClearDepthStencilImage(VkCommandBuffer commandBuffer,VkImage image,VkImageLayout imageLayout,const VkClearDepthStencilValue * pDepthStencil,uint32_t rangeCount,const VkImageSubresourceRange * pRanges) const2342 void vkCmdClearDepthStencilImage( VkCommandBuffer commandBuffer, 2343 VkImage image, 2344 VkImageLayout imageLayout, 2345 const VkClearDepthStencilValue * pDepthStencil, 2346 uint32_t rangeCount, 2347 const VkImageSubresourceRange * pRanges ) const VULKAN_HPP_NOEXCEPT 2348 { 2349 return ::vkCmdClearDepthStencilImage( commandBuffer, image, imageLayout, pDepthStencil, rangeCount, pRanges ); 2350 } 2351 vkCmdClearAttachments(VkCommandBuffer commandBuffer,uint32_t attachmentCount,const VkClearAttachment * pAttachments,uint32_t rectCount,const VkClearRect * pRects) const2352 void vkCmdClearAttachments( VkCommandBuffer commandBuffer, 2353 uint32_t attachmentCount, 2354 const VkClearAttachment * pAttachments, 2355 uint32_t rectCount, 2356 const VkClearRect * pRects ) const VULKAN_HPP_NOEXCEPT 2357 { 2358 return ::vkCmdClearAttachments( commandBuffer, attachmentCount, pAttachments, rectCount, pRects ); 2359 } 2360 vkCmdResolveImage(VkCommandBuffer commandBuffer,VkImage srcImage,VkImageLayout srcImageLayout,VkImage dstImage,VkImageLayout dstImageLayout,uint32_t regionCount,const VkImageResolve * pRegions) const2361 void vkCmdResolveImage( VkCommandBuffer commandBuffer, 2362 VkImage srcImage, 2363 VkImageLayout srcImageLayout, 2364 VkImage dstImage, 2365 VkImageLayout dstImageLayout, 2366 uint32_t regionCount, 2367 const VkImageResolve * pRegions ) const VULKAN_HPP_NOEXCEPT 2368 { 2369 return ::vkCmdResolveImage( 2370 commandBuffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions ); 2371 } 2372 vkCmdSetEvent(VkCommandBuffer commandBuffer,VkEvent event,VkPipelineStageFlags stageMask) const2373 void vkCmdSetEvent( VkCommandBuffer commandBuffer, 2374 VkEvent event, 2375 VkPipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT 2376 { 2377 return ::vkCmdSetEvent( commandBuffer, event, stageMask ); 2378 } 2379 vkCmdResetEvent(VkCommandBuffer commandBuffer,VkEvent event,VkPipelineStageFlags stageMask) const2380 void vkCmdResetEvent( VkCommandBuffer commandBuffer, 2381 VkEvent event, 2382 VkPipelineStageFlags stageMask ) const VULKAN_HPP_NOEXCEPT 2383 { 2384 return ::vkCmdResetEvent( commandBuffer, event, stageMask ); 2385 } 2386 vkCmdWaitEvents(VkCommandBuffer commandBuffer,uint32_t eventCount,const VkEvent * pEvents,VkPipelineStageFlags srcStageMask,VkPipelineStageFlags dstStageMask,uint32_t memoryBarrierCount,const VkMemoryBarrier * pMemoryBarriers,uint32_t bufferMemoryBarrierCount,const VkBufferMemoryBarrier * pBufferMemoryBarriers,uint32_t imageMemoryBarrierCount,const VkImageMemoryBarrier * pImageMemoryBarriers) const2387 void vkCmdWaitEvents( VkCommandBuffer commandBuffer, 2388 uint32_t eventCount, 2389 const VkEvent * pEvents, 2390 VkPipelineStageFlags srcStageMask, 2391 VkPipelineStageFlags dstStageMask, 2392 uint32_t memoryBarrierCount, 2393 const VkMemoryBarrier * pMemoryBarriers, 2394 uint32_t bufferMemoryBarrierCount, 2395 const VkBufferMemoryBarrier * pBufferMemoryBarriers, 2396 uint32_t imageMemoryBarrierCount, 2397 const VkImageMemoryBarrier * pImageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT 2398 { 2399 return ::vkCmdWaitEvents( commandBuffer, 2400 eventCount, 2401 pEvents, 2402 srcStageMask, 2403 dstStageMask, 2404 memoryBarrierCount, 2405 pMemoryBarriers, 2406 bufferMemoryBarrierCount, 2407 pBufferMemoryBarriers, 2408 imageMemoryBarrierCount, 2409 pImageMemoryBarriers ); 2410 } 2411 vkCmdPipelineBarrier(VkCommandBuffer commandBuffer,VkPipelineStageFlags srcStageMask,VkPipelineStageFlags dstStageMask,VkDependencyFlags dependencyFlags,uint32_t memoryBarrierCount,const VkMemoryBarrier * pMemoryBarriers,uint32_t bufferMemoryBarrierCount,const VkBufferMemoryBarrier * pBufferMemoryBarriers,uint32_t imageMemoryBarrierCount,const VkImageMemoryBarrier * pImageMemoryBarriers) const2412 void vkCmdPipelineBarrier( VkCommandBuffer commandBuffer, 2413 VkPipelineStageFlags srcStageMask, 2414 VkPipelineStageFlags dstStageMask, 2415 VkDependencyFlags dependencyFlags, 2416 uint32_t memoryBarrierCount, 2417 const VkMemoryBarrier * pMemoryBarriers, 2418 uint32_t bufferMemoryBarrierCount, 2419 const VkBufferMemoryBarrier * pBufferMemoryBarriers, 2420 uint32_t imageMemoryBarrierCount, 2421 const VkImageMemoryBarrier * pImageMemoryBarriers ) const VULKAN_HPP_NOEXCEPT 2422 { 2423 return ::vkCmdPipelineBarrier( commandBuffer, 2424 srcStageMask, 2425 dstStageMask, 2426 dependencyFlags, 2427 memoryBarrierCount, 2428 pMemoryBarriers, 2429 bufferMemoryBarrierCount, 2430 pBufferMemoryBarriers, 2431 imageMemoryBarrierCount, 2432 pImageMemoryBarriers ); 2433 } 2434 vkCmdBeginQuery(VkCommandBuffer commandBuffer,VkQueryPool queryPool,uint32_t query,VkQueryControlFlags flags) const2435 void vkCmdBeginQuery( VkCommandBuffer commandBuffer, 2436 VkQueryPool queryPool, 2437 uint32_t query, 2438 VkQueryControlFlags flags ) const VULKAN_HPP_NOEXCEPT 2439 { 2440 return ::vkCmdBeginQuery( commandBuffer, queryPool, query, flags ); 2441 } 2442 vkCmdEndQuery(VkCommandBuffer commandBuffer,VkQueryPool queryPool,uint32_t query) const2443 void vkCmdEndQuery( VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query ) const VULKAN_HPP_NOEXCEPT 2444 { 2445 return ::vkCmdEndQuery( commandBuffer, queryPool, query ); 2446 } 2447 vkCmdResetQueryPool(VkCommandBuffer commandBuffer,VkQueryPool queryPool,uint32_t firstQuery,uint32_t queryCount) const2448 void vkCmdResetQueryPool( VkCommandBuffer commandBuffer, 2449 VkQueryPool queryPool, 2450 uint32_t firstQuery, 2451 uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT 2452 { 2453 return ::vkCmdResetQueryPool( commandBuffer, queryPool, firstQuery, queryCount ); 2454 } 2455 vkCmdWriteTimestamp(VkCommandBuffer commandBuffer,VkPipelineStageFlagBits pipelineStage,VkQueryPool queryPool,uint32_t query) const2456 void vkCmdWriteTimestamp( VkCommandBuffer commandBuffer, 2457 VkPipelineStageFlagBits pipelineStage, 2458 VkQueryPool queryPool, 2459 uint32_t query ) const VULKAN_HPP_NOEXCEPT 2460 { 2461 return ::vkCmdWriteTimestamp( commandBuffer, pipelineStage, queryPool, query ); 2462 } 2463 vkCmdCopyQueryPoolResults(VkCommandBuffer commandBuffer,VkQueryPool queryPool,uint32_t firstQuery,uint32_t queryCount,VkBuffer dstBuffer,VkDeviceSize dstOffset,VkDeviceSize stride,VkQueryResultFlags flags) const2464 void vkCmdCopyQueryPoolResults( VkCommandBuffer commandBuffer, 2465 VkQueryPool queryPool, 2466 uint32_t firstQuery, 2467 uint32_t queryCount, 2468 VkBuffer dstBuffer, 2469 VkDeviceSize dstOffset, 2470 VkDeviceSize stride, 2471 VkQueryResultFlags flags ) const VULKAN_HPP_NOEXCEPT 2472 { 2473 return ::vkCmdCopyQueryPoolResults( 2474 commandBuffer, queryPool, firstQuery, queryCount, dstBuffer, dstOffset, stride, flags ); 2475 } 2476 vkCmdPushConstants(VkCommandBuffer commandBuffer,VkPipelineLayout layout,VkShaderStageFlags stageFlags,uint32_t offset,uint32_t size,const void * pValues) const2477 void vkCmdPushConstants( VkCommandBuffer commandBuffer, 2478 VkPipelineLayout layout, 2479 VkShaderStageFlags stageFlags, 2480 uint32_t offset, 2481 uint32_t size, 2482 const void * pValues ) const VULKAN_HPP_NOEXCEPT 2483 { 2484 return ::vkCmdPushConstants( commandBuffer, layout, stageFlags, offset, size, pValues ); 2485 } 2486 vkCmdBeginRenderPass(VkCommandBuffer commandBuffer,const VkRenderPassBeginInfo * pRenderPassBegin,VkSubpassContents contents) const2487 void vkCmdBeginRenderPass( VkCommandBuffer commandBuffer, 2488 const VkRenderPassBeginInfo * pRenderPassBegin, 2489 VkSubpassContents contents ) const VULKAN_HPP_NOEXCEPT 2490 { 2491 return ::vkCmdBeginRenderPass( commandBuffer, pRenderPassBegin, contents ); 2492 } 2493 vkCmdNextSubpass(VkCommandBuffer commandBuffer,VkSubpassContents contents) const2494 void vkCmdNextSubpass( VkCommandBuffer commandBuffer, VkSubpassContents contents ) const VULKAN_HPP_NOEXCEPT 2495 { 2496 return ::vkCmdNextSubpass( commandBuffer, contents ); 2497 } 2498 vkCmdEndRenderPass(VkCommandBuffer commandBuffer) const2499 void vkCmdEndRenderPass( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT 2500 { 2501 return ::vkCmdEndRenderPass( commandBuffer ); 2502 } 2503 vkCmdExecuteCommands(VkCommandBuffer commandBuffer,uint32_t commandBufferCount,const VkCommandBuffer * pCommandBuffers) const2504 void vkCmdExecuteCommands( VkCommandBuffer commandBuffer, 2505 uint32_t commandBufferCount, 2506 const VkCommandBuffer * pCommandBuffers ) const VULKAN_HPP_NOEXCEPT 2507 { 2508 return ::vkCmdExecuteCommands( commandBuffer, commandBufferCount, pCommandBuffers ); 2509 } 2510 2511 //=== VK_VERSION_1_1 === 2512 vkEnumerateInstanceVersion(uint32_t * pApiVersion) const2513 VkResult vkEnumerateInstanceVersion( uint32_t * pApiVersion ) const VULKAN_HPP_NOEXCEPT 2514 { 2515 return ::vkEnumerateInstanceVersion( pApiVersion ); 2516 } 2517 vkBindBufferMemory2(VkDevice device,uint32_t bindInfoCount,const VkBindBufferMemoryInfo * pBindInfos) const2518 VkResult vkBindBufferMemory2( VkDevice device, 2519 uint32_t bindInfoCount, 2520 const VkBindBufferMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT 2521 { 2522 return ::vkBindBufferMemory2( device, bindInfoCount, pBindInfos ); 2523 } 2524 vkBindImageMemory2(VkDevice device,uint32_t bindInfoCount,const VkBindImageMemoryInfo * pBindInfos) const2525 VkResult vkBindImageMemory2( VkDevice device, 2526 uint32_t bindInfoCount, 2527 const VkBindImageMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT 2528 { 2529 return ::vkBindImageMemory2( device, bindInfoCount, pBindInfos ); 2530 } 2531 vkGetDeviceGroupPeerMemoryFeatures(VkDevice device,uint32_t heapIndex,uint32_t localDeviceIndex,uint32_t remoteDeviceIndex,VkPeerMemoryFeatureFlags * pPeerMemoryFeatures) const2532 void vkGetDeviceGroupPeerMemoryFeatures( VkDevice device, 2533 uint32_t heapIndex, 2534 uint32_t localDeviceIndex, 2535 uint32_t remoteDeviceIndex, 2536 VkPeerMemoryFeatureFlags * pPeerMemoryFeatures ) const VULKAN_HPP_NOEXCEPT 2537 { 2538 return ::vkGetDeviceGroupPeerMemoryFeatures( 2539 device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures ); 2540 } 2541 vkCmdSetDeviceMask(VkCommandBuffer commandBuffer,uint32_t deviceMask) const2542 void vkCmdSetDeviceMask( VkCommandBuffer commandBuffer, uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT 2543 { 2544 return ::vkCmdSetDeviceMask( commandBuffer, deviceMask ); 2545 } 2546 vkCmdDispatchBase(VkCommandBuffer commandBuffer,uint32_t baseGroupX,uint32_t baseGroupY,uint32_t baseGroupZ,uint32_t groupCountX,uint32_t groupCountY,uint32_t groupCountZ) const2547 void vkCmdDispatchBase( VkCommandBuffer commandBuffer, 2548 uint32_t baseGroupX, 2549 uint32_t baseGroupY, 2550 uint32_t baseGroupZ, 2551 uint32_t groupCountX, 2552 uint32_t groupCountY, 2553 uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT 2554 { 2555 return ::vkCmdDispatchBase( 2556 commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ ); 2557 } 2558 vkEnumeratePhysicalDeviceGroups(VkInstance instance,uint32_t * pPhysicalDeviceGroupCount,VkPhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties) const2559 VkResult vkEnumeratePhysicalDeviceGroups( VkInstance instance, 2560 uint32_t * pPhysicalDeviceGroupCount, 2561 VkPhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties ) const 2562 VULKAN_HPP_NOEXCEPT 2563 { 2564 return ::vkEnumeratePhysicalDeviceGroups( instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties ); 2565 } 2566 vkGetImageMemoryRequirements2(VkDevice device,const VkImageMemoryRequirementsInfo2 * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const2567 void vkGetImageMemoryRequirements2( VkDevice device, 2568 const VkImageMemoryRequirementsInfo2 * pInfo, 2569 VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 2570 { 2571 return ::vkGetImageMemoryRequirements2( device, pInfo, pMemoryRequirements ); 2572 } 2573 vkGetBufferMemoryRequirements2(VkDevice device,const VkBufferMemoryRequirementsInfo2 * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const2574 void vkGetBufferMemoryRequirements2( VkDevice device, 2575 const VkBufferMemoryRequirementsInfo2 * pInfo, 2576 VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 2577 { 2578 return ::vkGetBufferMemoryRequirements2( device, pInfo, pMemoryRequirements ); 2579 } 2580 vkGetImageSparseMemoryRequirements2(VkDevice device,const VkImageSparseMemoryRequirementsInfo2 * pInfo,uint32_t * pSparseMemoryRequirementCount,VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements) const2581 void vkGetImageSparseMemoryRequirements2( VkDevice device, 2582 const VkImageSparseMemoryRequirementsInfo2 * pInfo, 2583 uint32_t * pSparseMemoryRequirementCount, 2584 VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements ) const 2585 VULKAN_HPP_NOEXCEPT 2586 { 2587 return ::vkGetImageSparseMemoryRequirements2( 2588 device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements ); 2589 } 2590 vkGetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,VkPhysicalDeviceFeatures2 * pFeatures) const2591 void vkGetPhysicalDeviceFeatures2( VkPhysicalDevice physicalDevice, 2592 VkPhysicalDeviceFeatures2 * pFeatures ) const VULKAN_HPP_NOEXCEPT 2593 { 2594 return ::vkGetPhysicalDeviceFeatures2( physicalDevice, pFeatures ); 2595 } 2596 vkGetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,VkPhysicalDeviceProperties2 * pProperties) const2597 void vkGetPhysicalDeviceProperties2( VkPhysicalDevice physicalDevice, 2598 VkPhysicalDeviceProperties2 * pProperties ) const VULKAN_HPP_NOEXCEPT 2599 { 2600 return ::vkGetPhysicalDeviceProperties2( physicalDevice, pProperties ); 2601 } 2602 vkGetPhysicalDeviceFormatProperties2(VkPhysicalDevice physicalDevice,VkFormat format,VkFormatProperties2 * pFormatProperties) const2603 void vkGetPhysicalDeviceFormatProperties2( VkPhysicalDevice physicalDevice, 2604 VkFormat format, 2605 VkFormatProperties2 * pFormatProperties ) const VULKAN_HPP_NOEXCEPT 2606 { 2607 return ::vkGetPhysicalDeviceFormatProperties2( physicalDevice, format, pFormatProperties ); 2608 } 2609 vkGetPhysicalDeviceImageFormatProperties2(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceImageFormatInfo2 * pImageFormatInfo,VkImageFormatProperties2 * pImageFormatProperties) const2610 VkResult vkGetPhysicalDeviceImageFormatProperties2( VkPhysicalDevice physicalDevice, 2611 const VkPhysicalDeviceImageFormatInfo2 * pImageFormatInfo, 2612 VkImageFormatProperties2 * pImageFormatProperties ) const 2613 VULKAN_HPP_NOEXCEPT 2614 { 2615 return ::vkGetPhysicalDeviceImageFormatProperties2( physicalDevice, pImageFormatInfo, pImageFormatProperties ); 2616 } 2617 vkGetPhysicalDeviceQueueFamilyProperties2(VkPhysicalDevice physicalDevice,uint32_t * pQueueFamilyPropertyCount,VkQueueFamilyProperties2 * pQueueFamilyProperties) const2618 void vkGetPhysicalDeviceQueueFamilyProperties2( VkPhysicalDevice physicalDevice, 2619 uint32_t * pQueueFamilyPropertyCount, 2620 VkQueueFamilyProperties2 * pQueueFamilyProperties ) const 2621 VULKAN_HPP_NOEXCEPT 2622 { 2623 return ::vkGetPhysicalDeviceQueueFamilyProperties2( 2624 physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties ); 2625 } 2626 vkGetPhysicalDeviceMemoryProperties2(VkPhysicalDevice physicalDevice,VkPhysicalDeviceMemoryProperties2 * pMemoryProperties) const2627 void vkGetPhysicalDeviceMemoryProperties2( 2628 VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2 * pMemoryProperties ) const VULKAN_HPP_NOEXCEPT 2629 { 2630 return ::vkGetPhysicalDeviceMemoryProperties2( physicalDevice, pMemoryProperties ); 2631 } 2632 vkGetPhysicalDeviceSparseImageFormatProperties2(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,uint32_t * pPropertyCount,VkSparseImageFormatProperties2 * pProperties) const2633 void vkGetPhysicalDeviceSparseImageFormatProperties2( VkPhysicalDevice physicalDevice, 2634 const VkPhysicalDeviceSparseImageFormatInfo2 * pFormatInfo, 2635 uint32_t * pPropertyCount, 2636 VkSparseImageFormatProperties2 * pProperties ) const 2637 VULKAN_HPP_NOEXCEPT 2638 { 2639 return ::vkGetPhysicalDeviceSparseImageFormatProperties2( 2640 physicalDevice, pFormatInfo, pPropertyCount, pProperties ); 2641 } 2642 vkTrimCommandPool(VkDevice device,VkCommandPool commandPool,VkCommandPoolTrimFlags flags) const2643 void vkTrimCommandPool( VkDevice device, 2644 VkCommandPool commandPool, 2645 VkCommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT 2646 { 2647 return ::vkTrimCommandPool( device, commandPool, flags ); 2648 } 2649 vkGetDeviceQueue2(VkDevice device,const VkDeviceQueueInfo2 * pQueueInfo,VkQueue * pQueue) const2650 void vkGetDeviceQueue2( VkDevice device, 2651 const VkDeviceQueueInfo2 * pQueueInfo, 2652 VkQueue * pQueue ) const VULKAN_HPP_NOEXCEPT 2653 { 2654 return ::vkGetDeviceQueue2( device, pQueueInfo, pQueue ); 2655 } 2656 vkCreateSamplerYcbcrConversion(VkDevice device,const VkSamplerYcbcrConversionCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSamplerYcbcrConversion * pYcbcrConversion) const2657 VkResult vkCreateSamplerYcbcrConversion( VkDevice device, 2658 const VkSamplerYcbcrConversionCreateInfo * pCreateInfo, 2659 const VkAllocationCallbacks * pAllocator, 2660 VkSamplerYcbcrConversion * pYcbcrConversion ) const VULKAN_HPP_NOEXCEPT 2661 { 2662 return ::vkCreateSamplerYcbcrConversion( device, pCreateInfo, pAllocator, pYcbcrConversion ); 2663 } 2664 vkDestroySamplerYcbcrConversion(VkDevice device,VkSamplerYcbcrConversion ycbcrConversion,const VkAllocationCallbacks * pAllocator) const2665 void vkDestroySamplerYcbcrConversion( VkDevice device, 2666 VkSamplerYcbcrConversion ycbcrConversion, 2667 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2668 { 2669 return ::vkDestroySamplerYcbcrConversion( device, ycbcrConversion, pAllocator ); 2670 } 2671 vkCreateDescriptorUpdateTemplate(VkDevice device,const VkDescriptorUpdateTemplateCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDescriptorUpdateTemplate * pDescriptorUpdateTemplate) const2672 VkResult vkCreateDescriptorUpdateTemplate( VkDevice device, 2673 const VkDescriptorUpdateTemplateCreateInfo * pCreateInfo, 2674 const VkAllocationCallbacks * pAllocator, 2675 VkDescriptorUpdateTemplate * pDescriptorUpdateTemplate ) const 2676 VULKAN_HPP_NOEXCEPT 2677 { 2678 return ::vkCreateDescriptorUpdateTemplate( device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate ); 2679 } 2680 vkDestroyDescriptorUpdateTemplate(VkDevice device,VkDescriptorUpdateTemplate descriptorUpdateTemplate,const VkAllocationCallbacks * pAllocator) const2681 void vkDestroyDescriptorUpdateTemplate( VkDevice device, 2682 VkDescriptorUpdateTemplate descriptorUpdateTemplate, 2683 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2684 { 2685 return ::vkDestroyDescriptorUpdateTemplate( device, descriptorUpdateTemplate, pAllocator ); 2686 } 2687 vkUpdateDescriptorSetWithTemplate(VkDevice device,VkDescriptorSet descriptorSet,VkDescriptorUpdateTemplate descriptorUpdateTemplate,const void * pData) const2688 void vkUpdateDescriptorSetWithTemplate( VkDevice device, 2689 VkDescriptorSet descriptorSet, 2690 VkDescriptorUpdateTemplate descriptorUpdateTemplate, 2691 const void * pData ) const VULKAN_HPP_NOEXCEPT 2692 { 2693 return ::vkUpdateDescriptorSetWithTemplate( device, descriptorSet, descriptorUpdateTemplate, pData ); 2694 } 2695 vkGetPhysicalDeviceExternalBufferProperties(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceExternalBufferInfo * pExternalBufferInfo,VkExternalBufferProperties * pExternalBufferProperties) const2696 void vkGetPhysicalDeviceExternalBufferProperties( VkPhysicalDevice physicalDevice, 2697 const VkPhysicalDeviceExternalBufferInfo * pExternalBufferInfo, 2698 VkExternalBufferProperties * pExternalBufferProperties ) const 2699 VULKAN_HPP_NOEXCEPT 2700 { 2701 return ::vkGetPhysicalDeviceExternalBufferProperties( 2702 physicalDevice, pExternalBufferInfo, pExternalBufferProperties ); 2703 } 2704 vkGetPhysicalDeviceExternalFenceProperties(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceExternalFenceInfo * pExternalFenceInfo,VkExternalFenceProperties * pExternalFenceProperties) const2705 void vkGetPhysicalDeviceExternalFenceProperties( VkPhysicalDevice physicalDevice, 2706 const VkPhysicalDeviceExternalFenceInfo * pExternalFenceInfo, 2707 VkExternalFenceProperties * pExternalFenceProperties ) const 2708 VULKAN_HPP_NOEXCEPT 2709 { 2710 return ::vkGetPhysicalDeviceExternalFenceProperties( 2711 physicalDevice, pExternalFenceInfo, pExternalFenceProperties ); 2712 } 2713 vkGetPhysicalDeviceExternalSemaphoreProperties(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,VkExternalSemaphoreProperties * pExternalSemaphoreProperties) const2714 void vkGetPhysicalDeviceExternalSemaphoreProperties( 2715 VkPhysicalDevice physicalDevice, 2716 const VkPhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo, 2717 VkExternalSemaphoreProperties * pExternalSemaphoreProperties ) const VULKAN_HPP_NOEXCEPT 2718 { 2719 return ::vkGetPhysicalDeviceExternalSemaphoreProperties( 2720 physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties ); 2721 } 2722 vkGetDescriptorSetLayoutSupport(VkDevice device,const VkDescriptorSetLayoutCreateInfo * pCreateInfo,VkDescriptorSetLayoutSupport * pSupport) const2723 void vkGetDescriptorSetLayoutSupport( VkDevice device, 2724 const VkDescriptorSetLayoutCreateInfo * pCreateInfo, 2725 VkDescriptorSetLayoutSupport * pSupport ) const VULKAN_HPP_NOEXCEPT 2726 { 2727 return ::vkGetDescriptorSetLayoutSupport( device, pCreateInfo, pSupport ); 2728 } 2729 2730 //=== VK_VERSION_1_2 === 2731 vkCmdDrawIndirectCount(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const2732 void vkCmdDrawIndirectCount( VkCommandBuffer commandBuffer, 2733 VkBuffer buffer, 2734 VkDeviceSize offset, 2735 VkBuffer countBuffer, 2736 VkDeviceSize countBufferOffset, 2737 uint32_t maxDrawCount, 2738 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 2739 { 2740 return ::vkCmdDrawIndirectCount( 2741 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 2742 } 2743 vkCmdDrawIndexedIndirectCount(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const2744 void vkCmdDrawIndexedIndirectCount( VkCommandBuffer commandBuffer, 2745 VkBuffer buffer, 2746 VkDeviceSize offset, 2747 VkBuffer countBuffer, 2748 VkDeviceSize countBufferOffset, 2749 uint32_t maxDrawCount, 2750 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 2751 { 2752 return ::vkCmdDrawIndexedIndirectCount( 2753 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 2754 } 2755 vkCreateRenderPass2(VkDevice device,const VkRenderPassCreateInfo2 * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkRenderPass * pRenderPass) const2756 VkResult vkCreateRenderPass2( VkDevice device, 2757 const VkRenderPassCreateInfo2 * pCreateInfo, 2758 const VkAllocationCallbacks * pAllocator, 2759 VkRenderPass * pRenderPass ) const VULKAN_HPP_NOEXCEPT 2760 { 2761 return ::vkCreateRenderPass2( device, pCreateInfo, pAllocator, pRenderPass ); 2762 } 2763 vkCmdBeginRenderPass2(VkCommandBuffer commandBuffer,const VkRenderPassBeginInfo * pRenderPassBegin,const VkSubpassBeginInfo * pSubpassBeginInfo) const2764 void vkCmdBeginRenderPass2( VkCommandBuffer commandBuffer, 2765 const VkRenderPassBeginInfo * pRenderPassBegin, 2766 const VkSubpassBeginInfo * pSubpassBeginInfo ) const VULKAN_HPP_NOEXCEPT 2767 { 2768 return ::vkCmdBeginRenderPass2( commandBuffer, pRenderPassBegin, pSubpassBeginInfo ); 2769 } 2770 vkCmdNextSubpass2(VkCommandBuffer commandBuffer,const VkSubpassBeginInfo * pSubpassBeginInfo,const VkSubpassEndInfo * pSubpassEndInfo) const2771 void vkCmdNextSubpass2( VkCommandBuffer commandBuffer, 2772 const VkSubpassBeginInfo * pSubpassBeginInfo, 2773 const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT 2774 { 2775 return ::vkCmdNextSubpass2( commandBuffer, pSubpassBeginInfo, pSubpassEndInfo ); 2776 } 2777 vkCmdEndRenderPass2(VkCommandBuffer commandBuffer,const VkSubpassEndInfo * pSubpassEndInfo) const2778 void vkCmdEndRenderPass2( VkCommandBuffer commandBuffer, 2779 const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT 2780 { 2781 return ::vkCmdEndRenderPass2( commandBuffer, pSubpassEndInfo ); 2782 } 2783 vkResetQueryPool(VkDevice device,VkQueryPool queryPool,uint32_t firstQuery,uint32_t queryCount) const2784 void vkResetQueryPool( VkDevice device, 2785 VkQueryPool queryPool, 2786 uint32_t firstQuery, 2787 uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT 2788 { 2789 return ::vkResetQueryPool( device, queryPool, firstQuery, queryCount ); 2790 } 2791 2792 VkResult vkGetSemaphoreCounterValue(VkDevice device,VkSemaphore semaphore,uint64_t * pValue) const2793 vkGetSemaphoreCounterValue( VkDevice device, VkSemaphore semaphore, uint64_t * pValue ) const VULKAN_HPP_NOEXCEPT 2794 { 2795 return ::vkGetSemaphoreCounterValue( device, semaphore, pValue ); 2796 } 2797 vkWaitSemaphores(VkDevice device,const VkSemaphoreWaitInfo * pWaitInfo,uint64_t timeout) const2798 VkResult vkWaitSemaphores( VkDevice device, 2799 const VkSemaphoreWaitInfo * pWaitInfo, 2800 uint64_t timeout ) const VULKAN_HPP_NOEXCEPT 2801 { 2802 return ::vkWaitSemaphores( device, pWaitInfo, timeout ); 2803 } 2804 vkSignalSemaphore(VkDevice device,const VkSemaphoreSignalInfo * pSignalInfo) const2805 VkResult vkSignalSemaphore( VkDevice device, const VkSemaphoreSignalInfo * pSignalInfo ) const VULKAN_HPP_NOEXCEPT 2806 { 2807 return ::vkSignalSemaphore( device, pSignalInfo ); 2808 } 2809 vkGetBufferDeviceAddress(VkDevice device,const VkBufferDeviceAddressInfo * pInfo) const2810 VkDeviceAddress vkGetBufferDeviceAddress( VkDevice device, 2811 const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 2812 { 2813 return ::vkGetBufferDeviceAddress( device, pInfo ); 2814 } 2815 vkGetBufferOpaqueCaptureAddress(VkDevice device,const VkBufferDeviceAddressInfo * pInfo) const2816 uint64_t vkGetBufferOpaqueCaptureAddress( VkDevice device, 2817 const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 2818 { 2819 return ::vkGetBufferOpaqueCaptureAddress( device, pInfo ); 2820 } 2821 vkGetDeviceMemoryOpaqueCaptureAddress(VkDevice device,const VkDeviceMemoryOpaqueCaptureAddressInfo * pInfo) const2822 uint64_t vkGetDeviceMemoryOpaqueCaptureAddress( 2823 VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 2824 { 2825 return ::vkGetDeviceMemoryOpaqueCaptureAddress( device, pInfo ); 2826 } 2827 2828 //=== VK_KHR_surface === 2829 vkDestroySurfaceKHR(VkInstance instance,VkSurfaceKHR surface,const VkAllocationCallbacks * pAllocator) const2830 void vkDestroySurfaceKHR( VkInstance instance, 2831 VkSurfaceKHR surface, 2832 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2833 { 2834 return ::vkDestroySurfaceKHR( instance, surface, pAllocator ); 2835 } 2836 vkGetPhysicalDeviceSurfaceSupportKHR(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,VkSurfaceKHR surface,VkBool32 * pSupported) const2837 VkResult vkGetPhysicalDeviceSurfaceSupportKHR( VkPhysicalDevice physicalDevice, 2838 uint32_t queueFamilyIndex, 2839 VkSurfaceKHR surface, 2840 VkBool32 * pSupported ) const VULKAN_HPP_NOEXCEPT 2841 { 2842 return ::vkGetPhysicalDeviceSurfaceSupportKHR( physicalDevice, queueFamilyIndex, surface, pSupported ); 2843 } 2844 vkGetPhysicalDeviceSurfaceCapabilitiesKHR(VkPhysicalDevice physicalDevice,VkSurfaceKHR surface,VkSurfaceCapabilitiesKHR * pSurfaceCapabilities) const2845 VkResult vkGetPhysicalDeviceSurfaceCapabilitiesKHR( VkPhysicalDevice physicalDevice, 2846 VkSurfaceKHR surface, 2847 VkSurfaceCapabilitiesKHR * pSurfaceCapabilities ) const 2848 VULKAN_HPP_NOEXCEPT 2849 { 2850 return ::vkGetPhysicalDeviceSurfaceCapabilitiesKHR( physicalDevice, surface, pSurfaceCapabilities ); 2851 } 2852 vkGetPhysicalDeviceSurfaceFormatsKHR(VkPhysicalDevice physicalDevice,VkSurfaceKHR surface,uint32_t * pSurfaceFormatCount,VkSurfaceFormatKHR * pSurfaceFormats) const2853 VkResult vkGetPhysicalDeviceSurfaceFormatsKHR( VkPhysicalDevice physicalDevice, 2854 VkSurfaceKHR surface, 2855 uint32_t * pSurfaceFormatCount, 2856 VkSurfaceFormatKHR * pSurfaceFormats ) const VULKAN_HPP_NOEXCEPT 2857 { 2858 return ::vkGetPhysicalDeviceSurfaceFormatsKHR( physicalDevice, surface, pSurfaceFormatCount, pSurfaceFormats ); 2859 } 2860 vkGetPhysicalDeviceSurfacePresentModesKHR(VkPhysicalDevice physicalDevice,VkSurfaceKHR surface,uint32_t * pPresentModeCount,VkPresentModeKHR * pPresentModes) const2861 VkResult vkGetPhysicalDeviceSurfacePresentModesKHR( VkPhysicalDevice physicalDevice, 2862 VkSurfaceKHR surface, 2863 uint32_t * pPresentModeCount, 2864 VkPresentModeKHR * pPresentModes ) const VULKAN_HPP_NOEXCEPT 2865 { 2866 return ::vkGetPhysicalDeviceSurfacePresentModesKHR( physicalDevice, surface, pPresentModeCount, pPresentModes ); 2867 } 2868 2869 //=== VK_KHR_swapchain === 2870 vkCreateSwapchainKHR(VkDevice device,const VkSwapchainCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSwapchainKHR * pSwapchain) const2871 VkResult vkCreateSwapchainKHR( VkDevice device, 2872 const VkSwapchainCreateInfoKHR * pCreateInfo, 2873 const VkAllocationCallbacks * pAllocator, 2874 VkSwapchainKHR * pSwapchain ) const VULKAN_HPP_NOEXCEPT 2875 { 2876 return ::vkCreateSwapchainKHR( device, pCreateInfo, pAllocator, pSwapchain ); 2877 } 2878 vkDestroySwapchainKHR(VkDevice device,VkSwapchainKHR swapchain,const VkAllocationCallbacks * pAllocator) const2879 void vkDestroySwapchainKHR( VkDevice device, 2880 VkSwapchainKHR swapchain, 2881 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 2882 { 2883 return ::vkDestroySwapchainKHR( device, swapchain, pAllocator ); 2884 } 2885 vkGetSwapchainImagesKHR(VkDevice device,VkSwapchainKHR swapchain,uint32_t * pSwapchainImageCount,VkImage * pSwapchainImages) const2886 VkResult vkGetSwapchainImagesKHR( VkDevice device, 2887 VkSwapchainKHR swapchain, 2888 uint32_t * pSwapchainImageCount, 2889 VkImage * pSwapchainImages ) const VULKAN_HPP_NOEXCEPT 2890 { 2891 return ::vkGetSwapchainImagesKHR( device, swapchain, pSwapchainImageCount, pSwapchainImages ); 2892 } 2893 vkAcquireNextImageKHR(VkDevice device,VkSwapchainKHR swapchain,uint64_t timeout,VkSemaphore semaphore,VkFence fence,uint32_t * pImageIndex) const2894 VkResult vkAcquireNextImageKHR( VkDevice device, 2895 VkSwapchainKHR swapchain, 2896 uint64_t timeout, 2897 VkSemaphore semaphore, 2898 VkFence fence, 2899 uint32_t * pImageIndex ) const VULKAN_HPP_NOEXCEPT 2900 { 2901 return ::vkAcquireNextImageKHR( device, swapchain, timeout, semaphore, fence, pImageIndex ); 2902 } 2903 vkQueuePresentKHR(VkQueue queue,const VkPresentInfoKHR * pPresentInfo) const2904 VkResult vkQueuePresentKHR( VkQueue queue, const VkPresentInfoKHR * pPresentInfo ) const VULKAN_HPP_NOEXCEPT 2905 { 2906 return ::vkQueuePresentKHR( queue, pPresentInfo ); 2907 } 2908 vkGetDeviceGroupPresentCapabilitiesKHR(VkDevice device,VkDeviceGroupPresentCapabilitiesKHR * pDeviceGroupPresentCapabilities) const2909 VkResult vkGetDeviceGroupPresentCapabilitiesKHR( 2910 VkDevice device, VkDeviceGroupPresentCapabilitiesKHR * pDeviceGroupPresentCapabilities ) const VULKAN_HPP_NOEXCEPT 2911 { 2912 return ::vkGetDeviceGroupPresentCapabilitiesKHR( device, pDeviceGroupPresentCapabilities ); 2913 } 2914 vkGetDeviceGroupSurfacePresentModesKHR(VkDevice device,VkSurfaceKHR surface,VkDeviceGroupPresentModeFlagsKHR * pModes) const2915 VkResult vkGetDeviceGroupSurfacePresentModesKHR( 2916 VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR * pModes ) const VULKAN_HPP_NOEXCEPT 2917 { 2918 return ::vkGetDeviceGroupSurfacePresentModesKHR( device, surface, pModes ); 2919 } 2920 vkGetPhysicalDevicePresentRectanglesKHR(VkPhysicalDevice physicalDevice,VkSurfaceKHR surface,uint32_t * pRectCount,VkRect2D * pRects) const2921 VkResult vkGetPhysicalDevicePresentRectanglesKHR( VkPhysicalDevice physicalDevice, 2922 VkSurfaceKHR surface, 2923 uint32_t * pRectCount, 2924 VkRect2D * pRects ) const VULKAN_HPP_NOEXCEPT 2925 { 2926 return ::vkGetPhysicalDevicePresentRectanglesKHR( physicalDevice, surface, pRectCount, pRects ); 2927 } 2928 vkAcquireNextImage2KHR(VkDevice device,const VkAcquireNextImageInfoKHR * pAcquireInfo,uint32_t * pImageIndex) const2929 VkResult vkAcquireNextImage2KHR( VkDevice device, 2930 const VkAcquireNextImageInfoKHR * pAcquireInfo, 2931 uint32_t * pImageIndex ) const VULKAN_HPP_NOEXCEPT 2932 { 2933 return ::vkAcquireNextImage2KHR( device, pAcquireInfo, pImageIndex ); 2934 } 2935 2936 //=== VK_KHR_display === 2937 vkGetPhysicalDeviceDisplayPropertiesKHR(VkPhysicalDevice physicalDevice,uint32_t * pPropertyCount,VkDisplayPropertiesKHR * pProperties) const2938 VkResult vkGetPhysicalDeviceDisplayPropertiesKHR( VkPhysicalDevice physicalDevice, 2939 uint32_t * pPropertyCount, 2940 VkDisplayPropertiesKHR * pProperties ) const VULKAN_HPP_NOEXCEPT 2941 { 2942 return ::vkGetPhysicalDeviceDisplayPropertiesKHR( physicalDevice, pPropertyCount, pProperties ); 2943 } 2944 vkGetPhysicalDeviceDisplayPlanePropertiesKHR(VkPhysicalDevice physicalDevice,uint32_t * pPropertyCount,VkDisplayPlanePropertiesKHR * pProperties) const2945 VkResult vkGetPhysicalDeviceDisplayPlanePropertiesKHR( VkPhysicalDevice physicalDevice, 2946 uint32_t * pPropertyCount, 2947 VkDisplayPlanePropertiesKHR * pProperties ) const 2948 VULKAN_HPP_NOEXCEPT 2949 { 2950 return ::vkGetPhysicalDeviceDisplayPlanePropertiesKHR( physicalDevice, pPropertyCount, pProperties ); 2951 } 2952 vkGetDisplayPlaneSupportedDisplaysKHR(VkPhysicalDevice physicalDevice,uint32_t planeIndex,uint32_t * pDisplayCount,VkDisplayKHR * pDisplays) const2953 VkResult vkGetDisplayPlaneSupportedDisplaysKHR( VkPhysicalDevice physicalDevice, 2954 uint32_t planeIndex, 2955 uint32_t * pDisplayCount, 2956 VkDisplayKHR * pDisplays ) const VULKAN_HPP_NOEXCEPT 2957 { 2958 return ::vkGetDisplayPlaneSupportedDisplaysKHR( physicalDevice, planeIndex, pDisplayCount, pDisplays ); 2959 } 2960 vkGetDisplayModePropertiesKHR(VkPhysicalDevice physicalDevice,VkDisplayKHR display,uint32_t * pPropertyCount,VkDisplayModePropertiesKHR * pProperties) const2961 VkResult vkGetDisplayModePropertiesKHR( VkPhysicalDevice physicalDevice, 2962 VkDisplayKHR display, 2963 uint32_t * pPropertyCount, 2964 VkDisplayModePropertiesKHR * pProperties ) const VULKAN_HPP_NOEXCEPT 2965 { 2966 return ::vkGetDisplayModePropertiesKHR( physicalDevice, display, pPropertyCount, pProperties ); 2967 } 2968 vkCreateDisplayModeKHR(VkPhysicalDevice physicalDevice,VkDisplayKHR display,const VkDisplayModeCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDisplayModeKHR * pMode) const2969 VkResult vkCreateDisplayModeKHR( VkPhysicalDevice physicalDevice, 2970 VkDisplayKHR display, 2971 const VkDisplayModeCreateInfoKHR * pCreateInfo, 2972 const VkAllocationCallbacks * pAllocator, 2973 VkDisplayModeKHR * pMode ) const VULKAN_HPP_NOEXCEPT 2974 { 2975 return ::vkCreateDisplayModeKHR( physicalDevice, display, pCreateInfo, pAllocator, pMode ); 2976 } 2977 vkGetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice physicalDevice,VkDisplayModeKHR mode,uint32_t planeIndex,VkDisplayPlaneCapabilitiesKHR * pCapabilities) const2978 VkResult vkGetDisplayPlaneCapabilitiesKHR( VkPhysicalDevice physicalDevice, 2979 VkDisplayModeKHR mode, 2980 uint32_t planeIndex, 2981 VkDisplayPlaneCapabilitiesKHR * pCapabilities ) const VULKAN_HPP_NOEXCEPT 2982 { 2983 return ::vkGetDisplayPlaneCapabilitiesKHR( physicalDevice, mode, planeIndex, pCapabilities ); 2984 } 2985 vkCreateDisplayPlaneSurfaceKHR(VkInstance instance,const VkDisplaySurfaceCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const2986 VkResult vkCreateDisplayPlaneSurfaceKHR( VkInstance instance, 2987 const VkDisplaySurfaceCreateInfoKHR * pCreateInfo, 2988 const VkAllocationCallbacks * pAllocator, 2989 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 2990 { 2991 return ::vkCreateDisplayPlaneSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface ); 2992 } 2993 2994 //=== VK_KHR_display_swapchain === 2995 vkCreateSharedSwapchainsKHR(VkDevice device,uint32_t swapchainCount,const VkSwapchainCreateInfoKHR * pCreateInfos,const VkAllocationCallbacks * pAllocator,VkSwapchainKHR * pSwapchains) const2996 VkResult vkCreateSharedSwapchainsKHR( VkDevice device, 2997 uint32_t swapchainCount, 2998 const VkSwapchainCreateInfoKHR * pCreateInfos, 2999 const VkAllocationCallbacks * pAllocator, 3000 VkSwapchainKHR * pSwapchains ) const VULKAN_HPP_NOEXCEPT 3001 { 3002 return ::vkCreateSharedSwapchainsKHR( device, swapchainCount, pCreateInfos, pAllocator, pSwapchains ); 3003 } 3004 3005 # if defined( VK_USE_PLATFORM_XLIB_KHR ) 3006 //=== VK_KHR_xlib_surface === 3007 vkCreateXlibSurfaceKHR(VkInstance instance,const VkXlibSurfaceCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3008 VkResult vkCreateXlibSurfaceKHR( VkInstance instance, 3009 const VkXlibSurfaceCreateInfoKHR * pCreateInfo, 3010 const VkAllocationCallbacks * pAllocator, 3011 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3012 { 3013 return ::vkCreateXlibSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface ); 3014 } 3015 vkGetPhysicalDeviceXlibPresentationSupportKHR(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,Display * dpy,VisualID visualID) const3016 VkBool32 vkGetPhysicalDeviceXlibPresentationSupportKHR( VkPhysicalDevice physicalDevice, 3017 uint32_t queueFamilyIndex, 3018 Display * dpy, 3019 VisualID visualID ) const VULKAN_HPP_NOEXCEPT 3020 { 3021 return ::vkGetPhysicalDeviceXlibPresentationSupportKHR( physicalDevice, queueFamilyIndex, dpy, visualID ); 3022 } 3023 # endif /*VK_USE_PLATFORM_XLIB_KHR*/ 3024 3025 # if defined( VK_USE_PLATFORM_XCB_KHR ) 3026 //=== VK_KHR_xcb_surface === 3027 vkCreateXcbSurfaceKHR(VkInstance instance,const VkXcbSurfaceCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3028 VkResult vkCreateXcbSurfaceKHR( VkInstance instance, 3029 const VkXcbSurfaceCreateInfoKHR * pCreateInfo, 3030 const VkAllocationCallbacks * pAllocator, 3031 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3032 { 3033 return ::vkCreateXcbSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface ); 3034 } 3035 vkGetPhysicalDeviceXcbPresentationSupportKHR(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,xcb_connection_t * connection,xcb_visualid_t visual_id) const3036 VkBool32 vkGetPhysicalDeviceXcbPresentationSupportKHR( VkPhysicalDevice physicalDevice, 3037 uint32_t queueFamilyIndex, 3038 xcb_connection_t * connection, 3039 xcb_visualid_t visual_id ) const VULKAN_HPP_NOEXCEPT 3040 { 3041 return ::vkGetPhysicalDeviceXcbPresentationSupportKHR( physicalDevice, queueFamilyIndex, connection, visual_id ); 3042 } 3043 # endif /*VK_USE_PLATFORM_XCB_KHR*/ 3044 3045 # if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 3046 //=== VK_KHR_wayland_surface === 3047 vkCreateWaylandSurfaceKHR(VkInstance instance,const VkWaylandSurfaceCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3048 VkResult vkCreateWaylandSurfaceKHR( VkInstance instance, 3049 const VkWaylandSurfaceCreateInfoKHR * pCreateInfo, 3050 const VkAllocationCallbacks * pAllocator, 3051 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3052 { 3053 return ::vkCreateWaylandSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface ); 3054 } 3055 vkGetPhysicalDeviceWaylandPresentationSupportKHR(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,struct wl_display * display) const3056 VkBool32 vkGetPhysicalDeviceWaylandPresentationSupportKHR( VkPhysicalDevice physicalDevice, 3057 uint32_t queueFamilyIndex, 3058 struct wl_display * display ) const VULKAN_HPP_NOEXCEPT 3059 { 3060 return ::vkGetPhysicalDeviceWaylandPresentationSupportKHR( physicalDevice, queueFamilyIndex, display ); 3061 } 3062 # endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 3063 3064 # if defined( VK_USE_PLATFORM_ANDROID_KHR ) 3065 //=== VK_KHR_android_surface === 3066 vkCreateAndroidSurfaceKHR(VkInstance instance,const VkAndroidSurfaceCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3067 VkResult vkCreateAndroidSurfaceKHR( VkInstance instance, 3068 const VkAndroidSurfaceCreateInfoKHR * pCreateInfo, 3069 const VkAllocationCallbacks * pAllocator, 3070 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3071 { 3072 return ::vkCreateAndroidSurfaceKHR( instance, pCreateInfo, pAllocator, pSurface ); 3073 } 3074 # endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 3075 3076 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 3077 //=== VK_KHR_win32_surface === 3078 vkCreateWin32SurfaceKHR(VkInstance instance,const VkWin32SurfaceCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3079 VkResult vkCreateWin32SurfaceKHR( VkInstance instance, 3080 const VkWin32SurfaceCreateInfoKHR * pCreateInfo, 3081 const VkAllocationCallbacks * pAllocator, 3082 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3083 { 3084 return ::vkCreateWin32SurfaceKHR( instance, pCreateInfo, pAllocator, pSurface ); 3085 } 3086 vkGetPhysicalDeviceWin32PresentationSupportKHR(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex) const3087 VkBool32 vkGetPhysicalDeviceWin32PresentationSupportKHR( VkPhysicalDevice physicalDevice, 3088 uint32_t queueFamilyIndex ) const VULKAN_HPP_NOEXCEPT 3089 { 3090 return ::vkGetPhysicalDeviceWin32PresentationSupportKHR( physicalDevice, queueFamilyIndex ); 3091 } 3092 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3093 3094 //=== VK_EXT_debug_report === 3095 vkCreateDebugReportCallbackEXT(VkInstance instance,const VkDebugReportCallbackCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDebugReportCallbackEXT * pCallback) const3096 VkResult vkCreateDebugReportCallbackEXT( VkInstance instance, 3097 const VkDebugReportCallbackCreateInfoEXT * pCreateInfo, 3098 const VkAllocationCallbacks * pAllocator, 3099 VkDebugReportCallbackEXT * pCallback ) const VULKAN_HPP_NOEXCEPT 3100 { 3101 return ::vkCreateDebugReportCallbackEXT( instance, pCreateInfo, pAllocator, pCallback ); 3102 } 3103 vkDestroyDebugReportCallbackEXT(VkInstance instance,VkDebugReportCallbackEXT callback,const VkAllocationCallbacks * pAllocator) const3104 void vkDestroyDebugReportCallbackEXT( VkInstance instance, 3105 VkDebugReportCallbackEXT callback, 3106 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 3107 { 3108 return ::vkDestroyDebugReportCallbackEXT( instance, callback, pAllocator ); 3109 } 3110 vkDebugReportMessageEXT(VkInstance instance,VkDebugReportFlagsEXT flags,VkDebugReportObjectTypeEXT objectType,uint64_t object,size_t location,int32_t messageCode,const char * pLayerPrefix,const char * pMessage) const3111 void vkDebugReportMessageEXT( VkInstance instance, 3112 VkDebugReportFlagsEXT flags, 3113 VkDebugReportObjectTypeEXT objectType, 3114 uint64_t object, 3115 size_t location, 3116 int32_t messageCode, 3117 const char * pLayerPrefix, 3118 const char * pMessage ) const VULKAN_HPP_NOEXCEPT 3119 { 3120 return ::vkDebugReportMessageEXT( 3121 instance, flags, objectType, object, location, messageCode, pLayerPrefix, pMessage ); 3122 } 3123 3124 //=== VK_EXT_debug_marker === 3125 vkDebugMarkerSetObjectTagEXT(VkDevice device,const VkDebugMarkerObjectTagInfoEXT * pTagInfo) const3126 VkResult vkDebugMarkerSetObjectTagEXT( VkDevice device, 3127 const VkDebugMarkerObjectTagInfoEXT * pTagInfo ) const VULKAN_HPP_NOEXCEPT 3128 { 3129 return ::vkDebugMarkerSetObjectTagEXT( device, pTagInfo ); 3130 } 3131 vkDebugMarkerSetObjectNameEXT(VkDevice device,const VkDebugMarkerObjectNameInfoEXT * pNameInfo) const3132 VkResult vkDebugMarkerSetObjectNameEXT( VkDevice device, 3133 const VkDebugMarkerObjectNameInfoEXT * pNameInfo ) const VULKAN_HPP_NOEXCEPT 3134 { 3135 return ::vkDebugMarkerSetObjectNameEXT( device, pNameInfo ); 3136 } 3137 vkCmdDebugMarkerBeginEXT(VkCommandBuffer commandBuffer,const VkDebugMarkerMarkerInfoEXT * pMarkerInfo) const3138 void vkCmdDebugMarkerBeginEXT( VkCommandBuffer commandBuffer, 3139 const VkDebugMarkerMarkerInfoEXT * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT 3140 { 3141 return ::vkCmdDebugMarkerBeginEXT( commandBuffer, pMarkerInfo ); 3142 } 3143 vkCmdDebugMarkerEndEXT(VkCommandBuffer commandBuffer) const3144 void vkCmdDebugMarkerEndEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT 3145 { 3146 return ::vkCmdDebugMarkerEndEXT( commandBuffer ); 3147 } 3148 vkCmdDebugMarkerInsertEXT(VkCommandBuffer commandBuffer,const VkDebugMarkerMarkerInfoEXT * pMarkerInfo) const3149 void vkCmdDebugMarkerInsertEXT( VkCommandBuffer commandBuffer, 3150 const VkDebugMarkerMarkerInfoEXT * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT 3151 { 3152 return ::vkCmdDebugMarkerInsertEXT( commandBuffer, pMarkerInfo ); 3153 } 3154 3155 # if defined( VK_ENABLE_BETA_EXTENSIONS ) 3156 //=== VK_KHR_video_queue === 3157 vkGetPhysicalDeviceVideoCapabilitiesKHR(VkPhysicalDevice physicalDevice,const VkVideoProfileKHR * pVideoProfile,VkVideoCapabilitiesKHR * pCapabilities) const3158 VkResult vkGetPhysicalDeviceVideoCapabilitiesKHR( VkPhysicalDevice physicalDevice, 3159 const VkVideoProfileKHR * pVideoProfile, 3160 VkVideoCapabilitiesKHR * pCapabilities ) const VULKAN_HPP_NOEXCEPT 3161 { 3162 return ::vkGetPhysicalDeviceVideoCapabilitiesKHR( physicalDevice, pVideoProfile, pCapabilities ); 3163 } 3164 vkGetPhysicalDeviceVideoFormatPropertiesKHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceVideoFormatInfoKHR * pVideoFormatInfo,uint32_t * pVideoFormatPropertyCount,VkVideoFormatPropertiesKHR * pVideoFormatProperties) const3165 VkResult vkGetPhysicalDeviceVideoFormatPropertiesKHR( VkPhysicalDevice physicalDevice, 3166 const VkPhysicalDeviceVideoFormatInfoKHR * pVideoFormatInfo, 3167 uint32_t * pVideoFormatPropertyCount, 3168 VkVideoFormatPropertiesKHR * pVideoFormatProperties ) const 3169 VULKAN_HPP_NOEXCEPT 3170 { 3171 return ::vkGetPhysicalDeviceVideoFormatPropertiesKHR( 3172 physicalDevice, pVideoFormatInfo, pVideoFormatPropertyCount, pVideoFormatProperties ); 3173 } 3174 vkCreateVideoSessionKHR(VkDevice device,const VkVideoSessionCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkVideoSessionKHR * pVideoSession) const3175 VkResult vkCreateVideoSessionKHR( VkDevice device, 3176 const VkVideoSessionCreateInfoKHR * pCreateInfo, 3177 const VkAllocationCallbacks * pAllocator, 3178 VkVideoSessionKHR * pVideoSession ) const VULKAN_HPP_NOEXCEPT 3179 { 3180 return ::vkCreateVideoSessionKHR( device, pCreateInfo, pAllocator, pVideoSession ); 3181 } 3182 vkDestroyVideoSessionKHR(VkDevice device,VkVideoSessionKHR videoSession,const VkAllocationCallbacks * pAllocator) const3183 void vkDestroyVideoSessionKHR( VkDevice device, 3184 VkVideoSessionKHR videoSession, 3185 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 3186 { 3187 return ::vkDestroyVideoSessionKHR( device, videoSession, pAllocator ); 3188 } 3189 vkGetVideoSessionMemoryRequirementsKHR(VkDevice device,VkVideoSessionKHR videoSession,uint32_t * pVideoSessionMemoryRequirementsCount,VkVideoGetMemoryPropertiesKHR * pVideoSessionMemoryRequirements) const3190 VkResult vkGetVideoSessionMemoryRequirementsKHR( 3191 VkDevice device, 3192 VkVideoSessionKHR videoSession, 3193 uint32_t * pVideoSessionMemoryRequirementsCount, 3194 VkVideoGetMemoryPropertiesKHR * pVideoSessionMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 3195 { 3196 return ::vkGetVideoSessionMemoryRequirementsKHR( 3197 device, videoSession, pVideoSessionMemoryRequirementsCount, pVideoSessionMemoryRequirements ); 3198 } 3199 3200 VkResult vkBindVideoSessionMemoryKHR(VkDevice device,VkVideoSessionKHR videoSession,uint32_t videoSessionBindMemoryCount,const VkVideoBindMemoryKHR * pVideoSessionBindMemories) const3201 vkBindVideoSessionMemoryKHR( VkDevice device, 3202 VkVideoSessionKHR videoSession, 3203 uint32_t videoSessionBindMemoryCount, 3204 const VkVideoBindMemoryKHR * pVideoSessionBindMemories ) const VULKAN_HPP_NOEXCEPT 3205 { 3206 return ::vkBindVideoSessionMemoryKHR( 3207 device, videoSession, videoSessionBindMemoryCount, pVideoSessionBindMemories ); 3208 } 3209 vkCreateVideoSessionParametersKHR(VkDevice device,const VkVideoSessionParametersCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkVideoSessionParametersKHR * pVideoSessionParameters) const3210 VkResult vkCreateVideoSessionParametersKHR( VkDevice device, 3211 const VkVideoSessionParametersCreateInfoKHR * pCreateInfo, 3212 const VkAllocationCallbacks * pAllocator, 3213 VkVideoSessionParametersKHR * pVideoSessionParameters ) const 3214 VULKAN_HPP_NOEXCEPT 3215 { 3216 return ::vkCreateVideoSessionParametersKHR( device, pCreateInfo, pAllocator, pVideoSessionParameters ); 3217 } 3218 vkUpdateVideoSessionParametersKHR(VkDevice device,VkVideoSessionParametersKHR videoSessionParameters,const VkVideoSessionParametersUpdateInfoKHR * pUpdateInfo) const3219 VkResult vkUpdateVideoSessionParametersKHR( VkDevice device, 3220 VkVideoSessionParametersKHR videoSessionParameters, 3221 const VkVideoSessionParametersUpdateInfoKHR * pUpdateInfo ) const 3222 VULKAN_HPP_NOEXCEPT 3223 { 3224 return ::vkUpdateVideoSessionParametersKHR( device, videoSessionParameters, pUpdateInfo ); 3225 } 3226 vkDestroyVideoSessionParametersKHR(VkDevice device,VkVideoSessionParametersKHR videoSessionParameters,const VkAllocationCallbacks * pAllocator) const3227 void vkDestroyVideoSessionParametersKHR( VkDevice device, 3228 VkVideoSessionParametersKHR videoSessionParameters, 3229 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 3230 { 3231 return ::vkDestroyVideoSessionParametersKHR( device, videoSessionParameters, pAllocator ); 3232 } 3233 vkCmdBeginVideoCodingKHR(VkCommandBuffer commandBuffer,const VkVideoBeginCodingInfoKHR * pBeginInfo) const3234 void vkCmdBeginVideoCodingKHR( VkCommandBuffer commandBuffer, 3235 const VkVideoBeginCodingInfoKHR * pBeginInfo ) const VULKAN_HPP_NOEXCEPT 3236 { 3237 return ::vkCmdBeginVideoCodingKHR( commandBuffer, pBeginInfo ); 3238 } 3239 vkCmdEndVideoCodingKHR(VkCommandBuffer commandBuffer,const VkVideoEndCodingInfoKHR * pEndCodingInfo) const3240 void vkCmdEndVideoCodingKHR( VkCommandBuffer commandBuffer, 3241 const VkVideoEndCodingInfoKHR * pEndCodingInfo ) const VULKAN_HPP_NOEXCEPT 3242 { 3243 return ::vkCmdEndVideoCodingKHR( commandBuffer, pEndCodingInfo ); 3244 } 3245 vkCmdControlVideoCodingKHR(VkCommandBuffer commandBuffer,const VkVideoCodingControlInfoKHR * pCodingControlInfo) const3246 void vkCmdControlVideoCodingKHR( VkCommandBuffer commandBuffer, 3247 const VkVideoCodingControlInfoKHR * pCodingControlInfo ) const VULKAN_HPP_NOEXCEPT 3248 { 3249 return ::vkCmdControlVideoCodingKHR( commandBuffer, pCodingControlInfo ); 3250 } 3251 # endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3252 3253 # if defined( VK_ENABLE_BETA_EXTENSIONS ) 3254 //=== VK_KHR_video_decode_queue === 3255 vkCmdDecodeVideoKHR(VkCommandBuffer commandBuffer,const VkVideoDecodeInfoKHR * pFrameInfo) const3256 void vkCmdDecodeVideoKHR( VkCommandBuffer commandBuffer, 3257 const VkVideoDecodeInfoKHR * pFrameInfo ) const VULKAN_HPP_NOEXCEPT 3258 { 3259 return ::vkCmdDecodeVideoKHR( commandBuffer, pFrameInfo ); 3260 } 3261 # endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3262 3263 //=== VK_EXT_transform_feedback === 3264 vkCmdBindTransformFeedbackBuffersEXT(VkCommandBuffer commandBuffer,uint32_t firstBinding,uint32_t bindingCount,const VkBuffer * pBuffers,const VkDeviceSize * pOffsets,const VkDeviceSize * pSizes) const3265 void vkCmdBindTransformFeedbackBuffersEXT( VkCommandBuffer commandBuffer, 3266 uint32_t firstBinding, 3267 uint32_t bindingCount, 3268 const VkBuffer * pBuffers, 3269 const VkDeviceSize * pOffsets, 3270 const VkDeviceSize * pSizes ) const VULKAN_HPP_NOEXCEPT 3271 { 3272 return ::vkCmdBindTransformFeedbackBuffersEXT( 3273 commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes ); 3274 } 3275 vkCmdBeginTransformFeedbackEXT(VkCommandBuffer commandBuffer,uint32_t firstCounterBuffer,uint32_t counterBufferCount,const VkBuffer * pCounterBuffers,const VkDeviceSize * pCounterBufferOffsets) const3276 void vkCmdBeginTransformFeedbackEXT( VkCommandBuffer commandBuffer, 3277 uint32_t firstCounterBuffer, 3278 uint32_t counterBufferCount, 3279 const VkBuffer * pCounterBuffers, 3280 const VkDeviceSize * pCounterBufferOffsets ) const VULKAN_HPP_NOEXCEPT 3281 { 3282 return ::vkCmdBeginTransformFeedbackEXT( 3283 commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets ); 3284 } 3285 vkCmdEndTransformFeedbackEXT(VkCommandBuffer commandBuffer,uint32_t firstCounterBuffer,uint32_t counterBufferCount,const VkBuffer * pCounterBuffers,const VkDeviceSize * pCounterBufferOffsets) const3286 void vkCmdEndTransformFeedbackEXT( VkCommandBuffer commandBuffer, 3287 uint32_t firstCounterBuffer, 3288 uint32_t counterBufferCount, 3289 const VkBuffer * pCounterBuffers, 3290 const VkDeviceSize * pCounterBufferOffsets ) const VULKAN_HPP_NOEXCEPT 3291 { 3292 return ::vkCmdEndTransformFeedbackEXT( 3293 commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets ); 3294 } 3295 vkCmdBeginQueryIndexedEXT(VkCommandBuffer commandBuffer,VkQueryPool queryPool,uint32_t query,VkQueryControlFlags flags,uint32_t index) const3296 void vkCmdBeginQueryIndexedEXT( VkCommandBuffer commandBuffer, 3297 VkQueryPool queryPool, 3298 uint32_t query, 3299 VkQueryControlFlags flags, 3300 uint32_t index ) const VULKAN_HPP_NOEXCEPT 3301 { 3302 return ::vkCmdBeginQueryIndexedEXT( commandBuffer, queryPool, query, flags, index ); 3303 } 3304 vkCmdEndQueryIndexedEXT(VkCommandBuffer commandBuffer,VkQueryPool queryPool,uint32_t query,uint32_t index) const3305 void vkCmdEndQueryIndexedEXT( VkCommandBuffer commandBuffer, 3306 VkQueryPool queryPool, 3307 uint32_t query, 3308 uint32_t index ) const VULKAN_HPP_NOEXCEPT 3309 { 3310 return ::vkCmdEndQueryIndexedEXT( commandBuffer, queryPool, query, index ); 3311 } 3312 vkCmdDrawIndirectByteCountEXT(VkCommandBuffer commandBuffer,uint32_t instanceCount,uint32_t firstInstance,VkBuffer counterBuffer,VkDeviceSize counterBufferOffset,uint32_t counterOffset,uint32_t vertexStride) const3313 void vkCmdDrawIndirectByteCountEXT( VkCommandBuffer commandBuffer, 3314 uint32_t instanceCount, 3315 uint32_t firstInstance, 3316 VkBuffer counterBuffer, 3317 VkDeviceSize counterBufferOffset, 3318 uint32_t counterOffset, 3319 uint32_t vertexStride ) const VULKAN_HPP_NOEXCEPT 3320 { 3321 return ::vkCmdDrawIndirectByteCountEXT( 3322 commandBuffer, instanceCount, firstInstance, counterBuffer, counterBufferOffset, counterOffset, vertexStride ); 3323 } 3324 3325 //=== VK_NVX_binary_import === 3326 vkCreateCuModuleNVX(VkDevice device,const VkCuModuleCreateInfoNVX * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkCuModuleNVX * pModule) const3327 VkResult vkCreateCuModuleNVX( VkDevice device, 3328 const VkCuModuleCreateInfoNVX * pCreateInfo, 3329 const VkAllocationCallbacks * pAllocator, 3330 VkCuModuleNVX * pModule ) const VULKAN_HPP_NOEXCEPT 3331 { 3332 return ::vkCreateCuModuleNVX( device, pCreateInfo, pAllocator, pModule ); 3333 } 3334 vkCreateCuFunctionNVX(VkDevice device,const VkCuFunctionCreateInfoNVX * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkCuFunctionNVX * pFunction) const3335 VkResult vkCreateCuFunctionNVX( VkDevice device, 3336 const VkCuFunctionCreateInfoNVX * pCreateInfo, 3337 const VkAllocationCallbacks * pAllocator, 3338 VkCuFunctionNVX * pFunction ) const VULKAN_HPP_NOEXCEPT 3339 { 3340 return ::vkCreateCuFunctionNVX( device, pCreateInfo, pAllocator, pFunction ); 3341 } 3342 vkDestroyCuModuleNVX(VkDevice device,VkCuModuleNVX module,const VkAllocationCallbacks * pAllocator) const3343 void vkDestroyCuModuleNVX( VkDevice device, 3344 VkCuModuleNVX module, 3345 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 3346 { 3347 return ::vkDestroyCuModuleNVX( device, module, pAllocator ); 3348 } 3349 vkDestroyCuFunctionNVX(VkDevice device,VkCuFunctionNVX function,const VkAllocationCallbacks * pAllocator) const3350 void vkDestroyCuFunctionNVX( VkDevice device, 3351 VkCuFunctionNVX function, 3352 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 3353 { 3354 return ::vkDestroyCuFunctionNVX( device, function, pAllocator ); 3355 } 3356 vkCmdCuLaunchKernelNVX(VkCommandBuffer commandBuffer,const VkCuLaunchInfoNVX * pLaunchInfo) const3357 void vkCmdCuLaunchKernelNVX( VkCommandBuffer commandBuffer, 3358 const VkCuLaunchInfoNVX * pLaunchInfo ) const VULKAN_HPP_NOEXCEPT 3359 { 3360 return ::vkCmdCuLaunchKernelNVX( commandBuffer, pLaunchInfo ); 3361 } 3362 3363 //=== VK_NVX_image_view_handle === 3364 vkGetImageViewHandleNVX(VkDevice device,const VkImageViewHandleInfoNVX * pInfo) const3365 uint32_t vkGetImageViewHandleNVX( VkDevice device, 3366 const VkImageViewHandleInfoNVX * pInfo ) const VULKAN_HPP_NOEXCEPT 3367 { 3368 return ::vkGetImageViewHandleNVX( device, pInfo ); 3369 } 3370 vkGetImageViewAddressNVX(VkDevice device,VkImageView imageView,VkImageViewAddressPropertiesNVX * pProperties) const3371 VkResult vkGetImageViewAddressNVX( VkDevice device, 3372 VkImageView imageView, 3373 VkImageViewAddressPropertiesNVX * pProperties ) const VULKAN_HPP_NOEXCEPT 3374 { 3375 return ::vkGetImageViewAddressNVX( device, imageView, pProperties ); 3376 } 3377 3378 //=== VK_AMD_draw_indirect_count === 3379 vkCmdDrawIndirectCountAMD(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const3380 void vkCmdDrawIndirectCountAMD( VkCommandBuffer commandBuffer, 3381 VkBuffer buffer, 3382 VkDeviceSize offset, 3383 VkBuffer countBuffer, 3384 VkDeviceSize countBufferOffset, 3385 uint32_t maxDrawCount, 3386 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 3387 { 3388 return ::vkCmdDrawIndirectCountAMD( 3389 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 3390 } 3391 vkCmdDrawIndexedIndirectCountAMD(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const3392 void vkCmdDrawIndexedIndirectCountAMD( VkCommandBuffer commandBuffer, 3393 VkBuffer buffer, 3394 VkDeviceSize offset, 3395 VkBuffer countBuffer, 3396 VkDeviceSize countBufferOffset, 3397 uint32_t maxDrawCount, 3398 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 3399 { 3400 return ::vkCmdDrawIndexedIndirectCountAMD( 3401 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 3402 } 3403 3404 //=== VK_AMD_shader_info === 3405 vkGetShaderInfoAMD(VkDevice device,VkPipeline pipeline,VkShaderStageFlagBits shaderStage,VkShaderInfoTypeAMD infoType,size_t * pInfoSize,void * pInfo) const3406 VkResult vkGetShaderInfoAMD( VkDevice device, 3407 VkPipeline pipeline, 3408 VkShaderStageFlagBits shaderStage, 3409 VkShaderInfoTypeAMD infoType, 3410 size_t * pInfoSize, 3411 void * pInfo ) const VULKAN_HPP_NOEXCEPT 3412 { 3413 return ::vkGetShaderInfoAMD( device, pipeline, shaderStage, infoType, pInfoSize, pInfo ); 3414 } 3415 3416 # if defined( VK_USE_PLATFORM_GGP ) 3417 //=== VK_GGP_stream_descriptor_surface === 3418 vkCreateStreamDescriptorSurfaceGGP(VkInstance instance,const VkStreamDescriptorSurfaceCreateInfoGGP * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3419 VkResult vkCreateStreamDescriptorSurfaceGGP( VkInstance instance, 3420 const VkStreamDescriptorSurfaceCreateInfoGGP * pCreateInfo, 3421 const VkAllocationCallbacks * pAllocator, 3422 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3423 { 3424 return ::vkCreateStreamDescriptorSurfaceGGP( instance, pCreateInfo, pAllocator, pSurface ); 3425 } 3426 # endif /*VK_USE_PLATFORM_GGP*/ 3427 3428 //=== VK_NV_external_memory_capabilities === 3429 vkGetPhysicalDeviceExternalImageFormatPropertiesNV(VkPhysicalDevice physicalDevice,VkFormat format,VkImageType type,VkImageTiling tiling,VkImageUsageFlags usage,VkImageCreateFlags flags,VkExternalMemoryHandleTypeFlagsNV externalHandleType,VkExternalImageFormatPropertiesNV * pExternalImageFormatProperties) const3430 VkResult vkGetPhysicalDeviceExternalImageFormatPropertiesNV( 3431 VkPhysicalDevice physicalDevice, 3432 VkFormat format, 3433 VkImageType type, 3434 VkImageTiling tiling, 3435 VkImageUsageFlags usage, 3436 VkImageCreateFlags flags, 3437 VkExternalMemoryHandleTypeFlagsNV externalHandleType, 3438 VkExternalImageFormatPropertiesNV * pExternalImageFormatProperties ) const VULKAN_HPP_NOEXCEPT 3439 { 3440 return ::vkGetPhysicalDeviceExternalImageFormatPropertiesNV( 3441 physicalDevice, format, type, tiling, usage, flags, externalHandleType, pExternalImageFormatProperties ); 3442 } 3443 3444 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 3445 //=== VK_NV_external_memory_win32 === 3446 vkGetMemoryWin32HandleNV(VkDevice device,VkDeviceMemory memory,VkExternalMemoryHandleTypeFlagsNV handleType,HANDLE * pHandle) const3447 VkResult vkGetMemoryWin32HandleNV( VkDevice device, 3448 VkDeviceMemory memory, 3449 VkExternalMemoryHandleTypeFlagsNV handleType, 3450 HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT 3451 { 3452 return ::vkGetMemoryWin32HandleNV( device, memory, handleType, pHandle ); 3453 } 3454 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3455 3456 //=== VK_KHR_get_physical_device_properties2 === 3457 vkGetPhysicalDeviceFeatures2KHR(VkPhysicalDevice physicalDevice,VkPhysicalDeviceFeatures2 * pFeatures) const3458 void vkGetPhysicalDeviceFeatures2KHR( VkPhysicalDevice physicalDevice, 3459 VkPhysicalDeviceFeatures2 * pFeatures ) const VULKAN_HPP_NOEXCEPT 3460 { 3461 return ::vkGetPhysicalDeviceFeatures2KHR( physicalDevice, pFeatures ); 3462 } 3463 vkGetPhysicalDeviceProperties2KHR(VkPhysicalDevice physicalDevice,VkPhysicalDeviceProperties2 * pProperties) const3464 void vkGetPhysicalDeviceProperties2KHR( VkPhysicalDevice physicalDevice, 3465 VkPhysicalDeviceProperties2 * pProperties ) const VULKAN_HPP_NOEXCEPT 3466 { 3467 return ::vkGetPhysicalDeviceProperties2KHR( physicalDevice, pProperties ); 3468 } 3469 vkGetPhysicalDeviceFormatProperties2KHR(VkPhysicalDevice physicalDevice,VkFormat format,VkFormatProperties2 * pFormatProperties) const3470 void vkGetPhysicalDeviceFormatProperties2KHR( VkPhysicalDevice physicalDevice, 3471 VkFormat format, 3472 VkFormatProperties2 * pFormatProperties ) const VULKAN_HPP_NOEXCEPT 3473 { 3474 return ::vkGetPhysicalDeviceFormatProperties2KHR( physicalDevice, format, pFormatProperties ); 3475 } 3476 vkGetPhysicalDeviceImageFormatProperties2KHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceImageFormatInfo2 * pImageFormatInfo,VkImageFormatProperties2 * pImageFormatProperties) const3477 VkResult vkGetPhysicalDeviceImageFormatProperties2KHR( VkPhysicalDevice physicalDevice, 3478 const VkPhysicalDeviceImageFormatInfo2 * pImageFormatInfo, 3479 VkImageFormatProperties2 * pImageFormatProperties ) const 3480 VULKAN_HPP_NOEXCEPT 3481 { 3482 return ::vkGetPhysicalDeviceImageFormatProperties2KHR( physicalDevice, pImageFormatInfo, pImageFormatProperties ); 3483 } 3484 vkGetPhysicalDeviceQueueFamilyProperties2KHR(VkPhysicalDevice physicalDevice,uint32_t * pQueueFamilyPropertyCount,VkQueueFamilyProperties2 * pQueueFamilyProperties) const3485 void vkGetPhysicalDeviceQueueFamilyProperties2KHR( VkPhysicalDevice physicalDevice, 3486 uint32_t * pQueueFamilyPropertyCount, 3487 VkQueueFamilyProperties2 * pQueueFamilyProperties ) const 3488 VULKAN_HPP_NOEXCEPT 3489 { 3490 return ::vkGetPhysicalDeviceQueueFamilyProperties2KHR( 3491 physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties ); 3492 } 3493 vkGetPhysicalDeviceMemoryProperties2KHR(VkPhysicalDevice physicalDevice,VkPhysicalDeviceMemoryProperties2 * pMemoryProperties) const3494 void vkGetPhysicalDeviceMemoryProperties2KHR( 3495 VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2 * pMemoryProperties ) const VULKAN_HPP_NOEXCEPT 3496 { 3497 return ::vkGetPhysicalDeviceMemoryProperties2KHR( physicalDevice, pMemoryProperties ); 3498 } 3499 vkGetPhysicalDeviceSparseImageFormatProperties2KHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceSparseImageFormatInfo2 * pFormatInfo,uint32_t * pPropertyCount,VkSparseImageFormatProperties2 * pProperties) const3500 void vkGetPhysicalDeviceSparseImageFormatProperties2KHR( VkPhysicalDevice physicalDevice, 3501 const VkPhysicalDeviceSparseImageFormatInfo2 * pFormatInfo, 3502 uint32_t * pPropertyCount, 3503 VkSparseImageFormatProperties2 * pProperties ) const 3504 VULKAN_HPP_NOEXCEPT 3505 { 3506 return ::vkGetPhysicalDeviceSparseImageFormatProperties2KHR( 3507 physicalDevice, pFormatInfo, pPropertyCount, pProperties ); 3508 } 3509 3510 //=== VK_KHR_device_group === 3511 3512 void vkGetDeviceGroupPeerMemoryFeaturesKHR(VkDevice device,uint32_t heapIndex,uint32_t localDeviceIndex,uint32_t remoteDeviceIndex,VkPeerMemoryFeatureFlags * pPeerMemoryFeatures) const3513 vkGetDeviceGroupPeerMemoryFeaturesKHR( VkDevice device, 3514 uint32_t heapIndex, 3515 uint32_t localDeviceIndex, 3516 uint32_t remoteDeviceIndex, 3517 VkPeerMemoryFeatureFlags * pPeerMemoryFeatures ) const VULKAN_HPP_NOEXCEPT 3518 { 3519 return ::vkGetDeviceGroupPeerMemoryFeaturesKHR( 3520 device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures ); 3521 } 3522 vkCmdSetDeviceMaskKHR(VkCommandBuffer commandBuffer,uint32_t deviceMask) const3523 void vkCmdSetDeviceMaskKHR( VkCommandBuffer commandBuffer, uint32_t deviceMask ) const VULKAN_HPP_NOEXCEPT 3524 { 3525 return ::vkCmdSetDeviceMaskKHR( commandBuffer, deviceMask ); 3526 } 3527 vkCmdDispatchBaseKHR(VkCommandBuffer commandBuffer,uint32_t baseGroupX,uint32_t baseGroupY,uint32_t baseGroupZ,uint32_t groupCountX,uint32_t groupCountY,uint32_t groupCountZ) const3528 void vkCmdDispatchBaseKHR( VkCommandBuffer commandBuffer, 3529 uint32_t baseGroupX, 3530 uint32_t baseGroupY, 3531 uint32_t baseGroupZ, 3532 uint32_t groupCountX, 3533 uint32_t groupCountY, 3534 uint32_t groupCountZ ) const VULKAN_HPP_NOEXCEPT 3535 { 3536 return ::vkCmdDispatchBaseKHR( 3537 commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ ); 3538 } 3539 3540 # if defined( VK_USE_PLATFORM_VI_NN ) 3541 //=== VK_NN_vi_surface === 3542 vkCreateViSurfaceNN(VkInstance instance,const VkViSurfaceCreateInfoNN * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const3543 VkResult vkCreateViSurfaceNN( VkInstance instance, 3544 const VkViSurfaceCreateInfoNN * pCreateInfo, 3545 const VkAllocationCallbacks * pAllocator, 3546 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 3547 { 3548 return ::vkCreateViSurfaceNN( instance, pCreateInfo, pAllocator, pSurface ); 3549 } 3550 # endif /*VK_USE_PLATFORM_VI_NN*/ 3551 3552 //=== VK_KHR_maintenance1 === 3553 vkTrimCommandPoolKHR(VkDevice device,VkCommandPool commandPool,VkCommandPoolTrimFlags flags) const3554 void vkTrimCommandPoolKHR( VkDevice device, 3555 VkCommandPool commandPool, 3556 VkCommandPoolTrimFlags flags ) const VULKAN_HPP_NOEXCEPT 3557 { 3558 return ::vkTrimCommandPoolKHR( device, commandPool, flags ); 3559 } 3560 3561 //=== VK_KHR_device_group_creation === 3562 vkEnumeratePhysicalDeviceGroupsKHR(VkInstance instance,uint32_t * pPhysicalDeviceGroupCount,VkPhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties) const3563 VkResult vkEnumeratePhysicalDeviceGroupsKHR( 3564 VkInstance instance, 3565 uint32_t * pPhysicalDeviceGroupCount, 3566 VkPhysicalDeviceGroupProperties * pPhysicalDeviceGroupProperties ) const VULKAN_HPP_NOEXCEPT 3567 { 3568 return ::vkEnumeratePhysicalDeviceGroupsKHR( 3569 instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties ); 3570 } 3571 3572 //=== VK_KHR_external_memory_capabilities === 3573 vkGetPhysicalDeviceExternalBufferPropertiesKHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceExternalBufferInfo * pExternalBufferInfo,VkExternalBufferProperties * pExternalBufferProperties) const3574 void vkGetPhysicalDeviceExternalBufferPropertiesKHR( VkPhysicalDevice physicalDevice, 3575 const VkPhysicalDeviceExternalBufferInfo * pExternalBufferInfo, 3576 VkExternalBufferProperties * pExternalBufferProperties ) const 3577 VULKAN_HPP_NOEXCEPT 3578 { 3579 return ::vkGetPhysicalDeviceExternalBufferPropertiesKHR( 3580 physicalDevice, pExternalBufferInfo, pExternalBufferProperties ); 3581 } 3582 3583 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 3584 //=== VK_KHR_external_memory_win32 === 3585 vkGetMemoryWin32HandleKHR(VkDevice device,const VkMemoryGetWin32HandleInfoKHR * pGetWin32HandleInfo,HANDLE * pHandle) const3586 VkResult vkGetMemoryWin32HandleKHR( VkDevice device, 3587 const VkMemoryGetWin32HandleInfoKHR * pGetWin32HandleInfo, 3588 HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT 3589 { 3590 return ::vkGetMemoryWin32HandleKHR( device, pGetWin32HandleInfo, pHandle ); 3591 } 3592 vkGetMemoryWin32HandlePropertiesKHR(VkDevice device,VkExternalMemoryHandleTypeFlagBits handleType,HANDLE handle,VkMemoryWin32HandlePropertiesKHR * pMemoryWin32HandleProperties) const3593 VkResult vkGetMemoryWin32HandlePropertiesKHR( 3594 VkDevice device, 3595 VkExternalMemoryHandleTypeFlagBits handleType, 3596 HANDLE handle, 3597 VkMemoryWin32HandlePropertiesKHR * pMemoryWin32HandleProperties ) const VULKAN_HPP_NOEXCEPT 3598 { 3599 return ::vkGetMemoryWin32HandlePropertiesKHR( device, handleType, handle, pMemoryWin32HandleProperties ); 3600 } 3601 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3602 3603 //=== VK_KHR_external_memory_fd === 3604 3605 VkResult vkGetMemoryFdKHR(VkDevice device,const VkMemoryGetFdInfoKHR * pGetFdInfo,int * pFd) const3606 vkGetMemoryFdKHR( VkDevice device, const VkMemoryGetFdInfoKHR * pGetFdInfo, int * pFd ) const VULKAN_HPP_NOEXCEPT 3607 { 3608 return ::vkGetMemoryFdKHR( device, pGetFdInfo, pFd ); 3609 } 3610 vkGetMemoryFdPropertiesKHR(VkDevice device,VkExternalMemoryHandleTypeFlagBits handleType,int fd,VkMemoryFdPropertiesKHR * pMemoryFdProperties) const3611 VkResult vkGetMemoryFdPropertiesKHR( VkDevice device, 3612 VkExternalMemoryHandleTypeFlagBits handleType, 3613 int fd, 3614 VkMemoryFdPropertiesKHR * pMemoryFdProperties ) const VULKAN_HPP_NOEXCEPT 3615 { 3616 return ::vkGetMemoryFdPropertiesKHR( device, handleType, fd, pMemoryFdProperties ); 3617 } 3618 3619 //=== VK_KHR_external_semaphore_capabilities === 3620 vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo,VkExternalSemaphoreProperties * pExternalSemaphoreProperties) const3621 void vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( 3622 VkPhysicalDevice physicalDevice, 3623 const VkPhysicalDeviceExternalSemaphoreInfo * pExternalSemaphoreInfo, 3624 VkExternalSemaphoreProperties * pExternalSemaphoreProperties ) const VULKAN_HPP_NOEXCEPT 3625 { 3626 return ::vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( 3627 physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties ); 3628 } 3629 3630 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 3631 //=== VK_KHR_external_semaphore_win32 === 3632 vkImportSemaphoreWin32HandleKHR(VkDevice device,const VkImportSemaphoreWin32HandleInfoKHR * pImportSemaphoreWin32HandleInfo) const3633 VkResult vkImportSemaphoreWin32HandleKHR( 3634 VkDevice device, 3635 const VkImportSemaphoreWin32HandleInfoKHR * pImportSemaphoreWin32HandleInfo ) const VULKAN_HPP_NOEXCEPT 3636 { 3637 return ::vkImportSemaphoreWin32HandleKHR( device, pImportSemaphoreWin32HandleInfo ); 3638 } 3639 vkGetSemaphoreWin32HandleKHR(VkDevice device,const VkSemaphoreGetWin32HandleInfoKHR * pGetWin32HandleInfo,HANDLE * pHandle) const3640 VkResult vkGetSemaphoreWin32HandleKHR( VkDevice device, 3641 const VkSemaphoreGetWin32HandleInfoKHR * pGetWin32HandleInfo, 3642 HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT 3643 { 3644 return ::vkGetSemaphoreWin32HandleKHR( device, pGetWin32HandleInfo, pHandle ); 3645 } 3646 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3647 3648 //=== VK_KHR_external_semaphore_fd === 3649 3650 VkResult vkImportSemaphoreFdKHR(VkDevice device,const VkImportSemaphoreFdInfoKHR * pImportSemaphoreFdInfo) const3651 vkImportSemaphoreFdKHR( VkDevice device, 3652 const VkImportSemaphoreFdInfoKHR * pImportSemaphoreFdInfo ) const VULKAN_HPP_NOEXCEPT 3653 { 3654 return ::vkImportSemaphoreFdKHR( device, pImportSemaphoreFdInfo ); 3655 } 3656 vkGetSemaphoreFdKHR(VkDevice device,const VkSemaphoreGetFdInfoKHR * pGetFdInfo,int * pFd) const3657 VkResult vkGetSemaphoreFdKHR( VkDevice device, 3658 const VkSemaphoreGetFdInfoKHR * pGetFdInfo, 3659 int * pFd ) const VULKAN_HPP_NOEXCEPT 3660 { 3661 return ::vkGetSemaphoreFdKHR( device, pGetFdInfo, pFd ); 3662 } 3663 3664 //=== VK_KHR_push_descriptor === 3665 vkCmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer,VkPipelineBindPoint pipelineBindPoint,VkPipelineLayout layout,uint32_t set,uint32_t descriptorWriteCount,const VkWriteDescriptorSet * pDescriptorWrites) const3666 void vkCmdPushDescriptorSetKHR( VkCommandBuffer commandBuffer, 3667 VkPipelineBindPoint pipelineBindPoint, 3668 VkPipelineLayout layout, 3669 uint32_t set, 3670 uint32_t descriptorWriteCount, 3671 const VkWriteDescriptorSet * pDescriptorWrites ) const VULKAN_HPP_NOEXCEPT 3672 { 3673 return ::vkCmdPushDescriptorSetKHR( 3674 commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites ); 3675 } 3676 vkCmdPushDescriptorSetWithTemplateKHR(VkCommandBuffer commandBuffer,VkDescriptorUpdateTemplate descriptorUpdateTemplate,VkPipelineLayout layout,uint32_t set,const void * pData) const3677 void vkCmdPushDescriptorSetWithTemplateKHR( VkCommandBuffer commandBuffer, 3678 VkDescriptorUpdateTemplate descriptorUpdateTemplate, 3679 VkPipelineLayout layout, 3680 uint32_t set, 3681 const void * pData ) const VULKAN_HPP_NOEXCEPT 3682 { 3683 return ::vkCmdPushDescriptorSetWithTemplateKHR( commandBuffer, descriptorUpdateTemplate, layout, set, pData ); 3684 } 3685 3686 //=== VK_EXT_conditional_rendering === 3687 vkCmdBeginConditionalRenderingEXT(VkCommandBuffer commandBuffer,const VkConditionalRenderingBeginInfoEXT * pConditionalRenderingBegin) const3688 void vkCmdBeginConditionalRenderingEXT( 3689 VkCommandBuffer commandBuffer, 3690 const VkConditionalRenderingBeginInfoEXT * pConditionalRenderingBegin ) const VULKAN_HPP_NOEXCEPT 3691 { 3692 return ::vkCmdBeginConditionalRenderingEXT( commandBuffer, pConditionalRenderingBegin ); 3693 } 3694 vkCmdEndConditionalRenderingEXT(VkCommandBuffer commandBuffer) const3695 void vkCmdEndConditionalRenderingEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT 3696 { 3697 return ::vkCmdEndConditionalRenderingEXT( commandBuffer ); 3698 } 3699 3700 //=== VK_KHR_descriptor_update_template === 3701 vkCreateDescriptorUpdateTemplateKHR(VkDevice device,const VkDescriptorUpdateTemplateCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDescriptorUpdateTemplate * pDescriptorUpdateTemplate) const3702 VkResult vkCreateDescriptorUpdateTemplateKHR( VkDevice device, 3703 const VkDescriptorUpdateTemplateCreateInfo * pCreateInfo, 3704 const VkAllocationCallbacks * pAllocator, 3705 VkDescriptorUpdateTemplate * pDescriptorUpdateTemplate ) const 3706 VULKAN_HPP_NOEXCEPT 3707 { 3708 return ::vkCreateDescriptorUpdateTemplateKHR( device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate ); 3709 } 3710 vkDestroyDescriptorUpdateTemplateKHR(VkDevice device,VkDescriptorUpdateTemplate descriptorUpdateTemplate,const VkAllocationCallbacks * pAllocator) const3711 void vkDestroyDescriptorUpdateTemplateKHR( VkDevice device, 3712 VkDescriptorUpdateTemplate descriptorUpdateTemplate, 3713 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 3714 { 3715 return ::vkDestroyDescriptorUpdateTemplateKHR( device, descriptorUpdateTemplate, pAllocator ); 3716 } 3717 vkUpdateDescriptorSetWithTemplateKHR(VkDevice device,VkDescriptorSet descriptorSet,VkDescriptorUpdateTemplate descriptorUpdateTemplate,const void * pData) const3718 void vkUpdateDescriptorSetWithTemplateKHR( VkDevice device, 3719 VkDescriptorSet descriptorSet, 3720 VkDescriptorUpdateTemplate descriptorUpdateTemplate, 3721 const void * pData ) const VULKAN_HPP_NOEXCEPT 3722 { 3723 return ::vkUpdateDescriptorSetWithTemplateKHR( device, descriptorSet, descriptorUpdateTemplate, pData ); 3724 } 3725 3726 //=== VK_NV_clip_space_w_scaling === 3727 vkCmdSetViewportWScalingNV(VkCommandBuffer commandBuffer,uint32_t firstViewport,uint32_t viewportCount,const VkViewportWScalingNV * pViewportWScalings) const3728 void vkCmdSetViewportWScalingNV( VkCommandBuffer commandBuffer, 3729 uint32_t firstViewport, 3730 uint32_t viewportCount, 3731 const VkViewportWScalingNV * pViewportWScalings ) const VULKAN_HPP_NOEXCEPT 3732 { 3733 return ::vkCmdSetViewportWScalingNV( commandBuffer, firstViewport, viewportCount, pViewportWScalings ); 3734 } 3735 3736 //=== VK_EXT_direct_mode_display === 3737 vkReleaseDisplayEXT(VkPhysicalDevice physicalDevice,VkDisplayKHR display) const3738 VkResult vkReleaseDisplayEXT( VkPhysicalDevice physicalDevice, VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT 3739 { 3740 return ::vkReleaseDisplayEXT( physicalDevice, display ); 3741 } 3742 3743 # if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 3744 //=== VK_EXT_acquire_xlib_display === 3745 vkAcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice,Display * dpy,VkDisplayKHR display) const3746 VkResult vkAcquireXlibDisplayEXT( VkPhysicalDevice physicalDevice, 3747 Display * dpy, 3748 VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT 3749 { 3750 return ::vkAcquireXlibDisplayEXT( physicalDevice, dpy, display ); 3751 } 3752 vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice,Display * dpy,RROutput rrOutput,VkDisplayKHR * pDisplay) const3753 VkResult vkGetRandROutputDisplayEXT( VkPhysicalDevice physicalDevice, 3754 Display * dpy, 3755 RROutput rrOutput, 3756 VkDisplayKHR * pDisplay ) const VULKAN_HPP_NOEXCEPT 3757 { 3758 return ::vkGetRandROutputDisplayEXT( physicalDevice, dpy, rrOutput, pDisplay ); 3759 } 3760 # endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 3761 3762 //=== VK_EXT_display_surface_counter === 3763 vkGetPhysicalDeviceSurfaceCapabilities2EXT(VkPhysicalDevice physicalDevice,VkSurfaceKHR surface,VkSurfaceCapabilities2EXT * pSurfaceCapabilities) const3764 VkResult vkGetPhysicalDeviceSurfaceCapabilities2EXT( VkPhysicalDevice physicalDevice, 3765 VkSurfaceKHR surface, 3766 VkSurfaceCapabilities2EXT * pSurfaceCapabilities ) const 3767 VULKAN_HPP_NOEXCEPT 3768 { 3769 return ::vkGetPhysicalDeviceSurfaceCapabilities2EXT( physicalDevice, surface, pSurfaceCapabilities ); 3770 } 3771 3772 //=== VK_EXT_display_control === 3773 vkDisplayPowerControlEXT(VkDevice device,VkDisplayKHR display,const VkDisplayPowerInfoEXT * pDisplayPowerInfo) const3774 VkResult vkDisplayPowerControlEXT( VkDevice device, 3775 VkDisplayKHR display, 3776 const VkDisplayPowerInfoEXT * pDisplayPowerInfo ) const VULKAN_HPP_NOEXCEPT 3777 { 3778 return ::vkDisplayPowerControlEXT( device, display, pDisplayPowerInfo ); 3779 } 3780 vkRegisterDeviceEventEXT(VkDevice device,const VkDeviceEventInfoEXT * pDeviceEventInfo,const VkAllocationCallbacks * pAllocator,VkFence * pFence) const3781 VkResult vkRegisterDeviceEventEXT( VkDevice device, 3782 const VkDeviceEventInfoEXT * pDeviceEventInfo, 3783 const VkAllocationCallbacks * pAllocator, 3784 VkFence * pFence ) const VULKAN_HPP_NOEXCEPT 3785 { 3786 return ::vkRegisterDeviceEventEXT( device, pDeviceEventInfo, pAllocator, pFence ); 3787 } 3788 vkRegisterDisplayEventEXT(VkDevice device,VkDisplayKHR display,const VkDisplayEventInfoEXT * pDisplayEventInfo,const VkAllocationCallbacks * pAllocator,VkFence * pFence) const3789 VkResult vkRegisterDisplayEventEXT( VkDevice device, 3790 VkDisplayKHR display, 3791 const VkDisplayEventInfoEXT * pDisplayEventInfo, 3792 const VkAllocationCallbacks * pAllocator, 3793 VkFence * pFence ) const VULKAN_HPP_NOEXCEPT 3794 { 3795 return ::vkRegisterDisplayEventEXT( device, display, pDisplayEventInfo, pAllocator, pFence ); 3796 } 3797 vkGetSwapchainCounterEXT(VkDevice device,VkSwapchainKHR swapchain,VkSurfaceCounterFlagBitsEXT counter,uint64_t * pCounterValue) const3798 VkResult vkGetSwapchainCounterEXT( VkDevice device, 3799 VkSwapchainKHR swapchain, 3800 VkSurfaceCounterFlagBitsEXT counter, 3801 uint64_t * pCounterValue ) const VULKAN_HPP_NOEXCEPT 3802 { 3803 return ::vkGetSwapchainCounterEXT( device, swapchain, counter, pCounterValue ); 3804 } 3805 3806 //=== VK_GOOGLE_display_timing === 3807 vkGetRefreshCycleDurationGOOGLE(VkDevice device,VkSwapchainKHR swapchain,VkRefreshCycleDurationGOOGLE * pDisplayTimingProperties) const3808 VkResult vkGetRefreshCycleDurationGOOGLE( VkDevice device, 3809 VkSwapchainKHR swapchain, 3810 VkRefreshCycleDurationGOOGLE * pDisplayTimingProperties ) const 3811 VULKAN_HPP_NOEXCEPT 3812 { 3813 return ::vkGetRefreshCycleDurationGOOGLE( device, swapchain, pDisplayTimingProperties ); 3814 } 3815 vkGetPastPresentationTimingGOOGLE(VkDevice device,VkSwapchainKHR swapchain,uint32_t * pPresentationTimingCount,VkPastPresentationTimingGOOGLE * pPresentationTimings) const3816 VkResult vkGetPastPresentationTimingGOOGLE( VkDevice device, 3817 VkSwapchainKHR swapchain, 3818 uint32_t * pPresentationTimingCount, 3819 VkPastPresentationTimingGOOGLE * pPresentationTimings ) const 3820 VULKAN_HPP_NOEXCEPT 3821 { 3822 return ::vkGetPastPresentationTimingGOOGLE( device, swapchain, pPresentationTimingCount, pPresentationTimings ); 3823 } 3824 3825 //=== VK_EXT_discard_rectangles === 3826 vkCmdSetDiscardRectangleEXT(VkCommandBuffer commandBuffer,uint32_t firstDiscardRectangle,uint32_t discardRectangleCount,const VkRect2D * pDiscardRectangles) const3827 void vkCmdSetDiscardRectangleEXT( VkCommandBuffer commandBuffer, 3828 uint32_t firstDiscardRectangle, 3829 uint32_t discardRectangleCount, 3830 const VkRect2D * pDiscardRectangles ) const VULKAN_HPP_NOEXCEPT 3831 { 3832 return ::vkCmdSetDiscardRectangleEXT( 3833 commandBuffer, firstDiscardRectangle, discardRectangleCount, pDiscardRectangles ); 3834 } 3835 3836 //=== VK_EXT_hdr_metadata === 3837 vkSetHdrMetadataEXT(VkDevice device,uint32_t swapchainCount,const VkSwapchainKHR * pSwapchains,const VkHdrMetadataEXT * pMetadata) const3838 void vkSetHdrMetadataEXT( VkDevice device, 3839 uint32_t swapchainCount, 3840 const VkSwapchainKHR * pSwapchains, 3841 const VkHdrMetadataEXT * pMetadata ) const VULKAN_HPP_NOEXCEPT 3842 { 3843 return ::vkSetHdrMetadataEXT( device, swapchainCount, pSwapchains, pMetadata ); 3844 } 3845 3846 //=== VK_KHR_create_renderpass2 === 3847 vkCreateRenderPass2KHR(VkDevice device,const VkRenderPassCreateInfo2 * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkRenderPass * pRenderPass) const3848 VkResult vkCreateRenderPass2KHR( VkDevice device, 3849 const VkRenderPassCreateInfo2 * pCreateInfo, 3850 const VkAllocationCallbacks * pAllocator, 3851 VkRenderPass * pRenderPass ) const VULKAN_HPP_NOEXCEPT 3852 { 3853 return ::vkCreateRenderPass2KHR( device, pCreateInfo, pAllocator, pRenderPass ); 3854 } 3855 vkCmdBeginRenderPass2KHR(VkCommandBuffer commandBuffer,const VkRenderPassBeginInfo * pRenderPassBegin,const VkSubpassBeginInfo * pSubpassBeginInfo) const3856 void vkCmdBeginRenderPass2KHR( VkCommandBuffer commandBuffer, 3857 const VkRenderPassBeginInfo * pRenderPassBegin, 3858 const VkSubpassBeginInfo * pSubpassBeginInfo ) const VULKAN_HPP_NOEXCEPT 3859 { 3860 return ::vkCmdBeginRenderPass2KHR( commandBuffer, pRenderPassBegin, pSubpassBeginInfo ); 3861 } 3862 vkCmdNextSubpass2KHR(VkCommandBuffer commandBuffer,const VkSubpassBeginInfo * pSubpassBeginInfo,const VkSubpassEndInfo * pSubpassEndInfo) const3863 void vkCmdNextSubpass2KHR( VkCommandBuffer commandBuffer, 3864 const VkSubpassBeginInfo * pSubpassBeginInfo, 3865 const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT 3866 { 3867 return ::vkCmdNextSubpass2KHR( commandBuffer, pSubpassBeginInfo, pSubpassEndInfo ); 3868 } 3869 vkCmdEndRenderPass2KHR(VkCommandBuffer commandBuffer,const VkSubpassEndInfo * pSubpassEndInfo) const3870 void vkCmdEndRenderPass2KHR( VkCommandBuffer commandBuffer, 3871 const VkSubpassEndInfo * pSubpassEndInfo ) const VULKAN_HPP_NOEXCEPT 3872 { 3873 return ::vkCmdEndRenderPass2KHR( commandBuffer, pSubpassEndInfo ); 3874 } 3875 3876 //=== VK_KHR_shared_presentable_image === 3877 vkGetSwapchainStatusKHR(VkDevice device,VkSwapchainKHR swapchain) const3878 VkResult vkGetSwapchainStatusKHR( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT 3879 { 3880 return ::vkGetSwapchainStatusKHR( device, swapchain ); 3881 } 3882 3883 //=== VK_KHR_external_fence_capabilities === 3884 vkGetPhysicalDeviceExternalFencePropertiesKHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceExternalFenceInfo * pExternalFenceInfo,VkExternalFenceProperties * pExternalFenceProperties) const3885 void vkGetPhysicalDeviceExternalFencePropertiesKHR( VkPhysicalDevice physicalDevice, 3886 const VkPhysicalDeviceExternalFenceInfo * pExternalFenceInfo, 3887 VkExternalFenceProperties * pExternalFenceProperties ) const 3888 VULKAN_HPP_NOEXCEPT 3889 { 3890 return ::vkGetPhysicalDeviceExternalFencePropertiesKHR( 3891 physicalDevice, pExternalFenceInfo, pExternalFenceProperties ); 3892 } 3893 3894 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 3895 //=== VK_KHR_external_fence_win32 === 3896 vkImportFenceWin32HandleKHR(VkDevice device,const VkImportFenceWin32HandleInfoKHR * pImportFenceWin32HandleInfo) const3897 VkResult vkImportFenceWin32HandleKHR( 3898 VkDevice device, const VkImportFenceWin32HandleInfoKHR * pImportFenceWin32HandleInfo ) const VULKAN_HPP_NOEXCEPT 3899 { 3900 return ::vkImportFenceWin32HandleKHR( device, pImportFenceWin32HandleInfo ); 3901 } 3902 vkGetFenceWin32HandleKHR(VkDevice device,const VkFenceGetWin32HandleInfoKHR * pGetWin32HandleInfo,HANDLE * pHandle) const3903 VkResult vkGetFenceWin32HandleKHR( VkDevice device, 3904 const VkFenceGetWin32HandleInfoKHR * pGetWin32HandleInfo, 3905 HANDLE * pHandle ) const VULKAN_HPP_NOEXCEPT 3906 { 3907 return ::vkGetFenceWin32HandleKHR( device, pGetWin32HandleInfo, pHandle ); 3908 } 3909 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3910 3911 //=== VK_KHR_external_fence_fd === 3912 vkImportFenceFdKHR(VkDevice device,const VkImportFenceFdInfoKHR * pImportFenceFdInfo) const3913 VkResult vkImportFenceFdKHR( VkDevice device, 3914 const VkImportFenceFdInfoKHR * pImportFenceFdInfo ) const VULKAN_HPP_NOEXCEPT 3915 { 3916 return ::vkImportFenceFdKHR( device, pImportFenceFdInfo ); 3917 } 3918 3919 VkResult vkGetFenceFdKHR(VkDevice device,const VkFenceGetFdInfoKHR * pGetFdInfo,int * pFd) const3920 vkGetFenceFdKHR( VkDevice device, const VkFenceGetFdInfoKHR * pGetFdInfo, int * pFd ) const VULKAN_HPP_NOEXCEPT 3921 { 3922 return ::vkGetFenceFdKHR( device, pGetFdInfo, pFd ); 3923 } 3924 3925 //=== VK_KHR_performance_query === 3926 vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,uint32_t * pCounterCount,VkPerformanceCounterKHR * pCounters,VkPerformanceCounterDescriptionKHR * pCounterDescriptions) const3927 VkResult vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( 3928 VkPhysicalDevice physicalDevice, 3929 uint32_t queueFamilyIndex, 3930 uint32_t * pCounterCount, 3931 VkPerformanceCounterKHR * pCounters, 3932 VkPerformanceCounterDescriptionKHR * pCounterDescriptions ) const VULKAN_HPP_NOEXCEPT 3933 { 3934 return ::vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( 3935 physicalDevice, queueFamilyIndex, pCounterCount, pCounters, pCounterDescriptions ); 3936 } 3937 vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(VkPhysicalDevice physicalDevice,const VkQueryPoolPerformanceCreateInfoKHR * pPerformanceQueryCreateInfo,uint32_t * pNumPasses) const3938 void vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( 3939 VkPhysicalDevice physicalDevice, 3940 const VkQueryPoolPerformanceCreateInfoKHR * pPerformanceQueryCreateInfo, 3941 uint32_t * pNumPasses ) const VULKAN_HPP_NOEXCEPT 3942 { 3943 return ::vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( 3944 physicalDevice, pPerformanceQueryCreateInfo, pNumPasses ); 3945 } 3946 vkAcquireProfilingLockKHR(VkDevice device,const VkAcquireProfilingLockInfoKHR * pInfo) const3947 VkResult vkAcquireProfilingLockKHR( VkDevice device, 3948 const VkAcquireProfilingLockInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT 3949 { 3950 return ::vkAcquireProfilingLockKHR( device, pInfo ); 3951 } 3952 vkReleaseProfilingLockKHR(VkDevice device) const3953 void vkReleaseProfilingLockKHR( VkDevice device ) const VULKAN_HPP_NOEXCEPT 3954 { 3955 return ::vkReleaseProfilingLockKHR( device ); 3956 } 3957 3958 //=== VK_KHR_get_surface_capabilities2 === 3959 vkGetPhysicalDeviceSurfaceCapabilities2KHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,VkSurfaceCapabilities2KHR * pSurfaceCapabilities) const3960 VkResult vkGetPhysicalDeviceSurfaceCapabilities2KHR( VkPhysicalDevice physicalDevice, 3961 const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo, 3962 VkSurfaceCapabilities2KHR * pSurfaceCapabilities ) const 3963 VULKAN_HPP_NOEXCEPT 3964 { 3965 return ::vkGetPhysicalDeviceSurfaceCapabilities2KHR( physicalDevice, pSurfaceInfo, pSurfaceCapabilities ); 3966 } 3967 vkGetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,uint32_t * pSurfaceFormatCount,VkSurfaceFormat2KHR * pSurfaceFormats) const3968 VkResult vkGetPhysicalDeviceSurfaceFormats2KHR( VkPhysicalDevice physicalDevice, 3969 const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo, 3970 uint32_t * pSurfaceFormatCount, 3971 VkSurfaceFormat2KHR * pSurfaceFormats ) const VULKAN_HPP_NOEXCEPT 3972 { 3973 return ::vkGetPhysicalDeviceSurfaceFormats2KHR( 3974 physicalDevice, pSurfaceInfo, pSurfaceFormatCount, pSurfaceFormats ); 3975 } 3976 3977 //=== VK_KHR_get_display_properties2 === 3978 vkGetPhysicalDeviceDisplayProperties2KHR(VkPhysicalDevice physicalDevice,uint32_t * pPropertyCount,VkDisplayProperties2KHR * pProperties) const3979 VkResult vkGetPhysicalDeviceDisplayProperties2KHR( VkPhysicalDevice physicalDevice, 3980 uint32_t * pPropertyCount, 3981 VkDisplayProperties2KHR * pProperties ) const VULKAN_HPP_NOEXCEPT 3982 { 3983 return ::vkGetPhysicalDeviceDisplayProperties2KHR( physicalDevice, pPropertyCount, pProperties ); 3984 } 3985 vkGetPhysicalDeviceDisplayPlaneProperties2KHR(VkPhysicalDevice physicalDevice,uint32_t * pPropertyCount,VkDisplayPlaneProperties2KHR * pProperties) const3986 VkResult vkGetPhysicalDeviceDisplayPlaneProperties2KHR( VkPhysicalDevice physicalDevice, 3987 uint32_t * pPropertyCount, 3988 VkDisplayPlaneProperties2KHR * pProperties ) const 3989 VULKAN_HPP_NOEXCEPT 3990 { 3991 return ::vkGetPhysicalDeviceDisplayPlaneProperties2KHR( physicalDevice, pPropertyCount, pProperties ); 3992 } 3993 vkGetDisplayModeProperties2KHR(VkPhysicalDevice physicalDevice,VkDisplayKHR display,uint32_t * pPropertyCount,VkDisplayModeProperties2KHR * pProperties) const3994 VkResult vkGetDisplayModeProperties2KHR( VkPhysicalDevice physicalDevice, 3995 VkDisplayKHR display, 3996 uint32_t * pPropertyCount, 3997 VkDisplayModeProperties2KHR * pProperties ) const VULKAN_HPP_NOEXCEPT 3998 { 3999 return ::vkGetDisplayModeProperties2KHR( physicalDevice, display, pPropertyCount, pProperties ); 4000 } 4001 4002 VkResult vkGetDisplayPlaneCapabilities2KHR(VkPhysicalDevice physicalDevice,const VkDisplayPlaneInfo2KHR * pDisplayPlaneInfo,VkDisplayPlaneCapabilities2KHR * pCapabilities) const4003 vkGetDisplayPlaneCapabilities2KHR( VkPhysicalDevice physicalDevice, 4004 const VkDisplayPlaneInfo2KHR * pDisplayPlaneInfo, 4005 VkDisplayPlaneCapabilities2KHR * pCapabilities ) const VULKAN_HPP_NOEXCEPT 4006 { 4007 return ::vkGetDisplayPlaneCapabilities2KHR( physicalDevice, pDisplayPlaneInfo, pCapabilities ); 4008 } 4009 4010 # if defined( VK_USE_PLATFORM_IOS_MVK ) 4011 //=== VK_MVK_ios_surface === 4012 vkCreateIOSSurfaceMVK(VkInstance instance,const VkIOSSurfaceCreateInfoMVK * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const4013 VkResult vkCreateIOSSurfaceMVK( VkInstance instance, 4014 const VkIOSSurfaceCreateInfoMVK * pCreateInfo, 4015 const VkAllocationCallbacks * pAllocator, 4016 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 4017 { 4018 return ::vkCreateIOSSurfaceMVK( instance, pCreateInfo, pAllocator, pSurface ); 4019 } 4020 # endif /*VK_USE_PLATFORM_IOS_MVK*/ 4021 4022 # if defined( VK_USE_PLATFORM_MACOS_MVK ) 4023 //=== VK_MVK_macos_surface === 4024 vkCreateMacOSSurfaceMVK(VkInstance instance,const VkMacOSSurfaceCreateInfoMVK * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const4025 VkResult vkCreateMacOSSurfaceMVK( VkInstance instance, 4026 const VkMacOSSurfaceCreateInfoMVK * pCreateInfo, 4027 const VkAllocationCallbacks * pAllocator, 4028 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 4029 { 4030 return ::vkCreateMacOSSurfaceMVK( instance, pCreateInfo, pAllocator, pSurface ); 4031 } 4032 # endif /*VK_USE_PLATFORM_MACOS_MVK*/ 4033 4034 //=== VK_EXT_debug_utils === 4035 vkSetDebugUtilsObjectNameEXT(VkDevice device,const VkDebugUtilsObjectNameInfoEXT * pNameInfo) const4036 VkResult vkSetDebugUtilsObjectNameEXT( VkDevice device, 4037 const VkDebugUtilsObjectNameInfoEXT * pNameInfo ) const VULKAN_HPP_NOEXCEPT 4038 { 4039 return ::vkSetDebugUtilsObjectNameEXT( device, pNameInfo ); 4040 } 4041 vkSetDebugUtilsObjectTagEXT(VkDevice device,const VkDebugUtilsObjectTagInfoEXT * pTagInfo) const4042 VkResult vkSetDebugUtilsObjectTagEXT( VkDevice device, 4043 const VkDebugUtilsObjectTagInfoEXT * pTagInfo ) const VULKAN_HPP_NOEXCEPT 4044 { 4045 return ::vkSetDebugUtilsObjectTagEXT( device, pTagInfo ); 4046 } 4047 vkQueueBeginDebugUtilsLabelEXT(VkQueue queue,const VkDebugUtilsLabelEXT * pLabelInfo) const4048 void vkQueueBeginDebugUtilsLabelEXT( VkQueue queue, 4049 const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT 4050 { 4051 return ::vkQueueBeginDebugUtilsLabelEXT( queue, pLabelInfo ); 4052 } 4053 vkQueueEndDebugUtilsLabelEXT(VkQueue queue) const4054 void vkQueueEndDebugUtilsLabelEXT( VkQueue queue ) const VULKAN_HPP_NOEXCEPT 4055 { 4056 return ::vkQueueEndDebugUtilsLabelEXT( queue ); 4057 } 4058 vkQueueInsertDebugUtilsLabelEXT(VkQueue queue,const VkDebugUtilsLabelEXT * pLabelInfo) const4059 void vkQueueInsertDebugUtilsLabelEXT( VkQueue queue, 4060 const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT 4061 { 4062 return ::vkQueueInsertDebugUtilsLabelEXT( queue, pLabelInfo ); 4063 } 4064 vkCmdBeginDebugUtilsLabelEXT(VkCommandBuffer commandBuffer,const VkDebugUtilsLabelEXT * pLabelInfo) const4065 void vkCmdBeginDebugUtilsLabelEXT( VkCommandBuffer commandBuffer, 4066 const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT 4067 { 4068 return ::vkCmdBeginDebugUtilsLabelEXT( commandBuffer, pLabelInfo ); 4069 } 4070 vkCmdEndDebugUtilsLabelEXT(VkCommandBuffer commandBuffer) const4071 void vkCmdEndDebugUtilsLabelEXT( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT 4072 { 4073 return ::vkCmdEndDebugUtilsLabelEXT( commandBuffer ); 4074 } 4075 vkCmdInsertDebugUtilsLabelEXT(VkCommandBuffer commandBuffer,const VkDebugUtilsLabelEXT * pLabelInfo) const4076 void vkCmdInsertDebugUtilsLabelEXT( VkCommandBuffer commandBuffer, 4077 const VkDebugUtilsLabelEXT * pLabelInfo ) const VULKAN_HPP_NOEXCEPT 4078 { 4079 return ::vkCmdInsertDebugUtilsLabelEXT( commandBuffer, pLabelInfo ); 4080 } 4081 vkCreateDebugUtilsMessengerEXT(VkInstance instance,const VkDebugUtilsMessengerCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkDebugUtilsMessengerEXT * pMessenger) const4082 VkResult vkCreateDebugUtilsMessengerEXT( VkInstance instance, 4083 const VkDebugUtilsMessengerCreateInfoEXT * pCreateInfo, 4084 const VkAllocationCallbacks * pAllocator, 4085 VkDebugUtilsMessengerEXT * pMessenger ) const VULKAN_HPP_NOEXCEPT 4086 { 4087 return ::vkCreateDebugUtilsMessengerEXT( instance, pCreateInfo, pAllocator, pMessenger ); 4088 } 4089 vkDestroyDebugUtilsMessengerEXT(VkInstance instance,VkDebugUtilsMessengerEXT messenger,const VkAllocationCallbacks * pAllocator) const4090 void vkDestroyDebugUtilsMessengerEXT( VkInstance instance, 4091 VkDebugUtilsMessengerEXT messenger, 4092 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 4093 { 4094 return ::vkDestroyDebugUtilsMessengerEXT( instance, messenger, pAllocator ); 4095 } 4096 vkSubmitDebugUtilsMessageEXT(VkInstance instance,VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,VkDebugUtilsMessageTypeFlagsEXT messageTypes,const VkDebugUtilsMessengerCallbackDataEXT * pCallbackData) const4097 void vkSubmitDebugUtilsMessageEXT( VkInstance instance, 4098 VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, 4099 VkDebugUtilsMessageTypeFlagsEXT messageTypes, 4100 const VkDebugUtilsMessengerCallbackDataEXT * pCallbackData ) const 4101 VULKAN_HPP_NOEXCEPT 4102 { 4103 return ::vkSubmitDebugUtilsMessageEXT( instance, messageSeverity, messageTypes, pCallbackData ); 4104 } 4105 4106 # if defined( VK_USE_PLATFORM_ANDROID_KHR ) 4107 //=== VK_ANDROID_external_memory_android_hardware_buffer === 4108 vkGetAndroidHardwareBufferPropertiesANDROID(VkDevice device,const struct AHardwareBuffer * buffer,VkAndroidHardwareBufferPropertiesANDROID * pProperties) const4109 VkResult vkGetAndroidHardwareBufferPropertiesANDROID( VkDevice device, 4110 const struct AHardwareBuffer * buffer, 4111 VkAndroidHardwareBufferPropertiesANDROID * pProperties ) const 4112 VULKAN_HPP_NOEXCEPT 4113 { 4114 return ::vkGetAndroidHardwareBufferPropertiesANDROID( device, buffer, pProperties ); 4115 } 4116 vkGetMemoryAndroidHardwareBufferANDROID(VkDevice device,const VkMemoryGetAndroidHardwareBufferInfoANDROID * pInfo,struct AHardwareBuffer ** pBuffer) const4117 VkResult vkGetMemoryAndroidHardwareBufferANDROID( VkDevice device, 4118 const VkMemoryGetAndroidHardwareBufferInfoANDROID * pInfo, 4119 struct AHardwareBuffer ** pBuffer ) const VULKAN_HPP_NOEXCEPT 4120 { 4121 return ::vkGetMemoryAndroidHardwareBufferANDROID( device, pInfo, pBuffer ); 4122 } 4123 # endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 4124 4125 //=== VK_EXT_sample_locations === 4126 vkCmdSetSampleLocationsEXT(VkCommandBuffer commandBuffer,const VkSampleLocationsInfoEXT * pSampleLocationsInfo) const4127 void vkCmdSetSampleLocationsEXT( VkCommandBuffer commandBuffer, 4128 const VkSampleLocationsInfoEXT * pSampleLocationsInfo ) const VULKAN_HPP_NOEXCEPT 4129 { 4130 return ::vkCmdSetSampleLocationsEXT( commandBuffer, pSampleLocationsInfo ); 4131 } 4132 vkGetPhysicalDeviceMultisamplePropertiesEXT(VkPhysicalDevice physicalDevice,VkSampleCountFlagBits samples,VkMultisamplePropertiesEXT * pMultisampleProperties) const4133 void vkGetPhysicalDeviceMultisamplePropertiesEXT( VkPhysicalDevice physicalDevice, 4134 VkSampleCountFlagBits samples, 4135 VkMultisamplePropertiesEXT * pMultisampleProperties ) const 4136 VULKAN_HPP_NOEXCEPT 4137 { 4138 return ::vkGetPhysicalDeviceMultisamplePropertiesEXT( physicalDevice, samples, pMultisampleProperties ); 4139 } 4140 4141 //=== VK_KHR_get_memory_requirements2 === 4142 vkGetImageMemoryRequirements2KHR(VkDevice device,const VkImageMemoryRequirementsInfo2 * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const4143 void vkGetImageMemoryRequirements2KHR( VkDevice device, 4144 const VkImageMemoryRequirementsInfo2 * pInfo, 4145 VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 4146 { 4147 return ::vkGetImageMemoryRequirements2KHR( device, pInfo, pMemoryRequirements ); 4148 } 4149 vkGetBufferMemoryRequirements2KHR(VkDevice device,const VkBufferMemoryRequirementsInfo2 * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const4150 void vkGetBufferMemoryRequirements2KHR( VkDevice device, 4151 const VkBufferMemoryRequirementsInfo2 * pInfo, 4152 VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 4153 { 4154 return ::vkGetBufferMemoryRequirements2KHR( device, pInfo, pMemoryRequirements ); 4155 } 4156 vkGetImageSparseMemoryRequirements2KHR(VkDevice device,const VkImageSparseMemoryRequirementsInfo2 * pInfo,uint32_t * pSparseMemoryRequirementCount,VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements) const4157 void vkGetImageSparseMemoryRequirements2KHR( VkDevice device, 4158 const VkImageSparseMemoryRequirementsInfo2 * pInfo, 4159 uint32_t * pSparseMemoryRequirementCount, 4160 VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements ) const 4161 VULKAN_HPP_NOEXCEPT 4162 { 4163 return ::vkGetImageSparseMemoryRequirements2KHR( 4164 device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements ); 4165 } 4166 4167 //=== VK_KHR_acceleration_structure === 4168 4169 VkResult vkCreateAccelerationStructureKHR(VkDevice device,const VkAccelerationStructureCreateInfoKHR * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkAccelerationStructureKHR * pAccelerationStructure) const4170 vkCreateAccelerationStructureKHR( VkDevice device, 4171 const VkAccelerationStructureCreateInfoKHR * pCreateInfo, 4172 const VkAllocationCallbacks * pAllocator, 4173 VkAccelerationStructureKHR * pAccelerationStructure ) const VULKAN_HPP_NOEXCEPT 4174 { 4175 return ::vkCreateAccelerationStructureKHR( device, pCreateInfo, pAllocator, pAccelerationStructure ); 4176 } 4177 vkDestroyAccelerationStructureKHR(VkDevice device,VkAccelerationStructureKHR accelerationStructure,const VkAllocationCallbacks * pAllocator) const4178 void vkDestroyAccelerationStructureKHR( VkDevice device, 4179 VkAccelerationStructureKHR accelerationStructure, 4180 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 4181 { 4182 return ::vkDestroyAccelerationStructureKHR( device, accelerationStructure, pAllocator ); 4183 } 4184 vkCmdBuildAccelerationStructuresKHR(VkCommandBuffer commandBuffer,uint32_t infoCount,const VkAccelerationStructureBuildGeometryInfoKHR * pInfos,const VkAccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos) const4185 void vkCmdBuildAccelerationStructuresKHR( 4186 VkCommandBuffer commandBuffer, 4187 uint32_t infoCount, 4188 const VkAccelerationStructureBuildGeometryInfoKHR * pInfos, 4189 const VkAccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT 4190 { 4191 return ::vkCmdBuildAccelerationStructuresKHR( commandBuffer, infoCount, pInfos, ppBuildRangeInfos ); 4192 } 4193 vkCmdBuildAccelerationStructuresIndirectKHR(VkCommandBuffer commandBuffer,uint32_t infoCount,const VkAccelerationStructureBuildGeometryInfoKHR * pInfos,const VkDeviceAddress * pIndirectDeviceAddresses,const uint32_t * pIndirectStrides,const uint32_t * const * ppMaxPrimitiveCounts) const4194 void vkCmdBuildAccelerationStructuresIndirectKHR( VkCommandBuffer commandBuffer, 4195 uint32_t infoCount, 4196 const VkAccelerationStructureBuildGeometryInfoKHR * pInfos, 4197 const VkDeviceAddress * pIndirectDeviceAddresses, 4198 const uint32_t * pIndirectStrides, 4199 const uint32_t * const * ppMaxPrimitiveCounts ) const 4200 VULKAN_HPP_NOEXCEPT 4201 { 4202 return ::vkCmdBuildAccelerationStructuresIndirectKHR( 4203 commandBuffer, infoCount, pInfos, pIndirectDeviceAddresses, pIndirectStrides, ppMaxPrimitiveCounts ); 4204 } 4205 vkBuildAccelerationStructuresKHR(VkDevice device,VkDeferredOperationKHR deferredOperation,uint32_t infoCount,const VkAccelerationStructureBuildGeometryInfoKHR * pInfos,const VkAccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos) const4206 VkResult vkBuildAccelerationStructuresKHR( 4207 VkDevice device, 4208 VkDeferredOperationKHR deferredOperation, 4209 uint32_t infoCount, 4210 const VkAccelerationStructureBuildGeometryInfoKHR * pInfos, 4211 const VkAccelerationStructureBuildRangeInfoKHR * const * ppBuildRangeInfos ) const VULKAN_HPP_NOEXCEPT 4212 { 4213 return ::vkBuildAccelerationStructuresKHR( device, deferredOperation, infoCount, pInfos, ppBuildRangeInfos ); 4214 } 4215 4216 VkResult vkCopyAccelerationStructureKHR(VkDevice device,VkDeferredOperationKHR deferredOperation,const VkCopyAccelerationStructureInfoKHR * pInfo) const4217 vkCopyAccelerationStructureKHR( VkDevice device, 4218 VkDeferredOperationKHR deferredOperation, 4219 const VkCopyAccelerationStructureInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT 4220 { 4221 return ::vkCopyAccelerationStructureKHR( device, deferredOperation, pInfo ); 4222 } 4223 vkCopyAccelerationStructureToMemoryKHR(VkDevice device,VkDeferredOperationKHR deferredOperation,const VkCopyAccelerationStructureToMemoryInfoKHR * pInfo) const4224 VkResult vkCopyAccelerationStructureToMemoryKHR( VkDevice device, 4225 VkDeferredOperationKHR deferredOperation, 4226 const VkCopyAccelerationStructureToMemoryInfoKHR * pInfo ) const 4227 VULKAN_HPP_NOEXCEPT 4228 { 4229 return ::vkCopyAccelerationStructureToMemoryKHR( device, deferredOperation, pInfo ); 4230 } 4231 vkCopyMemoryToAccelerationStructureKHR(VkDevice device,VkDeferredOperationKHR deferredOperation,const VkCopyMemoryToAccelerationStructureInfoKHR * pInfo) const4232 VkResult vkCopyMemoryToAccelerationStructureKHR( VkDevice device, 4233 VkDeferredOperationKHR deferredOperation, 4234 const VkCopyMemoryToAccelerationStructureInfoKHR * pInfo ) const 4235 VULKAN_HPP_NOEXCEPT 4236 { 4237 return ::vkCopyMemoryToAccelerationStructureKHR( device, deferredOperation, pInfo ); 4238 } 4239 vkWriteAccelerationStructuresPropertiesKHR(VkDevice device,uint32_t accelerationStructureCount,const VkAccelerationStructureKHR * pAccelerationStructures,VkQueryType queryType,size_t dataSize,void * pData,size_t stride) const4240 VkResult vkWriteAccelerationStructuresPropertiesKHR( VkDevice device, 4241 uint32_t accelerationStructureCount, 4242 const VkAccelerationStructureKHR * pAccelerationStructures, 4243 VkQueryType queryType, 4244 size_t dataSize, 4245 void * pData, 4246 size_t stride ) const VULKAN_HPP_NOEXCEPT 4247 { 4248 return ::vkWriteAccelerationStructuresPropertiesKHR( 4249 device, accelerationStructureCount, pAccelerationStructures, queryType, dataSize, pData, stride ); 4250 } 4251 vkCmdCopyAccelerationStructureKHR(VkCommandBuffer commandBuffer,const VkCopyAccelerationStructureInfoKHR * pInfo) const4252 void vkCmdCopyAccelerationStructureKHR( VkCommandBuffer commandBuffer, 4253 const VkCopyAccelerationStructureInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT 4254 { 4255 return ::vkCmdCopyAccelerationStructureKHR( commandBuffer, pInfo ); 4256 } 4257 vkCmdCopyAccelerationStructureToMemoryKHR(VkCommandBuffer commandBuffer,const VkCopyAccelerationStructureToMemoryInfoKHR * pInfo) const4258 void vkCmdCopyAccelerationStructureToMemoryKHR( VkCommandBuffer commandBuffer, 4259 const VkCopyAccelerationStructureToMemoryInfoKHR * pInfo ) const 4260 VULKAN_HPP_NOEXCEPT 4261 { 4262 return ::vkCmdCopyAccelerationStructureToMemoryKHR( commandBuffer, pInfo ); 4263 } 4264 vkCmdCopyMemoryToAccelerationStructureKHR(VkCommandBuffer commandBuffer,const VkCopyMemoryToAccelerationStructureInfoKHR * pInfo) const4265 void vkCmdCopyMemoryToAccelerationStructureKHR( VkCommandBuffer commandBuffer, 4266 const VkCopyMemoryToAccelerationStructureInfoKHR * pInfo ) const 4267 VULKAN_HPP_NOEXCEPT 4268 { 4269 return ::vkCmdCopyMemoryToAccelerationStructureKHR( commandBuffer, pInfo ); 4270 } 4271 vkGetAccelerationStructureDeviceAddressKHR(VkDevice device,const VkAccelerationStructureDeviceAddressInfoKHR * pInfo) const4272 VkDeviceAddress vkGetAccelerationStructureDeviceAddressKHR( 4273 VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR * pInfo ) const VULKAN_HPP_NOEXCEPT 4274 { 4275 return ::vkGetAccelerationStructureDeviceAddressKHR( device, pInfo ); 4276 } 4277 vkCmdWriteAccelerationStructuresPropertiesKHR(VkCommandBuffer commandBuffer,uint32_t accelerationStructureCount,const VkAccelerationStructureKHR * pAccelerationStructures,VkQueryType queryType,VkQueryPool queryPool,uint32_t firstQuery) const4278 void vkCmdWriteAccelerationStructuresPropertiesKHR( VkCommandBuffer commandBuffer, 4279 uint32_t accelerationStructureCount, 4280 const VkAccelerationStructureKHR * pAccelerationStructures, 4281 VkQueryType queryType, 4282 VkQueryPool queryPool, 4283 uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT 4284 { 4285 return ::vkCmdWriteAccelerationStructuresPropertiesKHR( 4286 commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery ); 4287 } 4288 vkGetDeviceAccelerationStructureCompatibilityKHR(VkDevice device,const VkAccelerationStructureVersionInfoKHR * pVersionInfo,VkAccelerationStructureCompatibilityKHR * pCompatibility) const4289 void vkGetDeviceAccelerationStructureCompatibilityKHR( 4290 VkDevice device, 4291 const VkAccelerationStructureVersionInfoKHR * pVersionInfo, 4292 VkAccelerationStructureCompatibilityKHR * pCompatibility ) const VULKAN_HPP_NOEXCEPT 4293 { 4294 return ::vkGetDeviceAccelerationStructureCompatibilityKHR( device, pVersionInfo, pCompatibility ); 4295 } 4296 vkGetAccelerationStructureBuildSizesKHR(VkDevice device,VkAccelerationStructureBuildTypeKHR buildType,const VkAccelerationStructureBuildGeometryInfoKHR * pBuildInfo,const uint32_t * pMaxPrimitiveCounts,VkAccelerationStructureBuildSizesInfoKHR * pSizeInfo) const4297 void vkGetAccelerationStructureBuildSizesKHR( VkDevice device, 4298 VkAccelerationStructureBuildTypeKHR buildType, 4299 const VkAccelerationStructureBuildGeometryInfoKHR * pBuildInfo, 4300 const uint32_t * pMaxPrimitiveCounts, 4301 VkAccelerationStructureBuildSizesInfoKHR * pSizeInfo ) const 4302 VULKAN_HPP_NOEXCEPT 4303 { 4304 return ::vkGetAccelerationStructureBuildSizesKHR( device, buildType, pBuildInfo, pMaxPrimitiveCounts, pSizeInfo ); 4305 } 4306 4307 //=== VK_KHR_sampler_ycbcr_conversion === 4308 vkCreateSamplerYcbcrConversionKHR(VkDevice device,const VkSamplerYcbcrConversionCreateInfo * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSamplerYcbcrConversion * pYcbcrConversion) const4309 VkResult vkCreateSamplerYcbcrConversionKHR( VkDevice device, 4310 const VkSamplerYcbcrConversionCreateInfo * pCreateInfo, 4311 const VkAllocationCallbacks * pAllocator, 4312 VkSamplerYcbcrConversion * pYcbcrConversion ) const VULKAN_HPP_NOEXCEPT 4313 { 4314 return ::vkCreateSamplerYcbcrConversionKHR( device, pCreateInfo, pAllocator, pYcbcrConversion ); 4315 } 4316 vkDestroySamplerYcbcrConversionKHR(VkDevice device,VkSamplerYcbcrConversion ycbcrConversion,const VkAllocationCallbacks * pAllocator) const4317 void vkDestroySamplerYcbcrConversionKHR( VkDevice device, 4318 VkSamplerYcbcrConversion ycbcrConversion, 4319 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 4320 { 4321 return ::vkDestroySamplerYcbcrConversionKHR( device, ycbcrConversion, pAllocator ); 4322 } 4323 4324 //=== VK_KHR_bind_memory2 === 4325 vkBindBufferMemory2KHR(VkDevice device,uint32_t bindInfoCount,const VkBindBufferMemoryInfo * pBindInfos) const4326 VkResult vkBindBufferMemory2KHR( VkDevice device, 4327 uint32_t bindInfoCount, 4328 const VkBindBufferMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT 4329 { 4330 return ::vkBindBufferMemory2KHR( device, bindInfoCount, pBindInfos ); 4331 } 4332 vkBindImageMemory2KHR(VkDevice device,uint32_t bindInfoCount,const VkBindImageMemoryInfo * pBindInfos) const4333 VkResult vkBindImageMemory2KHR( VkDevice device, 4334 uint32_t bindInfoCount, 4335 const VkBindImageMemoryInfo * pBindInfos ) const VULKAN_HPP_NOEXCEPT 4336 { 4337 return ::vkBindImageMemory2KHR( device, bindInfoCount, pBindInfos ); 4338 } 4339 4340 //=== VK_EXT_image_drm_format_modifier === 4341 vkGetImageDrmFormatModifierPropertiesEXT(VkDevice device,VkImage image,VkImageDrmFormatModifierPropertiesEXT * pProperties) const4342 VkResult vkGetImageDrmFormatModifierPropertiesEXT( 4343 VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT * pProperties ) const VULKAN_HPP_NOEXCEPT 4344 { 4345 return ::vkGetImageDrmFormatModifierPropertiesEXT( device, image, pProperties ); 4346 } 4347 4348 //=== VK_EXT_validation_cache === 4349 vkCreateValidationCacheEXT(VkDevice device,const VkValidationCacheCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkValidationCacheEXT * pValidationCache) const4350 VkResult vkCreateValidationCacheEXT( VkDevice device, 4351 const VkValidationCacheCreateInfoEXT * pCreateInfo, 4352 const VkAllocationCallbacks * pAllocator, 4353 VkValidationCacheEXT * pValidationCache ) const VULKAN_HPP_NOEXCEPT 4354 { 4355 return ::vkCreateValidationCacheEXT( device, pCreateInfo, pAllocator, pValidationCache ); 4356 } 4357 vkDestroyValidationCacheEXT(VkDevice device,VkValidationCacheEXT validationCache,const VkAllocationCallbacks * pAllocator) const4358 void vkDestroyValidationCacheEXT( VkDevice device, 4359 VkValidationCacheEXT validationCache, 4360 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 4361 { 4362 return ::vkDestroyValidationCacheEXT( device, validationCache, pAllocator ); 4363 } 4364 vkMergeValidationCachesEXT(VkDevice device,VkValidationCacheEXT dstCache,uint32_t srcCacheCount,const VkValidationCacheEXT * pSrcCaches) const4365 VkResult vkMergeValidationCachesEXT( VkDevice device, 4366 VkValidationCacheEXT dstCache, 4367 uint32_t srcCacheCount, 4368 const VkValidationCacheEXT * pSrcCaches ) const VULKAN_HPP_NOEXCEPT 4369 { 4370 return ::vkMergeValidationCachesEXT( device, dstCache, srcCacheCount, pSrcCaches ); 4371 } 4372 vkGetValidationCacheDataEXT(VkDevice device,VkValidationCacheEXT validationCache,size_t * pDataSize,void * pData) const4373 VkResult vkGetValidationCacheDataEXT( VkDevice device, 4374 VkValidationCacheEXT validationCache, 4375 size_t * pDataSize, 4376 void * pData ) const VULKAN_HPP_NOEXCEPT 4377 { 4378 return ::vkGetValidationCacheDataEXT( device, validationCache, pDataSize, pData ); 4379 } 4380 4381 //=== VK_NV_shading_rate_image === 4382 vkCmdBindShadingRateImageNV(VkCommandBuffer commandBuffer,VkImageView imageView,VkImageLayout imageLayout) const4383 void vkCmdBindShadingRateImageNV( VkCommandBuffer commandBuffer, 4384 VkImageView imageView, 4385 VkImageLayout imageLayout ) const VULKAN_HPP_NOEXCEPT 4386 { 4387 return ::vkCmdBindShadingRateImageNV( commandBuffer, imageView, imageLayout ); 4388 } 4389 vkCmdSetViewportShadingRatePaletteNV(VkCommandBuffer commandBuffer,uint32_t firstViewport,uint32_t viewportCount,const VkShadingRatePaletteNV * pShadingRatePalettes) const4390 void vkCmdSetViewportShadingRatePaletteNV( VkCommandBuffer commandBuffer, 4391 uint32_t firstViewport, 4392 uint32_t viewportCount, 4393 const VkShadingRatePaletteNV * pShadingRatePalettes ) const 4394 VULKAN_HPP_NOEXCEPT 4395 { 4396 return ::vkCmdSetViewportShadingRatePaletteNV( 4397 commandBuffer, firstViewport, viewportCount, pShadingRatePalettes ); 4398 } 4399 4400 void vkCmdSetCoarseSampleOrderNV(VkCommandBuffer commandBuffer,VkCoarseSampleOrderTypeNV sampleOrderType,uint32_t customSampleOrderCount,const VkCoarseSampleOrderCustomNV * pCustomSampleOrders) const4401 vkCmdSetCoarseSampleOrderNV( VkCommandBuffer commandBuffer, 4402 VkCoarseSampleOrderTypeNV sampleOrderType, 4403 uint32_t customSampleOrderCount, 4404 const VkCoarseSampleOrderCustomNV * pCustomSampleOrders ) const VULKAN_HPP_NOEXCEPT 4405 { 4406 return ::vkCmdSetCoarseSampleOrderNV( 4407 commandBuffer, sampleOrderType, customSampleOrderCount, pCustomSampleOrders ); 4408 } 4409 4410 //=== VK_NV_ray_tracing === 4411 4412 VkResult vkCreateAccelerationStructureNV(VkDevice device,const VkAccelerationStructureCreateInfoNV * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkAccelerationStructureNV * pAccelerationStructure) const4413 vkCreateAccelerationStructureNV( VkDevice device, 4414 const VkAccelerationStructureCreateInfoNV * pCreateInfo, 4415 const VkAllocationCallbacks * pAllocator, 4416 VkAccelerationStructureNV * pAccelerationStructure ) const VULKAN_HPP_NOEXCEPT 4417 { 4418 return ::vkCreateAccelerationStructureNV( device, pCreateInfo, pAllocator, pAccelerationStructure ); 4419 } 4420 vkDestroyAccelerationStructureNV(VkDevice device,VkAccelerationStructureNV accelerationStructure,const VkAllocationCallbacks * pAllocator) const4421 void vkDestroyAccelerationStructureNV( VkDevice device, 4422 VkAccelerationStructureNV accelerationStructure, 4423 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 4424 { 4425 return ::vkDestroyAccelerationStructureNV( device, accelerationStructure, pAllocator ); 4426 } 4427 vkGetAccelerationStructureMemoryRequirementsNV(VkDevice device,const VkAccelerationStructureMemoryRequirementsInfoNV * pInfo,VkMemoryRequirements2KHR * pMemoryRequirements) const4428 void vkGetAccelerationStructureMemoryRequirementsNV( VkDevice device, 4429 const VkAccelerationStructureMemoryRequirementsInfoNV * pInfo, 4430 VkMemoryRequirements2KHR * pMemoryRequirements ) const 4431 VULKAN_HPP_NOEXCEPT 4432 { 4433 return ::vkGetAccelerationStructureMemoryRequirementsNV( device, pInfo, pMemoryRequirements ); 4434 } 4435 vkBindAccelerationStructureMemoryNV(VkDevice device,uint32_t bindInfoCount,const VkBindAccelerationStructureMemoryInfoNV * pBindInfos) const4436 VkResult vkBindAccelerationStructureMemoryNV( VkDevice device, 4437 uint32_t bindInfoCount, 4438 const VkBindAccelerationStructureMemoryInfoNV * pBindInfos ) const 4439 VULKAN_HPP_NOEXCEPT 4440 { 4441 return ::vkBindAccelerationStructureMemoryNV( device, bindInfoCount, pBindInfos ); 4442 } 4443 vkCmdBuildAccelerationStructureNV(VkCommandBuffer commandBuffer,const VkAccelerationStructureInfoNV * pInfo,VkBuffer instanceData,VkDeviceSize instanceOffset,VkBool32 update,VkAccelerationStructureNV dst,VkAccelerationStructureNV src,VkBuffer scratch,VkDeviceSize scratchOffset) const4444 void vkCmdBuildAccelerationStructureNV( VkCommandBuffer commandBuffer, 4445 const VkAccelerationStructureInfoNV * pInfo, 4446 VkBuffer instanceData, 4447 VkDeviceSize instanceOffset, 4448 VkBool32 update, 4449 VkAccelerationStructureNV dst, 4450 VkAccelerationStructureNV src, 4451 VkBuffer scratch, 4452 VkDeviceSize scratchOffset ) const VULKAN_HPP_NOEXCEPT 4453 { 4454 return ::vkCmdBuildAccelerationStructureNV( 4455 commandBuffer, pInfo, instanceData, instanceOffset, update, dst, src, scratch, scratchOffset ); 4456 } 4457 vkCmdCopyAccelerationStructureNV(VkCommandBuffer commandBuffer,VkAccelerationStructureNV dst,VkAccelerationStructureNV src,VkCopyAccelerationStructureModeKHR mode) const4458 void vkCmdCopyAccelerationStructureNV( VkCommandBuffer commandBuffer, 4459 VkAccelerationStructureNV dst, 4460 VkAccelerationStructureNV src, 4461 VkCopyAccelerationStructureModeKHR mode ) const VULKAN_HPP_NOEXCEPT 4462 { 4463 return ::vkCmdCopyAccelerationStructureNV( commandBuffer, dst, src, mode ); 4464 } 4465 vkCmdTraceRaysNV(VkCommandBuffer commandBuffer,VkBuffer raygenShaderBindingTableBuffer,VkDeviceSize raygenShaderBindingOffset,VkBuffer missShaderBindingTableBuffer,VkDeviceSize missShaderBindingOffset,VkDeviceSize missShaderBindingStride,VkBuffer hitShaderBindingTableBuffer,VkDeviceSize hitShaderBindingOffset,VkDeviceSize hitShaderBindingStride,VkBuffer callableShaderBindingTableBuffer,VkDeviceSize callableShaderBindingOffset,VkDeviceSize callableShaderBindingStride,uint32_t width,uint32_t height,uint32_t depth) const4466 void vkCmdTraceRaysNV( VkCommandBuffer commandBuffer, 4467 VkBuffer raygenShaderBindingTableBuffer, 4468 VkDeviceSize raygenShaderBindingOffset, 4469 VkBuffer missShaderBindingTableBuffer, 4470 VkDeviceSize missShaderBindingOffset, 4471 VkDeviceSize missShaderBindingStride, 4472 VkBuffer hitShaderBindingTableBuffer, 4473 VkDeviceSize hitShaderBindingOffset, 4474 VkDeviceSize hitShaderBindingStride, 4475 VkBuffer callableShaderBindingTableBuffer, 4476 VkDeviceSize callableShaderBindingOffset, 4477 VkDeviceSize callableShaderBindingStride, 4478 uint32_t width, 4479 uint32_t height, 4480 uint32_t depth ) const VULKAN_HPP_NOEXCEPT 4481 { 4482 return ::vkCmdTraceRaysNV( commandBuffer, 4483 raygenShaderBindingTableBuffer, 4484 raygenShaderBindingOffset, 4485 missShaderBindingTableBuffer, 4486 missShaderBindingOffset, 4487 missShaderBindingStride, 4488 hitShaderBindingTableBuffer, 4489 hitShaderBindingOffset, 4490 hitShaderBindingStride, 4491 callableShaderBindingTableBuffer, 4492 callableShaderBindingOffset, 4493 callableShaderBindingStride, 4494 width, 4495 height, 4496 depth ); 4497 } 4498 vkCreateRayTracingPipelinesNV(VkDevice device,VkPipelineCache pipelineCache,uint32_t createInfoCount,const VkRayTracingPipelineCreateInfoNV * pCreateInfos,const VkAllocationCallbacks * pAllocator,VkPipeline * pPipelines) const4499 VkResult vkCreateRayTracingPipelinesNV( VkDevice device, 4500 VkPipelineCache pipelineCache, 4501 uint32_t createInfoCount, 4502 const VkRayTracingPipelineCreateInfoNV * pCreateInfos, 4503 const VkAllocationCallbacks * pAllocator, 4504 VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT 4505 { 4506 return ::vkCreateRayTracingPipelinesNV( 4507 device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines ); 4508 } 4509 vkGetRayTracingShaderGroupHandlesNV(VkDevice device,VkPipeline pipeline,uint32_t firstGroup,uint32_t groupCount,size_t dataSize,void * pData) const4510 VkResult vkGetRayTracingShaderGroupHandlesNV( VkDevice device, 4511 VkPipeline pipeline, 4512 uint32_t firstGroup, 4513 uint32_t groupCount, 4514 size_t dataSize, 4515 void * pData ) const VULKAN_HPP_NOEXCEPT 4516 { 4517 return ::vkGetRayTracingShaderGroupHandlesNV( device, pipeline, firstGroup, groupCount, dataSize, pData ); 4518 } 4519 vkGetAccelerationStructureHandleNV(VkDevice device,VkAccelerationStructureNV accelerationStructure,size_t dataSize,void * pData) const4520 VkResult vkGetAccelerationStructureHandleNV( VkDevice device, 4521 VkAccelerationStructureNV accelerationStructure, 4522 size_t dataSize, 4523 void * pData ) const VULKAN_HPP_NOEXCEPT 4524 { 4525 return ::vkGetAccelerationStructureHandleNV( device, accelerationStructure, dataSize, pData ); 4526 } 4527 vkCmdWriteAccelerationStructuresPropertiesNV(VkCommandBuffer commandBuffer,uint32_t accelerationStructureCount,const VkAccelerationStructureNV * pAccelerationStructures,VkQueryType queryType,VkQueryPool queryPool,uint32_t firstQuery) const4528 void vkCmdWriteAccelerationStructuresPropertiesNV( VkCommandBuffer commandBuffer, 4529 uint32_t accelerationStructureCount, 4530 const VkAccelerationStructureNV * pAccelerationStructures, 4531 VkQueryType queryType, 4532 VkQueryPool queryPool, 4533 uint32_t firstQuery ) const VULKAN_HPP_NOEXCEPT 4534 { 4535 return ::vkCmdWriteAccelerationStructuresPropertiesNV( 4536 commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery ); 4537 } 4538 vkCompileDeferredNV(VkDevice device,VkPipeline pipeline,uint32_t shader) const4539 VkResult vkCompileDeferredNV( VkDevice device, VkPipeline pipeline, uint32_t shader ) const VULKAN_HPP_NOEXCEPT 4540 { 4541 return ::vkCompileDeferredNV( device, pipeline, shader ); 4542 } 4543 4544 //=== VK_KHR_maintenance3 === 4545 vkGetDescriptorSetLayoutSupportKHR(VkDevice device,const VkDescriptorSetLayoutCreateInfo * pCreateInfo,VkDescriptorSetLayoutSupport * pSupport) const4546 void vkGetDescriptorSetLayoutSupportKHR( VkDevice device, 4547 const VkDescriptorSetLayoutCreateInfo * pCreateInfo, 4548 VkDescriptorSetLayoutSupport * pSupport ) const VULKAN_HPP_NOEXCEPT 4549 { 4550 return ::vkGetDescriptorSetLayoutSupportKHR( device, pCreateInfo, pSupport ); 4551 } 4552 4553 //=== VK_KHR_draw_indirect_count === 4554 vkCmdDrawIndirectCountKHR(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const4555 void vkCmdDrawIndirectCountKHR( VkCommandBuffer commandBuffer, 4556 VkBuffer buffer, 4557 VkDeviceSize offset, 4558 VkBuffer countBuffer, 4559 VkDeviceSize countBufferOffset, 4560 uint32_t maxDrawCount, 4561 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 4562 { 4563 return ::vkCmdDrawIndirectCountKHR( 4564 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 4565 } 4566 vkCmdDrawIndexedIndirectCountKHR(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const4567 void vkCmdDrawIndexedIndirectCountKHR( VkCommandBuffer commandBuffer, 4568 VkBuffer buffer, 4569 VkDeviceSize offset, 4570 VkBuffer countBuffer, 4571 VkDeviceSize countBufferOffset, 4572 uint32_t maxDrawCount, 4573 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 4574 { 4575 return ::vkCmdDrawIndexedIndirectCountKHR( 4576 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 4577 } 4578 4579 //=== VK_EXT_external_memory_host === 4580 vkGetMemoryHostPointerPropertiesEXT(VkDevice device,VkExternalMemoryHandleTypeFlagBits handleType,const void * pHostPointer,VkMemoryHostPointerPropertiesEXT * pMemoryHostPointerProperties) const4581 VkResult vkGetMemoryHostPointerPropertiesEXT( 4582 VkDevice device, 4583 VkExternalMemoryHandleTypeFlagBits handleType, 4584 const void * pHostPointer, 4585 VkMemoryHostPointerPropertiesEXT * pMemoryHostPointerProperties ) const VULKAN_HPP_NOEXCEPT 4586 { 4587 return ::vkGetMemoryHostPointerPropertiesEXT( device, handleType, pHostPointer, pMemoryHostPointerProperties ); 4588 } 4589 4590 //=== VK_AMD_buffer_marker === 4591 vkCmdWriteBufferMarkerAMD(VkCommandBuffer commandBuffer,VkPipelineStageFlagBits pipelineStage,VkBuffer dstBuffer,VkDeviceSize dstOffset,uint32_t marker) const4592 void vkCmdWriteBufferMarkerAMD( VkCommandBuffer commandBuffer, 4593 VkPipelineStageFlagBits pipelineStage, 4594 VkBuffer dstBuffer, 4595 VkDeviceSize dstOffset, 4596 uint32_t marker ) const VULKAN_HPP_NOEXCEPT 4597 { 4598 return ::vkCmdWriteBufferMarkerAMD( commandBuffer, pipelineStage, dstBuffer, dstOffset, marker ); 4599 } 4600 4601 //=== VK_EXT_calibrated_timestamps === 4602 vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(VkPhysicalDevice physicalDevice,uint32_t * pTimeDomainCount,VkTimeDomainEXT * pTimeDomains) const4603 VkResult vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( VkPhysicalDevice physicalDevice, 4604 uint32_t * pTimeDomainCount, 4605 VkTimeDomainEXT * pTimeDomains ) const VULKAN_HPP_NOEXCEPT 4606 { 4607 return ::vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( physicalDevice, pTimeDomainCount, pTimeDomains ); 4608 } 4609 vkGetCalibratedTimestampsEXT(VkDevice device,uint32_t timestampCount,const VkCalibratedTimestampInfoEXT * pTimestampInfos,uint64_t * pTimestamps,uint64_t * pMaxDeviation) const4610 VkResult vkGetCalibratedTimestampsEXT( VkDevice device, 4611 uint32_t timestampCount, 4612 const VkCalibratedTimestampInfoEXT * pTimestampInfos, 4613 uint64_t * pTimestamps, 4614 uint64_t * pMaxDeviation ) const VULKAN_HPP_NOEXCEPT 4615 { 4616 return ::vkGetCalibratedTimestampsEXT( device, timestampCount, pTimestampInfos, pTimestamps, pMaxDeviation ); 4617 } 4618 4619 //=== VK_NV_mesh_shader === 4620 vkCmdDrawMeshTasksNV(VkCommandBuffer commandBuffer,uint32_t taskCount,uint32_t firstTask) const4621 void vkCmdDrawMeshTasksNV( VkCommandBuffer commandBuffer, 4622 uint32_t taskCount, 4623 uint32_t firstTask ) const VULKAN_HPP_NOEXCEPT 4624 { 4625 return ::vkCmdDrawMeshTasksNV( commandBuffer, taskCount, firstTask ); 4626 } 4627 vkCmdDrawMeshTasksIndirectNV(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,uint32_t drawCount,uint32_t stride) const4628 void vkCmdDrawMeshTasksIndirectNV( VkCommandBuffer commandBuffer, 4629 VkBuffer buffer, 4630 VkDeviceSize offset, 4631 uint32_t drawCount, 4632 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 4633 { 4634 return ::vkCmdDrawMeshTasksIndirectNV( commandBuffer, buffer, offset, drawCount, stride ); 4635 } 4636 vkCmdDrawMeshTasksIndirectCountNV(VkCommandBuffer commandBuffer,VkBuffer buffer,VkDeviceSize offset,VkBuffer countBuffer,VkDeviceSize countBufferOffset,uint32_t maxDrawCount,uint32_t stride) const4637 void vkCmdDrawMeshTasksIndirectCountNV( VkCommandBuffer commandBuffer, 4638 VkBuffer buffer, 4639 VkDeviceSize offset, 4640 VkBuffer countBuffer, 4641 VkDeviceSize countBufferOffset, 4642 uint32_t maxDrawCount, 4643 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 4644 { 4645 return ::vkCmdDrawMeshTasksIndirectCountNV( 4646 commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride ); 4647 } 4648 4649 //=== VK_NV_scissor_exclusive === 4650 vkCmdSetExclusiveScissorNV(VkCommandBuffer commandBuffer,uint32_t firstExclusiveScissor,uint32_t exclusiveScissorCount,const VkRect2D * pExclusiveScissors) const4651 void vkCmdSetExclusiveScissorNV( VkCommandBuffer commandBuffer, 4652 uint32_t firstExclusiveScissor, 4653 uint32_t exclusiveScissorCount, 4654 const VkRect2D * pExclusiveScissors ) const VULKAN_HPP_NOEXCEPT 4655 { 4656 return ::vkCmdSetExclusiveScissorNV( 4657 commandBuffer, firstExclusiveScissor, exclusiveScissorCount, pExclusiveScissors ); 4658 } 4659 4660 //=== VK_NV_device_diagnostic_checkpoints === 4661 vkCmdSetCheckpointNV(VkCommandBuffer commandBuffer,const void * pCheckpointMarker) const4662 void vkCmdSetCheckpointNV( VkCommandBuffer commandBuffer, const void * pCheckpointMarker ) const VULKAN_HPP_NOEXCEPT 4663 { 4664 return ::vkCmdSetCheckpointNV( commandBuffer, pCheckpointMarker ); 4665 } 4666 vkGetQueueCheckpointDataNV(VkQueue queue,uint32_t * pCheckpointDataCount,VkCheckpointDataNV * pCheckpointData) const4667 void vkGetQueueCheckpointDataNV( VkQueue queue, 4668 uint32_t * pCheckpointDataCount, 4669 VkCheckpointDataNV * pCheckpointData ) const VULKAN_HPP_NOEXCEPT 4670 { 4671 return ::vkGetQueueCheckpointDataNV( queue, pCheckpointDataCount, pCheckpointData ); 4672 } 4673 4674 //=== VK_KHR_timeline_semaphore === 4675 vkGetSemaphoreCounterValueKHR(VkDevice device,VkSemaphore semaphore,uint64_t * pValue) const4676 VkResult vkGetSemaphoreCounterValueKHR( VkDevice device, 4677 VkSemaphore semaphore, 4678 uint64_t * pValue ) const VULKAN_HPP_NOEXCEPT 4679 { 4680 return ::vkGetSemaphoreCounterValueKHR( device, semaphore, pValue ); 4681 } 4682 vkWaitSemaphoresKHR(VkDevice device,const VkSemaphoreWaitInfo * pWaitInfo,uint64_t timeout) const4683 VkResult vkWaitSemaphoresKHR( VkDevice device, 4684 const VkSemaphoreWaitInfo * pWaitInfo, 4685 uint64_t timeout ) const VULKAN_HPP_NOEXCEPT 4686 { 4687 return ::vkWaitSemaphoresKHR( device, pWaitInfo, timeout ); 4688 } 4689 vkSignalSemaphoreKHR(VkDevice device,const VkSemaphoreSignalInfo * pSignalInfo) const4690 VkResult vkSignalSemaphoreKHR( VkDevice device, 4691 const VkSemaphoreSignalInfo * pSignalInfo ) const VULKAN_HPP_NOEXCEPT 4692 { 4693 return ::vkSignalSemaphoreKHR( device, pSignalInfo ); 4694 } 4695 4696 //=== VK_INTEL_performance_query === 4697 vkInitializePerformanceApiINTEL(VkDevice device,const VkInitializePerformanceApiInfoINTEL * pInitializeInfo) const4698 VkResult vkInitializePerformanceApiINTEL( 4699 VkDevice device, const VkInitializePerformanceApiInfoINTEL * pInitializeInfo ) const VULKAN_HPP_NOEXCEPT 4700 { 4701 return ::vkInitializePerformanceApiINTEL( device, pInitializeInfo ); 4702 } 4703 vkUninitializePerformanceApiINTEL(VkDevice device) const4704 void vkUninitializePerformanceApiINTEL( VkDevice device ) const VULKAN_HPP_NOEXCEPT 4705 { 4706 return ::vkUninitializePerformanceApiINTEL( device ); 4707 } 4708 4709 VkResult vkCmdSetPerformanceMarkerINTEL(VkCommandBuffer commandBuffer,const VkPerformanceMarkerInfoINTEL * pMarkerInfo) const4710 vkCmdSetPerformanceMarkerINTEL( VkCommandBuffer commandBuffer, 4711 const VkPerformanceMarkerInfoINTEL * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT 4712 { 4713 return ::vkCmdSetPerformanceMarkerINTEL( commandBuffer, pMarkerInfo ); 4714 } 4715 vkCmdSetPerformanceStreamMarkerINTEL(VkCommandBuffer commandBuffer,const VkPerformanceStreamMarkerInfoINTEL * pMarkerInfo) const4716 VkResult vkCmdSetPerformanceStreamMarkerINTEL( 4717 VkCommandBuffer commandBuffer, const VkPerformanceStreamMarkerInfoINTEL * pMarkerInfo ) const VULKAN_HPP_NOEXCEPT 4718 { 4719 return ::vkCmdSetPerformanceStreamMarkerINTEL( commandBuffer, pMarkerInfo ); 4720 } 4721 4722 VkResult vkCmdSetPerformanceOverrideINTEL(VkCommandBuffer commandBuffer,const VkPerformanceOverrideInfoINTEL * pOverrideInfo) const4723 vkCmdSetPerformanceOverrideINTEL( VkCommandBuffer commandBuffer, 4724 const VkPerformanceOverrideInfoINTEL * pOverrideInfo ) const VULKAN_HPP_NOEXCEPT 4725 { 4726 return ::vkCmdSetPerformanceOverrideINTEL( commandBuffer, pOverrideInfo ); 4727 } 4728 vkAcquirePerformanceConfigurationINTEL(VkDevice device,const VkPerformanceConfigurationAcquireInfoINTEL * pAcquireInfo,VkPerformanceConfigurationINTEL * pConfiguration) const4729 VkResult vkAcquirePerformanceConfigurationINTEL( VkDevice device, 4730 const VkPerformanceConfigurationAcquireInfoINTEL * pAcquireInfo, 4731 VkPerformanceConfigurationINTEL * pConfiguration ) const 4732 VULKAN_HPP_NOEXCEPT 4733 { 4734 return ::vkAcquirePerformanceConfigurationINTEL( device, pAcquireInfo, pConfiguration ); 4735 } 4736 4737 VkResult vkReleasePerformanceConfigurationINTEL(VkDevice device,VkPerformanceConfigurationINTEL configuration) const4738 vkReleasePerformanceConfigurationINTEL( VkDevice device, 4739 VkPerformanceConfigurationINTEL configuration ) const VULKAN_HPP_NOEXCEPT 4740 { 4741 return ::vkReleasePerformanceConfigurationINTEL( device, configuration ); 4742 } 4743 4744 VkResult vkQueueSetPerformanceConfigurationINTEL(VkQueue queue,VkPerformanceConfigurationINTEL configuration) const4745 vkQueueSetPerformanceConfigurationINTEL( VkQueue queue, 4746 VkPerformanceConfigurationINTEL configuration ) const VULKAN_HPP_NOEXCEPT 4747 { 4748 return ::vkQueueSetPerformanceConfigurationINTEL( queue, configuration ); 4749 } 4750 vkGetPerformanceParameterINTEL(VkDevice device,VkPerformanceParameterTypeINTEL parameter,VkPerformanceValueINTEL * pValue) const4751 VkResult vkGetPerformanceParameterINTEL( VkDevice device, 4752 VkPerformanceParameterTypeINTEL parameter, 4753 VkPerformanceValueINTEL * pValue ) const VULKAN_HPP_NOEXCEPT 4754 { 4755 return ::vkGetPerformanceParameterINTEL( device, parameter, pValue ); 4756 } 4757 4758 //=== VK_AMD_display_native_hdr === 4759 vkSetLocalDimmingAMD(VkDevice device,VkSwapchainKHR swapChain,VkBool32 localDimmingEnable) const4760 void vkSetLocalDimmingAMD( VkDevice device, 4761 VkSwapchainKHR swapChain, 4762 VkBool32 localDimmingEnable ) const VULKAN_HPP_NOEXCEPT 4763 { 4764 return ::vkSetLocalDimmingAMD( device, swapChain, localDimmingEnable ); 4765 } 4766 4767 # if defined( VK_USE_PLATFORM_FUCHSIA ) 4768 //=== VK_FUCHSIA_imagepipe_surface === 4769 vkCreateImagePipeSurfaceFUCHSIA(VkInstance instance,const VkImagePipeSurfaceCreateInfoFUCHSIA * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const4770 VkResult vkCreateImagePipeSurfaceFUCHSIA( VkInstance instance, 4771 const VkImagePipeSurfaceCreateInfoFUCHSIA * pCreateInfo, 4772 const VkAllocationCallbacks * pAllocator, 4773 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 4774 { 4775 return ::vkCreateImagePipeSurfaceFUCHSIA( instance, pCreateInfo, pAllocator, pSurface ); 4776 } 4777 # endif /*VK_USE_PLATFORM_FUCHSIA*/ 4778 4779 # if defined( VK_USE_PLATFORM_METAL_EXT ) 4780 //=== VK_EXT_metal_surface === 4781 vkCreateMetalSurfaceEXT(VkInstance instance,const VkMetalSurfaceCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const4782 VkResult vkCreateMetalSurfaceEXT( VkInstance instance, 4783 const VkMetalSurfaceCreateInfoEXT * pCreateInfo, 4784 const VkAllocationCallbacks * pAllocator, 4785 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 4786 { 4787 return ::vkCreateMetalSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface ); 4788 } 4789 # endif /*VK_USE_PLATFORM_METAL_EXT*/ 4790 4791 //=== VK_KHR_fragment_shading_rate === 4792 vkGetPhysicalDeviceFragmentShadingRatesKHR(VkPhysicalDevice physicalDevice,uint32_t * pFragmentShadingRateCount,VkPhysicalDeviceFragmentShadingRateKHR * pFragmentShadingRates) const4793 VkResult vkGetPhysicalDeviceFragmentShadingRatesKHR( 4794 VkPhysicalDevice physicalDevice, 4795 uint32_t * pFragmentShadingRateCount, 4796 VkPhysicalDeviceFragmentShadingRateKHR * pFragmentShadingRates ) const VULKAN_HPP_NOEXCEPT 4797 { 4798 return ::vkGetPhysicalDeviceFragmentShadingRatesKHR( 4799 physicalDevice, pFragmentShadingRateCount, pFragmentShadingRates ); 4800 } 4801 vkCmdSetFragmentShadingRateKHR(VkCommandBuffer commandBuffer,const VkExtent2D * pFragmentSize,const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) const4802 void vkCmdSetFragmentShadingRateKHR( VkCommandBuffer commandBuffer, 4803 const VkExtent2D * pFragmentSize, 4804 const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const 4805 VULKAN_HPP_NOEXCEPT 4806 { 4807 return ::vkCmdSetFragmentShadingRateKHR( commandBuffer, pFragmentSize, combinerOps ); 4808 } 4809 4810 //=== VK_EXT_buffer_device_address === 4811 vkGetBufferDeviceAddressEXT(VkDevice device,const VkBufferDeviceAddressInfo * pInfo) const4812 VkDeviceAddress vkGetBufferDeviceAddressEXT( VkDevice device, 4813 const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 4814 { 4815 return ::vkGetBufferDeviceAddressEXT( device, pInfo ); 4816 } 4817 4818 //=== VK_EXT_tooling_info === 4819 vkGetPhysicalDeviceToolPropertiesEXT(VkPhysicalDevice physicalDevice,uint32_t * pToolCount,VkPhysicalDeviceToolPropertiesEXT * pToolProperties) const4820 VkResult vkGetPhysicalDeviceToolPropertiesEXT( VkPhysicalDevice physicalDevice, 4821 uint32_t * pToolCount, 4822 VkPhysicalDeviceToolPropertiesEXT * pToolProperties ) const 4823 VULKAN_HPP_NOEXCEPT 4824 { 4825 return ::vkGetPhysicalDeviceToolPropertiesEXT( physicalDevice, pToolCount, pToolProperties ); 4826 } 4827 4828 //=== VK_KHR_present_wait === 4829 vkWaitForPresentKHR(VkDevice device,VkSwapchainKHR swapchain,uint64_t presentId,uint64_t timeout) const4830 VkResult vkWaitForPresentKHR( VkDevice device, 4831 VkSwapchainKHR swapchain, 4832 uint64_t presentId, 4833 uint64_t timeout ) const VULKAN_HPP_NOEXCEPT 4834 { 4835 return ::vkWaitForPresentKHR( device, swapchain, presentId, timeout ); 4836 } 4837 4838 //=== VK_NV_cooperative_matrix === 4839 vkGetPhysicalDeviceCooperativeMatrixPropertiesNV(VkPhysicalDevice physicalDevice,uint32_t * pPropertyCount,VkCooperativeMatrixPropertiesNV * pProperties) const4840 VkResult vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( VkPhysicalDevice physicalDevice, 4841 uint32_t * pPropertyCount, 4842 VkCooperativeMatrixPropertiesNV * pProperties ) const 4843 VULKAN_HPP_NOEXCEPT 4844 { 4845 return ::vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( physicalDevice, pPropertyCount, pProperties ); 4846 } 4847 4848 //=== VK_NV_coverage_reduction_mode === 4849 vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(VkPhysicalDevice physicalDevice,uint32_t * pCombinationCount,VkFramebufferMixedSamplesCombinationNV * pCombinations) const4850 VkResult vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( 4851 VkPhysicalDevice physicalDevice, 4852 uint32_t * pCombinationCount, 4853 VkFramebufferMixedSamplesCombinationNV * pCombinations ) const VULKAN_HPP_NOEXCEPT 4854 { 4855 return ::vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( 4856 physicalDevice, pCombinationCount, pCombinations ); 4857 } 4858 4859 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 4860 //=== VK_EXT_full_screen_exclusive === 4861 vkGetPhysicalDeviceSurfacePresentModes2EXT(VkPhysicalDevice physicalDevice,const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,uint32_t * pPresentModeCount,VkPresentModeKHR * pPresentModes) const4862 VkResult vkGetPhysicalDeviceSurfacePresentModes2EXT( VkPhysicalDevice physicalDevice, 4863 const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo, 4864 uint32_t * pPresentModeCount, 4865 VkPresentModeKHR * pPresentModes ) const VULKAN_HPP_NOEXCEPT 4866 { 4867 return ::vkGetPhysicalDeviceSurfacePresentModes2EXT( 4868 physicalDevice, pSurfaceInfo, pPresentModeCount, pPresentModes ); 4869 } 4870 vkAcquireFullScreenExclusiveModeEXT(VkDevice device,VkSwapchainKHR swapchain) const4871 VkResult vkAcquireFullScreenExclusiveModeEXT( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT 4872 { 4873 return ::vkAcquireFullScreenExclusiveModeEXT( device, swapchain ); 4874 } 4875 vkReleaseFullScreenExclusiveModeEXT(VkDevice device,VkSwapchainKHR swapchain) const4876 VkResult vkReleaseFullScreenExclusiveModeEXT( VkDevice device, VkSwapchainKHR swapchain ) const VULKAN_HPP_NOEXCEPT 4877 { 4878 return ::vkReleaseFullScreenExclusiveModeEXT( device, swapchain ); 4879 } 4880 4881 VkResult vkGetDeviceGroupSurfacePresentModes2EXT(VkDevice device,const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo,VkDeviceGroupPresentModeFlagsKHR * pModes) const4882 vkGetDeviceGroupSurfacePresentModes2EXT( VkDevice device, 4883 const VkPhysicalDeviceSurfaceInfo2KHR * pSurfaceInfo, 4884 VkDeviceGroupPresentModeFlagsKHR * pModes ) const VULKAN_HPP_NOEXCEPT 4885 { 4886 return ::vkGetDeviceGroupSurfacePresentModes2EXT( device, pSurfaceInfo, pModes ); 4887 } 4888 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 4889 4890 //=== VK_EXT_headless_surface === 4891 vkCreateHeadlessSurfaceEXT(VkInstance instance,const VkHeadlessSurfaceCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const4892 VkResult vkCreateHeadlessSurfaceEXT( VkInstance instance, 4893 const VkHeadlessSurfaceCreateInfoEXT * pCreateInfo, 4894 const VkAllocationCallbacks * pAllocator, 4895 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 4896 { 4897 return ::vkCreateHeadlessSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface ); 4898 } 4899 4900 //=== VK_KHR_buffer_device_address === 4901 vkGetBufferDeviceAddressKHR(VkDevice device,const VkBufferDeviceAddressInfo * pInfo) const4902 VkDeviceAddress vkGetBufferDeviceAddressKHR( VkDevice device, 4903 const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 4904 { 4905 return ::vkGetBufferDeviceAddressKHR( device, pInfo ); 4906 } 4907 vkGetBufferOpaqueCaptureAddressKHR(VkDevice device,const VkBufferDeviceAddressInfo * pInfo) const4908 uint64_t vkGetBufferOpaqueCaptureAddressKHR( VkDevice device, 4909 const VkBufferDeviceAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 4910 { 4911 return ::vkGetBufferOpaqueCaptureAddressKHR( device, pInfo ); 4912 } 4913 vkGetDeviceMemoryOpaqueCaptureAddressKHR(VkDevice device,const VkDeviceMemoryOpaqueCaptureAddressInfo * pInfo) const4914 uint64_t vkGetDeviceMemoryOpaqueCaptureAddressKHR( 4915 VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo * pInfo ) const VULKAN_HPP_NOEXCEPT 4916 { 4917 return ::vkGetDeviceMemoryOpaqueCaptureAddressKHR( device, pInfo ); 4918 } 4919 4920 //=== VK_EXT_line_rasterization === 4921 vkCmdSetLineStippleEXT(VkCommandBuffer commandBuffer,uint32_t lineStippleFactor,uint16_t lineStipplePattern) const4922 void vkCmdSetLineStippleEXT( VkCommandBuffer commandBuffer, 4923 uint32_t lineStippleFactor, 4924 uint16_t lineStipplePattern ) const VULKAN_HPP_NOEXCEPT 4925 { 4926 return ::vkCmdSetLineStippleEXT( commandBuffer, lineStippleFactor, lineStipplePattern ); 4927 } 4928 4929 //=== VK_EXT_host_query_reset === 4930 vkResetQueryPoolEXT(VkDevice device,VkQueryPool queryPool,uint32_t firstQuery,uint32_t queryCount) const4931 void vkResetQueryPoolEXT( VkDevice device, 4932 VkQueryPool queryPool, 4933 uint32_t firstQuery, 4934 uint32_t queryCount ) const VULKAN_HPP_NOEXCEPT 4935 { 4936 return ::vkResetQueryPoolEXT( device, queryPool, firstQuery, queryCount ); 4937 } 4938 4939 //=== VK_EXT_extended_dynamic_state === 4940 vkCmdSetCullModeEXT(VkCommandBuffer commandBuffer,VkCullModeFlags cullMode) const4941 void vkCmdSetCullModeEXT( VkCommandBuffer commandBuffer, VkCullModeFlags cullMode ) const VULKAN_HPP_NOEXCEPT 4942 { 4943 return ::vkCmdSetCullModeEXT( commandBuffer, cullMode ); 4944 } 4945 vkCmdSetFrontFaceEXT(VkCommandBuffer commandBuffer,VkFrontFace frontFace) const4946 void vkCmdSetFrontFaceEXT( VkCommandBuffer commandBuffer, VkFrontFace frontFace ) const VULKAN_HPP_NOEXCEPT 4947 { 4948 return ::vkCmdSetFrontFaceEXT( commandBuffer, frontFace ); 4949 } 4950 vkCmdSetPrimitiveTopologyEXT(VkCommandBuffer commandBuffer,VkPrimitiveTopology primitiveTopology) const4951 void vkCmdSetPrimitiveTopologyEXT( VkCommandBuffer commandBuffer, 4952 VkPrimitiveTopology primitiveTopology ) const VULKAN_HPP_NOEXCEPT 4953 { 4954 return ::vkCmdSetPrimitiveTopologyEXT( commandBuffer, primitiveTopology ); 4955 } 4956 vkCmdSetViewportWithCountEXT(VkCommandBuffer commandBuffer,uint32_t viewportCount,const VkViewport * pViewports) const4957 void vkCmdSetViewportWithCountEXT( VkCommandBuffer commandBuffer, 4958 uint32_t viewportCount, 4959 const VkViewport * pViewports ) const VULKAN_HPP_NOEXCEPT 4960 { 4961 return ::vkCmdSetViewportWithCountEXT( commandBuffer, viewportCount, pViewports ); 4962 } 4963 vkCmdSetScissorWithCountEXT(VkCommandBuffer commandBuffer,uint32_t scissorCount,const VkRect2D * pScissors) const4964 void vkCmdSetScissorWithCountEXT( VkCommandBuffer commandBuffer, 4965 uint32_t scissorCount, 4966 const VkRect2D * pScissors ) const VULKAN_HPP_NOEXCEPT 4967 { 4968 return ::vkCmdSetScissorWithCountEXT( commandBuffer, scissorCount, pScissors ); 4969 } 4970 vkCmdBindVertexBuffers2EXT(VkCommandBuffer commandBuffer,uint32_t firstBinding,uint32_t bindingCount,const VkBuffer * pBuffers,const VkDeviceSize * pOffsets,const VkDeviceSize * pSizes,const VkDeviceSize * pStrides) const4971 void vkCmdBindVertexBuffers2EXT( VkCommandBuffer commandBuffer, 4972 uint32_t firstBinding, 4973 uint32_t bindingCount, 4974 const VkBuffer * pBuffers, 4975 const VkDeviceSize * pOffsets, 4976 const VkDeviceSize * pSizes, 4977 const VkDeviceSize * pStrides ) const VULKAN_HPP_NOEXCEPT 4978 { 4979 return ::vkCmdBindVertexBuffers2EXT( 4980 commandBuffer, firstBinding, bindingCount, pBuffers, pOffsets, pSizes, pStrides ); 4981 } 4982 vkCmdSetDepthTestEnableEXT(VkCommandBuffer commandBuffer,VkBool32 depthTestEnable) const4983 void vkCmdSetDepthTestEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthTestEnable ) const VULKAN_HPP_NOEXCEPT 4984 { 4985 return ::vkCmdSetDepthTestEnableEXT( commandBuffer, depthTestEnable ); 4986 } 4987 vkCmdSetDepthWriteEnableEXT(VkCommandBuffer commandBuffer,VkBool32 depthWriteEnable) const4988 void vkCmdSetDepthWriteEnableEXT( VkCommandBuffer commandBuffer, 4989 VkBool32 depthWriteEnable ) const VULKAN_HPP_NOEXCEPT 4990 { 4991 return ::vkCmdSetDepthWriteEnableEXT( commandBuffer, depthWriteEnable ); 4992 } 4993 vkCmdSetDepthCompareOpEXT(VkCommandBuffer commandBuffer,VkCompareOp depthCompareOp) const4994 void vkCmdSetDepthCompareOpEXT( VkCommandBuffer commandBuffer, 4995 VkCompareOp depthCompareOp ) const VULKAN_HPP_NOEXCEPT 4996 { 4997 return ::vkCmdSetDepthCompareOpEXT( commandBuffer, depthCompareOp ); 4998 } 4999 vkCmdSetDepthBoundsTestEnableEXT(VkCommandBuffer commandBuffer,VkBool32 depthBoundsTestEnable) const5000 void vkCmdSetDepthBoundsTestEnableEXT( VkCommandBuffer commandBuffer, 5001 VkBool32 depthBoundsTestEnable ) const VULKAN_HPP_NOEXCEPT 5002 { 5003 return ::vkCmdSetDepthBoundsTestEnableEXT( commandBuffer, depthBoundsTestEnable ); 5004 } 5005 vkCmdSetStencilTestEnableEXT(VkCommandBuffer commandBuffer,VkBool32 stencilTestEnable) const5006 void vkCmdSetStencilTestEnableEXT( VkCommandBuffer commandBuffer, 5007 VkBool32 stencilTestEnable ) const VULKAN_HPP_NOEXCEPT 5008 { 5009 return ::vkCmdSetStencilTestEnableEXT( commandBuffer, stencilTestEnable ); 5010 } 5011 vkCmdSetStencilOpEXT(VkCommandBuffer commandBuffer,VkStencilFaceFlags faceMask,VkStencilOp failOp,VkStencilOp passOp,VkStencilOp depthFailOp,VkCompareOp compareOp) const5012 void vkCmdSetStencilOpEXT( VkCommandBuffer commandBuffer, 5013 VkStencilFaceFlags faceMask, 5014 VkStencilOp failOp, 5015 VkStencilOp passOp, 5016 VkStencilOp depthFailOp, 5017 VkCompareOp compareOp ) const VULKAN_HPP_NOEXCEPT 5018 { 5019 return ::vkCmdSetStencilOpEXT( commandBuffer, faceMask, failOp, passOp, depthFailOp, compareOp ); 5020 } 5021 5022 //=== VK_KHR_deferred_host_operations === 5023 vkCreateDeferredOperationKHR(VkDevice device,const VkAllocationCallbacks * pAllocator,VkDeferredOperationKHR * pDeferredOperation) const5024 VkResult vkCreateDeferredOperationKHR( VkDevice device, 5025 const VkAllocationCallbacks * pAllocator, 5026 VkDeferredOperationKHR * pDeferredOperation ) const VULKAN_HPP_NOEXCEPT 5027 { 5028 return ::vkCreateDeferredOperationKHR( device, pAllocator, pDeferredOperation ); 5029 } 5030 vkDestroyDeferredOperationKHR(VkDevice device,VkDeferredOperationKHR operation,const VkAllocationCallbacks * pAllocator) const5031 void vkDestroyDeferredOperationKHR( VkDevice device, 5032 VkDeferredOperationKHR operation, 5033 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 5034 { 5035 return ::vkDestroyDeferredOperationKHR( device, operation, pAllocator ); 5036 } 5037 vkGetDeferredOperationMaxConcurrencyKHR(VkDevice device,VkDeferredOperationKHR operation) const5038 uint32_t vkGetDeferredOperationMaxConcurrencyKHR( VkDevice device, 5039 VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT 5040 { 5041 return ::vkGetDeferredOperationMaxConcurrencyKHR( device, operation ); 5042 } 5043 vkGetDeferredOperationResultKHR(VkDevice device,VkDeferredOperationKHR operation) const5044 VkResult vkGetDeferredOperationResultKHR( VkDevice device, 5045 VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT 5046 { 5047 return ::vkGetDeferredOperationResultKHR( device, operation ); 5048 } 5049 vkDeferredOperationJoinKHR(VkDevice device,VkDeferredOperationKHR operation) const5050 VkResult vkDeferredOperationJoinKHR( VkDevice device, VkDeferredOperationKHR operation ) const VULKAN_HPP_NOEXCEPT 5051 { 5052 return ::vkDeferredOperationJoinKHR( device, operation ); 5053 } 5054 5055 //=== VK_KHR_pipeline_executable_properties === 5056 5057 VkResult vkGetPipelineExecutablePropertiesKHR(VkDevice device,const VkPipelineInfoKHR * pPipelineInfo,uint32_t * pExecutableCount,VkPipelineExecutablePropertiesKHR * pProperties) const5058 vkGetPipelineExecutablePropertiesKHR( VkDevice device, 5059 const VkPipelineInfoKHR * pPipelineInfo, 5060 uint32_t * pExecutableCount, 5061 VkPipelineExecutablePropertiesKHR * pProperties ) const VULKAN_HPP_NOEXCEPT 5062 { 5063 return ::vkGetPipelineExecutablePropertiesKHR( device, pPipelineInfo, pExecutableCount, pProperties ); 5064 } 5065 5066 VkResult vkGetPipelineExecutableStatisticsKHR(VkDevice device,const VkPipelineExecutableInfoKHR * pExecutableInfo,uint32_t * pStatisticCount,VkPipelineExecutableStatisticKHR * pStatistics) const5067 vkGetPipelineExecutableStatisticsKHR( VkDevice device, 5068 const VkPipelineExecutableInfoKHR * pExecutableInfo, 5069 uint32_t * pStatisticCount, 5070 VkPipelineExecutableStatisticKHR * pStatistics ) const VULKAN_HPP_NOEXCEPT 5071 { 5072 return ::vkGetPipelineExecutableStatisticsKHR( device, pExecutableInfo, pStatisticCount, pStatistics ); 5073 } 5074 vkGetPipelineExecutableInternalRepresentationsKHR(VkDevice device,const VkPipelineExecutableInfoKHR * pExecutableInfo,uint32_t * pInternalRepresentationCount,VkPipelineExecutableInternalRepresentationKHR * pInternalRepresentations) const5075 VkResult vkGetPipelineExecutableInternalRepresentationsKHR( 5076 VkDevice device, 5077 const VkPipelineExecutableInfoKHR * pExecutableInfo, 5078 uint32_t * pInternalRepresentationCount, 5079 VkPipelineExecutableInternalRepresentationKHR * pInternalRepresentations ) const VULKAN_HPP_NOEXCEPT 5080 { 5081 return ::vkGetPipelineExecutableInternalRepresentationsKHR( 5082 device, pExecutableInfo, pInternalRepresentationCount, pInternalRepresentations ); 5083 } 5084 5085 //=== VK_NV_device_generated_commands === 5086 vkGetGeneratedCommandsMemoryRequirementsNV(VkDevice device,const VkGeneratedCommandsMemoryRequirementsInfoNV * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const5087 void vkGetGeneratedCommandsMemoryRequirementsNV( VkDevice device, 5088 const VkGeneratedCommandsMemoryRequirementsInfoNV * pInfo, 5089 VkMemoryRequirements2 * pMemoryRequirements ) const 5090 VULKAN_HPP_NOEXCEPT 5091 { 5092 return ::vkGetGeneratedCommandsMemoryRequirementsNV( device, pInfo, pMemoryRequirements ); 5093 } 5094 vkCmdPreprocessGeneratedCommandsNV(VkCommandBuffer commandBuffer,const VkGeneratedCommandsInfoNV * pGeneratedCommandsInfo) const5095 void vkCmdPreprocessGeneratedCommandsNV( VkCommandBuffer commandBuffer, 5096 const VkGeneratedCommandsInfoNV * pGeneratedCommandsInfo ) const 5097 VULKAN_HPP_NOEXCEPT 5098 { 5099 return ::vkCmdPreprocessGeneratedCommandsNV( commandBuffer, pGeneratedCommandsInfo ); 5100 } 5101 vkCmdExecuteGeneratedCommandsNV(VkCommandBuffer commandBuffer,VkBool32 isPreprocessed,const VkGeneratedCommandsInfoNV * pGeneratedCommandsInfo) const5102 void vkCmdExecuteGeneratedCommandsNV( VkCommandBuffer commandBuffer, 5103 VkBool32 isPreprocessed, 5104 const VkGeneratedCommandsInfoNV * pGeneratedCommandsInfo ) const 5105 VULKAN_HPP_NOEXCEPT 5106 { 5107 return ::vkCmdExecuteGeneratedCommandsNV( commandBuffer, isPreprocessed, pGeneratedCommandsInfo ); 5108 } 5109 vkCmdBindPipelineShaderGroupNV(VkCommandBuffer commandBuffer,VkPipelineBindPoint pipelineBindPoint,VkPipeline pipeline,uint32_t groupIndex) const5110 void vkCmdBindPipelineShaderGroupNV( VkCommandBuffer commandBuffer, 5111 VkPipelineBindPoint pipelineBindPoint, 5112 VkPipeline pipeline, 5113 uint32_t groupIndex ) const VULKAN_HPP_NOEXCEPT 5114 { 5115 return ::vkCmdBindPipelineShaderGroupNV( commandBuffer, pipelineBindPoint, pipeline, groupIndex ); 5116 } 5117 5118 VkResult vkCreateIndirectCommandsLayoutNV(VkDevice device,const VkIndirectCommandsLayoutCreateInfoNV * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkIndirectCommandsLayoutNV * pIndirectCommandsLayout) const5119 vkCreateIndirectCommandsLayoutNV( VkDevice device, 5120 const VkIndirectCommandsLayoutCreateInfoNV * pCreateInfo, 5121 const VkAllocationCallbacks * pAllocator, 5122 VkIndirectCommandsLayoutNV * pIndirectCommandsLayout ) const VULKAN_HPP_NOEXCEPT 5123 { 5124 return ::vkCreateIndirectCommandsLayoutNV( device, pCreateInfo, pAllocator, pIndirectCommandsLayout ); 5125 } 5126 vkDestroyIndirectCommandsLayoutNV(VkDevice device,VkIndirectCommandsLayoutNV indirectCommandsLayout,const VkAllocationCallbacks * pAllocator) const5127 void vkDestroyIndirectCommandsLayoutNV( VkDevice device, 5128 VkIndirectCommandsLayoutNV indirectCommandsLayout, 5129 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 5130 { 5131 return ::vkDestroyIndirectCommandsLayoutNV( device, indirectCommandsLayout, pAllocator ); 5132 } 5133 5134 //=== VK_EXT_acquire_drm_display === 5135 vkAcquireDrmDisplayEXT(VkPhysicalDevice physicalDevice,int32_t drmFd,VkDisplayKHR display) const5136 VkResult vkAcquireDrmDisplayEXT( VkPhysicalDevice physicalDevice, 5137 int32_t drmFd, 5138 VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT 5139 { 5140 return ::vkAcquireDrmDisplayEXT( physicalDevice, drmFd, display ); 5141 } 5142 vkGetDrmDisplayEXT(VkPhysicalDevice physicalDevice,int32_t drmFd,uint32_t connectorId,VkDisplayKHR * display) const5143 VkResult vkGetDrmDisplayEXT( VkPhysicalDevice physicalDevice, 5144 int32_t drmFd, 5145 uint32_t connectorId, 5146 VkDisplayKHR * display ) const VULKAN_HPP_NOEXCEPT 5147 { 5148 return ::vkGetDrmDisplayEXT( physicalDevice, drmFd, connectorId, display ); 5149 } 5150 5151 //=== VK_EXT_private_data === 5152 vkCreatePrivateDataSlotEXT(VkDevice device,const VkPrivateDataSlotCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkPrivateDataSlotEXT * pPrivateDataSlot) const5153 VkResult vkCreatePrivateDataSlotEXT( VkDevice device, 5154 const VkPrivateDataSlotCreateInfoEXT * pCreateInfo, 5155 const VkAllocationCallbacks * pAllocator, 5156 VkPrivateDataSlotEXT * pPrivateDataSlot ) const VULKAN_HPP_NOEXCEPT 5157 { 5158 return ::vkCreatePrivateDataSlotEXT( device, pCreateInfo, pAllocator, pPrivateDataSlot ); 5159 } 5160 vkDestroyPrivateDataSlotEXT(VkDevice device,VkPrivateDataSlotEXT privateDataSlot,const VkAllocationCallbacks * pAllocator) const5161 void vkDestroyPrivateDataSlotEXT( VkDevice device, 5162 VkPrivateDataSlotEXT privateDataSlot, 5163 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 5164 { 5165 return ::vkDestroyPrivateDataSlotEXT( device, privateDataSlot, pAllocator ); 5166 } 5167 vkSetPrivateDataEXT(VkDevice device,VkObjectType objectType,uint64_t objectHandle,VkPrivateDataSlotEXT privateDataSlot,uint64_t data) const5168 VkResult vkSetPrivateDataEXT( VkDevice device, 5169 VkObjectType objectType, 5170 uint64_t objectHandle, 5171 VkPrivateDataSlotEXT privateDataSlot, 5172 uint64_t data ) const VULKAN_HPP_NOEXCEPT 5173 { 5174 return ::vkSetPrivateDataEXT( device, objectType, objectHandle, privateDataSlot, data ); 5175 } 5176 vkGetPrivateDataEXT(VkDevice device,VkObjectType objectType,uint64_t objectHandle,VkPrivateDataSlotEXT privateDataSlot,uint64_t * pData) const5177 void vkGetPrivateDataEXT( VkDevice device, 5178 VkObjectType objectType, 5179 uint64_t objectHandle, 5180 VkPrivateDataSlotEXT privateDataSlot, 5181 uint64_t * pData ) const VULKAN_HPP_NOEXCEPT 5182 { 5183 return ::vkGetPrivateDataEXT( device, objectType, objectHandle, privateDataSlot, pData ); 5184 } 5185 5186 # if defined( VK_ENABLE_BETA_EXTENSIONS ) 5187 //=== VK_KHR_video_encode_queue === 5188 vkCmdEncodeVideoKHR(VkCommandBuffer commandBuffer,const VkVideoEncodeInfoKHR * pEncodeInfo) const5189 void vkCmdEncodeVideoKHR( VkCommandBuffer commandBuffer, 5190 const VkVideoEncodeInfoKHR * pEncodeInfo ) const VULKAN_HPP_NOEXCEPT 5191 { 5192 return ::vkCmdEncodeVideoKHR( commandBuffer, pEncodeInfo ); 5193 } 5194 # endif /*VK_ENABLE_BETA_EXTENSIONS*/ 5195 5196 //=== VK_KHR_synchronization2 === 5197 vkCmdSetEvent2KHR(VkCommandBuffer commandBuffer,VkEvent event,const VkDependencyInfoKHR * pDependencyInfo) const5198 void vkCmdSetEvent2KHR( VkCommandBuffer commandBuffer, 5199 VkEvent event, 5200 const VkDependencyInfoKHR * pDependencyInfo ) const VULKAN_HPP_NOEXCEPT 5201 { 5202 return ::vkCmdSetEvent2KHR( commandBuffer, event, pDependencyInfo ); 5203 } 5204 vkCmdResetEvent2KHR(VkCommandBuffer commandBuffer,VkEvent event,VkPipelineStageFlags2KHR stageMask) const5205 void vkCmdResetEvent2KHR( VkCommandBuffer commandBuffer, 5206 VkEvent event, 5207 VkPipelineStageFlags2KHR stageMask ) const VULKAN_HPP_NOEXCEPT 5208 { 5209 return ::vkCmdResetEvent2KHR( commandBuffer, event, stageMask ); 5210 } 5211 vkCmdWaitEvents2KHR(VkCommandBuffer commandBuffer,uint32_t eventCount,const VkEvent * pEvents,const VkDependencyInfoKHR * pDependencyInfos) const5212 void vkCmdWaitEvents2KHR( VkCommandBuffer commandBuffer, 5213 uint32_t eventCount, 5214 const VkEvent * pEvents, 5215 const VkDependencyInfoKHR * pDependencyInfos ) const VULKAN_HPP_NOEXCEPT 5216 { 5217 return ::vkCmdWaitEvents2KHR( commandBuffer, eventCount, pEvents, pDependencyInfos ); 5218 } 5219 vkCmdPipelineBarrier2KHR(VkCommandBuffer commandBuffer,const VkDependencyInfoKHR * pDependencyInfo) const5220 void vkCmdPipelineBarrier2KHR( VkCommandBuffer commandBuffer, 5221 const VkDependencyInfoKHR * pDependencyInfo ) const VULKAN_HPP_NOEXCEPT 5222 { 5223 return ::vkCmdPipelineBarrier2KHR( commandBuffer, pDependencyInfo ); 5224 } 5225 vkCmdWriteTimestamp2KHR(VkCommandBuffer commandBuffer,VkPipelineStageFlags2KHR stage,VkQueryPool queryPool,uint32_t query) const5226 void vkCmdWriteTimestamp2KHR( VkCommandBuffer commandBuffer, 5227 VkPipelineStageFlags2KHR stage, 5228 VkQueryPool queryPool, 5229 uint32_t query ) const VULKAN_HPP_NOEXCEPT 5230 { 5231 return ::vkCmdWriteTimestamp2KHR( commandBuffer, stage, queryPool, query ); 5232 } 5233 vkQueueSubmit2KHR(VkQueue queue,uint32_t submitCount,const VkSubmitInfo2KHR * pSubmits,VkFence fence) const5234 VkResult vkQueueSubmit2KHR( VkQueue queue, 5235 uint32_t submitCount, 5236 const VkSubmitInfo2KHR * pSubmits, 5237 VkFence fence ) const VULKAN_HPP_NOEXCEPT 5238 { 5239 return ::vkQueueSubmit2KHR( queue, submitCount, pSubmits, fence ); 5240 } 5241 vkCmdWriteBufferMarker2AMD(VkCommandBuffer commandBuffer,VkPipelineStageFlags2KHR stage,VkBuffer dstBuffer,VkDeviceSize dstOffset,uint32_t marker) const5242 void vkCmdWriteBufferMarker2AMD( VkCommandBuffer commandBuffer, 5243 VkPipelineStageFlags2KHR stage, 5244 VkBuffer dstBuffer, 5245 VkDeviceSize dstOffset, 5246 uint32_t marker ) const VULKAN_HPP_NOEXCEPT 5247 { 5248 return ::vkCmdWriteBufferMarker2AMD( commandBuffer, stage, dstBuffer, dstOffset, marker ); 5249 } 5250 vkGetQueueCheckpointData2NV(VkQueue queue,uint32_t * pCheckpointDataCount,VkCheckpointData2NV * pCheckpointData) const5251 void vkGetQueueCheckpointData2NV( VkQueue queue, 5252 uint32_t * pCheckpointDataCount, 5253 VkCheckpointData2NV * pCheckpointData ) const VULKAN_HPP_NOEXCEPT 5254 { 5255 return ::vkGetQueueCheckpointData2NV( queue, pCheckpointDataCount, pCheckpointData ); 5256 } 5257 5258 //=== VK_NV_fragment_shading_rate_enums === 5259 vkCmdSetFragmentShadingRateEnumNV(VkCommandBuffer commandBuffer,VkFragmentShadingRateNV shadingRate,const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) const5260 void vkCmdSetFragmentShadingRateEnumNV( VkCommandBuffer commandBuffer, 5261 VkFragmentShadingRateNV shadingRate, 5262 const VkFragmentShadingRateCombinerOpKHR combinerOps[2] ) const 5263 VULKAN_HPP_NOEXCEPT 5264 { 5265 return ::vkCmdSetFragmentShadingRateEnumNV( commandBuffer, shadingRate, combinerOps ); 5266 } 5267 5268 //=== VK_KHR_copy_commands2 === 5269 vkCmdCopyBuffer2KHR(VkCommandBuffer commandBuffer,const VkCopyBufferInfo2KHR * pCopyBufferInfo) const5270 void vkCmdCopyBuffer2KHR( VkCommandBuffer commandBuffer, 5271 const VkCopyBufferInfo2KHR * pCopyBufferInfo ) const VULKAN_HPP_NOEXCEPT 5272 { 5273 return ::vkCmdCopyBuffer2KHR( commandBuffer, pCopyBufferInfo ); 5274 } 5275 vkCmdCopyImage2KHR(VkCommandBuffer commandBuffer,const VkCopyImageInfo2KHR * pCopyImageInfo) const5276 void vkCmdCopyImage2KHR( VkCommandBuffer commandBuffer, 5277 const VkCopyImageInfo2KHR * pCopyImageInfo ) const VULKAN_HPP_NOEXCEPT 5278 { 5279 return ::vkCmdCopyImage2KHR( commandBuffer, pCopyImageInfo ); 5280 } 5281 5282 void vkCmdCopyBufferToImage2KHR(VkCommandBuffer commandBuffer,const VkCopyBufferToImageInfo2KHR * pCopyBufferToImageInfo) const5283 vkCmdCopyBufferToImage2KHR( VkCommandBuffer commandBuffer, 5284 const VkCopyBufferToImageInfo2KHR * pCopyBufferToImageInfo ) const VULKAN_HPP_NOEXCEPT 5285 { 5286 return ::vkCmdCopyBufferToImage2KHR( commandBuffer, pCopyBufferToImageInfo ); 5287 } 5288 5289 void vkCmdCopyImageToBuffer2KHR(VkCommandBuffer commandBuffer,const VkCopyImageToBufferInfo2KHR * pCopyImageToBufferInfo) const5290 vkCmdCopyImageToBuffer2KHR( VkCommandBuffer commandBuffer, 5291 const VkCopyImageToBufferInfo2KHR * pCopyImageToBufferInfo ) const VULKAN_HPP_NOEXCEPT 5292 { 5293 return ::vkCmdCopyImageToBuffer2KHR( commandBuffer, pCopyImageToBufferInfo ); 5294 } 5295 vkCmdBlitImage2KHR(VkCommandBuffer commandBuffer,const VkBlitImageInfo2KHR * pBlitImageInfo) const5296 void vkCmdBlitImage2KHR( VkCommandBuffer commandBuffer, 5297 const VkBlitImageInfo2KHR * pBlitImageInfo ) const VULKAN_HPP_NOEXCEPT 5298 { 5299 return ::vkCmdBlitImage2KHR( commandBuffer, pBlitImageInfo ); 5300 } 5301 vkCmdResolveImage2KHR(VkCommandBuffer commandBuffer,const VkResolveImageInfo2KHR * pResolveImageInfo) const5302 void vkCmdResolveImage2KHR( VkCommandBuffer commandBuffer, 5303 const VkResolveImageInfo2KHR * pResolveImageInfo ) const VULKAN_HPP_NOEXCEPT 5304 { 5305 return ::vkCmdResolveImage2KHR( commandBuffer, pResolveImageInfo ); 5306 } 5307 5308 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 5309 //=== VK_NV_acquire_winrt_display === 5310 vkAcquireWinrtDisplayNV(VkPhysicalDevice physicalDevice,VkDisplayKHR display) const5311 VkResult vkAcquireWinrtDisplayNV( VkPhysicalDevice physicalDevice, VkDisplayKHR display ) const VULKAN_HPP_NOEXCEPT 5312 { 5313 return ::vkAcquireWinrtDisplayNV( physicalDevice, display ); 5314 } 5315 vkGetWinrtDisplayNV(VkPhysicalDevice physicalDevice,uint32_t deviceRelativeId,VkDisplayKHR * pDisplay) const5316 VkResult vkGetWinrtDisplayNV( VkPhysicalDevice physicalDevice, 5317 uint32_t deviceRelativeId, 5318 VkDisplayKHR * pDisplay ) const VULKAN_HPP_NOEXCEPT 5319 { 5320 return ::vkGetWinrtDisplayNV( physicalDevice, deviceRelativeId, pDisplay ); 5321 } 5322 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 5323 5324 # if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 5325 //=== VK_EXT_directfb_surface === 5326 vkCreateDirectFBSurfaceEXT(VkInstance instance,const VkDirectFBSurfaceCreateInfoEXT * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const5327 VkResult vkCreateDirectFBSurfaceEXT( VkInstance instance, 5328 const VkDirectFBSurfaceCreateInfoEXT * pCreateInfo, 5329 const VkAllocationCallbacks * pAllocator, 5330 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 5331 { 5332 return ::vkCreateDirectFBSurfaceEXT( instance, pCreateInfo, pAllocator, pSurface ); 5333 } 5334 vkGetPhysicalDeviceDirectFBPresentationSupportEXT(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,IDirectFB * dfb) const5335 VkBool32 vkGetPhysicalDeviceDirectFBPresentationSupportEXT( VkPhysicalDevice physicalDevice, 5336 uint32_t queueFamilyIndex, 5337 IDirectFB * dfb ) const VULKAN_HPP_NOEXCEPT 5338 { 5339 return ::vkGetPhysicalDeviceDirectFBPresentationSupportEXT( physicalDevice, queueFamilyIndex, dfb ); 5340 } 5341 # endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 5342 5343 //=== VK_KHR_ray_tracing_pipeline === 5344 vkCmdTraceRaysKHR(VkCommandBuffer commandBuffer,const VkStridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,const VkStridedDeviceAddressRegionKHR * pMissShaderBindingTable,const VkStridedDeviceAddressRegionKHR * pHitShaderBindingTable,const VkStridedDeviceAddressRegionKHR * pCallableShaderBindingTable,uint32_t width,uint32_t height,uint32_t depth) const5345 void vkCmdTraceRaysKHR( VkCommandBuffer commandBuffer, 5346 const VkStridedDeviceAddressRegionKHR * pRaygenShaderBindingTable, 5347 const VkStridedDeviceAddressRegionKHR * pMissShaderBindingTable, 5348 const VkStridedDeviceAddressRegionKHR * pHitShaderBindingTable, 5349 const VkStridedDeviceAddressRegionKHR * pCallableShaderBindingTable, 5350 uint32_t width, 5351 uint32_t height, 5352 uint32_t depth ) const VULKAN_HPP_NOEXCEPT 5353 { 5354 return ::vkCmdTraceRaysKHR( commandBuffer, 5355 pRaygenShaderBindingTable, 5356 pMissShaderBindingTable, 5357 pHitShaderBindingTable, 5358 pCallableShaderBindingTable, 5359 width, 5360 height, 5361 depth ); 5362 } 5363 vkCreateRayTracingPipelinesKHR(VkDevice device,VkDeferredOperationKHR deferredOperation,VkPipelineCache pipelineCache,uint32_t createInfoCount,const VkRayTracingPipelineCreateInfoKHR * pCreateInfos,const VkAllocationCallbacks * pAllocator,VkPipeline * pPipelines) const5364 VkResult vkCreateRayTracingPipelinesKHR( VkDevice device, 5365 VkDeferredOperationKHR deferredOperation, 5366 VkPipelineCache pipelineCache, 5367 uint32_t createInfoCount, 5368 const VkRayTracingPipelineCreateInfoKHR * pCreateInfos, 5369 const VkAllocationCallbacks * pAllocator, 5370 VkPipeline * pPipelines ) const VULKAN_HPP_NOEXCEPT 5371 { 5372 return ::vkCreateRayTracingPipelinesKHR( 5373 device, deferredOperation, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines ); 5374 } 5375 vkGetRayTracingShaderGroupHandlesKHR(VkDevice device,VkPipeline pipeline,uint32_t firstGroup,uint32_t groupCount,size_t dataSize,void * pData) const5376 VkResult vkGetRayTracingShaderGroupHandlesKHR( VkDevice device, 5377 VkPipeline pipeline, 5378 uint32_t firstGroup, 5379 uint32_t groupCount, 5380 size_t dataSize, 5381 void * pData ) const VULKAN_HPP_NOEXCEPT 5382 { 5383 return ::vkGetRayTracingShaderGroupHandlesKHR( device, pipeline, firstGroup, groupCount, dataSize, pData ); 5384 } 5385 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(VkDevice device,VkPipeline pipeline,uint32_t firstGroup,uint32_t groupCount,size_t dataSize,void * pData) const5386 VkResult vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( VkDevice device, 5387 VkPipeline pipeline, 5388 uint32_t firstGroup, 5389 uint32_t groupCount, 5390 size_t dataSize, 5391 void * pData ) const VULKAN_HPP_NOEXCEPT 5392 { 5393 return ::vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( 5394 device, pipeline, firstGroup, groupCount, dataSize, pData ); 5395 } 5396 vkCmdTraceRaysIndirectKHR(VkCommandBuffer commandBuffer,const VkStridedDeviceAddressRegionKHR * pRaygenShaderBindingTable,const VkStridedDeviceAddressRegionKHR * pMissShaderBindingTable,const VkStridedDeviceAddressRegionKHR * pHitShaderBindingTable,const VkStridedDeviceAddressRegionKHR * pCallableShaderBindingTable,VkDeviceAddress indirectDeviceAddress) const5397 void vkCmdTraceRaysIndirectKHR( VkCommandBuffer commandBuffer, 5398 const VkStridedDeviceAddressRegionKHR * pRaygenShaderBindingTable, 5399 const VkStridedDeviceAddressRegionKHR * pMissShaderBindingTable, 5400 const VkStridedDeviceAddressRegionKHR * pHitShaderBindingTable, 5401 const VkStridedDeviceAddressRegionKHR * pCallableShaderBindingTable, 5402 VkDeviceAddress indirectDeviceAddress ) const VULKAN_HPP_NOEXCEPT 5403 { 5404 return ::vkCmdTraceRaysIndirectKHR( commandBuffer, 5405 pRaygenShaderBindingTable, 5406 pMissShaderBindingTable, 5407 pHitShaderBindingTable, 5408 pCallableShaderBindingTable, 5409 indirectDeviceAddress ); 5410 } 5411 vkGetRayTracingShaderGroupStackSizeKHR(VkDevice device,VkPipeline pipeline,uint32_t group,VkShaderGroupShaderKHR groupShader) const5412 VkDeviceSize vkGetRayTracingShaderGroupStackSizeKHR( VkDevice device, 5413 VkPipeline pipeline, 5414 uint32_t group, 5415 VkShaderGroupShaderKHR groupShader ) const VULKAN_HPP_NOEXCEPT 5416 { 5417 return ::vkGetRayTracingShaderGroupStackSizeKHR( device, pipeline, group, groupShader ); 5418 } 5419 vkCmdSetRayTracingPipelineStackSizeKHR(VkCommandBuffer commandBuffer,uint32_t pipelineStackSize) const5420 void vkCmdSetRayTracingPipelineStackSizeKHR( VkCommandBuffer commandBuffer, 5421 uint32_t pipelineStackSize ) const VULKAN_HPP_NOEXCEPT 5422 { 5423 return ::vkCmdSetRayTracingPipelineStackSizeKHR( commandBuffer, pipelineStackSize ); 5424 } 5425 5426 //=== VK_EXT_vertex_input_dynamic_state === 5427 vkCmdSetVertexInputEXT(VkCommandBuffer commandBuffer,uint32_t vertexBindingDescriptionCount,const VkVertexInputBindingDescription2EXT * pVertexBindingDescriptions,uint32_t vertexAttributeDescriptionCount,const VkVertexInputAttributeDescription2EXT * pVertexAttributeDescriptions) const5428 void vkCmdSetVertexInputEXT( VkCommandBuffer commandBuffer, 5429 uint32_t vertexBindingDescriptionCount, 5430 const VkVertexInputBindingDescription2EXT * pVertexBindingDescriptions, 5431 uint32_t vertexAttributeDescriptionCount, 5432 const VkVertexInputAttributeDescription2EXT * pVertexAttributeDescriptions ) const 5433 VULKAN_HPP_NOEXCEPT 5434 { 5435 return ::vkCmdSetVertexInputEXT( commandBuffer, 5436 vertexBindingDescriptionCount, 5437 pVertexBindingDescriptions, 5438 vertexAttributeDescriptionCount, 5439 pVertexAttributeDescriptions ); 5440 } 5441 5442 # if defined( VK_USE_PLATFORM_FUCHSIA ) 5443 //=== VK_FUCHSIA_external_memory === 5444 vkGetMemoryZirconHandleFUCHSIA(VkDevice device,const VkMemoryGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,zx_handle_t * pZirconHandle) const5445 VkResult vkGetMemoryZirconHandleFUCHSIA( VkDevice device, 5446 const VkMemoryGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo, 5447 zx_handle_t * pZirconHandle ) const VULKAN_HPP_NOEXCEPT 5448 { 5449 return ::vkGetMemoryZirconHandleFUCHSIA( device, pGetZirconHandleInfo, pZirconHandle ); 5450 } 5451 vkGetMemoryZirconHandlePropertiesFUCHSIA(VkDevice device,VkExternalMemoryHandleTypeFlagBits handleType,zx_handle_t zirconHandle,VkMemoryZirconHandlePropertiesFUCHSIA * pMemoryZirconHandleProperties) const5452 VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA( 5453 VkDevice device, 5454 VkExternalMemoryHandleTypeFlagBits handleType, 5455 zx_handle_t zirconHandle, 5456 VkMemoryZirconHandlePropertiesFUCHSIA * pMemoryZirconHandleProperties ) const VULKAN_HPP_NOEXCEPT 5457 { 5458 return ::vkGetMemoryZirconHandlePropertiesFUCHSIA( 5459 device, handleType, zirconHandle, pMemoryZirconHandleProperties ); 5460 } 5461 # endif /*VK_USE_PLATFORM_FUCHSIA*/ 5462 5463 # if defined( VK_USE_PLATFORM_FUCHSIA ) 5464 //=== VK_FUCHSIA_external_semaphore === 5465 vkImportSemaphoreZirconHandleFUCHSIA(VkDevice device,const VkImportSemaphoreZirconHandleInfoFUCHSIA * pImportSemaphoreZirconHandleInfo) const5466 VkResult vkImportSemaphoreZirconHandleFUCHSIA( 5467 VkDevice device, 5468 const VkImportSemaphoreZirconHandleInfoFUCHSIA * pImportSemaphoreZirconHandleInfo ) const VULKAN_HPP_NOEXCEPT 5469 { 5470 return ::vkImportSemaphoreZirconHandleFUCHSIA( device, pImportSemaphoreZirconHandleInfo ); 5471 } 5472 vkGetSemaphoreZirconHandleFUCHSIA(VkDevice device,const VkSemaphoreGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo,zx_handle_t * pZirconHandle) const5473 VkResult vkGetSemaphoreZirconHandleFUCHSIA( VkDevice device, 5474 const VkSemaphoreGetZirconHandleInfoFUCHSIA * pGetZirconHandleInfo, 5475 zx_handle_t * pZirconHandle ) const VULKAN_HPP_NOEXCEPT 5476 { 5477 return ::vkGetSemaphoreZirconHandleFUCHSIA( device, pGetZirconHandleInfo, pZirconHandle ); 5478 } 5479 # endif /*VK_USE_PLATFORM_FUCHSIA*/ 5480 5481 # if defined( VK_USE_PLATFORM_FUCHSIA ) 5482 //=== VK_FUCHSIA_buffer_collection === 5483 vkCreateBufferCollectionFUCHSIA(VkDevice device,const VkBufferCollectionCreateInfoFUCHSIA * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkBufferCollectionFUCHSIA * pCollection) const5484 VkResult vkCreateBufferCollectionFUCHSIA( VkDevice device, 5485 const VkBufferCollectionCreateInfoFUCHSIA * pCreateInfo, 5486 const VkAllocationCallbacks * pAllocator, 5487 VkBufferCollectionFUCHSIA * pCollection ) const VULKAN_HPP_NOEXCEPT 5488 { 5489 return ::vkCreateBufferCollectionFUCHSIA( device, pCreateInfo, pAllocator, pCollection ); 5490 } 5491 vkSetBufferCollectionImageConstraintsFUCHSIA(VkDevice device,VkBufferCollectionFUCHSIA collection,const VkImageConstraintsInfoFUCHSIA * pImageConstraintsInfo) const5492 VkResult vkSetBufferCollectionImageConstraintsFUCHSIA( 5493 VkDevice device, 5494 VkBufferCollectionFUCHSIA collection, 5495 const VkImageConstraintsInfoFUCHSIA * pImageConstraintsInfo ) const VULKAN_HPP_NOEXCEPT 5496 { 5497 return ::vkSetBufferCollectionImageConstraintsFUCHSIA( device, collection, pImageConstraintsInfo ); 5498 } 5499 vkSetBufferCollectionBufferConstraintsFUCHSIA(VkDevice device,VkBufferCollectionFUCHSIA collection,const VkBufferConstraintsInfoFUCHSIA * pBufferConstraintsInfo) const5500 VkResult vkSetBufferCollectionBufferConstraintsFUCHSIA( 5501 VkDevice device, 5502 VkBufferCollectionFUCHSIA collection, 5503 const VkBufferConstraintsInfoFUCHSIA * pBufferConstraintsInfo ) const VULKAN_HPP_NOEXCEPT 5504 { 5505 return ::vkSetBufferCollectionBufferConstraintsFUCHSIA( device, collection, pBufferConstraintsInfo ); 5506 } 5507 vkDestroyBufferCollectionFUCHSIA(VkDevice device,VkBufferCollectionFUCHSIA collection,const VkAllocationCallbacks * pAllocator) const5508 void vkDestroyBufferCollectionFUCHSIA( VkDevice device, 5509 VkBufferCollectionFUCHSIA collection, 5510 const VkAllocationCallbacks * pAllocator ) const VULKAN_HPP_NOEXCEPT 5511 { 5512 return ::vkDestroyBufferCollectionFUCHSIA( device, collection, pAllocator ); 5513 } 5514 vkGetBufferCollectionPropertiesFUCHSIA(VkDevice device,VkBufferCollectionFUCHSIA collection,VkBufferCollectionPropertiesFUCHSIA * pProperties) const5515 VkResult vkGetBufferCollectionPropertiesFUCHSIA( VkDevice device, 5516 VkBufferCollectionFUCHSIA collection, 5517 VkBufferCollectionPropertiesFUCHSIA * pProperties ) const 5518 VULKAN_HPP_NOEXCEPT 5519 { 5520 return ::vkGetBufferCollectionPropertiesFUCHSIA( device, collection, pProperties ); 5521 } 5522 # endif /*VK_USE_PLATFORM_FUCHSIA*/ 5523 5524 //=== VK_HUAWEI_subpass_shading === 5525 vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(VkDevice device,VkRenderPass renderpass,VkExtent2D * pMaxWorkgroupSize) const5526 VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( VkDevice device, 5527 VkRenderPass renderpass, 5528 VkExtent2D * pMaxWorkgroupSize ) const VULKAN_HPP_NOEXCEPT 5529 { 5530 return ::vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( device, renderpass, pMaxWorkgroupSize ); 5531 } 5532 vkCmdSubpassShadingHUAWEI(VkCommandBuffer commandBuffer) const5533 void vkCmdSubpassShadingHUAWEI( VkCommandBuffer commandBuffer ) const VULKAN_HPP_NOEXCEPT 5534 { 5535 return ::vkCmdSubpassShadingHUAWEI( commandBuffer ); 5536 } 5537 5538 //=== VK_HUAWEI_invocation_mask === 5539 vkCmdBindInvocationMaskHUAWEI(VkCommandBuffer commandBuffer,VkImageView imageView,VkImageLayout imageLayout) const5540 void vkCmdBindInvocationMaskHUAWEI( VkCommandBuffer commandBuffer, 5541 VkImageView imageView, 5542 VkImageLayout imageLayout ) const VULKAN_HPP_NOEXCEPT 5543 { 5544 return ::vkCmdBindInvocationMaskHUAWEI( commandBuffer, imageView, imageLayout ); 5545 } 5546 5547 //=== VK_NV_external_memory_rdma === 5548 vkGetMemoryRemoteAddressNV(VkDevice device,const VkMemoryGetRemoteAddressInfoNV * pMemoryGetRemoteAddressInfo,VkRemoteAddressNV * pAddress) const5549 VkResult vkGetMemoryRemoteAddressNV( VkDevice device, 5550 const VkMemoryGetRemoteAddressInfoNV * pMemoryGetRemoteAddressInfo, 5551 VkRemoteAddressNV * pAddress ) const VULKAN_HPP_NOEXCEPT 5552 { 5553 return ::vkGetMemoryRemoteAddressNV( device, pMemoryGetRemoteAddressInfo, pAddress ); 5554 } 5555 5556 //=== VK_EXT_extended_dynamic_state2 === 5557 vkCmdSetPatchControlPointsEXT(VkCommandBuffer commandBuffer,uint32_t patchControlPoints) const5558 void vkCmdSetPatchControlPointsEXT( VkCommandBuffer commandBuffer, 5559 uint32_t patchControlPoints ) const VULKAN_HPP_NOEXCEPT 5560 { 5561 return ::vkCmdSetPatchControlPointsEXT( commandBuffer, patchControlPoints ); 5562 } 5563 vkCmdSetRasterizerDiscardEnableEXT(VkCommandBuffer commandBuffer,VkBool32 rasterizerDiscardEnable) const5564 void vkCmdSetRasterizerDiscardEnableEXT( VkCommandBuffer commandBuffer, 5565 VkBool32 rasterizerDiscardEnable ) const VULKAN_HPP_NOEXCEPT 5566 { 5567 return ::vkCmdSetRasterizerDiscardEnableEXT( commandBuffer, rasterizerDiscardEnable ); 5568 } 5569 vkCmdSetDepthBiasEnableEXT(VkCommandBuffer commandBuffer,VkBool32 depthBiasEnable) const5570 void vkCmdSetDepthBiasEnableEXT( VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable ) const VULKAN_HPP_NOEXCEPT 5571 { 5572 return ::vkCmdSetDepthBiasEnableEXT( commandBuffer, depthBiasEnable ); 5573 } 5574 vkCmdSetLogicOpEXT(VkCommandBuffer commandBuffer,VkLogicOp logicOp) const5575 void vkCmdSetLogicOpEXT( VkCommandBuffer commandBuffer, VkLogicOp logicOp ) const VULKAN_HPP_NOEXCEPT 5576 { 5577 return ::vkCmdSetLogicOpEXT( commandBuffer, logicOp ); 5578 } 5579 vkCmdSetPrimitiveRestartEnableEXT(VkCommandBuffer commandBuffer,VkBool32 primitiveRestartEnable) const5580 void vkCmdSetPrimitiveRestartEnableEXT( VkCommandBuffer commandBuffer, 5581 VkBool32 primitiveRestartEnable ) const VULKAN_HPP_NOEXCEPT 5582 { 5583 return ::vkCmdSetPrimitiveRestartEnableEXT( commandBuffer, primitiveRestartEnable ); 5584 } 5585 5586 # if defined( VK_USE_PLATFORM_SCREEN_QNX ) 5587 //=== VK_QNX_screen_surface === 5588 vkCreateScreenSurfaceQNX(VkInstance instance,const VkScreenSurfaceCreateInfoQNX * pCreateInfo,const VkAllocationCallbacks * pAllocator,VkSurfaceKHR * pSurface) const5589 VkResult vkCreateScreenSurfaceQNX( VkInstance instance, 5590 const VkScreenSurfaceCreateInfoQNX * pCreateInfo, 5591 const VkAllocationCallbacks * pAllocator, 5592 VkSurfaceKHR * pSurface ) const VULKAN_HPP_NOEXCEPT 5593 { 5594 return ::vkCreateScreenSurfaceQNX( instance, pCreateInfo, pAllocator, pSurface ); 5595 } 5596 vkGetPhysicalDeviceScreenPresentationSupportQNX(VkPhysicalDevice physicalDevice,uint32_t queueFamilyIndex,struct _screen_window * window) const5597 VkBool32 vkGetPhysicalDeviceScreenPresentationSupportQNX( VkPhysicalDevice physicalDevice, 5598 uint32_t queueFamilyIndex, 5599 struct _screen_window * window ) const VULKAN_HPP_NOEXCEPT 5600 { 5601 return ::vkGetPhysicalDeviceScreenPresentationSupportQNX( physicalDevice, queueFamilyIndex, window ); 5602 } 5603 # endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 5604 5605 //=== VK_EXT_color_write_enable === 5606 vkCmdSetColorWriteEnableEXT(VkCommandBuffer commandBuffer,uint32_t attachmentCount,const VkBool32 * pColorWriteEnables) const5607 void vkCmdSetColorWriteEnableEXT( VkCommandBuffer commandBuffer, 5608 uint32_t attachmentCount, 5609 const VkBool32 * pColorWriteEnables ) const VULKAN_HPP_NOEXCEPT 5610 { 5611 return ::vkCmdSetColorWriteEnableEXT( commandBuffer, attachmentCount, pColorWriteEnables ); 5612 } 5613 5614 //=== VK_EXT_multi_draw === 5615 vkCmdDrawMultiEXT(VkCommandBuffer commandBuffer,uint32_t drawCount,const VkMultiDrawInfoEXT * pVertexInfo,uint32_t instanceCount,uint32_t firstInstance,uint32_t stride) const5616 void vkCmdDrawMultiEXT( VkCommandBuffer commandBuffer, 5617 uint32_t drawCount, 5618 const VkMultiDrawInfoEXT * pVertexInfo, 5619 uint32_t instanceCount, 5620 uint32_t firstInstance, 5621 uint32_t stride ) const VULKAN_HPP_NOEXCEPT 5622 { 5623 return ::vkCmdDrawMultiEXT( commandBuffer, drawCount, pVertexInfo, instanceCount, firstInstance, stride ); 5624 } 5625 vkCmdDrawMultiIndexedEXT(VkCommandBuffer commandBuffer,uint32_t drawCount,const VkMultiDrawIndexedInfoEXT * pIndexInfo,uint32_t instanceCount,uint32_t firstInstance,uint32_t stride,const int32_t * pVertexOffset) const5626 void vkCmdDrawMultiIndexedEXT( VkCommandBuffer commandBuffer, 5627 uint32_t drawCount, 5628 const VkMultiDrawIndexedInfoEXT * pIndexInfo, 5629 uint32_t instanceCount, 5630 uint32_t firstInstance, 5631 uint32_t stride, 5632 const int32_t * pVertexOffset ) const VULKAN_HPP_NOEXCEPT 5633 { 5634 return ::vkCmdDrawMultiIndexedEXT( 5635 commandBuffer, drawCount, pIndexInfo, instanceCount, firstInstance, stride, pVertexOffset ); 5636 } 5637 5638 //=== VK_EXT_pageable_device_local_memory === 5639 5640 void vkSetDeviceMemoryPriorityEXT(VkDevice device,VkDeviceMemory memory,float priority) const5641 vkSetDeviceMemoryPriorityEXT( VkDevice device, VkDeviceMemory memory, float priority ) const VULKAN_HPP_NOEXCEPT 5642 { 5643 return ::vkSetDeviceMemoryPriorityEXT( device, memory, priority ); 5644 } 5645 5646 //=== VK_KHR_maintenance4 === 5647 vkGetDeviceBufferMemoryRequirementsKHR(VkDevice device,const VkDeviceBufferMemoryRequirementsKHR * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const5648 void vkGetDeviceBufferMemoryRequirementsKHR( VkDevice device, 5649 const VkDeviceBufferMemoryRequirementsKHR * pInfo, 5650 VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 5651 { 5652 return ::vkGetDeviceBufferMemoryRequirementsKHR( device, pInfo, pMemoryRequirements ); 5653 } 5654 vkGetDeviceImageMemoryRequirementsKHR(VkDevice device,const VkDeviceImageMemoryRequirementsKHR * pInfo,VkMemoryRequirements2 * pMemoryRequirements) const5655 void vkGetDeviceImageMemoryRequirementsKHR( VkDevice device, 5656 const VkDeviceImageMemoryRequirementsKHR * pInfo, 5657 VkMemoryRequirements2 * pMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 5658 { 5659 return ::vkGetDeviceImageMemoryRequirementsKHR( device, pInfo, pMemoryRequirements ); 5660 } 5661 vkGetDeviceImageSparseMemoryRequirementsKHR(VkDevice device,const VkDeviceImageMemoryRequirementsKHR * pInfo,uint32_t * pSparseMemoryRequirementCount,VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements) const5662 void vkGetDeviceImageSparseMemoryRequirementsKHR( 5663 VkDevice device, 5664 const VkDeviceImageMemoryRequirementsKHR * pInfo, 5665 uint32_t * pSparseMemoryRequirementCount, 5666 VkSparseImageMemoryRequirements2 * pSparseMemoryRequirements ) const VULKAN_HPP_NOEXCEPT 5667 { 5668 return ::vkGetDeviceImageSparseMemoryRequirementsKHR( 5669 device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements ); 5670 } 5671 }; 5672 #endif 5673 5674 class DispatchLoaderDynamic; 5675 #if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC ) 5676 # if defined( VK_NO_PROTOTYPES ) 5677 # define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1 5678 # else 5679 # define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 0 5680 # endif 5681 #endif 5682 5683 #if !defined( VULKAN_HPP_STORAGE_API ) 5684 # if defined( VULKAN_HPP_STORAGE_SHARED ) 5685 # if defined( _MSC_VER ) 5686 # if defined( VULKAN_HPP_STORAGE_SHARED_EXPORT ) 5687 # define VULKAN_HPP_STORAGE_API __declspec( dllexport ) 5688 # else 5689 # define VULKAN_HPP_STORAGE_API __declspec( dllimport ) 5690 # endif 5691 # elif defined( __clang__ ) || defined( __GNUC__ ) 5692 # if defined( VULKAN_HPP_STORAGE_SHARED_EXPORT ) 5693 # define VULKAN_HPP_STORAGE_API __attribute__( ( visibility( "default" ) ) ) 5694 # else 5695 # define VULKAN_HPP_STORAGE_API 5696 # endif 5697 # else 5698 # define VULKAN_HPP_STORAGE_API 5699 # pragma warning Unknown import / export semantics 5700 # endif 5701 # else 5702 # define VULKAN_HPP_STORAGE_API 5703 # endif 5704 #endif 5705 5706 #if !defined( VULKAN_HPP_DEFAULT_DISPATCHER ) 5707 # if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1 5708 # define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::defaultDispatchLoaderDynamic 5709 # define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE \ 5710 namespace VULKAN_HPP_NAMESPACE \ 5711 { \ 5712 VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic; \ 5713 } 5714 extern VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic; 5715 # else getDispatchLoaderStatic()5716 static inline ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic & getDispatchLoaderStatic() 5717 { 5718 static ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic dls; 5719 return dls; 5720 } 5721 # define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::getDispatchLoaderStatic() 5722 # define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE 5723 # endif 5724 #endif 5725 5726 #if !defined( VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ) 5727 # if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1 5728 # define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderDynamic 5729 # else 5730 # define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic 5731 # endif 5732 #endif 5733 5734 #if defined( VULKAN_HPP_NO_DEFAULT_DISPATCHER ) 5735 # define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT 5736 # define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT 5737 # define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT 5738 #else 5739 # define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT = {} 5740 # define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT = nullptr 5741 # define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT = VULKAN_HPP_DEFAULT_DISPATCHER 5742 #endif 5743 5744 struct AllocationCallbacks; 5745 5746 template <typename OwnerType, typename Dispatch> 5747 class ObjectDestroy 5748 { 5749 public: 5750 ObjectDestroy() = default; 5751 ObjectDestroy(OwnerType owner,Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT)5752 ObjectDestroy( OwnerType owner, 5753 Optional<const AllocationCallbacks> allocationCallbacks 5754 VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, 5755 Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT 5756 : m_owner( owner ) 5757 , m_allocationCallbacks( allocationCallbacks ) 5758 , m_dispatch( &dispatch ) 5759 {} 5760 getOwner() const5761 OwnerType getOwner() const VULKAN_HPP_NOEXCEPT 5762 { 5763 return m_owner; 5764 } getAllocator() const5765 Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT 5766 { 5767 return m_allocationCallbacks; 5768 } 5769 5770 protected: 5771 template <typename T> destroy(T t)5772 void destroy( T t ) VULKAN_HPP_NOEXCEPT 5773 { 5774 VULKAN_HPP_ASSERT( m_owner && m_dispatch ); 5775 m_owner.destroy( t, m_allocationCallbacks, *m_dispatch ); 5776 } 5777 5778 private: 5779 OwnerType m_owner = {}; 5780 Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr; 5781 Dispatch const * m_dispatch = nullptr; 5782 }; 5783 5784 class NoParent; 5785 5786 template <typename Dispatch> 5787 class ObjectDestroy<NoParent, Dispatch> 5788 { 5789 public: 5790 ObjectDestroy() = default; 5791 ObjectDestroy(Optional<const AllocationCallbacks> allocationCallbacks,Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT)5792 ObjectDestroy( Optional<const AllocationCallbacks> allocationCallbacks, 5793 Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT 5794 : m_allocationCallbacks( allocationCallbacks ) 5795 , m_dispatch( &dispatch ) 5796 {} 5797 getAllocator() const5798 Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT 5799 { 5800 return m_allocationCallbacks; 5801 } 5802 5803 protected: 5804 template <typename T> destroy(T t)5805 void destroy( T t ) VULKAN_HPP_NOEXCEPT 5806 { 5807 VULKAN_HPP_ASSERT( m_dispatch ); 5808 t.destroy( m_allocationCallbacks, *m_dispatch ); 5809 } 5810 5811 private: 5812 Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr; 5813 Dispatch const * m_dispatch = nullptr; 5814 }; 5815 5816 template <typename OwnerType, typename Dispatch> 5817 class ObjectFree 5818 { 5819 public: 5820 ObjectFree() = default; 5821 ObjectFree(OwnerType owner,Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT)5822 ObjectFree( OwnerType owner, 5823 Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT, 5824 Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT 5825 : m_owner( owner ) 5826 , m_allocationCallbacks( allocationCallbacks ) 5827 , m_dispatch( &dispatch ) 5828 {} 5829 getOwner() const5830 OwnerType getOwner() const VULKAN_HPP_NOEXCEPT 5831 { 5832 return m_owner; 5833 } 5834 getAllocator() const5835 Optional<const AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT 5836 { 5837 return m_allocationCallbacks; 5838 } 5839 5840 protected: 5841 template <typename T> destroy(T t)5842 void destroy( T t ) VULKAN_HPP_NOEXCEPT 5843 { 5844 VULKAN_HPP_ASSERT( m_owner && m_dispatch ); 5845 m_owner.free( t, m_allocationCallbacks, *m_dispatch ); 5846 } 5847 5848 private: 5849 OwnerType m_owner = {}; 5850 Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr; 5851 Dispatch const * m_dispatch = nullptr; 5852 }; 5853 5854 template <typename OwnerType, typename Dispatch> 5855 class ObjectRelease 5856 { 5857 public: 5858 ObjectRelease() = default; 5859 ObjectRelease(OwnerType owner,Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT)5860 ObjectRelease( OwnerType owner, 5861 Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT 5862 : m_owner( owner ) 5863 , m_dispatch( &dispatch ) 5864 {} 5865 getOwner() const5866 OwnerType getOwner() const VULKAN_HPP_NOEXCEPT 5867 { 5868 return m_owner; 5869 } 5870 5871 protected: 5872 template <typename T> destroy(T t)5873 void destroy( T t ) VULKAN_HPP_NOEXCEPT 5874 { 5875 VULKAN_HPP_ASSERT( m_owner && m_dispatch ); 5876 m_owner.release( t, *m_dispatch ); 5877 } 5878 5879 private: 5880 OwnerType m_owner = {}; 5881 Dispatch const * m_dispatch = nullptr; 5882 }; 5883 5884 template <typename OwnerType, typename PoolType, typename Dispatch> 5885 class PoolFree 5886 { 5887 public: 5888 PoolFree() = default; 5889 PoolFree(OwnerType owner,PoolType pool,Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT)5890 PoolFree( OwnerType owner, 5891 PoolType pool, 5892 Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT 5893 : m_owner( owner ) 5894 , m_pool( pool ) 5895 , m_dispatch( &dispatch ) 5896 {} 5897 getOwner() const5898 OwnerType getOwner() const VULKAN_HPP_NOEXCEPT 5899 { 5900 return m_owner; 5901 } getPool() const5902 PoolType getPool() const VULKAN_HPP_NOEXCEPT 5903 { 5904 return m_pool; 5905 } 5906 5907 protected: 5908 template <typename T> destroy(T t)5909 void destroy( T t ) VULKAN_HPP_NOEXCEPT 5910 { 5911 m_owner.free( m_pool, t, *m_dispatch ); 5912 } 5913 5914 private: 5915 OwnerType m_owner = OwnerType(); 5916 PoolType m_pool = PoolType(); 5917 Dispatch const * m_dispatch = nullptr; 5918 }; 5919 5920 //================== 5921 //=== BASE TYPEs === 5922 //================== 5923 5924 using Bool32 = uint32_t; 5925 using DeviceAddress = uint64_t; 5926 using DeviceSize = uint64_t; 5927 using RemoteAddressNV = void *; 5928 using SampleMask = uint32_t; 5929 5930 } // namespace VULKAN_HPP_NAMESPACE 5931 5932 #include <vulkan/vulkan_enums.hpp> 5933 5934 #ifndef VULKAN_HPP_NO_EXCEPTIONS 5935 namespace std 5936 { 5937 template <> 5938 struct is_error_code_enum<VULKAN_HPP_NAMESPACE::Result> : public true_type 5939 {}; 5940 } // namespace std 5941 #endif 5942 5943 namespace VULKAN_HPP_NAMESPACE 5944 { 5945 #ifndef VULKAN_HPP_NO_EXCEPTIONS 5946 5947 class ErrorCategoryImpl : public std::error_category 5948 { 5949 public: name() const5950 virtual const char * name() const VULKAN_HPP_NOEXCEPT override 5951 { 5952 return VULKAN_HPP_NAMESPACE_STRING "::Result"; 5953 } message(int ev) const5954 virtual std::string message( int ev ) const override 5955 { 5956 return to_string( static_cast<Result>( ev ) ); 5957 } 5958 }; 5959 5960 class Error 5961 { 5962 public: 5963 Error() VULKAN_HPP_NOEXCEPT = default; 5964 Error( const Error & ) VULKAN_HPP_NOEXCEPT = default; 5965 virtual ~Error() VULKAN_HPP_NOEXCEPT = default; 5966 5967 virtual const char * what() const VULKAN_HPP_NOEXCEPT = 0; 5968 }; 5969 5970 class LogicError 5971 : public Error 5972 , public std::logic_error 5973 { 5974 public: LogicError(const std::string & what)5975 explicit LogicError( const std::string & what ) : Error(), std::logic_error( what ) {} LogicError(char const * what)5976 explicit LogicError( char const * what ) : Error(), std::logic_error( what ) {} 5977 what() const5978 virtual const char * what() const VULKAN_HPP_NOEXCEPT 5979 { 5980 return std::logic_error::what(); 5981 } 5982 }; 5983 5984 class SystemError 5985 : public Error 5986 , public std::system_error 5987 { 5988 public: SystemError(std::error_code ec)5989 SystemError( std::error_code ec ) : Error(), std::system_error( ec ) {} SystemError(std::error_code ec,std::string const & what)5990 SystemError( std::error_code ec, std::string const & what ) : Error(), std::system_error( ec, what ) {} SystemError(std::error_code ec,char const * what)5991 SystemError( std::error_code ec, char const * what ) : Error(), std::system_error( ec, what ) {} SystemError(int ev,std::error_category const & ecat)5992 SystemError( int ev, std::error_category const & ecat ) : Error(), std::system_error( ev, ecat ) {} SystemError(int ev,std::error_category const & ecat,std::string const & what)5993 SystemError( int ev, std::error_category const & ecat, std::string const & what ) 5994 : Error(), std::system_error( ev, ecat, what ) 5995 {} SystemError(int ev,std::error_category const & ecat,char const * what)5996 SystemError( int ev, std::error_category const & ecat, char const * what ) 5997 : Error(), std::system_error( ev, ecat, what ) 5998 {} 5999 what() const6000 virtual const char * what() const VULKAN_HPP_NOEXCEPT 6001 { 6002 return std::system_error::what(); 6003 } 6004 }; 6005 errorCategory()6006 VULKAN_HPP_INLINE const std::error_category & errorCategory() VULKAN_HPP_NOEXCEPT 6007 { 6008 static ErrorCategoryImpl instance; 6009 return instance; 6010 } 6011 make_error_code(Result e)6012 VULKAN_HPP_INLINE std::error_code make_error_code( Result e ) VULKAN_HPP_NOEXCEPT 6013 { 6014 return std::error_code( static_cast<int>( e ), errorCategory() ); 6015 } 6016 make_error_condition(Result e)6017 VULKAN_HPP_INLINE std::error_condition make_error_condition( Result e ) VULKAN_HPP_NOEXCEPT 6018 { 6019 return std::error_condition( static_cast<int>( e ), errorCategory() ); 6020 } 6021 6022 class OutOfHostMemoryError : public SystemError 6023 { 6024 public: OutOfHostMemoryError(std::string const & message)6025 OutOfHostMemoryError( std::string const & message ) 6026 : SystemError( make_error_code( Result::eErrorOutOfHostMemory ), message ) 6027 {} OutOfHostMemoryError(char const * message)6028 OutOfHostMemoryError( char const * message ) 6029 : SystemError( make_error_code( Result::eErrorOutOfHostMemory ), message ) 6030 {} 6031 }; 6032 6033 class OutOfDeviceMemoryError : public SystemError 6034 { 6035 public: OutOfDeviceMemoryError(std::string const & message)6036 OutOfDeviceMemoryError( std::string const & message ) 6037 : SystemError( make_error_code( Result::eErrorOutOfDeviceMemory ), message ) 6038 {} OutOfDeviceMemoryError(char const * message)6039 OutOfDeviceMemoryError( char const * message ) 6040 : SystemError( make_error_code( Result::eErrorOutOfDeviceMemory ), message ) 6041 {} 6042 }; 6043 6044 class InitializationFailedError : public SystemError 6045 { 6046 public: InitializationFailedError(std::string const & message)6047 InitializationFailedError( std::string const & message ) 6048 : SystemError( make_error_code( Result::eErrorInitializationFailed ), message ) 6049 {} InitializationFailedError(char const * message)6050 InitializationFailedError( char const * message ) 6051 : SystemError( make_error_code( Result::eErrorInitializationFailed ), message ) 6052 {} 6053 }; 6054 6055 class DeviceLostError : public SystemError 6056 { 6057 public: DeviceLostError(std::string const & message)6058 DeviceLostError( std::string const & message ) : SystemError( make_error_code( Result::eErrorDeviceLost ), message ) 6059 {} DeviceLostError(char const * message)6060 DeviceLostError( char const * message ) : SystemError( make_error_code( Result::eErrorDeviceLost ), message ) {} 6061 }; 6062 6063 class MemoryMapFailedError : public SystemError 6064 { 6065 public: MemoryMapFailedError(std::string const & message)6066 MemoryMapFailedError( std::string const & message ) 6067 : SystemError( make_error_code( Result::eErrorMemoryMapFailed ), message ) 6068 {} MemoryMapFailedError(char const * message)6069 MemoryMapFailedError( char const * message ) 6070 : SystemError( make_error_code( Result::eErrorMemoryMapFailed ), message ) 6071 {} 6072 }; 6073 6074 class LayerNotPresentError : public SystemError 6075 { 6076 public: LayerNotPresentError(std::string const & message)6077 LayerNotPresentError( std::string const & message ) 6078 : SystemError( make_error_code( Result::eErrorLayerNotPresent ), message ) 6079 {} LayerNotPresentError(char const * message)6080 LayerNotPresentError( char const * message ) 6081 : SystemError( make_error_code( Result::eErrorLayerNotPresent ), message ) 6082 {} 6083 }; 6084 6085 class ExtensionNotPresentError : public SystemError 6086 { 6087 public: ExtensionNotPresentError(std::string const & message)6088 ExtensionNotPresentError( std::string const & message ) 6089 : SystemError( make_error_code( Result::eErrorExtensionNotPresent ), message ) 6090 {} ExtensionNotPresentError(char const * message)6091 ExtensionNotPresentError( char const * message ) 6092 : SystemError( make_error_code( Result::eErrorExtensionNotPresent ), message ) 6093 {} 6094 }; 6095 6096 class FeatureNotPresentError : public SystemError 6097 { 6098 public: FeatureNotPresentError(std::string const & message)6099 FeatureNotPresentError( std::string const & message ) 6100 : SystemError( make_error_code( Result::eErrorFeatureNotPresent ), message ) 6101 {} FeatureNotPresentError(char const * message)6102 FeatureNotPresentError( char const * message ) 6103 : SystemError( make_error_code( Result::eErrorFeatureNotPresent ), message ) 6104 {} 6105 }; 6106 6107 class IncompatibleDriverError : public SystemError 6108 { 6109 public: IncompatibleDriverError(std::string const & message)6110 IncompatibleDriverError( std::string const & message ) 6111 : SystemError( make_error_code( Result::eErrorIncompatibleDriver ), message ) 6112 {} IncompatibleDriverError(char const * message)6113 IncompatibleDriverError( char const * message ) 6114 : SystemError( make_error_code( Result::eErrorIncompatibleDriver ), message ) 6115 {} 6116 }; 6117 6118 class TooManyObjectsError : public SystemError 6119 { 6120 public: TooManyObjectsError(std::string const & message)6121 TooManyObjectsError( std::string const & message ) 6122 : SystemError( make_error_code( Result::eErrorTooManyObjects ), message ) 6123 {} TooManyObjectsError(char const * message)6124 TooManyObjectsError( char const * message ) 6125 : SystemError( make_error_code( Result::eErrorTooManyObjects ), message ) 6126 {} 6127 }; 6128 6129 class FormatNotSupportedError : public SystemError 6130 { 6131 public: FormatNotSupportedError(std::string const & message)6132 FormatNotSupportedError( std::string const & message ) 6133 : SystemError( make_error_code( Result::eErrorFormatNotSupported ), message ) 6134 {} FormatNotSupportedError(char const * message)6135 FormatNotSupportedError( char const * message ) 6136 : SystemError( make_error_code( Result::eErrorFormatNotSupported ), message ) 6137 {} 6138 }; 6139 6140 class FragmentedPoolError : public SystemError 6141 { 6142 public: FragmentedPoolError(std::string const & message)6143 FragmentedPoolError( std::string const & message ) 6144 : SystemError( make_error_code( Result::eErrorFragmentedPool ), message ) 6145 {} FragmentedPoolError(char const * message)6146 FragmentedPoolError( char const * message ) 6147 : SystemError( make_error_code( Result::eErrorFragmentedPool ), message ) 6148 {} 6149 }; 6150 6151 class UnknownError : public SystemError 6152 { 6153 public: UnknownError(std::string const & message)6154 UnknownError( std::string const & message ) : SystemError( make_error_code( Result::eErrorUnknown ), message ) {} UnknownError(char const * message)6155 UnknownError( char const * message ) : SystemError( make_error_code( Result::eErrorUnknown ), message ) {} 6156 }; 6157 6158 class OutOfPoolMemoryError : public SystemError 6159 { 6160 public: OutOfPoolMemoryError(std::string const & message)6161 OutOfPoolMemoryError( std::string const & message ) 6162 : SystemError( make_error_code( Result::eErrorOutOfPoolMemory ), message ) 6163 {} OutOfPoolMemoryError(char const * message)6164 OutOfPoolMemoryError( char const * message ) 6165 : SystemError( make_error_code( Result::eErrorOutOfPoolMemory ), message ) 6166 {} 6167 }; 6168 6169 class InvalidExternalHandleError : public SystemError 6170 { 6171 public: InvalidExternalHandleError(std::string const & message)6172 InvalidExternalHandleError( std::string const & message ) 6173 : SystemError( make_error_code( Result::eErrorInvalidExternalHandle ), message ) 6174 {} InvalidExternalHandleError(char const * message)6175 InvalidExternalHandleError( char const * message ) 6176 : SystemError( make_error_code( Result::eErrorInvalidExternalHandle ), message ) 6177 {} 6178 }; 6179 6180 class FragmentationError : public SystemError 6181 { 6182 public: FragmentationError(std::string const & message)6183 FragmentationError( std::string const & message ) 6184 : SystemError( make_error_code( Result::eErrorFragmentation ), message ) 6185 {} FragmentationError(char const * message)6186 FragmentationError( char const * message ) : SystemError( make_error_code( Result::eErrorFragmentation ), message ) 6187 {} 6188 }; 6189 6190 class InvalidOpaqueCaptureAddressError : public SystemError 6191 { 6192 public: InvalidOpaqueCaptureAddressError(std::string const & message)6193 InvalidOpaqueCaptureAddressError( std::string const & message ) 6194 : SystemError( make_error_code( Result::eErrorInvalidOpaqueCaptureAddress ), message ) 6195 {} InvalidOpaqueCaptureAddressError(char const * message)6196 InvalidOpaqueCaptureAddressError( char const * message ) 6197 : SystemError( make_error_code( Result::eErrorInvalidOpaqueCaptureAddress ), message ) 6198 {} 6199 }; 6200 6201 class SurfaceLostKHRError : public SystemError 6202 { 6203 public: SurfaceLostKHRError(std::string const & message)6204 SurfaceLostKHRError( std::string const & message ) 6205 : SystemError( make_error_code( Result::eErrorSurfaceLostKHR ), message ) 6206 {} SurfaceLostKHRError(char const * message)6207 SurfaceLostKHRError( char const * message ) 6208 : SystemError( make_error_code( Result::eErrorSurfaceLostKHR ), message ) 6209 {} 6210 }; 6211 6212 class NativeWindowInUseKHRError : public SystemError 6213 { 6214 public: NativeWindowInUseKHRError(std::string const & message)6215 NativeWindowInUseKHRError( std::string const & message ) 6216 : SystemError( make_error_code( Result::eErrorNativeWindowInUseKHR ), message ) 6217 {} NativeWindowInUseKHRError(char const * message)6218 NativeWindowInUseKHRError( char const * message ) 6219 : SystemError( make_error_code( Result::eErrorNativeWindowInUseKHR ), message ) 6220 {} 6221 }; 6222 6223 class OutOfDateKHRError : public SystemError 6224 { 6225 public: OutOfDateKHRError(std::string const & message)6226 OutOfDateKHRError( std::string const & message ) 6227 : SystemError( make_error_code( Result::eErrorOutOfDateKHR ), message ) 6228 {} OutOfDateKHRError(char const * message)6229 OutOfDateKHRError( char const * message ) : SystemError( make_error_code( Result::eErrorOutOfDateKHR ), message ) {} 6230 }; 6231 6232 class IncompatibleDisplayKHRError : public SystemError 6233 { 6234 public: IncompatibleDisplayKHRError(std::string const & message)6235 IncompatibleDisplayKHRError( std::string const & message ) 6236 : SystemError( make_error_code( Result::eErrorIncompatibleDisplayKHR ), message ) 6237 {} IncompatibleDisplayKHRError(char const * message)6238 IncompatibleDisplayKHRError( char const * message ) 6239 : SystemError( make_error_code( Result::eErrorIncompatibleDisplayKHR ), message ) 6240 {} 6241 }; 6242 6243 class ValidationFailedEXTError : public SystemError 6244 { 6245 public: ValidationFailedEXTError(std::string const & message)6246 ValidationFailedEXTError( std::string const & message ) 6247 : SystemError( make_error_code( Result::eErrorValidationFailedEXT ), message ) 6248 {} ValidationFailedEXTError(char const * message)6249 ValidationFailedEXTError( char const * message ) 6250 : SystemError( make_error_code( Result::eErrorValidationFailedEXT ), message ) 6251 {} 6252 }; 6253 6254 class InvalidShaderNVError : public SystemError 6255 { 6256 public: InvalidShaderNVError(std::string const & message)6257 InvalidShaderNVError( std::string const & message ) 6258 : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message ) 6259 {} InvalidShaderNVError(char const * message)6260 InvalidShaderNVError( char const * message ) 6261 : SystemError( make_error_code( Result::eErrorInvalidShaderNV ), message ) 6262 {} 6263 }; 6264 6265 class InvalidDrmFormatModifierPlaneLayoutEXTError : public SystemError 6266 { 6267 public: InvalidDrmFormatModifierPlaneLayoutEXTError(std::string const & message)6268 InvalidDrmFormatModifierPlaneLayoutEXTError( std::string const & message ) 6269 : SystemError( make_error_code( Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT ), message ) 6270 {} InvalidDrmFormatModifierPlaneLayoutEXTError(char const * message)6271 InvalidDrmFormatModifierPlaneLayoutEXTError( char const * message ) 6272 : SystemError( make_error_code( Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT ), message ) 6273 {} 6274 }; 6275 6276 class NotPermittedEXTError : public SystemError 6277 { 6278 public: NotPermittedEXTError(std::string const & message)6279 NotPermittedEXTError( std::string const & message ) 6280 : SystemError( make_error_code( Result::eErrorNotPermittedEXT ), message ) 6281 {} NotPermittedEXTError(char const * message)6282 NotPermittedEXTError( char const * message ) 6283 : SystemError( make_error_code( Result::eErrorNotPermittedEXT ), message ) 6284 {} 6285 }; 6286 6287 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 6288 class FullScreenExclusiveModeLostEXTError : public SystemError 6289 { 6290 public: FullScreenExclusiveModeLostEXTError(std::string const & message)6291 FullScreenExclusiveModeLostEXTError( std::string const & message ) 6292 : SystemError( make_error_code( Result::eErrorFullScreenExclusiveModeLostEXT ), message ) 6293 {} FullScreenExclusiveModeLostEXTError(char const * message)6294 FullScreenExclusiveModeLostEXTError( char const * message ) 6295 : SystemError( make_error_code( Result::eErrorFullScreenExclusiveModeLostEXT ), message ) 6296 {} 6297 }; 6298 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 6299 throwResultException(Result result,char const * message)6300 [[noreturn]] static void throwResultException( Result result, char const * message ) 6301 { 6302 switch ( result ) 6303 { 6304 case Result::eErrorOutOfHostMemory: throw OutOfHostMemoryError( message ); 6305 case Result::eErrorOutOfDeviceMemory: throw OutOfDeviceMemoryError( message ); 6306 case Result::eErrorInitializationFailed: throw InitializationFailedError( message ); 6307 case Result::eErrorDeviceLost: throw DeviceLostError( message ); 6308 case Result::eErrorMemoryMapFailed: throw MemoryMapFailedError( message ); 6309 case Result::eErrorLayerNotPresent: throw LayerNotPresentError( message ); 6310 case Result::eErrorExtensionNotPresent: throw ExtensionNotPresentError( message ); 6311 case Result::eErrorFeatureNotPresent: throw FeatureNotPresentError( message ); 6312 case Result::eErrorIncompatibleDriver: throw IncompatibleDriverError( message ); 6313 case Result::eErrorTooManyObjects: throw TooManyObjectsError( message ); 6314 case Result::eErrorFormatNotSupported: throw FormatNotSupportedError( message ); 6315 case Result::eErrorFragmentedPool: throw FragmentedPoolError( message ); 6316 case Result::eErrorUnknown: throw UnknownError( message ); 6317 case Result::eErrorOutOfPoolMemory: throw OutOfPoolMemoryError( message ); 6318 case Result::eErrorInvalidExternalHandle: throw InvalidExternalHandleError( message ); 6319 case Result::eErrorFragmentation: throw FragmentationError( message ); 6320 case Result::eErrorInvalidOpaqueCaptureAddress: throw InvalidOpaqueCaptureAddressError( message ); 6321 case Result::eErrorSurfaceLostKHR: throw SurfaceLostKHRError( message ); 6322 case Result::eErrorNativeWindowInUseKHR: throw NativeWindowInUseKHRError( message ); 6323 case Result::eErrorOutOfDateKHR: throw OutOfDateKHRError( message ); 6324 case Result::eErrorIncompatibleDisplayKHR: throw IncompatibleDisplayKHRError( message ); 6325 case Result::eErrorValidationFailedEXT: throw ValidationFailedEXTError( message ); 6326 case Result::eErrorInvalidShaderNV: throw InvalidShaderNVError( message ); 6327 case Result::eErrorInvalidDrmFormatModifierPlaneLayoutEXT: 6328 throw InvalidDrmFormatModifierPlaneLayoutEXTError( message ); 6329 case Result::eErrorNotPermittedEXT: throw NotPermittedEXTError( message ); 6330 # if defined( VK_USE_PLATFORM_WIN32_KHR ) 6331 case Result::eErrorFullScreenExclusiveModeLostEXT: throw FullScreenExclusiveModeLostEXTError( message ); 6332 # endif /*VK_USE_PLATFORM_WIN32_KHR*/ 6333 default: throw SystemError( make_error_code( result ) ); 6334 } 6335 } 6336 #endif 6337 6338 template <typename T> ignore(T const &)6339 void ignore( T const & ) VULKAN_HPP_NOEXCEPT 6340 {} 6341 6342 template <typename T> 6343 struct ResultValue 6344 { 6345 #ifdef VULKAN_HPP_HAS_NOEXCEPT ResultValueVULKAN_HPP_NAMESPACE::ResultValue6346 ResultValue( Result r, T & v ) VULKAN_HPP_NOEXCEPT( VULKAN_HPP_NOEXCEPT( T( v ) ) ) 6347 #else 6348 ResultValue( Result r, T & v ) 6349 #endif 6350 : result( r ), value( v ) 6351 {} 6352 6353 #ifdef VULKAN_HPP_HAS_NOEXCEPT ResultValueVULKAN_HPP_NAMESPACE::ResultValue6354 ResultValue( Result r, T && v ) VULKAN_HPP_NOEXCEPT( VULKAN_HPP_NOEXCEPT( T( std::move( v ) ) ) ) 6355 #else 6356 ResultValue( Result r, T && v ) 6357 #endif 6358 : result( r ), value( std::move( v ) ) 6359 {} 6360 6361 Result result; 6362 T value; 6363 operator std::tuple<Result&,T&>VULKAN_HPP_NAMESPACE::ResultValue6364 operator std::tuple<Result &, T &>() VULKAN_HPP_NOEXCEPT 6365 { 6366 return std::tuple<Result &, T &>( result, value ); 6367 } 6368 6369 #if !defined( VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST ) 6370 VULKAN_HPP_DEPRECATED( 6371 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator T const&VULKAN_HPP_NAMESPACE::ResultValue6372 operator T const &() const & VULKAN_HPP_NOEXCEPT 6373 { 6374 return value; 6375 } 6376 6377 VULKAN_HPP_DEPRECATED( 6378 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator T&VULKAN_HPP_NAMESPACE::ResultValue6379 operator T &() & VULKAN_HPP_NOEXCEPT 6380 { 6381 return value; 6382 } 6383 6384 VULKAN_HPP_DEPRECATED( 6385 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator T const&&VULKAN_HPP_NAMESPACE::ResultValue6386 operator T const &&() const && VULKAN_HPP_NOEXCEPT 6387 { 6388 return std::move( value ); 6389 } 6390 6391 VULKAN_HPP_DEPRECATED( 6392 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator T&&VULKAN_HPP_NAMESPACE::ResultValue6393 operator T &&() && VULKAN_HPP_NOEXCEPT 6394 { 6395 return std::move( value ); 6396 } 6397 #endif 6398 }; 6399 6400 #if !defined( VULKAN_HPP_NO_SMART_HANDLE ) 6401 template <typename Type, typename Dispatch> 6402 struct ResultValue<UniqueHandle<Type, Dispatch>> 6403 { 6404 # ifdef VULKAN_HPP_HAS_NOEXCEPT ResultValueVULKAN_HPP_NAMESPACE::ResultValue6405 ResultValue( Result r, UniqueHandle<Type, Dispatch> && v ) VULKAN_HPP_NOEXCEPT 6406 # else 6407 ResultValue( Result r, UniqueHandle<Type, Dispatch> && v ) 6408 # endif 6409 : result( r ) 6410 , value( std::move( v ) ) 6411 {} 6412 asTupleVULKAN_HPP_NAMESPACE::ResultValue6413 std::tuple<Result, UniqueHandle<Type, Dispatch>> asTuple() 6414 { 6415 return std::make_tuple( result, std::move( value ) ); 6416 } 6417 6418 # if !defined( VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST ) 6419 VULKAN_HPP_DEPRECATED( 6420 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator UniqueHandle<Type,Dispatch>&VULKAN_HPP_NAMESPACE::ResultValue6421 operator UniqueHandle<Type, Dispatch> &() & VULKAN_HPP_NOEXCEPT 6422 { 6423 return value; 6424 } 6425 6426 VULKAN_HPP_DEPRECATED( 6427 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator UniqueHandle<Type,Dispatch>VULKAN_HPP_NAMESPACE::ResultValue6428 operator UniqueHandle<Type, Dispatch>() VULKAN_HPP_NOEXCEPT 6429 { 6430 return std::move( value ); 6431 } 6432 # endif 6433 6434 Result result; 6435 UniqueHandle<Type, Dispatch> value; 6436 }; 6437 6438 template <typename Type, typename Dispatch> 6439 struct ResultValue<std::vector<UniqueHandle<Type, Dispatch>>> 6440 { 6441 # ifdef VULKAN_HPP_HAS_NOEXCEPT ResultValueVULKAN_HPP_NAMESPACE::ResultValue6442 ResultValue( Result r, std::vector<UniqueHandle<Type, Dispatch>> && v ) VULKAN_HPP_NOEXCEPT 6443 # else 6444 ResultValue( Result r, std::vector<UniqueHandle<Type, Dispatch>> && v ) 6445 # endif 6446 : result( r ) 6447 , value( std::move( v ) ) 6448 {} 6449 asTupleVULKAN_HPP_NAMESPACE::ResultValue6450 std::tuple<Result, std::vector<UniqueHandle<Type, Dispatch>>> asTuple() 6451 { 6452 return std::make_tuple( result, std::move( value ) ); 6453 } 6454 6455 Result result; 6456 std::vector<UniqueHandle<Type, Dispatch>> value; 6457 6458 # if !defined( VULKAN_HPP_DISABLE_IMPLICIT_RESULT_VALUE_CAST ) 6459 VULKAN_HPP_DEPRECATED( 6460 "Implicit-cast operators on vk::ResultValue are deprecated. Explicitly access the value as member of ResultValue." ) operator std::tuple<Result&,std::vector<UniqueHandle<Type,Dispatch>>&>VULKAN_HPP_NAMESPACE::ResultValue6461 operator std::tuple<Result &, std::vector<UniqueHandle<Type, Dispatch>> &>() VULKAN_HPP_NOEXCEPT 6462 { 6463 return std::tuple<Result &, std::vector<UniqueHandle<Type, Dispatch>> &>( result, value ); 6464 } 6465 # endif 6466 }; 6467 #endif 6468 6469 template <typename T> 6470 struct ResultValueType 6471 { 6472 #ifdef VULKAN_HPP_NO_EXCEPTIONS 6473 typedef ResultValue<T> type; 6474 #else 6475 typedef T type; 6476 #endif 6477 }; 6478 6479 template <> 6480 struct ResultValueType<void> 6481 { 6482 #ifdef VULKAN_HPP_NO_EXCEPTIONS 6483 typedef Result type; 6484 #else 6485 typedef void type; 6486 #endif 6487 }; 6488 createResultValue(Result result,char const * message)6489 VULKAN_HPP_INLINE ResultValueType<void>::type createResultValue( Result result, char const * message ) 6490 { 6491 #ifdef VULKAN_HPP_NO_EXCEPTIONS 6492 ignore( message ); 6493 VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess ); 6494 return result; 6495 #else 6496 if ( result != Result::eSuccess ) 6497 { 6498 throwResultException( result, message ); 6499 } 6500 #endif 6501 } 6502 6503 template <typename T> createResultValue(Result result,T & data,char const * message)6504 VULKAN_HPP_INLINE typename ResultValueType<T>::type createResultValue( Result result, T & data, char const * message ) 6505 { 6506 #ifdef VULKAN_HPP_NO_EXCEPTIONS 6507 ignore( message ); 6508 VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess ); 6509 return ResultValue<T>( result, std::move( data ) ); 6510 #else 6511 if ( result != Result::eSuccess ) 6512 { 6513 throwResultException( result, message ); 6514 } 6515 return std::move( data ); 6516 #endif 6517 } 6518 createResultValue(Result result,char const * message,std::initializer_list<Result> successCodes)6519 VULKAN_HPP_INLINE Result createResultValue( Result result, 6520 char const * message, 6521 std::initializer_list<Result> successCodes ) 6522 { 6523 #ifdef VULKAN_HPP_NO_EXCEPTIONS 6524 ignore( message ); 6525 ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty 6526 VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() ); 6527 #else 6528 if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() ) 6529 { 6530 throwResultException( result, message ); 6531 } 6532 #endif 6533 return result; 6534 } 6535 6536 template <typename T> 6537 VULKAN_HPP_INLINE ResultValue<T> createResultValue(Result result,T & data,char const * message,std::initializer_list<Result> successCodes)6538 createResultValue( Result result, T & data, char const * message, std::initializer_list<Result> successCodes ) 6539 { 6540 #ifdef VULKAN_HPP_NO_EXCEPTIONS 6541 ignore( message ); 6542 ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty 6543 VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() ); 6544 #else 6545 if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() ) 6546 { 6547 throwResultException( result, message ); 6548 } 6549 #endif 6550 return ResultValue<T>( result, std::move( data ) ); 6551 } 6552 6553 #ifndef VULKAN_HPP_NO_SMART_HANDLE 6554 template <typename T, typename D> createResultValue(Result result,T & data,char const * message,typename UniqueHandleTraits<T,D>::deleter const & deleter)6555 VULKAN_HPP_INLINE typename ResultValueType<UniqueHandle<T, D>>::type createResultValue( 6556 Result result, T & data, char const * message, typename UniqueHandleTraits<T, D>::deleter const & deleter ) 6557 { 6558 # ifdef VULKAN_HPP_NO_EXCEPTIONS 6559 ignore( message ); 6560 VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess ); 6561 return ResultValue<UniqueHandle<T, D>>( result, UniqueHandle<T, D>( data, deleter ) ); 6562 # else 6563 if ( result != Result::eSuccess ) 6564 { 6565 throwResultException( result, message ); 6566 } 6567 return UniqueHandle<T, D>( data, deleter ); 6568 # endif 6569 } 6570 6571 template <typename T, typename D> 6572 VULKAN_HPP_INLINE ResultValue<UniqueHandle<T, D>> createResultValue(Result result,T & data,char const * message,std::initializer_list<Result> successCodes,typename UniqueHandleTraits<T,D>::deleter const & deleter)6573 createResultValue( Result result, 6574 T & data, 6575 char const * message, 6576 std::initializer_list<Result> successCodes, 6577 typename UniqueHandleTraits<T, D>::deleter const & deleter ) 6578 { 6579 # ifdef VULKAN_HPP_NO_EXCEPTIONS 6580 ignore( message ); 6581 ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty 6582 VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() ); 6583 # else 6584 if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() ) 6585 { 6586 throwResultException( result, message ); 6587 } 6588 # endif 6589 return ResultValue<UniqueHandle<T, D>>( result, UniqueHandle<T, D>( data, deleter ) ); 6590 } 6591 6592 template <typename T, typename D> 6593 VULKAN_HPP_INLINE typename ResultValueType<std::vector<UniqueHandle<T, D>>>::type createResultValue(Result result,std::vector<UniqueHandle<T,D>> && data,char const * message)6594 createResultValue( Result result, std::vector<UniqueHandle<T, D>> && data, char const * message ) 6595 { 6596 # ifdef VULKAN_HPP_NO_EXCEPTIONS 6597 ignore( message ); 6598 VULKAN_HPP_ASSERT_ON_RESULT( result == Result::eSuccess ); 6599 return ResultValue<std::vector<UniqueHandle<T, D>>>( result, std::move( data ) ); 6600 # else 6601 if ( result != Result::eSuccess ) 6602 { 6603 throwResultException( result, message ); 6604 } 6605 return std::move( data ); 6606 # endif 6607 } 6608 6609 template <typename T, typename D> 6610 VULKAN_HPP_INLINE ResultValue<std::vector<UniqueHandle<T, D>>> createResultValue(Result result,std::vector<UniqueHandle<T,D>> && data,char const * message,std::initializer_list<Result> successCodes)6611 createResultValue( Result result, 6612 std::vector<UniqueHandle<T, D>> && data, 6613 char const * message, 6614 std::initializer_list<Result> successCodes ) 6615 { 6616 # ifdef VULKAN_HPP_NO_EXCEPTIONS 6617 ignore( message ); 6618 ignore( successCodes ); // just in case VULKAN_HPP_ASSERT_ON_RESULT is empty 6619 VULKAN_HPP_ASSERT_ON_RESULT( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() ); 6620 # else 6621 if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() ) 6622 { 6623 throwResultException( result, message ); 6624 } 6625 # endif 6626 return ResultValue<std::vector<UniqueHandle<T, D>>>( result, std::move( data ) ); 6627 } 6628 #endif 6629 } // namespace VULKAN_HPP_NAMESPACE 6630 6631 // clang-format off 6632 #include <vulkan/vulkan_handles.hpp> 6633 #include <vulkan/vulkan_structs.hpp> 6634 #include <vulkan/vulkan_funcs.hpp> 6635 // clang-format on 6636 6637 namespace VULKAN_HPP_NAMESPACE 6638 { 6639 //======================= 6640 //=== STRUCTS EXTENDS === 6641 //======================= 6642 6643 //=== VK_VERSION_1_1 === 6644 template <> 6645 struct StructExtends<PhysicalDeviceSubgroupProperties, PhysicalDeviceProperties2> 6646 { 6647 enum 6648 { 6649 value = true 6650 }; 6651 }; 6652 template <> 6653 struct StructExtends<PhysicalDevice16BitStorageFeatures, PhysicalDeviceFeatures2> 6654 { 6655 enum 6656 { 6657 value = true 6658 }; 6659 }; 6660 template <> 6661 struct StructExtends<PhysicalDevice16BitStorageFeatures, DeviceCreateInfo> 6662 { 6663 enum 6664 { 6665 value = true 6666 }; 6667 }; 6668 template <> 6669 struct StructExtends<MemoryDedicatedRequirements, MemoryRequirements2> 6670 { 6671 enum 6672 { 6673 value = true 6674 }; 6675 }; 6676 template <> 6677 struct StructExtends<MemoryDedicatedAllocateInfo, MemoryAllocateInfo> 6678 { 6679 enum 6680 { 6681 value = true 6682 }; 6683 }; 6684 template <> 6685 struct StructExtends<MemoryAllocateFlagsInfo, MemoryAllocateInfo> 6686 { 6687 enum 6688 { 6689 value = true 6690 }; 6691 }; 6692 template <> 6693 struct StructExtends<DeviceGroupRenderPassBeginInfo, RenderPassBeginInfo> 6694 { 6695 enum 6696 { 6697 value = true 6698 }; 6699 }; 6700 template <> 6701 struct StructExtends<DeviceGroupCommandBufferBeginInfo, CommandBufferBeginInfo> 6702 { 6703 enum 6704 { 6705 value = true 6706 }; 6707 }; 6708 template <> 6709 struct StructExtends<DeviceGroupSubmitInfo, SubmitInfo> 6710 { 6711 enum 6712 { 6713 value = true 6714 }; 6715 }; 6716 template <> 6717 struct StructExtends<DeviceGroupBindSparseInfo, BindSparseInfo> 6718 { 6719 enum 6720 { 6721 value = true 6722 }; 6723 }; 6724 template <> 6725 struct StructExtends<BindBufferMemoryDeviceGroupInfo, BindBufferMemoryInfo> 6726 { 6727 enum 6728 { 6729 value = true 6730 }; 6731 }; 6732 template <> 6733 struct StructExtends<BindImageMemoryDeviceGroupInfo, BindImageMemoryInfo> 6734 { 6735 enum 6736 { 6737 value = true 6738 }; 6739 }; 6740 template <> 6741 struct StructExtends<DeviceGroupDeviceCreateInfo, DeviceCreateInfo> 6742 { 6743 enum 6744 { 6745 value = true 6746 }; 6747 }; 6748 template <> 6749 struct StructExtends<PhysicalDeviceFeatures2, DeviceCreateInfo> 6750 { 6751 enum 6752 { 6753 value = true 6754 }; 6755 }; 6756 template <> 6757 struct StructExtends<PhysicalDevicePointClippingProperties, PhysicalDeviceProperties2> 6758 { 6759 enum 6760 { 6761 value = true 6762 }; 6763 }; 6764 template <> 6765 struct StructExtends<RenderPassInputAttachmentAspectCreateInfo, RenderPassCreateInfo> 6766 { 6767 enum 6768 { 6769 value = true 6770 }; 6771 }; 6772 template <> 6773 struct StructExtends<ImageViewUsageCreateInfo, ImageViewCreateInfo> 6774 { 6775 enum 6776 { 6777 value = true 6778 }; 6779 }; 6780 template <> 6781 struct StructExtends<PipelineTessellationDomainOriginStateCreateInfo, PipelineTessellationStateCreateInfo> 6782 { 6783 enum 6784 { 6785 value = true 6786 }; 6787 }; 6788 template <> 6789 struct StructExtends<RenderPassMultiviewCreateInfo, RenderPassCreateInfo> 6790 { 6791 enum 6792 { 6793 value = true 6794 }; 6795 }; 6796 template <> 6797 struct StructExtends<PhysicalDeviceMultiviewFeatures, PhysicalDeviceFeatures2> 6798 { 6799 enum 6800 { 6801 value = true 6802 }; 6803 }; 6804 template <> 6805 struct StructExtends<PhysicalDeviceMultiviewFeatures, DeviceCreateInfo> 6806 { 6807 enum 6808 { 6809 value = true 6810 }; 6811 }; 6812 template <> 6813 struct StructExtends<PhysicalDeviceMultiviewProperties, PhysicalDeviceProperties2> 6814 { 6815 enum 6816 { 6817 value = true 6818 }; 6819 }; 6820 template <> 6821 struct StructExtends<PhysicalDeviceVariablePointersFeatures, PhysicalDeviceFeatures2> 6822 { 6823 enum 6824 { 6825 value = true 6826 }; 6827 }; 6828 template <> 6829 struct StructExtends<PhysicalDeviceVariablePointersFeatures, DeviceCreateInfo> 6830 { 6831 enum 6832 { 6833 value = true 6834 }; 6835 }; 6836 template <> 6837 struct StructExtends<PhysicalDeviceProtectedMemoryFeatures, PhysicalDeviceFeatures2> 6838 { 6839 enum 6840 { 6841 value = true 6842 }; 6843 }; 6844 template <> 6845 struct StructExtends<PhysicalDeviceProtectedMemoryFeatures, DeviceCreateInfo> 6846 { 6847 enum 6848 { 6849 value = true 6850 }; 6851 }; 6852 template <> 6853 struct StructExtends<PhysicalDeviceProtectedMemoryProperties, PhysicalDeviceProperties2> 6854 { 6855 enum 6856 { 6857 value = true 6858 }; 6859 }; 6860 template <> 6861 struct StructExtends<ProtectedSubmitInfo, SubmitInfo> 6862 { 6863 enum 6864 { 6865 value = true 6866 }; 6867 }; 6868 template <> 6869 struct StructExtends<SamplerYcbcrConversionInfo, SamplerCreateInfo> 6870 { 6871 enum 6872 { 6873 value = true 6874 }; 6875 }; 6876 template <> 6877 struct StructExtends<SamplerYcbcrConversionInfo, ImageViewCreateInfo> 6878 { 6879 enum 6880 { 6881 value = true 6882 }; 6883 }; 6884 template <> 6885 struct StructExtends<BindImagePlaneMemoryInfo, BindImageMemoryInfo> 6886 { 6887 enum 6888 { 6889 value = true 6890 }; 6891 }; 6892 template <> 6893 struct StructExtends<ImagePlaneMemoryRequirementsInfo, ImageMemoryRequirementsInfo2> 6894 { 6895 enum 6896 { 6897 value = true 6898 }; 6899 }; 6900 template <> 6901 struct StructExtends<PhysicalDeviceSamplerYcbcrConversionFeatures, PhysicalDeviceFeatures2> 6902 { 6903 enum 6904 { 6905 value = true 6906 }; 6907 }; 6908 template <> 6909 struct StructExtends<PhysicalDeviceSamplerYcbcrConversionFeatures, DeviceCreateInfo> 6910 { 6911 enum 6912 { 6913 value = true 6914 }; 6915 }; 6916 template <> 6917 struct StructExtends<SamplerYcbcrConversionImageFormatProperties, ImageFormatProperties2> 6918 { 6919 enum 6920 { 6921 value = true 6922 }; 6923 }; 6924 template <> 6925 struct StructExtends<PhysicalDeviceExternalImageFormatInfo, PhysicalDeviceImageFormatInfo2> 6926 { 6927 enum 6928 { 6929 value = true 6930 }; 6931 }; 6932 template <> 6933 struct StructExtends<ExternalImageFormatProperties, ImageFormatProperties2> 6934 { 6935 enum 6936 { 6937 value = true 6938 }; 6939 }; 6940 template <> 6941 struct StructExtends<PhysicalDeviceIDProperties, PhysicalDeviceProperties2> 6942 { 6943 enum 6944 { 6945 value = true 6946 }; 6947 }; 6948 template <> 6949 struct StructExtends<ExternalMemoryImageCreateInfo, ImageCreateInfo> 6950 { 6951 enum 6952 { 6953 value = true 6954 }; 6955 }; 6956 template <> 6957 struct StructExtends<ExternalMemoryBufferCreateInfo, BufferCreateInfo> 6958 { 6959 enum 6960 { 6961 value = true 6962 }; 6963 }; 6964 template <> 6965 struct StructExtends<ExportMemoryAllocateInfo, MemoryAllocateInfo> 6966 { 6967 enum 6968 { 6969 value = true 6970 }; 6971 }; 6972 template <> 6973 struct StructExtends<ExportFenceCreateInfo, FenceCreateInfo> 6974 { 6975 enum 6976 { 6977 value = true 6978 }; 6979 }; 6980 template <> 6981 struct StructExtends<ExportSemaphoreCreateInfo, SemaphoreCreateInfo> 6982 { 6983 enum 6984 { 6985 value = true 6986 }; 6987 }; 6988 template <> 6989 struct StructExtends<PhysicalDeviceMaintenance3Properties, PhysicalDeviceProperties2> 6990 { 6991 enum 6992 { 6993 value = true 6994 }; 6995 }; 6996 template <> 6997 struct StructExtends<PhysicalDeviceShaderDrawParametersFeatures, PhysicalDeviceFeatures2> 6998 { 6999 enum 7000 { 7001 value = true 7002 }; 7003 }; 7004 template <> 7005 struct StructExtends<PhysicalDeviceShaderDrawParametersFeatures, DeviceCreateInfo> 7006 { 7007 enum 7008 { 7009 value = true 7010 }; 7011 }; 7012 7013 //=== VK_VERSION_1_2 === 7014 template <> 7015 struct StructExtends<PhysicalDeviceVulkan11Features, PhysicalDeviceFeatures2> 7016 { 7017 enum 7018 { 7019 value = true 7020 }; 7021 }; 7022 template <> 7023 struct StructExtends<PhysicalDeviceVulkan11Features, DeviceCreateInfo> 7024 { 7025 enum 7026 { 7027 value = true 7028 }; 7029 }; 7030 template <> 7031 struct StructExtends<PhysicalDeviceVulkan11Properties, PhysicalDeviceProperties2> 7032 { 7033 enum 7034 { 7035 value = true 7036 }; 7037 }; 7038 template <> 7039 struct StructExtends<PhysicalDeviceVulkan12Features, PhysicalDeviceFeatures2> 7040 { 7041 enum 7042 { 7043 value = true 7044 }; 7045 }; 7046 template <> 7047 struct StructExtends<PhysicalDeviceVulkan12Features, DeviceCreateInfo> 7048 { 7049 enum 7050 { 7051 value = true 7052 }; 7053 }; 7054 template <> 7055 struct StructExtends<PhysicalDeviceVulkan12Properties, PhysicalDeviceProperties2> 7056 { 7057 enum 7058 { 7059 value = true 7060 }; 7061 }; 7062 template <> 7063 struct StructExtends<ImageFormatListCreateInfo, ImageCreateInfo> 7064 { 7065 enum 7066 { 7067 value = true 7068 }; 7069 }; 7070 template <> 7071 struct StructExtends<ImageFormatListCreateInfo, SwapchainCreateInfoKHR> 7072 { 7073 enum 7074 { 7075 value = true 7076 }; 7077 }; 7078 template <> 7079 struct StructExtends<ImageFormatListCreateInfo, PhysicalDeviceImageFormatInfo2> 7080 { 7081 enum 7082 { 7083 value = true 7084 }; 7085 }; 7086 template <> 7087 struct StructExtends<PhysicalDevice8BitStorageFeatures, PhysicalDeviceFeatures2> 7088 { 7089 enum 7090 { 7091 value = true 7092 }; 7093 }; 7094 template <> 7095 struct StructExtends<PhysicalDevice8BitStorageFeatures, DeviceCreateInfo> 7096 { 7097 enum 7098 { 7099 value = true 7100 }; 7101 }; 7102 template <> 7103 struct StructExtends<PhysicalDeviceDriverProperties, PhysicalDeviceProperties2> 7104 { 7105 enum 7106 { 7107 value = true 7108 }; 7109 }; 7110 template <> 7111 struct StructExtends<PhysicalDeviceShaderAtomicInt64Features, PhysicalDeviceFeatures2> 7112 { 7113 enum 7114 { 7115 value = true 7116 }; 7117 }; 7118 template <> 7119 struct StructExtends<PhysicalDeviceShaderAtomicInt64Features, DeviceCreateInfo> 7120 { 7121 enum 7122 { 7123 value = true 7124 }; 7125 }; 7126 template <> 7127 struct StructExtends<PhysicalDeviceShaderFloat16Int8Features, PhysicalDeviceFeatures2> 7128 { 7129 enum 7130 { 7131 value = true 7132 }; 7133 }; 7134 template <> 7135 struct StructExtends<PhysicalDeviceShaderFloat16Int8Features, DeviceCreateInfo> 7136 { 7137 enum 7138 { 7139 value = true 7140 }; 7141 }; 7142 template <> 7143 struct StructExtends<PhysicalDeviceFloatControlsProperties, PhysicalDeviceProperties2> 7144 { 7145 enum 7146 { 7147 value = true 7148 }; 7149 }; 7150 template <> 7151 struct StructExtends<DescriptorSetLayoutBindingFlagsCreateInfo, DescriptorSetLayoutCreateInfo> 7152 { 7153 enum 7154 { 7155 value = true 7156 }; 7157 }; 7158 template <> 7159 struct StructExtends<PhysicalDeviceDescriptorIndexingFeatures, PhysicalDeviceFeatures2> 7160 { 7161 enum 7162 { 7163 value = true 7164 }; 7165 }; 7166 template <> 7167 struct StructExtends<PhysicalDeviceDescriptorIndexingFeatures, DeviceCreateInfo> 7168 { 7169 enum 7170 { 7171 value = true 7172 }; 7173 }; 7174 template <> 7175 struct StructExtends<PhysicalDeviceDescriptorIndexingProperties, PhysicalDeviceProperties2> 7176 { 7177 enum 7178 { 7179 value = true 7180 }; 7181 }; 7182 template <> 7183 struct StructExtends<DescriptorSetVariableDescriptorCountAllocateInfo, DescriptorSetAllocateInfo> 7184 { 7185 enum 7186 { 7187 value = true 7188 }; 7189 }; 7190 template <> 7191 struct StructExtends<DescriptorSetVariableDescriptorCountLayoutSupport, DescriptorSetLayoutSupport> 7192 { 7193 enum 7194 { 7195 value = true 7196 }; 7197 }; 7198 template <> 7199 struct StructExtends<SubpassDescriptionDepthStencilResolve, SubpassDescription2> 7200 { 7201 enum 7202 { 7203 value = true 7204 }; 7205 }; 7206 template <> 7207 struct StructExtends<PhysicalDeviceDepthStencilResolveProperties, PhysicalDeviceProperties2> 7208 { 7209 enum 7210 { 7211 value = true 7212 }; 7213 }; 7214 template <> 7215 struct StructExtends<PhysicalDeviceScalarBlockLayoutFeatures, PhysicalDeviceFeatures2> 7216 { 7217 enum 7218 { 7219 value = true 7220 }; 7221 }; 7222 template <> 7223 struct StructExtends<PhysicalDeviceScalarBlockLayoutFeatures, DeviceCreateInfo> 7224 { 7225 enum 7226 { 7227 value = true 7228 }; 7229 }; 7230 template <> 7231 struct StructExtends<ImageStencilUsageCreateInfo, ImageCreateInfo> 7232 { 7233 enum 7234 { 7235 value = true 7236 }; 7237 }; 7238 template <> 7239 struct StructExtends<ImageStencilUsageCreateInfo, PhysicalDeviceImageFormatInfo2> 7240 { 7241 enum 7242 { 7243 value = true 7244 }; 7245 }; 7246 template <> 7247 struct StructExtends<SamplerReductionModeCreateInfo, SamplerCreateInfo> 7248 { 7249 enum 7250 { 7251 value = true 7252 }; 7253 }; 7254 template <> 7255 struct StructExtends<PhysicalDeviceSamplerFilterMinmaxProperties, PhysicalDeviceProperties2> 7256 { 7257 enum 7258 { 7259 value = true 7260 }; 7261 }; 7262 template <> 7263 struct StructExtends<PhysicalDeviceVulkanMemoryModelFeatures, PhysicalDeviceFeatures2> 7264 { 7265 enum 7266 { 7267 value = true 7268 }; 7269 }; 7270 template <> 7271 struct StructExtends<PhysicalDeviceVulkanMemoryModelFeatures, DeviceCreateInfo> 7272 { 7273 enum 7274 { 7275 value = true 7276 }; 7277 }; 7278 template <> 7279 struct StructExtends<PhysicalDeviceImagelessFramebufferFeatures, PhysicalDeviceFeatures2> 7280 { 7281 enum 7282 { 7283 value = true 7284 }; 7285 }; 7286 template <> 7287 struct StructExtends<PhysicalDeviceImagelessFramebufferFeatures, DeviceCreateInfo> 7288 { 7289 enum 7290 { 7291 value = true 7292 }; 7293 }; 7294 template <> 7295 struct StructExtends<FramebufferAttachmentsCreateInfo, FramebufferCreateInfo> 7296 { 7297 enum 7298 { 7299 value = true 7300 }; 7301 }; 7302 template <> 7303 struct StructExtends<RenderPassAttachmentBeginInfo, RenderPassBeginInfo> 7304 { 7305 enum 7306 { 7307 value = true 7308 }; 7309 }; 7310 template <> 7311 struct StructExtends<PhysicalDeviceUniformBufferStandardLayoutFeatures, PhysicalDeviceFeatures2> 7312 { 7313 enum 7314 { 7315 value = true 7316 }; 7317 }; 7318 template <> 7319 struct StructExtends<PhysicalDeviceUniformBufferStandardLayoutFeatures, DeviceCreateInfo> 7320 { 7321 enum 7322 { 7323 value = true 7324 }; 7325 }; 7326 template <> 7327 struct StructExtends<PhysicalDeviceShaderSubgroupExtendedTypesFeatures, PhysicalDeviceFeatures2> 7328 { 7329 enum 7330 { 7331 value = true 7332 }; 7333 }; 7334 template <> 7335 struct StructExtends<PhysicalDeviceShaderSubgroupExtendedTypesFeatures, DeviceCreateInfo> 7336 { 7337 enum 7338 { 7339 value = true 7340 }; 7341 }; 7342 template <> 7343 struct StructExtends<PhysicalDeviceSeparateDepthStencilLayoutsFeatures, PhysicalDeviceFeatures2> 7344 { 7345 enum 7346 { 7347 value = true 7348 }; 7349 }; 7350 template <> 7351 struct StructExtends<PhysicalDeviceSeparateDepthStencilLayoutsFeatures, DeviceCreateInfo> 7352 { 7353 enum 7354 { 7355 value = true 7356 }; 7357 }; 7358 template <> 7359 struct StructExtends<AttachmentReferenceStencilLayout, AttachmentReference2> 7360 { 7361 enum 7362 { 7363 value = true 7364 }; 7365 }; 7366 template <> 7367 struct StructExtends<AttachmentDescriptionStencilLayout, AttachmentDescription2> 7368 { 7369 enum 7370 { 7371 value = true 7372 }; 7373 }; 7374 template <> 7375 struct StructExtends<PhysicalDeviceHostQueryResetFeatures, PhysicalDeviceFeatures2> 7376 { 7377 enum 7378 { 7379 value = true 7380 }; 7381 }; 7382 template <> 7383 struct StructExtends<PhysicalDeviceHostQueryResetFeatures, DeviceCreateInfo> 7384 { 7385 enum 7386 { 7387 value = true 7388 }; 7389 }; 7390 template <> 7391 struct StructExtends<PhysicalDeviceTimelineSemaphoreFeatures, PhysicalDeviceFeatures2> 7392 { 7393 enum 7394 { 7395 value = true 7396 }; 7397 }; 7398 template <> 7399 struct StructExtends<PhysicalDeviceTimelineSemaphoreFeatures, DeviceCreateInfo> 7400 { 7401 enum 7402 { 7403 value = true 7404 }; 7405 }; 7406 template <> 7407 struct StructExtends<PhysicalDeviceTimelineSemaphoreProperties, PhysicalDeviceProperties2> 7408 { 7409 enum 7410 { 7411 value = true 7412 }; 7413 }; 7414 template <> 7415 struct StructExtends<SemaphoreTypeCreateInfo, SemaphoreCreateInfo> 7416 { 7417 enum 7418 { 7419 value = true 7420 }; 7421 }; 7422 template <> 7423 struct StructExtends<SemaphoreTypeCreateInfo, PhysicalDeviceExternalSemaphoreInfo> 7424 { 7425 enum 7426 { 7427 value = true 7428 }; 7429 }; 7430 template <> 7431 struct StructExtends<TimelineSemaphoreSubmitInfo, SubmitInfo> 7432 { 7433 enum 7434 { 7435 value = true 7436 }; 7437 }; 7438 template <> 7439 struct StructExtends<TimelineSemaphoreSubmitInfo, BindSparseInfo> 7440 { 7441 enum 7442 { 7443 value = true 7444 }; 7445 }; 7446 template <> 7447 struct StructExtends<PhysicalDeviceBufferDeviceAddressFeatures, PhysicalDeviceFeatures2> 7448 { 7449 enum 7450 { 7451 value = true 7452 }; 7453 }; 7454 template <> 7455 struct StructExtends<PhysicalDeviceBufferDeviceAddressFeatures, DeviceCreateInfo> 7456 { 7457 enum 7458 { 7459 value = true 7460 }; 7461 }; 7462 template <> 7463 struct StructExtends<BufferOpaqueCaptureAddressCreateInfo, BufferCreateInfo> 7464 { 7465 enum 7466 { 7467 value = true 7468 }; 7469 }; 7470 template <> 7471 struct StructExtends<MemoryOpaqueCaptureAddressAllocateInfo, MemoryAllocateInfo> 7472 { 7473 enum 7474 { 7475 value = true 7476 }; 7477 }; 7478 7479 //=== VK_KHR_swapchain === 7480 template <> 7481 struct StructExtends<ImageSwapchainCreateInfoKHR, ImageCreateInfo> 7482 { 7483 enum 7484 { 7485 value = true 7486 }; 7487 }; 7488 template <> 7489 struct StructExtends<BindImageMemorySwapchainInfoKHR, BindImageMemoryInfo> 7490 { 7491 enum 7492 { 7493 value = true 7494 }; 7495 }; 7496 template <> 7497 struct StructExtends<DeviceGroupPresentInfoKHR, PresentInfoKHR> 7498 { 7499 enum 7500 { 7501 value = true 7502 }; 7503 }; 7504 template <> 7505 struct StructExtends<DeviceGroupSwapchainCreateInfoKHR, SwapchainCreateInfoKHR> 7506 { 7507 enum 7508 { 7509 value = true 7510 }; 7511 }; 7512 7513 //=== VK_KHR_display_swapchain === 7514 template <> 7515 struct StructExtends<DisplayPresentInfoKHR, PresentInfoKHR> 7516 { 7517 enum 7518 { 7519 value = true 7520 }; 7521 }; 7522 7523 //=== VK_EXT_debug_report === 7524 template <> 7525 struct StructExtends<DebugReportCallbackCreateInfoEXT, InstanceCreateInfo> 7526 { 7527 enum 7528 { 7529 value = true 7530 }; 7531 }; 7532 7533 //=== VK_AMD_rasterization_order === 7534 template <> 7535 struct StructExtends<PipelineRasterizationStateRasterizationOrderAMD, PipelineRasterizationStateCreateInfo> 7536 { 7537 enum 7538 { 7539 value = true 7540 }; 7541 }; 7542 7543 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 7544 //=== VK_KHR_video_queue === 7545 template <> 7546 struct StructExtends<VideoQueueFamilyProperties2KHR, QueueFamilyProperties2> 7547 { 7548 enum 7549 { 7550 value = true 7551 }; 7552 }; 7553 template <> 7554 struct StructExtends<VideoProfileKHR, QueryPoolCreateInfo> 7555 { 7556 enum 7557 { 7558 value = true 7559 }; 7560 }; 7561 template <> 7562 struct StructExtends<VideoProfileKHR, FormatProperties2> 7563 { 7564 enum 7565 { 7566 value = true 7567 }; 7568 }; 7569 template <> 7570 struct StructExtends<VideoProfileKHR, ImageCreateInfo> 7571 { 7572 enum 7573 { 7574 value = true 7575 }; 7576 }; 7577 template <> 7578 struct StructExtends<VideoProfileKHR, ImageViewCreateInfo> 7579 { 7580 enum 7581 { 7582 value = true 7583 }; 7584 }; 7585 template <> 7586 struct StructExtends<VideoProfileKHR, BufferCreateInfo> 7587 { 7588 enum 7589 { 7590 value = true 7591 }; 7592 }; 7593 template <> 7594 struct StructExtends<VideoProfilesKHR, FormatProperties2> 7595 { 7596 enum 7597 { 7598 value = true 7599 }; 7600 }; 7601 template <> 7602 struct StructExtends<VideoProfilesKHR, ImageCreateInfo> 7603 { 7604 enum 7605 { 7606 value = true 7607 }; 7608 }; 7609 template <> 7610 struct StructExtends<VideoProfilesKHR, ImageViewCreateInfo> 7611 { 7612 enum 7613 { 7614 value = true 7615 }; 7616 }; 7617 template <> 7618 struct StructExtends<VideoProfilesKHR, BufferCreateInfo> 7619 { 7620 enum 7621 { 7622 value = true 7623 }; 7624 }; 7625 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 7626 7627 //=== VK_NV_dedicated_allocation === 7628 template <> 7629 struct StructExtends<DedicatedAllocationImageCreateInfoNV, ImageCreateInfo> 7630 { 7631 enum 7632 { 7633 value = true 7634 }; 7635 }; 7636 template <> 7637 struct StructExtends<DedicatedAllocationBufferCreateInfoNV, BufferCreateInfo> 7638 { 7639 enum 7640 { 7641 value = true 7642 }; 7643 }; 7644 template <> 7645 struct StructExtends<DedicatedAllocationMemoryAllocateInfoNV, MemoryAllocateInfo> 7646 { 7647 enum 7648 { 7649 value = true 7650 }; 7651 }; 7652 7653 //=== VK_EXT_transform_feedback === 7654 template <> 7655 struct StructExtends<PhysicalDeviceTransformFeedbackFeaturesEXT, PhysicalDeviceFeatures2> 7656 { 7657 enum 7658 { 7659 value = true 7660 }; 7661 }; 7662 template <> 7663 struct StructExtends<PhysicalDeviceTransformFeedbackFeaturesEXT, DeviceCreateInfo> 7664 { 7665 enum 7666 { 7667 value = true 7668 }; 7669 }; 7670 template <> 7671 struct StructExtends<PhysicalDeviceTransformFeedbackPropertiesEXT, PhysicalDeviceProperties2> 7672 { 7673 enum 7674 { 7675 value = true 7676 }; 7677 }; 7678 template <> 7679 struct StructExtends<PipelineRasterizationStateStreamCreateInfoEXT, PipelineRasterizationStateCreateInfo> 7680 { 7681 enum 7682 { 7683 value = true 7684 }; 7685 }; 7686 7687 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 7688 //=== VK_EXT_video_encode_h264 === 7689 template <> 7690 struct StructExtends<VideoEncodeH264CapabilitiesEXT, VideoCapabilitiesKHR> 7691 { 7692 enum 7693 { 7694 value = true 7695 }; 7696 }; 7697 template <> 7698 struct StructExtends<VideoEncodeH264SessionCreateInfoEXT, VideoSessionCreateInfoKHR> 7699 { 7700 enum 7701 { 7702 value = true 7703 }; 7704 }; 7705 template <> 7706 struct StructExtends<VideoEncodeH264SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR> 7707 { 7708 enum 7709 { 7710 value = true 7711 }; 7712 }; 7713 template <> 7714 struct StructExtends<VideoEncodeH264SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR> 7715 { 7716 enum 7717 { 7718 value = true 7719 }; 7720 }; 7721 template <> 7722 struct StructExtends<VideoEncodeH264VclFrameInfoEXT, VideoEncodeInfoKHR> 7723 { 7724 enum 7725 { 7726 value = true 7727 }; 7728 }; 7729 template <> 7730 struct StructExtends<VideoEncodeH264EmitPictureParametersEXT, VideoEncodeInfoKHR> 7731 { 7732 enum 7733 { 7734 value = true 7735 }; 7736 }; 7737 template <> 7738 struct StructExtends<VideoEncodeH264ProfileEXT, VideoProfileKHR> 7739 { 7740 enum 7741 { 7742 value = true 7743 }; 7744 }; 7745 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 7746 7747 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 7748 //=== VK_EXT_video_encode_h265 === 7749 template <> 7750 struct StructExtends<VideoEncodeH265CapabilitiesEXT, VideoCapabilitiesKHR> 7751 { 7752 enum 7753 { 7754 value = true 7755 }; 7756 }; 7757 template <> 7758 struct StructExtends<VideoEncodeH265SessionCreateInfoEXT, VideoSessionCreateInfoKHR> 7759 { 7760 enum 7761 { 7762 value = true 7763 }; 7764 }; 7765 template <> 7766 struct StructExtends<VideoEncodeH265SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR> 7767 { 7768 enum 7769 { 7770 value = true 7771 }; 7772 }; 7773 template <> 7774 struct StructExtends<VideoEncodeH265SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR> 7775 { 7776 enum 7777 { 7778 value = true 7779 }; 7780 }; 7781 template <> 7782 struct StructExtends<VideoEncodeH265VclFrameInfoEXT, VideoEncodeInfoKHR> 7783 { 7784 enum 7785 { 7786 value = true 7787 }; 7788 }; 7789 template <> 7790 struct StructExtends<VideoEncodeH265EmitPictureParametersEXT, VideoEncodeInfoKHR> 7791 { 7792 enum 7793 { 7794 value = true 7795 }; 7796 }; 7797 template <> 7798 struct StructExtends<VideoEncodeH265ProfileEXT, VideoProfileKHR> 7799 { 7800 enum 7801 { 7802 value = true 7803 }; 7804 }; 7805 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 7806 7807 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 7808 //=== VK_EXT_video_decode_h264 === 7809 template <> 7810 struct StructExtends<VideoDecodeH264ProfileEXT, VideoProfileKHR> 7811 { 7812 enum 7813 { 7814 value = true 7815 }; 7816 }; 7817 template <> 7818 struct StructExtends<VideoDecodeH264CapabilitiesEXT, VideoCapabilitiesKHR> 7819 { 7820 enum 7821 { 7822 value = true 7823 }; 7824 }; 7825 template <> 7826 struct StructExtends<VideoDecodeH264SessionCreateInfoEXT, VideoSessionCreateInfoKHR> 7827 { 7828 enum 7829 { 7830 value = true 7831 }; 7832 }; 7833 template <> 7834 struct StructExtends<VideoDecodeH264SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR> 7835 { 7836 enum 7837 { 7838 value = true 7839 }; 7840 }; 7841 template <> 7842 struct StructExtends<VideoDecodeH264SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR> 7843 { 7844 enum 7845 { 7846 value = true 7847 }; 7848 }; 7849 template <> 7850 struct StructExtends<VideoDecodeH264PictureInfoEXT, VideoDecodeInfoKHR> 7851 { 7852 enum 7853 { 7854 value = true 7855 }; 7856 }; 7857 template <> 7858 struct StructExtends<VideoDecodeH264MvcEXT, VideoDecodeH264PictureInfoEXT> 7859 { 7860 enum 7861 { 7862 value = true 7863 }; 7864 }; 7865 template <> 7866 struct StructExtends<VideoDecodeH264DpbSlotInfoEXT, VideoReferenceSlotKHR> 7867 { 7868 enum 7869 { 7870 value = true 7871 }; 7872 }; 7873 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 7874 7875 //=== VK_AMD_texture_gather_bias_lod === 7876 template <> 7877 struct StructExtends<TextureLODGatherFormatPropertiesAMD, ImageFormatProperties2> 7878 { 7879 enum 7880 { 7881 value = true 7882 }; 7883 }; 7884 7885 //=== VK_NV_corner_sampled_image === 7886 template <> 7887 struct StructExtends<PhysicalDeviceCornerSampledImageFeaturesNV, PhysicalDeviceFeatures2> 7888 { 7889 enum 7890 { 7891 value = true 7892 }; 7893 }; 7894 template <> 7895 struct StructExtends<PhysicalDeviceCornerSampledImageFeaturesNV, DeviceCreateInfo> 7896 { 7897 enum 7898 { 7899 value = true 7900 }; 7901 }; 7902 7903 //=== VK_NV_external_memory === 7904 template <> 7905 struct StructExtends<ExternalMemoryImageCreateInfoNV, ImageCreateInfo> 7906 { 7907 enum 7908 { 7909 value = true 7910 }; 7911 }; 7912 template <> 7913 struct StructExtends<ExportMemoryAllocateInfoNV, MemoryAllocateInfo> 7914 { 7915 enum 7916 { 7917 value = true 7918 }; 7919 }; 7920 7921 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 7922 //=== VK_NV_external_memory_win32 === 7923 template <> 7924 struct StructExtends<ImportMemoryWin32HandleInfoNV, MemoryAllocateInfo> 7925 { 7926 enum 7927 { 7928 value = true 7929 }; 7930 }; 7931 template <> 7932 struct StructExtends<ExportMemoryWin32HandleInfoNV, MemoryAllocateInfo> 7933 { 7934 enum 7935 { 7936 value = true 7937 }; 7938 }; 7939 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 7940 7941 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 7942 //=== VK_NV_win32_keyed_mutex === 7943 template <> 7944 struct StructExtends<Win32KeyedMutexAcquireReleaseInfoNV, SubmitInfo> 7945 { 7946 enum 7947 { 7948 value = true 7949 }; 7950 }; 7951 template <> 7952 struct StructExtends<Win32KeyedMutexAcquireReleaseInfoNV, SubmitInfo2KHR> 7953 { 7954 enum 7955 { 7956 value = true 7957 }; 7958 }; 7959 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 7960 7961 //=== VK_EXT_validation_flags === 7962 template <> 7963 struct StructExtends<ValidationFlagsEXT, InstanceCreateInfo> 7964 { 7965 enum 7966 { 7967 value = true 7968 }; 7969 }; 7970 7971 //=== VK_EXT_texture_compression_astc_hdr === 7972 template <> 7973 struct StructExtends<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, PhysicalDeviceFeatures2> 7974 { 7975 enum 7976 { 7977 value = true 7978 }; 7979 }; 7980 template <> 7981 struct StructExtends<PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT, DeviceCreateInfo> 7982 { 7983 enum 7984 { 7985 value = true 7986 }; 7987 }; 7988 7989 //=== VK_EXT_astc_decode_mode === 7990 template <> 7991 struct StructExtends<ImageViewASTCDecodeModeEXT, ImageViewCreateInfo> 7992 { 7993 enum 7994 { 7995 value = true 7996 }; 7997 }; 7998 template <> 7999 struct StructExtends<PhysicalDeviceASTCDecodeFeaturesEXT, PhysicalDeviceFeatures2> 8000 { 8001 enum 8002 { 8003 value = true 8004 }; 8005 }; 8006 template <> 8007 struct StructExtends<PhysicalDeviceASTCDecodeFeaturesEXT, DeviceCreateInfo> 8008 { 8009 enum 8010 { 8011 value = true 8012 }; 8013 }; 8014 8015 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 8016 //=== VK_KHR_external_memory_win32 === 8017 template <> 8018 struct StructExtends<ImportMemoryWin32HandleInfoKHR, MemoryAllocateInfo> 8019 { 8020 enum 8021 { 8022 value = true 8023 }; 8024 }; 8025 template <> 8026 struct StructExtends<ExportMemoryWin32HandleInfoKHR, MemoryAllocateInfo> 8027 { 8028 enum 8029 { 8030 value = true 8031 }; 8032 }; 8033 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 8034 8035 //=== VK_KHR_external_memory_fd === 8036 template <> 8037 struct StructExtends<ImportMemoryFdInfoKHR, MemoryAllocateInfo> 8038 { 8039 enum 8040 { 8041 value = true 8042 }; 8043 }; 8044 8045 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 8046 //=== VK_KHR_win32_keyed_mutex === 8047 template <> 8048 struct StructExtends<Win32KeyedMutexAcquireReleaseInfoKHR, SubmitInfo> 8049 { 8050 enum 8051 { 8052 value = true 8053 }; 8054 }; 8055 template <> 8056 struct StructExtends<Win32KeyedMutexAcquireReleaseInfoKHR, SubmitInfo2KHR> 8057 { 8058 enum 8059 { 8060 value = true 8061 }; 8062 }; 8063 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 8064 8065 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 8066 //=== VK_KHR_external_semaphore_win32 === 8067 template <> 8068 struct StructExtends<ExportSemaphoreWin32HandleInfoKHR, SemaphoreCreateInfo> 8069 { 8070 enum 8071 { 8072 value = true 8073 }; 8074 }; 8075 template <> 8076 struct StructExtends<D3D12FenceSubmitInfoKHR, SubmitInfo> 8077 { 8078 enum 8079 { 8080 value = true 8081 }; 8082 }; 8083 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 8084 8085 //=== VK_KHR_push_descriptor === 8086 template <> 8087 struct StructExtends<PhysicalDevicePushDescriptorPropertiesKHR, PhysicalDeviceProperties2> 8088 { 8089 enum 8090 { 8091 value = true 8092 }; 8093 }; 8094 8095 //=== VK_EXT_conditional_rendering === 8096 template <> 8097 struct StructExtends<PhysicalDeviceConditionalRenderingFeaturesEXT, PhysicalDeviceFeatures2> 8098 { 8099 enum 8100 { 8101 value = true 8102 }; 8103 }; 8104 template <> 8105 struct StructExtends<PhysicalDeviceConditionalRenderingFeaturesEXT, DeviceCreateInfo> 8106 { 8107 enum 8108 { 8109 value = true 8110 }; 8111 }; 8112 template <> 8113 struct StructExtends<CommandBufferInheritanceConditionalRenderingInfoEXT, CommandBufferInheritanceInfo> 8114 { 8115 enum 8116 { 8117 value = true 8118 }; 8119 }; 8120 8121 //=== VK_KHR_incremental_present === 8122 template <> 8123 struct StructExtends<PresentRegionsKHR, PresentInfoKHR> 8124 { 8125 enum 8126 { 8127 value = true 8128 }; 8129 }; 8130 8131 //=== VK_NV_clip_space_w_scaling === 8132 template <> 8133 struct StructExtends<PipelineViewportWScalingStateCreateInfoNV, PipelineViewportStateCreateInfo> 8134 { 8135 enum 8136 { 8137 value = true 8138 }; 8139 }; 8140 8141 //=== VK_EXT_display_control === 8142 template <> 8143 struct StructExtends<SwapchainCounterCreateInfoEXT, SwapchainCreateInfoKHR> 8144 { 8145 enum 8146 { 8147 value = true 8148 }; 8149 }; 8150 8151 //=== VK_GOOGLE_display_timing === 8152 template <> 8153 struct StructExtends<PresentTimesInfoGOOGLE, PresentInfoKHR> 8154 { 8155 enum 8156 { 8157 value = true 8158 }; 8159 }; 8160 8161 //=== VK_NVX_multiview_per_view_attributes === 8162 template <> 8163 struct StructExtends<PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, PhysicalDeviceProperties2> 8164 { 8165 enum 8166 { 8167 value = true 8168 }; 8169 }; 8170 8171 //=== VK_NV_viewport_swizzle === 8172 template <> 8173 struct StructExtends<PipelineViewportSwizzleStateCreateInfoNV, PipelineViewportStateCreateInfo> 8174 { 8175 enum 8176 { 8177 value = true 8178 }; 8179 }; 8180 8181 //=== VK_EXT_discard_rectangles === 8182 template <> 8183 struct StructExtends<PhysicalDeviceDiscardRectanglePropertiesEXT, PhysicalDeviceProperties2> 8184 { 8185 enum 8186 { 8187 value = true 8188 }; 8189 }; 8190 template <> 8191 struct StructExtends<PipelineDiscardRectangleStateCreateInfoEXT, GraphicsPipelineCreateInfo> 8192 { 8193 enum 8194 { 8195 value = true 8196 }; 8197 }; 8198 8199 //=== VK_EXT_conservative_rasterization === 8200 template <> 8201 struct StructExtends<PhysicalDeviceConservativeRasterizationPropertiesEXT, PhysicalDeviceProperties2> 8202 { 8203 enum 8204 { 8205 value = true 8206 }; 8207 }; 8208 template <> 8209 struct StructExtends<PipelineRasterizationConservativeStateCreateInfoEXT, PipelineRasterizationStateCreateInfo> 8210 { 8211 enum 8212 { 8213 value = true 8214 }; 8215 }; 8216 8217 //=== VK_EXT_depth_clip_enable === 8218 template <> 8219 struct StructExtends<PhysicalDeviceDepthClipEnableFeaturesEXT, PhysicalDeviceFeatures2> 8220 { 8221 enum 8222 { 8223 value = true 8224 }; 8225 }; 8226 template <> 8227 struct StructExtends<PhysicalDeviceDepthClipEnableFeaturesEXT, DeviceCreateInfo> 8228 { 8229 enum 8230 { 8231 value = true 8232 }; 8233 }; 8234 template <> 8235 struct StructExtends<PipelineRasterizationDepthClipStateCreateInfoEXT, PipelineRasterizationStateCreateInfo> 8236 { 8237 enum 8238 { 8239 value = true 8240 }; 8241 }; 8242 8243 //=== VK_KHR_shared_presentable_image === 8244 template <> 8245 struct StructExtends<SharedPresentSurfaceCapabilitiesKHR, SurfaceCapabilities2KHR> 8246 { 8247 enum 8248 { 8249 value = true 8250 }; 8251 }; 8252 8253 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 8254 //=== VK_KHR_external_fence_win32 === 8255 template <> 8256 struct StructExtends<ExportFenceWin32HandleInfoKHR, FenceCreateInfo> 8257 { 8258 enum 8259 { 8260 value = true 8261 }; 8262 }; 8263 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 8264 8265 //=== VK_KHR_performance_query === 8266 template <> 8267 struct StructExtends<PhysicalDevicePerformanceQueryFeaturesKHR, PhysicalDeviceFeatures2> 8268 { 8269 enum 8270 { 8271 value = true 8272 }; 8273 }; 8274 template <> 8275 struct StructExtends<PhysicalDevicePerformanceQueryFeaturesKHR, DeviceCreateInfo> 8276 { 8277 enum 8278 { 8279 value = true 8280 }; 8281 }; 8282 template <> 8283 struct StructExtends<PhysicalDevicePerformanceQueryPropertiesKHR, PhysicalDeviceProperties2> 8284 { 8285 enum 8286 { 8287 value = true 8288 }; 8289 }; 8290 template <> 8291 struct StructExtends<QueryPoolPerformanceCreateInfoKHR, QueryPoolCreateInfo> 8292 { 8293 enum 8294 { 8295 value = true 8296 }; 8297 }; 8298 template <> 8299 struct StructExtends<PerformanceQuerySubmitInfoKHR, SubmitInfo> 8300 { 8301 enum 8302 { 8303 value = true 8304 }; 8305 }; 8306 template <> 8307 struct StructExtends<PerformanceQuerySubmitInfoKHR, SubmitInfo2KHR> 8308 { 8309 enum 8310 { 8311 value = true 8312 }; 8313 }; 8314 8315 //=== VK_EXT_debug_utils === 8316 template <> 8317 struct StructExtends<DebugUtilsMessengerCreateInfoEXT, InstanceCreateInfo> 8318 { 8319 enum 8320 { 8321 value = true 8322 }; 8323 }; 8324 8325 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 8326 //=== VK_ANDROID_external_memory_android_hardware_buffer === 8327 template <> 8328 struct StructExtends<AndroidHardwareBufferUsageANDROID, ImageFormatProperties2> 8329 { 8330 enum 8331 { 8332 value = true 8333 }; 8334 }; 8335 template <> 8336 struct StructExtends<AndroidHardwareBufferFormatPropertiesANDROID, AndroidHardwareBufferPropertiesANDROID> 8337 { 8338 enum 8339 { 8340 value = true 8341 }; 8342 }; 8343 template <> 8344 struct StructExtends<ImportAndroidHardwareBufferInfoANDROID, MemoryAllocateInfo> 8345 { 8346 enum 8347 { 8348 value = true 8349 }; 8350 }; 8351 template <> 8352 struct StructExtends<ExternalFormatANDROID, ImageCreateInfo> 8353 { 8354 enum 8355 { 8356 value = true 8357 }; 8358 }; 8359 template <> 8360 struct StructExtends<ExternalFormatANDROID, SamplerYcbcrConversionCreateInfo> 8361 { 8362 enum 8363 { 8364 value = true 8365 }; 8366 }; 8367 template <> 8368 struct StructExtends<AndroidHardwareBufferFormatProperties2ANDROID, AndroidHardwareBufferPropertiesANDROID> 8369 { 8370 enum 8371 { 8372 value = true 8373 }; 8374 }; 8375 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 8376 8377 //=== VK_EXT_inline_uniform_block === 8378 template <> 8379 struct StructExtends<PhysicalDeviceInlineUniformBlockFeaturesEXT, PhysicalDeviceFeatures2> 8380 { 8381 enum 8382 { 8383 value = true 8384 }; 8385 }; 8386 template <> 8387 struct StructExtends<PhysicalDeviceInlineUniformBlockFeaturesEXT, DeviceCreateInfo> 8388 { 8389 enum 8390 { 8391 value = true 8392 }; 8393 }; 8394 template <> 8395 struct StructExtends<PhysicalDeviceInlineUniformBlockPropertiesEXT, PhysicalDeviceProperties2> 8396 { 8397 enum 8398 { 8399 value = true 8400 }; 8401 }; 8402 template <> 8403 struct StructExtends<WriteDescriptorSetInlineUniformBlockEXT, WriteDescriptorSet> 8404 { 8405 enum 8406 { 8407 value = true 8408 }; 8409 }; 8410 template <> 8411 struct StructExtends<DescriptorPoolInlineUniformBlockCreateInfoEXT, DescriptorPoolCreateInfo> 8412 { 8413 enum 8414 { 8415 value = true 8416 }; 8417 }; 8418 8419 //=== VK_EXT_sample_locations === 8420 template <> 8421 struct StructExtends<SampleLocationsInfoEXT, ImageMemoryBarrier> 8422 { 8423 enum 8424 { 8425 value = true 8426 }; 8427 }; 8428 template <> 8429 struct StructExtends<SampleLocationsInfoEXT, ImageMemoryBarrier2KHR> 8430 { 8431 enum 8432 { 8433 value = true 8434 }; 8435 }; 8436 template <> 8437 struct StructExtends<RenderPassSampleLocationsBeginInfoEXT, RenderPassBeginInfo> 8438 { 8439 enum 8440 { 8441 value = true 8442 }; 8443 }; 8444 template <> 8445 struct StructExtends<PipelineSampleLocationsStateCreateInfoEXT, PipelineMultisampleStateCreateInfo> 8446 { 8447 enum 8448 { 8449 value = true 8450 }; 8451 }; 8452 template <> 8453 struct StructExtends<PhysicalDeviceSampleLocationsPropertiesEXT, PhysicalDeviceProperties2> 8454 { 8455 enum 8456 { 8457 value = true 8458 }; 8459 }; 8460 8461 //=== VK_EXT_blend_operation_advanced === 8462 template <> 8463 struct StructExtends<PhysicalDeviceBlendOperationAdvancedFeaturesEXT, PhysicalDeviceFeatures2> 8464 { 8465 enum 8466 { 8467 value = true 8468 }; 8469 }; 8470 template <> 8471 struct StructExtends<PhysicalDeviceBlendOperationAdvancedFeaturesEXT, DeviceCreateInfo> 8472 { 8473 enum 8474 { 8475 value = true 8476 }; 8477 }; 8478 template <> 8479 struct StructExtends<PhysicalDeviceBlendOperationAdvancedPropertiesEXT, PhysicalDeviceProperties2> 8480 { 8481 enum 8482 { 8483 value = true 8484 }; 8485 }; 8486 template <> 8487 struct StructExtends<PipelineColorBlendAdvancedStateCreateInfoEXT, PipelineColorBlendStateCreateInfo> 8488 { 8489 enum 8490 { 8491 value = true 8492 }; 8493 }; 8494 8495 //=== VK_NV_fragment_coverage_to_color === 8496 template <> 8497 struct StructExtends<PipelineCoverageToColorStateCreateInfoNV, PipelineMultisampleStateCreateInfo> 8498 { 8499 enum 8500 { 8501 value = true 8502 }; 8503 }; 8504 8505 //=== VK_KHR_acceleration_structure === 8506 template <> 8507 struct StructExtends<WriteDescriptorSetAccelerationStructureKHR, WriteDescriptorSet> 8508 { 8509 enum 8510 { 8511 value = true 8512 }; 8513 }; 8514 template <> 8515 struct StructExtends<PhysicalDeviceAccelerationStructureFeaturesKHR, PhysicalDeviceFeatures2> 8516 { 8517 enum 8518 { 8519 value = true 8520 }; 8521 }; 8522 template <> 8523 struct StructExtends<PhysicalDeviceAccelerationStructureFeaturesKHR, DeviceCreateInfo> 8524 { 8525 enum 8526 { 8527 value = true 8528 }; 8529 }; 8530 template <> 8531 struct StructExtends<PhysicalDeviceAccelerationStructurePropertiesKHR, PhysicalDeviceProperties2> 8532 { 8533 enum 8534 { 8535 value = true 8536 }; 8537 }; 8538 8539 //=== VK_NV_framebuffer_mixed_samples === 8540 template <> 8541 struct StructExtends<PipelineCoverageModulationStateCreateInfoNV, PipelineMultisampleStateCreateInfo> 8542 { 8543 enum 8544 { 8545 value = true 8546 }; 8547 }; 8548 8549 //=== VK_NV_shader_sm_builtins === 8550 template <> 8551 struct StructExtends<PhysicalDeviceShaderSMBuiltinsPropertiesNV, PhysicalDeviceProperties2> 8552 { 8553 enum 8554 { 8555 value = true 8556 }; 8557 }; 8558 template <> 8559 struct StructExtends<PhysicalDeviceShaderSMBuiltinsFeaturesNV, PhysicalDeviceFeatures2> 8560 { 8561 enum 8562 { 8563 value = true 8564 }; 8565 }; 8566 template <> 8567 struct StructExtends<PhysicalDeviceShaderSMBuiltinsFeaturesNV, DeviceCreateInfo> 8568 { 8569 enum 8570 { 8571 value = true 8572 }; 8573 }; 8574 8575 //=== VK_EXT_image_drm_format_modifier === 8576 template <> 8577 struct StructExtends<DrmFormatModifierPropertiesListEXT, FormatProperties2> 8578 { 8579 enum 8580 { 8581 value = true 8582 }; 8583 }; 8584 template <> 8585 struct StructExtends<PhysicalDeviceImageDrmFormatModifierInfoEXT, PhysicalDeviceImageFormatInfo2> 8586 { 8587 enum 8588 { 8589 value = true 8590 }; 8591 }; 8592 template <> 8593 struct StructExtends<ImageDrmFormatModifierListCreateInfoEXT, ImageCreateInfo> 8594 { 8595 enum 8596 { 8597 value = true 8598 }; 8599 }; 8600 template <> 8601 struct StructExtends<ImageDrmFormatModifierExplicitCreateInfoEXT, ImageCreateInfo> 8602 { 8603 enum 8604 { 8605 value = true 8606 }; 8607 }; 8608 template <> 8609 struct StructExtends<DrmFormatModifierPropertiesList2EXT, FormatProperties2> 8610 { 8611 enum 8612 { 8613 value = true 8614 }; 8615 }; 8616 8617 //=== VK_EXT_validation_cache === 8618 template <> 8619 struct StructExtends<ShaderModuleValidationCacheCreateInfoEXT, ShaderModuleCreateInfo> 8620 { 8621 enum 8622 { 8623 value = true 8624 }; 8625 }; 8626 8627 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 8628 //=== VK_KHR_portability_subset === 8629 template <> 8630 struct StructExtends<PhysicalDevicePortabilitySubsetFeaturesKHR, PhysicalDeviceFeatures2> 8631 { 8632 enum 8633 { 8634 value = true 8635 }; 8636 }; 8637 template <> 8638 struct StructExtends<PhysicalDevicePortabilitySubsetFeaturesKHR, DeviceCreateInfo> 8639 { 8640 enum 8641 { 8642 value = true 8643 }; 8644 }; 8645 template <> 8646 struct StructExtends<PhysicalDevicePortabilitySubsetPropertiesKHR, PhysicalDeviceProperties2> 8647 { 8648 enum 8649 { 8650 value = true 8651 }; 8652 }; 8653 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 8654 8655 //=== VK_NV_shading_rate_image === 8656 template <> 8657 struct StructExtends<PipelineViewportShadingRateImageStateCreateInfoNV, PipelineViewportStateCreateInfo> 8658 { 8659 enum 8660 { 8661 value = true 8662 }; 8663 }; 8664 template <> 8665 struct StructExtends<PhysicalDeviceShadingRateImageFeaturesNV, PhysicalDeviceFeatures2> 8666 { 8667 enum 8668 { 8669 value = true 8670 }; 8671 }; 8672 template <> 8673 struct StructExtends<PhysicalDeviceShadingRateImageFeaturesNV, DeviceCreateInfo> 8674 { 8675 enum 8676 { 8677 value = true 8678 }; 8679 }; 8680 template <> 8681 struct StructExtends<PhysicalDeviceShadingRateImagePropertiesNV, PhysicalDeviceProperties2> 8682 { 8683 enum 8684 { 8685 value = true 8686 }; 8687 }; 8688 template <> 8689 struct StructExtends<PipelineViewportCoarseSampleOrderStateCreateInfoNV, PipelineViewportStateCreateInfo> 8690 { 8691 enum 8692 { 8693 value = true 8694 }; 8695 }; 8696 8697 //=== VK_NV_ray_tracing === 8698 template <> 8699 struct StructExtends<WriteDescriptorSetAccelerationStructureNV, WriteDescriptorSet> 8700 { 8701 enum 8702 { 8703 value = true 8704 }; 8705 }; 8706 template <> 8707 struct StructExtends<PhysicalDeviceRayTracingPropertiesNV, PhysicalDeviceProperties2> 8708 { 8709 enum 8710 { 8711 value = true 8712 }; 8713 }; 8714 8715 //=== VK_NV_representative_fragment_test === 8716 template <> 8717 struct StructExtends<PhysicalDeviceRepresentativeFragmentTestFeaturesNV, PhysicalDeviceFeatures2> 8718 { 8719 enum 8720 { 8721 value = true 8722 }; 8723 }; 8724 template <> 8725 struct StructExtends<PhysicalDeviceRepresentativeFragmentTestFeaturesNV, DeviceCreateInfo> 8726 { 8727 enum 8728 { 8729 value = true 8730 }; 8731 }; 8732 template <> 8733 struct StructExtends<PipelineRepresentativeFragmentTestStateCreateInfoNV, GraphicsPipelineCreateInfo> 8734 { 8735 enum 8736 { 8737 value = true 8738 }; 8739 }; 8740 8741 //=== VK_EXT_filter_cubic === 8742 template <> 8743 struct StructExtends<PhysicalDeviceImageViewImageFormatInfoEXT, PhysicalDeviceImageFormatInfo2> 8744 { 8745 enum 8746 { 8747 value = true 8748 }; 8749 }; 8750 template <> 8751 struct StructExtends<FilterCubicImageViewImageFormatPropertiesEXT, ImageFormatProperties2> 8752 { 8753 enum 8754 { 8755 value = true 8756 }; 8757 }; 8758 8759 //=== VK_EXT_global_priority === 8760 template <> 8761 struct StructExtends<DeviceQueueGlobalPriorityCreateInfoEXT, DeviceQueueCreateInfo> 8762 { 8763 enum 8764 { 8765 value = true 8766 }; 8767 }; 8768 8769 //=== VK_EXT_external_memory_host === 8770 template <> 8771 struct StructExtends<ImportMemoryHostPointerInfoEXT, MemoryAllocateInfo> 8772 { 8773 enum 8774 { 8775 value = true 8776 }; 8777 }; 8778 template <> 8779 struct StructExtends<PhysicalDeviceExternalMemoryHostPropertiesEXT, PhysicalDeviceProperties2> 8780 { 8781 enum 8782 { 8783 value = true 8784 }; 8785 }; 8786 8787 //=== VK_KHR_shader_clock === 8788 template <> 8789 struct StructExtends<PhysicalDeviceShaderClockFeaturesKHR, PhysicalDeviceFeatures2> 8790 { 8791 enum 8792 { 8793 value = true 8794 }; 8795 }; 8796 template <> 8797 struct StructExtends<PhysicalDeviceShaderClockFeaturesKHR, DeviceCreateInfo> 8798 { 8799 enum 8800 { 8801 value = true 8802 }; 8803 }; 8804 8805 //=== VK_AMD_pipeline_compiler_control === 8806 template <> 8807 struct StructExtends<PipelineCompilerControlCreateInfoAMD, GraphicsPipelineCreateInfo> 8808 { 8809 enum 8810 { 8811 value = true 8812 }; 8813 }; 8814 template <> 8815 struct StructExtends<PipelineCompilerControlCreateInfoAMD, ComputePipelineCreateInfo> 8816 { 8817 enum 8818 { 8819 value = true 8820 }; 8821 }; 8822 8823 //=== VK_AMD_shader_core_properties === 8824 template <> 8825 struct StructExtends<PhysicalDeviceShaderCorePropertiesAMD, PhysicalDeviceProperties2> 8826 { 8827 enum 8828 { 8829 value = true 8830 }; 8831 }; 8832 8833 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 8834 //=== VK_EXT_video_decode_h265 === 8835 template <> 8836 struct StructExtends<VideoDecodeH265ProfileEXT, VideoProfileKHR> 8837 { 8838 enum 8839 { 8840 value = true 8841 }; 8842 }; 8843 template <> 8844 struct StructExtends<VideoDecodeH265CapabilitiesEXT, VideoCapabilitiesKHR> 8845 { 8846 enum 8847 { 8848 value = true 8849 }; 8850 }; 8851 template <> 8852 struct StructExtends<VideoDecodeH265SessionCreateInfoEXT, VideoSessionCreateInfoKHR> 8853 { 8854 enum 8855 { 8856 value = true 8857 }; 8858 }; 8859 template <> 8860 struct StructExtends<VideoDecodeH265SessionParametersCreateInfoEXT, VideoSessionParametersCreateInfoKHR> 8861 { 8862 enum 8863 { 8864 value = true 8865 }; 8866 }; 8867 template <> 8868 struct StructExtends<VideoDecodeH265SessionParametersAddInfoEXT, VideoSessionParametersUpdateInfoKHR> 8869 { 8870 enum 8871 { 8872 value = true 8873 }; 8874 }; 8875 template <> 8876 struct StructExtends<VideoDecodeH265PictureInfoEXT, VideoDecodeInfoKHR> 8877 { 8878 enum 8879 { 8880 value = true 8881 }; 8882 }; 8883 template <> 8884 struct StructExtends<VideoDecodeH265DpbSlotInfoEXT, VideoReferenceSlotKHR> 8885 { 8886 enum 8887 { 8888 value = true 8889 }; 8890 }; 8891 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 8892 8893 //=== VK_AMD_memory_overallocation_behavior === 8894 template <> 8895 struct StructExtends<DeviceMemoryOverallocationCreateInfoAMD, DeviceCreateInfo> 8896 { 8897 enum 8898 { 8899 value = true 8900 }; 8901 }; 8902 8903 //=== VK_EXT_vertex_attribute_divisor === 8904 template <> 8905 struct StructExtends<PhysicalDeviceVertexAttributeDivisorPropertiesEXT, PhysicalDeviceProperties2> 8906 { 8907 enum 8908 { 8909 value = true 8910 }; 8911 }; 8912 template <> 8913 struct StructExtends<PipelineVertexInputDivisorStateCreateInfoEXT, PipelineVertexInputStateCreateInfo> 8914 { 8915 enum 8916 { 8917 value = true 8918 }; 8919 }; 8920 template <> 8921 struct StructExtends<PhysicalDeviceVertexAttributeDivisorFeaturesEXT, PhysicalDeviceFeatures2> 8922 { 8923 enum 8924 { 8925 value = true 8926 }; 8927 }; 8928 template <> 8929 struct StructExtends<PhysicalDeviceVertexAttributeDivisorFeaturesEXT, DeviceCreateInfo> 8930 { 8931 enum 8932 { 8933 value = true 8934 }; 8935 }; 8936 8937 #if defined( VK_USE_PLATFORM_GGP ) 8938 //=== VK_GGP_frame_token === 8939 template <> 8940 struct StructExtends<PresentFrameTokenGGP, PresentInfoKHR> 8941 { 8942 enum 8943 { 8944 value = true 8945 }; 8946 }; 8947 #endif /*VK_USE_PLATFORM_GGP*/ 8948 8949 //=== VK_EXT_pipeline_creation_feedback === 8950 template <> 8951 struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, GraphicsPipelineCreateInfo> 8952 { 8953 enum 8954 { 8955 value = true 8956 }; 8957 }; 8958 template <> 8959 struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, ComputePipelineCreateInfo> 8960 { 8961 enum 8962 { 8963 value = true 8964 }; 8965 }; 8966 template <> 8967 struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, RayTracingPipelineCreateInfoNV> 8968 { 8969 enum 8970 { 8971 value = true 8972 }; 8973 }; 8974 template <> 8975 struct StructExtends<PipelineCreationFeedbackCreateInfoEXT, RayTracingPipelineCreateInfoKHR> 8976 { 8977 enum 8978 { 8979 value = true 8980 }; 8981 }; 8982 8983 //=== VK_NV_compute_shader_derivatives === 8984 template <> 8985 struct StructExtends<PhysicalDeviceComputeShaderDerivativesFeaturesNV, PhysicalDeviceFeatures2> 8986 { 8987 enum 8988 { 8989 value = true 8990 }; 8991 }; 8992 template <> 8993 struct StructExtends<PhysicalDeviceComputeShaderDerivativesFeaturesNV, DeviceCreateInfo> 8994 { 8995 enum 8996 { 8997 value = true 8998 }; 8999 }; 9000 9001 //=== VK_NV_mesh_shader === 9002 template <> 9003 struct StructExtends<PhysicalDeviceMeshShaderFeaturesNV, PhysicalDeviceFeatures2> 9004 { 9005 enum 9006 { 9007 value = true 9008 }; 9009 }; 9010 template <> 9011 struct StructExtends<PhysicalDeviceMeshShaderFeaturesNV, DeviceCreateInfo> 9012 { 9013 enum 9014 { 9015 value = true 9016 }; 9017 }; 9018 template <> 9019 struct StructExtends<PhysicalDeviceMeshShaderPropertiesNV, PhysicalDeviceProperties2> 9020 { 9021 enum 9022 { 9023 value = true 9024 }; 9025 }; 9026 9027 //=== VK_NV_fragment_shader_barycentric === 9028 template <> 9029 struct StructExtends<PhysicalDeviceFragmentShaderBarycentricFeaturesNV, PhysicalDeviceFeatures2> 9030 { 9031 enum 9032 { 9033 value = true 9034 }; 9035 }; 9036 template <> 9037 struct StructExtends<PhysicalDeviceFragmentShaderBarycentricFeaturesNV, DeviceCreateInfo> 9038 { 9039 enum 9040 { 9041 value = true 9042 }; 9043 }; 9044 9045 //=== VK_NV_shader_image_footprint === 9046 template <> 9047 struct StructExtends<PhysicalDeviceShaderImageFootprintFeaturesNV, PhysicalDeviceFeatures2> 9048 { 9049 enum 9050 { 9051 value = true 9052 }; 9053 }; 9054 template <> 9055 struct StructExtends<PhysicalDeviceShaderImageFootprintFeaturesNV, DeviceCreateInfo> 9056 { 9057 enum 9058 { 9059 value = true 9060 }; 9061 }; 9062 9063 //=== VK_NV_scissor_exclusive === 9064 template <> 9065 struct StructExtends<PipelineViewportExclusiveScissorStateCreateInfoNV, PipelineViewportStateCreateInfo> 9066 { 9067 enum 9068 { 9069 value = true 9070 }; 9071 }; 9072 template <> 9073 struct StructExtends<PhysicalDeviceExclusiveScissorFeaturesNV, PhysicalDeviceFeatures2> 9074 { 9075 enum 9076 { 9077 value = true 9078 }; 9079 }; 9080 template <> 9081 struct StructExtends<PhysicalDeviceExclusiveScissorFeaturesNV, DeviceCreateInfo> 9082 { 9083 enum 9084 { 9085 value = true 9086 }; 9087 }; 9088 9089 //=== VK_NV_device_diagnostic_checkpoints === 9090 template <> 9091 struct StructExtends<QueueFamilyCheckpointPropertiesNV, QueueFamilyProperties2> 9092 { 9093 enum 9094 { 9095 value = true 9096 }; 9097 }; 9098 9099 //=== VK_INTEL_shader_integer_functions2 === 9100 template <> 9101 struct StructExtends<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, PhysicalDeviceFeatures2> 9102 { 9103 enum 9104 { 9105 value = true 9106 }; 9107 }; 9108 template <> 9109 struct StructExtends<PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, DeviceCreateInfo> 9110 { 9111 enum 9112 { 9113 value = true 9114 }; 9115 }; 9116 9117 //=== VK_INTEL_performance_query === 9118 template <> 9119 struct StructExtends<QueryPoolPerformanceQueryCreateInfoINTEL, QueryPoolCreateInfo> 9120 { 9121 enum 9122 { 9123 value = true 9124 }; 9125 }; 9126 9127 //=== VK_EXT_pci_bus_info === 9128 template <> 9129 struct StructExtends<PhysicalDevicePCIBusInfoPropertiesEXT, PhysicalDeviceProperties2> 9130 { 9131 enum 9132 { 9133 value = true 9134 }; 9135 }; 9136 9137 //=== VK_AMD_display_native_hdr === 9138 template <> 9139 struct StructExtends<DisplayNativeHdrSurfaceCapabilitiesAMD, SurfaceCapabilities2KHR> 9140 { 9141 enum 9142 { 9143 value = true 9144 }; 9145 }; 9146 template <> 9147 struct StructExtends<SwapchainDisplayNativeHdrCreateInfoAMD, SwapchainCreateInfoKHR> 9148 { 9149 enum 9150 { 9151 value = true 9152 }; 9153 }; 9154 9155 //=== VK_KHR_shader_terminate_invocation === 9156 template <> 9157 struct StructExtends<PhysicalDeviceShaderTerminateInvocationFeaturesKHR, PhysicalDeviceFeatures2> 9158 { 9159 enum 9160 { 9161 value = true 9162 }; 9163 }; 9164 template <> 9165 struct StructExtends<PhysicalDeviceShaderTerminateInvocationFeaturesKHR, DeviceCreateInfo> 9166 { 9167 enum 9168 { 9169 value = true 9170 }; 9171 }; 9172 9173 //=== VK_EXT_fragment_density_map === 9174 template <> 9175 struct StructExtends<PhysicalDeviceFragmentDensityMapFeaturesEXT, PhysicalDeviceFeatures2> 9176 { 9177 enum 9178 { 9179 value = true 9180 }; 9181 }; 9182 template <> 9183 struct StructExtends<PhysicalDeviceFragmentDensityMapFeaturesEXT, DeviceCreateInfo> 9184 { 9185 enum 9186 { 9187 value = true 9188 }; 9189 }; 9190 template <> 9191 struct StructExtends<PhysicalDeviceFragmentDensityMapPropertiesEXT, PhysicalDeviceProperties2> 9192 { 9193 enum 9194 { 9195 value = true 9196 }; 9197 }; 9198 template <> 9199 struct StructExtends<RenderPassFragmentDensityMapCreateInfoEXT, RenderPassCreateInfo> 9200 { 9201 enum 9202 { 9203 value = true 9204 }; 9205 }; 9206 template <> 9207 struct StructExtends<RenderPassFragmentDensityMapCreateInfoEXT, RenderPassCreateInfo2> 9208 { 9209 enum 9210 { 9211 value = true 9212 }; 9213 }; 9214 9215 //=== VK_EXT_subgroup_size_control === 9216 template <> 9217 struct StructExtends<PhysicalDeviceSubgroupSizeControlFeaturesEXT, PhysicalDeviceFeatures2> 9218 { 9219 enum 9220 { 9221 value = true 9222 }; 9223 }; 9224 template <> 9225 struct StructExtends<PhysicalDeviceSubgroupSizeControlFeaturesEXT, DeviceCreateInfo> 9226 { 9227 enum 9228 { 9229 value = true 9230 }; 9231 }; 9232 template <> 9233 struct StructExtends<PhysicalDeviceSubgroupSizeControlPropertiesEXT, PhysicalDeviceProperties2> 9234 { 9235 enum 9236 { 9237 value = true 9238 }; 9239 }; 9240 template <> 9241 struct StructExtends<PipelineShaderStageRequiredSubgroupSizeCreateInfoEXT, PipelineShaderStageCreateInfo> 9242 { 9243 enum 9244 { 9245 value = true 9246 }; 9247 }; 9248 9249 //=== VK_KHR_fragment_shading_rate === 9250 template <> 9251 struct StructExtends<FragmentShadingRateAttachmentInfoKHR, SubpassDescription2> 9252 { 9253 enum 9254 { 9255 value = true 9256 }; 9257 }; 9258 template <> 9259 struct StructExtends<PipelineFragmentShadingRateStateCreateInfoKHR, GraphicsPipelineCreateInfo> 9260 { 9261 enum 9262 { 9263 value = true 9264 }; 9265 }; 9266 template <> 9267 struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, PhysicalDeviceFeatures2> 9268 { 9269 enum 9270 { 9271 value = true 9272 }; 9273 }; 9274 template <> 9275 struct StructExtends<PhysicalDeviceFragmentShadingRateFeaturesKHR, DeviceCreateInfo> 9276 { 9277 enum 9278 { 9279 value = true 9280 }; 9281 }; 9282 template <> 9283 struct StructExtends<PhysicalDeviceFragmentShadingRatePropertiesKHR, PhysicalDeviceProperties2> 9284 { 9285 enum 9286 { 9287 value = true 9288 }; 9289 }; 9290 9291 //=== VK_AMD_shader_core_properties2 === 9292 template <> 9293 struct StructExtends<PhysicalDeviceShaderCoreProperties2AMD, PhysicalDeviceProperties2> 9294 { 9295 enum 9296 { 9297 value = true 9298 }; 9299 }; 9300 9301 //=== VK_AMD_device_coherent_memory === 9302 template <> 9303 struct StructExtends<PhysicalDeviceCoherentMemoryFeaturesAMD, PhysicalDeviceFeatures2> 9304 { 9305 enum 9306 { 9307 value = true 9308 }; 9309 }; 9310 template <> 9311 struct StructExtends<PhysicalDeviceCoherentMemoryFeaturesAMD, DeviceCreateInfo> 9312 { 9313 enum 9314 { 9315 value = true 9316 }; 9317 }; 9318 9319 //=== VK_EXT_shader_image_atomic_int64 === 9320 template <> 9321 struct StructExtends<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, PhysicalDeviceFeatures2> 9322 { 9323 enum 9324 { 9325 value = true 9326 }; 9327 }; 9328 template <> 9329 struct StructExtends<PhysicalDeviceShaderImageAtomicInt64FeaturesEXT, DeviceCreateInfo> 9330 { 9331 enum 9332 { 9333 value = true 9334 }; 9335 }; 9336 9337 //=== VK_EXT_memory_budget === 9338 template <> 9339 struct StructExtends<PhysicalDeviceMemoryBudgetPropertiesEXT, PhysicalDeviceMemoryProperties2> 9340 { 9341 enum 9342 { 9343 value = true 9344 }; 9345 }; 9346 9347 //=== VK_EXT_memory_priority === 9348 template <> 9349 struct StructExtends<PhysicalDeviceMemoryPriorityFeaturesEXT, PhysicalDeviceFeatures2> 9350 { 9351 enum 9352 { 9353 value = true 9354 }; 9355 }; 9356 template <> 9357 struct StructExtends<PhysicalDeviceMemoryPriorityFeaturesEXT, DeviceCreateInfo> 9358 { 9359 enum 9360 { 9361 value = true 9362 }; 9363 }; 9364 template <> 9365 struct StructExtends<MemoryPriorityAllocateInfoEXT, MemoryAllocateInfo> 9366 { 9367 enum 9368 { 9369 value = true 9370 }; 9371 }; 9372 9373 //=== VK_KHR_surface_protected_capabilities === 9374 template <> 9375 struct StructExtends<SurfaceProtectedCapabilitiesKHR, SurfaceCapabilities2KHR> 9376 { 9377 enum 9378 { 9379 value = true 9380 }; 9381 }; 9382 9383 //=== VK_NV_dedicated_allocation_image_aliasing === 9384 template <> 9385 struct StructExtends<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, PhysicalDeviceFeatures2> 9386 { 9387 enum 9388 { 9389 value = true 9390 }; 9391 }; 9392 template <> 9393 struct StructExtends<PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, DeviceCreateInfo> 9394 { 9395 enum 9396 { 9397 value = true 9398 }; 9399 }; 9400 9401 //=== VK_EXT_buffer_device_address === 9402 template <> 9403 struct StructExtends<PhysicalDeviceBufferDeviceAddressFeaturesEXT, PhysicalDeviceFeatures2> 9404 { 9405 enum 9406 { 9407 value = true 9408 }; 9409 }; 9410 template <> 9411 struct StructExtends<PhysicalDeviceBufferDeviceAddressFeaturesEXT, DeviceCreateInfo> 9412 { 9413 enum 9414 { 9415 value = true 9416 }; 9417 }; 9418 template <> 9419 struct StructExtends<BufferDeviceAddressCreateInfoEXT, BufferCreateInfo> 9420 { 9421 enum 9422 { 9423 value = true 9424 }; 9425 }; 9426 9427 //=== VK_EXT_validation_features === 9428 template <> 9429 struct StructExtends<ValidationFeaturesEXT, InstanceCreateInfo> 9430 { 9431 enum 9432 { 9433 value = true 9434 }; 9435 }; 9436 9437 //=== VK_KHR_present_wait === 9438 template <> 9439 struct StructExtends<PhysicalDevicePresentWaitFeaturesKHR, PhysicalDeviceFeatures2> 9440 { 9441 enum 9442 { 9443 value = true 9444 }; 9445 }; 9446 template <> 9447 struct StructExtends<PhysicalDevicePresentWaitFeaturesKHR, DeviceCreateInfo> 9448 { 9449 enum 9450 { 9451 value = true 9452 }; 9453 }; 9454 9455 //=== VK_NV_cooperative_matrix === 9456 template <> 9457 struct StructExtends<PhysicalDeviceCooperativeMatrixFeaturesNV, PhysicalDeviceFeatures2> 9458 { 9459 enum 9460 { 9461 value = true 9462 }; 9463 }; 9464 template <> 9465 struct StructExtends<PhysicalDeviceCooperativeMatrixFeaturesNV, DeviceCreateInfo> 9466 { 9467 enum 9468 { 9469 value = true 9470 }; 9471 }; 9472 template <> 9473 struct StructExtends<PhysicalDeviceCooperativeMatrixPropertiesNV, PhysicalDeviceProperties2> 9474 { 9475 enum 9476 { 9477 value = true 9478 }; 9479 }; 9480 9481 //=== VK_NV_coverage_reduction_mode === 9482 template <> 9483 struct StructExtends<PhysicalDeviceCoverageReductionModeFeaturesNV, PhysicalDeviceFeatures2> 9484 { 9485 enum 9486 { 9487 value = true 9488 }; 9489 }; 9490 template <> 9491 struct StructExtends<PhysicalDeviceCoverageReductionModeFeaturesNV, DeviceCreateInfo> 9492 { 9493 enum 9494 { 9495 value = true 9496 }; 9497 }; 9498 template <> 9499 struct StructExtends<PipelineCoverageReductionStateCreateInfoNV, PipelineMultisampleStateCreateInfo> 9500 { 9501 enum 9502 { 9503 value = true 9504 }; 9505 }; 9506 9507 //=== VK_EXT_fragment_shader_interlock === 9508 template <> 9509 struct StructExtends<PhysicalDeviceFragmentShaderInterlockFeaturesEXT, PhysicalDeviceFeatures2> 9510 { 9511 enum 9512 { 9513 value = true 9514 }; 9515 }; 9516 template <> 9517 struct StructExtends<PhysicalDeviceFragmentShaderInterlockFeaturesEXT, DeviceCreateInfo> 9518 { 9519 enum 9520 { 9521 value = true 9522 }; 9523 }; 9524 9525 //=== VK_EXT_ycbcr_image_arrays === 9526 template <> 9527 struct StructExtends<PhysicalDeviceYcbcrImageArraysFeaturesEXT, PhysicalDeviceFeatures2> 9528 { 9529 enum 9530 { 9531 value = true 9532 }; 9533 }; 9534 template <> 9535 struct StructExtends<PhysicalDeviceYcbcrImageArraysFeaturesEXT, DeviceCreateInfo> 9536 { 9537 enum 9538 { 9539 value = true 9540 }; 9541 }; 9542 9543 //=== VK_EXT_provoking_vertex === 9544 template <> 9545 struct StructExtends<PhysicalDeviceProvokingVertexFeaturesEXT, PhysicalDeviceFeatures2> 9546 { 9547 enum 9548 { 9549 value = true 9550 }; 9551 }; 9552 template <> 9553 struct StructExtends<PhysicalDeviceProvokingVertexFeaturesEXT, DeviceCreateInfo> 9554 { 9555 enum 9556 { 9557 value = true 9558 }; 9559 }; 9560 template <> 9561 struct StructExtends<PhysicalDeviceProvokingVertexPropertiesEXT, PhysicalDeviceProperties2> 9562 { 9563 enum 9564 { 9565 value = true 9566 }; 9567 }; 9568 template <> 9569 struct StructExtends<PipelineRasterizationProvokingVertexStateCreateInfoEXT, PipelineRasterizationStateCreateInfo> 9570 { 9571 enum 9572 { 9573 value = true 9574 }; 9575 }; 9576 9577 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 9578 //=== VK_EXT_full_screen_exclusive === 9579 template <> 9580 struct StructExtends<SurfaceFullScreenExclusiveInfoEXT, PhysicalDeviceSurfaceInfo2KHR> 9581 { 9582 enum 9583 { 9584 value = true 9585 }; 9586 }; 9587 template <> 9588 struct StructExtends<SurfaceFullScreenExclusiveInfoEXT, SwapchainCreateInfoKHR> 9589 { 9590 enum 9591 { 9592 value = true 9593 }; 9594 }; 9595 template <> 9596 struct StructExtends<SurfaceCapabilitiesFullScreenExclusiveEXT, SurfaceCapabilities2KHR> 9597 { 9598 enum 9599 { 9600 value = true 9601 }; 9602 }; 9603 template <> 9604 struct StructExtends<SurfaceFullScreenExclusiveWin32InfoEXT, PhysicalDeviceSurfaceInfo2KHR> 9605 { 9606 enum 9607 { 9608 value = true 9609 }; 9610 }; 9611 template <> 9612 struct StructExtends<SurfaceFullScreenExclusiveWin32InfoEXT, SwapchainCreateInfoKHR> 9613 { 9614 enum 9615 { 9616 value = true 9617 }; 9618 }; 9619 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 9620 9621 //=== VK_EXT_line_rasterization === 9622 template <> 9623 struct StructExtends<PhysicalDeviceLineRasterizationFeaturesEXT, PhysicalDeviceFeatures2> 9624 { 9625 enum 9626 { 9627 value = true 9628 }; 9629 }; 9630 template <> 9631 struct StructExtends<PhysicalDeviceLineRasterizationFeaturesEXT, DeviceCreateInfo> 9632 { 9633 enum 9634 { 9635 value = true 9636 }; 9637 }; 9638 template <> 9639 struct StructExtends<PhysicalDeviceLineRasterizationPropertiesEXT, PhysicalDeviceProperties2> 9640 { 9641 enum 9642 { 9643 value = true 9644 }; 9645 }; 9646 template <> 9647 struct StructExtends<PipelineRasterizationLineStateCreateInfoEXT, PipelineRasterizationStateCreateInfo> 9648 { 9649 enum 9650 { 9651 value = true 9652 }; 9653 }; 9654 9655 //=== VK_EXT_shader_atomic_float === 9656 template <> 9657 struct StructExtends<PhysicalDeviceShaderAtomicFloatFeaturesEXT, PhysicalDeviceFeatures2> 9658 { 9659 enum 9660 { 9661 value = true 9662 }; 9663 }; 9664 template <> 9665 struct StructExtends<PhysicalDeviceShaderAtomicFloatFeaturesEXT, DeviceCreateInfo> 9666 { 9667 enum 9668 { 9669 value = true 9670 }; 9671 }; 9672 9673 //=== VK_EXT_index_type_uint8 === 9674 template <> 9675 struct StructExtends<PhysicalDeviceIndexTypeUint8FeaturesEXT, PhysicalDeviceFeatures2> 9676 { 9677 enum 9678 { 9679 value = true 9680 }; 9681 }; 9682 template <> 9683 struct StructExtends<PhysicalDeviceIndexTypeUint8FeaturesEXT, DeviceCreateInfo> 9684 { 9685 enum 9686 { 9687 value = true 9688 }; 9689 }; 9690 9691 //=== VK_EXT_extended_dynamic_state === 9692 template <> 9693 struct StructExtends<PhysicalDeviceExtendedDynamicStateFeaturesEXT, PhysicalDeviceFeatures2> 9694 { 9695 enum 9696 { 9697 value = true 9698 }; 9699 }; 9700 template <> 9701 struct StructExtends<PhysicalDeviceExtendedDynamicStateFeaturesEXT, DeviceCreateInfo> 9702 { 9703 enum 9704 { 9705 value = true 9706 }; 9707 }; 9708 9709 //=== VK_KHR_pipeline_executable_properties === 9710 template <> 9711 struct StructExtends<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, PhysicalDeviceFeatures2> 9712 { 9713 enum 9714 { 9715 value = true 9716 }; 9717 }; 9718 template <> 9719 struct StructExtends<PhysicalDevicePipelineExecutablePropertiesFeaturesKHR, DeviceCreateInfo> 9720 { 9721 enum 9722 { 9723 value = true 9724 }; 9725 }; 9726 9727 //=== VK_EXT_shader_atomic_float2 === 9728 template <> 9729 struct StructExtends<PhysicalDeviceShaderAtomicFloat2FeaturesEXT, PhysicalDeviceFeatures2> 9730 { 9731 enum 9732 { 9733 value = true 9734 }; 9735 }; 9736 template <> 9737 struct StructExtends<PhysicalDeviceShaderAtomicFloat2FeaturesEXT, DeviceCreateInfo> 9738 { 9739 enum 9740 { 9741 value = true 9742 }; 9743 }; 9744 9745 //=== VK_EXT_shader_demote_to_helper_invocation === 9746 template <> 9747 struct StructExtends<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, PhysicalDeviceFeatures2> 9748 { 9749 enum 9750 { 9751 value = true 9752 }; 9753 }; 9754 template <> 9755 struct StructExtends<PhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT, DeviceCreateInfo> 9756 { 9757 enum 9758 { 9759 value = true 9760 }; 9761 }; 9762 9763 //=== VK_NV_device_generated_commands === 9764 template <> 9765 struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsPropertiesNV, PhysicalDeviceProperties2> 9766 { 9767 enum 9768 { 9769 value = true 9770 }; 9771 }; 9772 template <> 9773 struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, PhysicalDeviceFeatures2> 9774 { 9775 enum 9776 { 9777 value = true 9778 }; 9779 }; 9780 template <> 9781 struct StructExtends<PhysicalDeviceDeviceGeneratedCommandsFeaturesNV, DeviceCreateInfo> 9782 { 9783 enum 9784 { 9785 value = true 9786 }; 9787 }; 9788 template <> 9789 struct StructExtends<GraphicsPipelineShaderGroupsCreateInfoNV, GraphicsPipelineCreateInfo> 9790 { 9791 enum 9792 { 9793 value = true 9794 }; 9795 }; 9796 9797 //=== VK_NV_inherited_viewport_scissor === 9798 template <> 9799 struct StructExtends<PhysicalDeviceInheritedViewportScissorFeaturesNV, PhysicalDeviceFeatures2> 9800 { 9801 enum 9802 { 9803 value = true 9804 }; 9805 }; 9806 template <> 9807 struct StructExtends<PhysicalDeviceInheritedViewportScissorFeaturesNV, DeviceCreateInfo> 9808 { 9809 enum 9810 { 9811 value = true 9812 }; 9813 }; 9814 template <> 9815 struct StructExtends<CommandBufferInheritanceViewportScissorInfoNV, CommandBufferInheritanceInfo> 9816 { 9817 enum 9818 { 9819 value = true 9820 }; 9821 }; 9822 9823 //=== VK_KHR_shader_integer_dot_product === 9824 template <> 9825 struct StructExtends<PhysicalDeviceShaderIntegerDotProductFeaturesKHR, PhysicalDeviceFeatures2> 9826 { 9827 enum 9828 { 9829 value = true 9830 }; 9831 }; 9832 template <> 9833 struct StructExtends<PhysicalDeviceShaderIntegerDotProductFeaturesKHR, DeviceCreateInfo> 9834 { 9835 enum 9836 { 9837 value = true 9838 }; 9839 }; 9840 template <> 9841 struct StructExtends<PhysicalDeviceShaderIntegerDotProductPropertiesKHR, PhysicalDeviceProperties2> 9842 { 9843 enum 9844 { 9845 value = true 9846 }; 9847 }; 9848 9849 //=== VK_EXT_texel_buffer_alignment === 9850 template <> 9851 struct StructExtends<PhysicalDeviceTexelBufferAlignmentFeaturesEXT, PhysicalDeviceFeatures2> 9852 { 9853 enum 9854 { 9855 value = true 9856 }; 9857 }; 9858 template <> 9859 struct StructExtends<PhysicalDeviceTexelBufferAlignmentFeaturesEXT, DeviceCreateInfo> 9860 { 9861 enum 9862 { 9863 value = true 9864 }; 9865 }; 9866 template <> 9867 struct StructExtends<PhysicalDeviceTexelBufferAlignmentPropertiesEXT, PhysicalDeviceProperties2> 9868 { 9869 enum 9870 { 9871 value = true 9872 }; 9873 }; 9874 9875 //=== VK_QCOM_render_pass_transform === 9876 template <> 9877 struct StructExtends<RenderPassTransformBeginInfoQCOM, RenderPassBeginInfo> 9878 { 9879 enum 9880 { 9881 value = true 9882 }; 9883 }; 9884 template <> 9885 struct StructExtends<CommandBufferInheritanceRenderPassTransformInfoQCOM, CommandBufferInheritanceInfo> 9886 { 9887 enum 9888 { 9889 value = true 9890 }; 9891 }; 9892 9893 //=== VK_EXT_device_memory_report === 9894 template <> 9895 struct StructExtends<PhysicalDeviceDeviceMemoryReportFeaturesEXT, PhysicalDeviceFeatures2> 9896 { 9897 enum 9898 { 9899 value = true 9900 }; 9901 }; 9902 template <> 9903 struct StructExtends<PhysicalDeviceDeviceMemoryReportFeaturesEXT, DeviceCreateInfo> 9904 { 9905 enum 9906 { 9907 value = true 9908 }; 9909 }; 9910 template <> 9911 struct StructExtends<DeviceDeviceMemoryReportCreateInfoEXT, DeviceCreateInfo> 9912 { 9913 enum 9914 { 9915 value = true 9916 }; 9917 }; 9918 9919 //=== VK_EXT_robustness2 === 9920 template <> 9921 struct StructExtends<PhysicalDeviceRobustness2FeaturesEXT, PhysicalDeviceFeatures2> 9922 { 9923 enum 9924 { 9925 value = true 9926 }; 9927 }; 9928 template <> 9929 struct StructExtends<PhysicalDeviceRobustness2FeaturesEXT, DeviceCreateInfo> 9930 { 9931 enum 9932 { 9933 value = true 9934 }; 9935 }; 9936 template <> 9937 struct StructExtends<PhysicalDeviceRobustness2PropertiesEXT, PhysicalDeviceProperties2> 9938 { 9939 enum 9940 { 9941 value = true 9942 }; 9943 }; 9944 9945 //=== VK_EXT_custom_border_color === 9946 template <> 9947 struct StructExtends<SamplerCustomBorderColorCreateInfoEXT, SamplerCreateInfo> 9948 { 9949 enum 9950 { 9951 value = true 9952 }; 9953 }; 9954 template <> 9955 struct StructExtends<PhysicalDeviceCustomBorderColorPropertiesEXT, PhysicalDeviceProperties2> 9956 { 9957 enum 9958 { 9959 value = true 9960 }; 9961 }; 9962 template <> 9963 struct StructExtends<PhysicalDeviceCustomBorderColorFeaturesEXT, PhysicalDeviceFeatures2> 9964 { 9965 enum 9966 { 9967 value = true 9968 }; 9969 }; 9970 template <> 9971 struct StructExtends<PhysicalDeviceCustomBorderColorFeaturesEXT, DeviceCreateInfo> 9972 { 9973 enum 9974 { 9975 value = true 9976 }; 9977 }; 9978 9979 //=== VK_KHR_present_id === 9980 template <> 9981 struct StructExtends<PresentIdKHR, PresentInfoKHR> 9982 { 9983 enum 9984 { 9985 value = true 9986 }; 9987 }; 9988 template <> 9989 struct StructExtends<PhysicalDevicePresentIdFeaturesKHR, PhysicalDeviceFeatures2> 9990 { 9991 enum 9992 { 9993 value = true 9994 }; 9995 }; 9996 template <> 9997 struct StructExtends<PhysicalDevicePresentIdFeaturesKHR, DeviceCreateInfo> 9998 { 9999 enum 10000 { 10001 value = true 10002 }; 10003 }; 10004 10005 //=== VK_EXT_private_data === 10006 template <> 10007 struct StructExtends<PhysicalDevicePrivateDataFeaturesEXT, PhysicalDeviceFeatures2> 10008 { 10009 enum 10010 { 10011 value = true 10012 }; 10013 }; 10014 template <> 10015 struct StructExtends<PhysicalDevicePrivateDataFeaturesEXT, DeviceCreateInfo> 10016 { 10017 enum 10018 { 10019 value = true 10020 }; 10021 }; 10022 template <> 10023 struct StructExtends<DevicePrivateDataCreateInfoEXT, DeviceCreateInfo> 10024 { 10025 enum 10026 { 10027 value = true 10028 }; 10029 }; 10030 10031 //=== VK_EXT_pipeline_creation_cache_control === 10032 template <> 10033 struct StructExtends<PhysicalDevicePipelineCreationCacheControlFeaturesEXT, PhysicalDeviceFeatures2> 10034 { 10035 enum 10036 { 10037 value = true 10038 }; 10039 }; 10040 template <> 10041 struct StructExtends<PhysicalDevicePipelineCreationCacheControlFeaturesEXT, DeviceCreateInfo> 10042 { 10043 enum 10044 { 10045 value = true 10046 }; 10047 }; 10048 10049 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 10050 //=== VK_KHR_video_encode_queue === 10051 template <> 10052 struct StructExtends<VideoEncodeRateControlInfoKHR, VideoCodingControlInfoKHR> 10053 { 10054 enum 10055 { 10056 value = true 10057 }; 10058 }; 10059 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 10060 10061 //=== VK_NV_device_diagnostics_config === 10062 template <> 10063 struct StructExtends<PhysicalDeviceDiagnosticsConfigFeaturesNV, PhysicalDeviceFeatures2> 10064 { 10065 enum 10066 { 10067 value = true 10068 }; 10069 }; 10070 template <> 10071 struct StructExtends<PhysicalDeviceDiagnosticsConfigFeaturesNV, DeviceCreateInfo> 10072 { 10073 enum 10074 { 10075 value = true 10076 }; 10077 }; 10078 template <> 10079 struct StructExtends<DeviceDiagnosticsConfigCreateInfoNV, DeviceCreateInfo> 10080 { 10081 enum 10082 { 10083 value = true 10084 }; 10085 }; 10086 10087 //=== VK_KHR_synchronization2 === 10088 template <> 10089 struct StructExtends<MemoryBarrier2KHR, SubpassDependency2> 10090 { 10091 enum 10092 { 10093 value = true 10094 }; 10095 }; 10096 template <> 10097 struct StructExtends<PhysicalDeviceSynchronization2FeaturesKHR, PhysicalDeviceFeatures2> 10098 { 10099 enum 10100 { 10101 value = true 10102 }; 10103 }; 10104 template <> 10105 struct StructExtends<PhysicalDeviceSynchronization2FeaturesKHR, DeviceCreateInfo> 10106 { 10107 enum 10108 { 10109 value = true 10110 }; 10111 }; 10112 template <> 10113 struct StructExtends<QueueFamilyCheckpointProperties2NV, QueueFamilyProperties2> 10114 { 10115 enum 10116 { 10117 value = true 10118 }; 10119 }; 10120 10121 //=== VK_KHR_shader_subgroup_uniform_control_flow === 10122 template <> 10123 struct StructExtends<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, PhysicalDeviceFeatures2> 10124 { 10125 enum 10126 { 10127 value = true 10128 }; 10129 }; 10130 template <> 10131 struct StructExtends<PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, DeviceCreateInfo> 10132 { 10133 enum 10134 { 10135 value = true 10136 }; 10137 }; 10138 10139 //=== VK_KHR_zero_initialize_workgroup_memory === 10140 template <> 10141 struct StructExtends<PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR, PhysicalDeviceFeatures2> 10142 { 10143 enum 10144 { 10145 value = true 10146 }; 10147 }; 10148 template <> 10149 struct StructExtends<PhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR, DeviceCreateInfo> 10150 { 10151 enum 10152 { 10153 value = true 10154 }; 10155 }; 10156 10157 //=== VK_NV_fragment_shading_rate_enums === 10158 template <> 10159 struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, PhysicalDeviceFeatures2> 10160 { 10161 enum 10162 { 10163 value = true 10164 }; 10165 }; 10166 template <> 10167 struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsFeaturesNV, DeviceCreateInfo> 10168 { 10169 enum 10170 { 10171 value = true 10172 }; 10173 }; 10174 template <> 10175 struct StructExtends<PhysicalDeviceFragmentShadingRateEnumsPropertiesNV, PhysicalDeviceProperties2> 10176 { 10177 enum 10178 { 10179 value = true 10180 }; 10181 }; 10182 template <> 10183 struct StructExtends<PipelineFragmentShadingRateEnumStateCreateInfoNV, GraphicsPipelineCreateInfo> 10184 { 10185 enum 10186 { 10187 value = true 10188 }; 10189 }; 10190 10191 //=== VK_NV_ray_tracing_motion_blur === 10192 template <> 10193 struct StructExtends<AccelerationStructureGeometryMotionTrianglesDataNV, 10194 AccelerationStructureGeometryTrianglesDataKHR> 10195 { 10196 enum 10197 { 10198 value = true 10199 }; 10200 }; 10201 template <> 10202 struct StructExtends<AccelerationStructureMotionInfoNV, AccelerationStructureCreateInfoKHR> 10203 { 10204 enum 10205 { 10206 value = true 10207 }; 10208 }; 10209 template <> 10210 struct StructExtends<PhysicalDeviceRayTracingMotionBlurFeaturesNV, PhysicalDeviceFeatures2> 10211 { 10212 enum 10213 { 10214 value = true 10215 }; 10216 }; 10217 template <> 10218 struct StructExtends<PhysicalDeviceRayTracingMotionBlurFeaturesNV, DeviceCreateInfo> 10219 { 10220 enum 10221 { 10222 value = true 10223 }; 10224 }; 10225 10226 //=== VK_EXT_ycbcr_2plane_444_formats === 10227 template <> 10228 struct StructExtends<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, PhysicalDeviceFeatures2> 10229 { 10230 enum 10231 { 10232 value = true 10233 }; 10234 }; 10235 template <> 10236 struct StructExtends<PhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, DeviceCreateInfo> 10237 { 10238 enum 10239 { 10240 value = true 10241 }; 10242 }; 10243 10244 //=== VK_EXT_fragment_density_map2 === 10245 template <> 10246 struct StructExtends<PhysicalDeviceFragmentDensityMap2FeaturesEXT, PhysicalDeviceFeatures2> 10247 { 10248 enum 10249 { 10250 value = true 10251 }; 10252 }; 10253 template <> 10254 struct StructExtends<PhysicalDeviceFragmentDensityMap2FeaturesEXT, DeviceCreateInfo> 10255 { 10256 enum 10257 { 10258 value = true 10259 }; 10260 }; 10261 template <> 10262 struct StructExtends<PhysicalDeviceFragmentDensityMap2PropertiesEXT, PhysicalDeviceProperties2> 10263 { 10264 enum 10265 { 10266 value = true 10267 }; 10268 }; 10269 10270 //=== VK_QCOM_rotated_copy_commands === 10271 template <> 10272 struct StructExtends<CopyCommandTransformInfoQCOM, BufferImageCopy2KHR> 10273 { 10274 enum 10275 { 10276 value = true 10277 }; 10278 }; 10279 template <> 10280 struct StructExtends<CopyCommandTransformInfoQCOM, ImageBlit2KHR> 10281 { 10282 enum 10283 { 10284 value = true 10285 }; 10286 }; 10287 10288 //=== VK_EXT_image_robustness === 10289 template <> 10290 struct StructExtends<PhysicalDeviceImageRobustnessFeaturesEXT, PhysicalDeviceFeatures2> 10291 { 10292 enum 10293 { 10294 value = true 10295 }; 10296 }; 10297 template <> 10298 struct StructExtends<PhysicalDeviceImageRobustnessFeaturesEXT, DeviceCreateInfo> 10299 { 10300 enum 10301 { 10302 value = true 10303 }; 10304 }; 10305 10306 //=== VK_KHR_workgroup_memory_explicit_layout === 10307 template <> 10308 struct StructExtends<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, PhysicalDeviceFeatures2> 10309 { 10310 enum 10311 { 10312 value = true 10313 }; 10314 }; 10315 template <> 10316 struct StructExtends<PhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, DeviceCreateInfo> 10317 { 10318 enum 10319 { 10320 value = true 10321 }; 10322 }; 10323 10324 //=== VK_EXT_4444_formats === 10325 template <> 10326 struct StructExtends<PhysicalDevice4444FormatsFeaturesEXT, PhysicalDeviceFeatures2> 10327 { 10328 enum 10329 { 10330 value = true 10331 }; 10332 }; 10333 template <> 10334 struct StructExtends<PhysicalDevice4444FormatsFeaturesEXT, DeviceCreateInfo> 10335 { 10336 enum 10337 { 10338 value = true 10339 }; 10340 }; 10341 10342 //=== VK_EXT_rgba10x6_formats === 10343 template <> 10344 struct StructExtends<PhysicalDeviceRGBA10X6FormatsFeaturesEXT, PhysicalDeviceFeatures2> 10345 { 10346 enum 10347 { 10348 value = true 10349 }; 10350 }; 10351 template <> 10352 struct StructExtends<PhysicalDeviceRGBA10X6FormatsFeaturesEXT, DeviceCreateInfo> 10353 { 10354 enum 10355 { 10356 value = true 10357 }; 10358 }; 10359 10360 //=== VK_KHR_ray_tracing_pipeline === 10361 template <> 10362 struct StructExtends<PhysicalDeviceRayTracingPipelineFeaturesKHR, PhysicalDeviceFeatures2> 10363 { 10364 enum 10365 { 10366 value = true 10367 }; 10368 }; 10369 template <> 10370 struct StructExtends<PhysicalDeviceRayTracingPipelineFeaturesKHR, DeviceCreateInfo> 10371 { 10372 enum 10373 { 10374 value = true 10375 }; 10376 }; 10377 template <> 10378 struct StructExtends<PhysicalDeviceRayTracingPipelinePropertiesKHR, PhysicalDeviceProperties2> 10379 { 10380 enum 10381 { 10382 value = true 10383 }; 10384 }; 10385 10386 //=== VK_KHR_ray_query === 10387 template <> 10388 struct StructExtends<PhysicalDeviceRayQueryFeaturesKHR, PhysicalDeviceFeatures2> 10389 { 10390 enum 10391 { 10392 value = true 10393 }; 10394 }; 10395 template <> 10396 struct StructExtends<PhysicalDeviceRayQueryFeaturesKHR, DeviceCreateInfo> 10397 { 10398 enum 10399 { 10400 value = true 10401 }; 10402 }; 10403 10404 //=== VK_VALVE_mutable_descriptor_type === 10405 template <> 10406 struct StructExtends<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE, PhysicalDeviceFeatures2> 10407 { 10408 enum 10409 { 10410 value = true 10411 }; 10412 }; 10413 template <> 10414 struct StructExtends<PhysicalDeviceMutableDescriptorTypeFeaturesVALVE, DeviceCreateInfo> 10415 { 10416 enum 10417 { 10418 value = true 10419 }; 10420 }; 10421 template <> 10422 struct StructExtends<MutableDescriptorTypeCreateInfoVALVE, DescriptorSetLayoutCreateInfo> 10423 { 10424 enum 10425 { 10426 value = true 10427 }; 10428 }; 10429 template <> 10430 struct StructExtends<MutableDescriptorTypeCreateInfoVALVE, DescriptorPoolCreateInfo> 10431 { 10432 enum 10433 { 10434 value = true 10435 }; 10436 }; 10437 10438 //=== VK_EXT_vertex_input_dynamic_state === 10439 template <> 10440 struct StructExtends<PhysicalDeviceVertexInputDynamicStateFeaturesEXT, PhysicalDeviceFeatures2> 10441 { 10442 enum 10443 { 10444 value = true 10445 }; 10446 }; 10447 template <> 10448 struct StructExtends<PhysicalDeviceVertexInputDynamicStateFeaturesEXT, DeviceCreateInfo> 10449 { 10450 enum 10451 { 10452 value = true 10453 }; 10454 }; 10455 10456 //=== VK_EXT_physical_device_drm === 10457 template <> 10458 struct StructExtends<PhysicalDeviceDrmPropertiesEXT, PhysicalDeviceProperties2> 10459 { 10460 enum 10461 { 10462 value = true 10463 }; 10464 }; 10465 10466 //=== VK_EXT_primitive_topology_list_restart === 10467 template <> 10468 struct StructExtends<PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT, PhysicalDeviceFeatures2> 10469 { 10470 enum 10471 { 10472 value = true 10473 }; 10474 }; 10475 template <> 10476 struct StructExtends<PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT, DeviceCreateInfo> 10477 { 10478 enum 10479 { 10480 value = true 10481 }; 10482 }; 10483 10484 //=== VK_KHR_format_feature_flags2 === 10485 template <> 10486 struct StructExtends<FormatProperties3KHR, FormatProperties2> 10487 { 10488 enum 10489 { 10490 value = true 10491 }; 10492 }; 10493 10494 #if defined( VK_USE_PLATFORM_FUCHSIA ) 10495 //=== VK_FUCHSIA_external_memory === 10496 template <> 10497 struct StructExtends<ImportMemoryZirconHandleInfoFUCHSIA, MemoryAllocateInfo> 10498 { 10499 enum 10500 { 10501 value = true 10502 }; 10503 }; 10504 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 10505 10506 #if defined( VK_USE_PLATFORM_FUCHSIA ) 10507 //=== VK_FUCHSIA_buffer_collection === 10508 template <> 10509 struct StructExtends<ImportMemoryBufferCollectionFUCHSIA, MemoryAllocateInfo> 10510 { 10511 enum 10512 { 10513 value = true 10514 }; 10515 }; 10516 template <> 10517 struct StructExtends<BufferCollectionImageCreateInfoFUCHSIA, ImageCreateInfo> 10518 { 10519 enum 10520 { 10521 value = true 10522 }; 10523 }; 10524 template <> 10525 struct StructExtends<BufferCollectionBufferCreateInfoFUCHSIA, BufferCreateInfo> 10526 { 10527 enum 10528 { 10529 value = true 10530 }; 10531 }; 10532 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 10533 10534 //=== VK_HUAWEI_subpass_shading === 10535 template <> 10536 struct StructExtends<SubpassShadingPipelineCreateInfoHUAWEI, ComputePipelineCreateInfo> 10537 { 10538 enum 10539 { 10540 value = true 10541 }; 10542 }; 10543 template <> 10544 struct StructExtends<PhysicalDeviceSubpassShadingFeaturesHUAWEI, PhysicalDeviceFeatures2> 10545 { 10546 enum 10547 { 10548 value = true 10549 }; 10550 }; 10551 template <> 10552 struct StructExtends<PhysicalDeviceSubpassShadingFeaturesHUAWEI, DeviceCreateInfo> 10553 { 10554 enum 10555 { 10556 value = true 10557 }; 10558 }; 10559 template <> 10560 struct StructExtends<PhysicalDeviceSubpassShadingPropertiesHUAWEI, PhysicalDeviceProperties2> 10561 { 10562 enum 10563 { 10564 value = true 10565 }; 10566 }; 10567 10568 //=== VK_HUAWEI_invocation_mask === 10569 template <> 10570 struct StructExtends<PhysicalDeviceInvocationMaskFeaturesHUAWEI, PhysicalDeviceFeatures2> 10571 { 10572 enum 10573 { 10574 value = true 10575 }; 10576 }; 10577 template <> 10578 struct StructExtends<PhysicalDeviceInvocationMaskFeaturesHUAWEI, DeviceCreateInfo> 10579 { 10580 enum 10581 { 10582 value = true 10583 }; 10584 }; 10585 10586 //=== VK_NV_external_memory_rdma === 10587 template <> 10588 struct StructExtends<PhysicalDeviceExternalMemoryRDMAFeaturesNV, PhysicalDeviceFeatures2> 10589 { 10590 enum 10591 { 10592 value = true 10593 }; 10594 }; 10595 template <> 10596 struct StructExtends<PhysicalDeviceExternalMemoryRDMAFeaturesNV, DeviceCreateInfo> 10597 { 10598 enum 10599 { 10600 value = true 10601 }; 10602 }; 10603 10604 //=== VK_EXT_extended_dynamic_state2 === 10605 template <> 10606 struct StructExtends<PhysicalDeviceExtendedDynamicState2FeaturesEXT, PhysicalDeviceFeatures2> 10607 { 10608 enum 10609 { 10610 value = true 10611 }; 10612 }; 10613 template <> 10614 struct StructExtends<PhysicalDeviceExtendedDynamicState2FeaturesEXT, DeviceCreateInfo> 10615 { 10616 enum 10617 { 10618 value = true 10619 }; 10620 }; 10621 10622 //=== VK_EXT_color_write_enable === 10623 template <> 10624 struct StructExtends<PhysicalDeviceColorWriteEnableFeaturesEXT, PhysicalDeviceFeatures2> 10625 { 10626 enum 10627 { 10628 value = true 10629 }; 10630 }; 10631 template <> 10632 struct StructExtends<PhysicalDeviceColorWriteEnableFeaturesEXT, DeviceCreateInfo> 10633 { 10634 enum 10635 { 10636 value = true 10637 }; 10638 }; 10639 template <> 10640 struct StructExtends<PipelineColorWriteCreateInfoEXT, PipelineColorBlendStateCreateInfo> 10641 { 10642 enum 10643 { 10644 value = true 10645 }; 10646 }; 10647 10648 //=== VK_EXT_global_priority_query === 10649 template <> 10650 struct StructExtends<PhysicalDeviceGlobalPriorityQueryFeaturesEXT, PhysicalDeviceFeatures2> 10651 { 10652 enum 10653 { 10654 value = true 10655 }; 10656 }; 10657 template <> 10658 struct StructExtends<PhysicalDeviceGlobalPriorityQueryFeaturesEXT, DeviceCreateInfo> 10659 { 10660 enum 10661 { 10662 value = true 10663 }; 10664 }; 10665 template <> 10666 struct StructExtends<QueueFamilyGlobalPriorityPropertiesEXT, QueueFamilyProperties2> 10667 { 10668 enum 10669 { 10670 value = true 10671 }; 10672 }; 10673 10674 //=== VK_EXT_multi_draw === 10675 template <> 10676 struct StructExtends<PhysicalDeviceMultiDrawFeaturesEXT, PhysicalDeviceFeatures2> 10677 { 10678 enum 10679 { 10680 value = true 10681 }; 10682 }; 10683 template <> 10684 struct StructExtends<PhysicalDeviceMultiDrawFeaturesEXT, DeviceCreateInfo> 10685 { 10686 enum 10687 { 10688 value = true 10689 }; 10690 }; 10691 template <> 10692 struct StructExtends<PhysicalDeviceMultiDrawPropertiesEXT, PhysicalDeviceProperties2> 10693 { 10694 enum 10695 { 10696 value = true 10697 }; 10698 }; 10699 10700 //=== VK_EXT_border_color_swizzle === 10701 template <> 10702 struct StructExtends<PhysicalDeviceBorderColorSwizzleFeaturesEXT, PhysicalDeviceFeatures2> 10703 { 10704 enum 10705 { 10706 value = true 10707 }; 10708 }; 10709 template <> 10710 struct StructExtends<PhysicalDeviceBorderColorSwizzleFeaturesEXT, DeviceCreateInfo> 10711 { 10712 enum 10713 { 10714 value = true 10715 }; 10716 }; 10717 template <> 10718 struct StructExtends<SamplerBorderColorComponentMappingCreateInfoEXT, SamplerCreateInfo> 10719 { 10720 enum 10721 { 10722 value = true 10723 }; 10724 }; 10725 10726 //=== VK_EXT_pageable_device_local_memory === 10727 template <> 10728 struct StructExtends<PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, PhysicalDeviceFeatures2> 10729 { 10730 enum 10731 { 10732 value = true 10733 }; 10734 }; 10735 template <> 10736 struct StructExtends<PhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, DeviceCreateInfo> 10737 { 10738 enum 10739 { 10740 value = true 10741 }; 10742 }; 10743 10744 //=== VK_KHR_maintenance4 === 10745 template <> 10746 struct StructExtends<PhysicalDeviceMaintenance4FeaturesKHR, PhysicalDeviceFeatures2> 10747 { 10748 enum 10749 { 10750 value = true 10751 }; 10752 }; 10753 template <> 10754 struct StructExtends<PhysicalDeviceMaintenance4FeaturesKHR, DeviceCreateInfo> 10755 { 10756 enum 10757 { 10758 value = true 10759 }; 10760 }; 10761 template <> 10762 struct StructExtends<PhysicalDeviceMaintenance4PropertiesKHR, PhysicalDeviceProperties2> 10763 { 10764 enum 10765 { 10766 value = true 10767 }; 10768 }; 10769 10770 #if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 10771 class DynamicLoader 10772 { 10773 public: 10774 # ifdef VULKAN_HPP_NO_EXCEPTIONS DynamicLoader(std::string const & vulkanLibraryName={} )10775 DynamicLoader( std::string const & vulkanLibraryName = {} ) VULKAN_HPP_NOEXCEPT 10776 # else 10777 DynamicLoader( std::string const & vulkanLibraryName = {} ) 10778 # endif 10779 { 10780 if ( !vulkanLibraryName.empty() ) 10781 { 10782 # if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ ) 10783 m_library = dlopen( vulkanLibraryName.c_str(), RTLD_NOW | RTLD_LOCAL ); 10784 # elif defined( _WIN32 ) 10785 m_library = ::LoadLibraryA( vulkanLibraryName.c_str() ); 10786 # else 10787 # error unsupported platform 10788 # endif 10789 } 10790 else 10791 { 10792 # if defined( __unix__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ ) 10793 m_library = dlopen( "libvulkan.so", RTLD_NOW | RTLD_LOCAL ); 10794 if ( m_library == nullptr ) 10795 { 10796 m_library = dlopen( "libvulkan.so.1", RTLD_NOW | RTLD_LOCAL ); 10797 } 10798 # elif defined( __APPLE__ ) 10799 m_library = dlopen( "libvulkan.dylib", RTLD_NOW | RTLD_LOCAL ); 10800 # elif defined( _WIN32 ) 10801 m_library = ::LoadLibraryA( "vulkan-1.dll" ); 10802 # else 10803 # error unsupported platform 10804 # endif 10805 } 10806 10807 # ifndef VULKAN_HPP_NO_EXCEPTIONS 10808 if ( m_library == nullptr ) 10809 { 10810 // NOTE there should be an InitializationFailedError, but msvc insists on the symbol does not exist within the 10811 // scope of this function. 10812 throw std::runtime_error( "Failed to load vulkan library!" ); 10813 } 10814 # endif 10815 } 10816 10817 DynamicLoader( DynamicLoader const & ) = delete; 10818 DynamicLoader(DynamicLoader && other)10819 DynamicLoader( DynamicLoader && other ) VULKAN_HPP_NOEXCEPT : m_library( other.m_library ) 10820 { 10821 other.m_library = nullptr; 10822 } 10823 10824 DynamicLoader & operator=( DynamicLoader const & ) = delete; 10825 operator =(DynamicLoader && other)10826 DynamicLoader & operator=( DynamicLoader && other ) VULKAN_HPP_NOEXCEPT 10827 { 10828 std::swap( m_library, other.m_library ); 10829 return *this; 10830 } 10831 ~DynamicLoader()10832 ~DynamicLoader() VULKAN_HPP_NOEXCEPT 10833 { 10834 if ( m_library ) 10835 { 10836 # if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ ) 10837 dlclose( m_library ); 10838 # elif defined( _WIN32 ) 10839 ::FreeLibrary( m_library ); 10840 # else 10841 # error unsupported platform 10842 # endif 10843 } 10844 } 10845 10846 template <typename T> getProcAddress(const char * function) const10847 T getProcAddress( const char * function ) const VULKAN_HPP_NOEXCEPT 10848 { 10849 # if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ ) 10850 return (T)dlsym( m_library, function ); 10851 # elif defined( _WIN32 ) 10852 return ( T )::GetProcAddress( m_library, function ); 10853 # else 10854 # error unsupported platform 10855 # endif 10856 } 10857 success() const10858 bool success() const VULKAN_HPP_NOEXCEPT 10859 { 10860 return m_library != nullptr; 10861 } 10862 10863 private: 10864 # if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNXNTO__ ) || defined( __Fuchsia__ ) 10865 void * m_library; 10866 # elif defined( _WIN32 ) 10867 ::HINSTANCE m_library; 10868 # else 10869 # error unsupported platform 10870 # endif 10871 }; 10872 #endif 10873 10874 using PFN_dummy = void ( * )(); 10875 10876 class DispatchLoaderDynamic : public DispatchLoaderBase 10877 { 10878 public: 10879 //=== VK_VERSION_1_0 === 10880 PFN_vkCreateInstance vkCreateInstance = 0; 10881 PFN_vkDestroyInstance vkDestroyInstance = 0; 10882 PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices = 0; 10883 PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures = 0; 10884 PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties = 0; 10885 PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties = 0; 10886 PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties = 0; 10887 PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties = 0; 10888 PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties = 0; 10889 PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr = 0; 10890 PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr = 0; 10891 PFN_vkCreateDevice vkCreateDevice = 0; 10892 PFN_vkDestroyDevice vkDestroyDevice = 0; 10893 PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties = 0; 10894 PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties = 0; 10895 PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties = 0; 10896 PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties = 0; 10897 PFN_vkGetDeviceQueue vkGetDeviceQueue = 0; 10898 PFN_vkQueueSubmit vkQueueSubmit = 0; 10899 PFN_vkQueueWaitIdle vkQueueWaitIdle = 0; 10900 PFN_vkDeviceWaitIdle vkDeviceWaitIdle = 0; 10901 PFN_vkAllocateMemory vkAllocateMemory = 0; 10902 PFN_vkFreeMemory vkFreeMemory = 0; 10903 PFN_vkMapMemory vkMapMemory = 0; 10904 PFN_vkUnmapMemory vkUnmapMemory = 0; 10905 PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges = 0; 10906 PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges = 0; 10907 PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment = 0; 10908 PFN_vkBindBufferMemory vkBindBufferMemory = 0; 10909 PFN_vkBindImageMemory vkBindImageMemory = 0; 10910 PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements = 0; 10911 PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements = 0; 10912 PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements = 0; 10913 PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties = 0; 10914 PFN_vkQueueBindSparse vkQueueBindSparse = 0; 10915 PFN_vkCreateFence vkCreateFence = 0; 10916 PFN_vkDestroyFence vkDestroyFence = 0; 10917 PFN_vkResetFences vkResetFences = 0; 10918 PFN_vkGetFenceStatus vkGetFenceStatus = 0; 10919 PFN_vkWaitForFences vkWaitForFences = 0; 10920 PFN_vkCreateSemaphore vkCreateSemaphore = 0; 10921 PFN_vkDestroySemaphore vkDestroySemaphore = 0; 10922 PFN_vkCreateEvent vkCreateEvent = 0; 10923 PFN_vkDestroyEvent vkDestroyEvent = 0; 10924 PFN_vkGetEventStatus vkGetEventStatus = 0; 10925 PFN_vkSetEvent vkSetEvent = 0; 10926 PFN_vkResetEvent vkResetEvent = 0; 10927 PFN_vkCreateQueryPool vkCreateQueryPool = 0; 10928 PFN_vkDestroyQueryPool vkDestroyQueryPool = 0; 10929 PFN_vkGetQueryPoolResults vkGetQueryPoolResults = 0; 10930 PFN_vkCreateBuffer vkCreateBuffer = 0; 10931 PFN_vkDestroyBuffer vkDestroyBuffer = 0; 10932 PFN_vkCreateBufferView vkCreateBufferView = 0; 10933 PFN_vkDestroyBufferView vkDestroyBufferView = 0; 10934 PFN_vkCreateImage vkCreateImage = 0; 10935 PFN_vkDestroyImage vkDestroyImage = 0; 10936 PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout = 0; 10937 PFN_vkCreateImageView vkCreateImageView = 0; 10938 PFN_vkDestroyImageView vkDestroyImageView = 0; 10939 PFN_vkCreateShaderModule vkCreateShaderModule = 0; 10940 PFN_vkDestroyShaderModule vkDestroyShaderModule = 0; 10941 PFN_vkCreatePipelineCache vkCreatePipelineCache = 0; 10942 PFN_vkDestroyPipelineCache vkDestroyPipelineCache = 0; 10943 PFN_vkGetPipelineCacheData vkGetPipelineCacheData = 0; 10944 PFN_vkMergePipelineCaches vkMergePipelineCaches = 0; 10945 PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines = 0; 10946 PFN_vkCreateComputePipelines vkCreateComputePipelines = 0; 10947 PFN_vkDestroyPipeline vkDestroyPipeline = 0; 10948 PFN_vkCreatePipelineLayout vkCreatePipelineLayout = 0; 10949 PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout = 0; 10950 PFN_vkCreateSampler vkCreateSampler = 0; 10951 PFN_vkDestroySampler vkDestroySampler = 0; 10952 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout = 0; 10953 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout = 0; 10954 PFN_vkCreateDescriptorPool vkCreateDescriptorPool = 0; 10955 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool = 0; 10956 PFN_vkResetDescriptorPool vkResetDescriptorPool = 0; 10957 PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets = 0; 10958 PFN_vkFreeDescriptorSets vkFreeDescriptorSets = 0; 10959 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets = 0; 10960 PFN_vkCreateFramebuffer vkCreateFramebuffer = 0; 10961 PFN_vkDestroyFramebuffer vkDestroyFramebuffer = 0; 10962 PFN_vkCreateRenderPass vkCreateRenderPass = 0; 10963 PFN_vkDestroyRenderPass vkDestroyRenderPass = 0; 10964 PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity = 0; 10965 PFN_vkCreateCommandPool vkCreateCommandPool = 0; 10966 PFN_vkDestroyCommandPool vkDestroyCommandPool = 0; 10967 PFN_vkResetCommandPool vkResetCommandPool = 0; 10968 PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers = 0; 10969 PFN_vkFreeCommandBuffers vkFreeCommandBuffers = 0; 10970 PFN_vkBeginCommandBuffer vkBeginCommandBuffer = 0; 10971 PFN_vkEndCommandBuffer vkEndCommandBuffer = 0; 10972 PFN_vkResetCommandBuffer vkResetCommandBuffer = 0; 10973 PFN_vkCmdBindPipeline vkCmdBindPipeline = 0; 10974 PFN_vkCmdSetViewport vkCmdSetViewport = 0; 10975 PFN_vkCmdSetScissor vkCmdSetScissor = 0; 10976 PFN_vkCmdSetLineWidth vkCmdSetLineWidth = 0; 10977 PFN_vkCmdSetDepthBias vkCmdSetDepthBias = 0; 10978 PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants = 0; 10979 PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds = 0; 10980 PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask = 0; 10981 PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask = 0; 10982 PFN_vkCmdSetStencilReference vkCmdSetStencilReference = 0; 10983 PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets = 0; 10984 PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer = 0; 10985 PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers = 0; 10986 PFN_vkCmdDraw vkCmdDraw = 0; 10987 PFN_vkCmdDrawIndexed vkCmdDrawIndexed = 0; 10988 PFN_vkCmdDrawIndirect vkCmdDrawIndirect = 0; 10989 PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect = 0; 10990 PFN_vkCmdDispatch vkCmdDispatch = 0; 10991 PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect = 0; 10992 PFN_vkCmdCopyBuffer vkCmdCopyBuffer = 0; 10993 PFN_vkCmdCopyImage vkCmdCopyImage = 0; 10994 PFN_vkCmdBlitImage vkCmdBlitImage = 0; 10995 PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage = 0; 10996 PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer = 0; 10997 PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer = 0; 10998 PFN_vkCmdFillBuffer vkCmdFillBuffer = 0; 10999 PFN_vkCmdClearColorImage vkCmdClearColorImage = 0; 11000 PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage = 0; 11001 PFN_vkCmdClearAttachments vkCmdClearAttachments = 0; 11002 PFN_vkCmdResolveImage vkCmdResolveImage = 0; 11003 PFN_vkCmdSetEvent vkCmdSetEvent = 0; 11004 PFN_vkCmdResetEvent vkCmdResetEvent = 0; 11005 PFN_vkCmdWaitEvents vkCmdWaitEvents = 0; 11006 PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier = 0; 11007 PFN_vkCmdBeginQuery vkCmdBeginQuery = 0; 11008 PFN_vkCmdEndQuery vkCmdEndQuery = 0; 11009 PFN_vkCmdResetQueryPool vkCmdResetQueryPool = 0; 11010 PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp = 0; 11011 PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults = 0; 11012 PFN_vkCmdPushConstants vkCmdPushConstants = 0; 11013 PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass = 0; 11014 PFN_vkCmdNextSubpass vkCmdNextSubpass = 0; 11015 PFN_vkCmdEndRenderPass vkCmdEndRenderPass = 0; 11016 PFN_vkCmdExecuteCommands vkCmdExecuteCommands = 0; 11017 11018 //=== VK_VERSION_1_1 === 11019 PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion = 0; 11020 PFN_vkBindBufferMemory2 vkBindBufferMemory2 = 0; 11021 PFN_vkBindImageMemory2 vkBindImageMemory2 = 0; 11022 PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures = 0; 11023 PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask = 0; 11024 PFN_vkCmdDispatchBase vkCmdDispatchBase = 0; 11025 PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups = 0; 11026 PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2 = 0; 11027 PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2 = 0; 11028 PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2 = 0; 11029 PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2 = 0; 11030 PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2 = 0; 11031 PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2 = 0; 11032 PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2 = 0; 11033 PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2 = 0; 11034 PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2 = 0; 11035 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2 = 0; 11036 PFN_vkTrimCommandPool vkTrimCommandPool = 0; 11037 PFN_vkGetDeviceQueue2 vkGetDeviceQueue2 = 0; 11038 PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion = 0; 11039 PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion = 0; 11040 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate = 0; 11041 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate = 0; 11042 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate = 0; 11043 PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties = 0; 11044 PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties = 0; 11045 PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties = 0; 11046 PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport = 0; 11047 11048 //=== VK_VERSION_1_2 === 11049 PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount = 0; 11050 PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount = 0; 11051 PFN_vkCreateRenderPass2 vkCreateRenderPass2 = 0; 11052 PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2 = 0; 11053 PFN_vkCmdNextSubpass2 vkCmdNextSubpass2 = 0; 11054 PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2 = 0; 11055 PFN_vkResetQueryPool vkResetQueryPool = 0; 11056 PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue = 0; 11057 PFN_vkWaitSemaphores vkWaitSemaphores = 0; 11058 PFN_vkSignalSemaphore vkSignalSemaphore = 0; 11059 PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress = 0; 11060 PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress = 0; 11061 PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress = 0; 11062 11063 //=== VK_KHR_surface === 11064 PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR = 0; 11065 PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR = 0; 11066 PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR = 0; 11067 PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR = 0; 11068 PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR = 0; 11069 11070 //=== VK_KHR_swapchain === 11071 PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR = 0; 11072 PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR = 0; 11073 PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR = 0; 11074 PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR = 0; 11075 PFN_vkQueuePresentKHR vkQueuePresentKHR = 0; 11076 PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR = 0; 11077 PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR = 0; 11078 PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR = 0; 11079 PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR = 0; 11080 11081 //=== VK_KHR_display === 11082 PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR = 0; 11083 PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR = 0; 11084 PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR = 0; 11085 PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR = 0; 11086 PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR = 0; 11087 PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR = 0; 11088 PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR = 0; 11089 11090 //=== VK_KHR_display_swapchain === 11091 PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR = 0; 11092 11093 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 11094 //=== VK_KHR_xlib_surface === 11095 PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR = 0; 11096 PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR = 0; 11097 #else 11098 PFN_dummy vkCreateXlibSurfaceKHR_placeholder = 0; 11099 PFN_dummy vkGetPhysicalDeviceXlibPresentationSupportKHR_placeholder = 0; 11100 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 11101 11102 #if defined( VK_USE_PLATFORM_XCB_KHR ) 11103 //=== VK_KHR_xcb_surface === 11104 PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR = 0; 11105 PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR = 0; 11106 #else 11107 PFN_dummy vkCreateXcbSurfaceKHR_placeholder = 0; 11108 PFN_dummy vkGetPhysicalDeviceXcbPresentationSupportKHR_placeholder = 0; 11109 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 11110 11111 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 11112 //=== VK_KHR_wayland_surface === 11113 PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR = 0; 11114 PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR = 0; 11115 #else 11116 PFN_dummy vkCreateWaylandSurfaceKHR_placeholder = 0; 11117 PFN_dummy vkGetPhysicalDeviceWaylandPresentationSupportKHR_placeholder = 0; 11118 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 11119 11120 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 11121 //=== VK_KHR_android_surface === 11122 PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR = 0; 11123 #else 11124 PFN_dummy vkCreateAndroidSurfaceKHR_placeholder = 0; 11125 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 11126 11127 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11128 //=== VK_KHR_win32_surface === 11129 PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR = 0; 11130 PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR = 0; 11131 #else 11132 PFN_dummy vkCreateWin32SurfaceKHR_placeholder = 0; 11133 PFN_dummy vkGetPhysicalDeviceWin32PresentationSupportKHR_placeholder = 0; 11134 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11135 11136 //=== VK_EXT_debug_report === 11137 PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT = 0; 11138 PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT = 0; 11139 PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT = 0; 11140 11141 //=== VK_EXT_debug_marker === 11142 PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT = 0; 11143 PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT = 0; 11144 PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT = 0; 11145 PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT = 0; 11146 PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT = 0; 11147 11148 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 11149 //=== VK_KHR_video_queue === 11150 PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR = 0; 11151 PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR = 0; 11152 PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR = 0; 11153 PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR = 0; 11154 PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR = 0; 11155 PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR = 0; 11156 PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR = 0; 11157 PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR = 0; 11158 PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR = 0; 11159 PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR = 0; 11160 PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR = 0; 11161 PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR = 0; 11162 #else 11163 PFN_dummy vkGetPhysicalDeviceVideoCapabilitiesKHR_placeholder = 0; 11164 PFN_dummy vkGetPhysicalDeviceVideoFormatPropertiesKHR_placeholder = 0; 11165 PFN_dummy vkCreateVideoSessionKHR_placeholder = 0; 11166 PFN_dummy vkDestroyVideoSessionKHR_placeholder = 0; 11167 PFN_dummy vkGetVideoSessionMemoryRequirementsKHR_placeholder = 0; 11168 PFN_dummy vkBindVideoSessionMemoryKHR_placeholder = 0; 11169 PFN_dummy vkCreateVideoSessionParametersKHR_placeholder = 0; 11170 PFN_dummy vkUpdateVideoSessionParametersKHR_placeholder = 0; 11171 PFN_dummy vkDestroyVideoSessionParametersKHR_placeholder = 0; 11172 PFN_dummy vkCmdBeginVideoCodingKHR_placeholder = 0; 11173 PFN_dummy vkCmdEndVideoCodingKHR_placeholder = 0; 11174 PFN_dummy vkCmdControlVideoCodingKHR_placeholder = 0; 11175 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 11176 11177 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 11178 //=== VK_KHR_video_decode_queue === 11179 PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR = 0; 11180 #else 11181 PFN_dummy vkCmdDecodeVideoKHR_placeholder = 0; 11182 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 11183 11184 //=== VK_EXT_transform_feedback === 11185 PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT = 0; 11186 PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT = 0; 11187 PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT = 0; 11188 PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT = 0; 11189 PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT = 0; 11190 PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT = 0; 11191 11192 //=== VK_NVX_binary_import === 11193 PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX = 0; 11194 PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX = 0; 11195 PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX = 0; 11196 PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX = 0; 11197 PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX = 0; 11198 11199 //=== VK_NVX_image_view_handle === 11200 PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX = 0; 11201 PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX = 0; 11202 11203 //=== VK_AMD_draw_indirect_count === 11204 PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD = 0; 11205 PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD = 0; 11206 11207 //=== VK_AMD_shader_info === 11208 PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD = 0; 11209 11210 #if defined( VK_USE_PLATFORM_GGP ) 11211 //=== VK_GGP_stream_descriptor_surface === 11212 PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP = 0; 11213 #else 11214 PFN_dummy vkCreateStreamDescriptorSurfaceGGP_placeholder = 0; 11215 #endif /*VK_USE_PLATFORM_GGP*/ 11216 11217 //=== VK_NV_external_memory_capabilities === 11218 PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV = 0; 11219 11220 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11221 //=== VK_NV_external_memory_win32 === 11222 PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV = 0; 11223 #else 11224 PFN_dummy vkGetMemoryWin32HandleNV_placeholder = 0; 11225 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11226 11227 //=== VK_KHR_get_physical_device_properties2 === 11228 PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR = 0; 11229 PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR = 0; 11230 PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR = 0; 11231 PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR = 0; 11232 PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR = 0; 11233 PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR = 0; 11234 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR = 0; 11235 11236 //=== VK_KHR_device_group === 11237 PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR = 0; 11238 PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR = 0; 11239 PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR = 0; 11240 11241 #if defined( VK_USE_PLATFORM_VI_NN ) 11242 //=== VK_NN_vi_surface === 11243 PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN = 0; 11244 #else 11245 PFN_dummy vkCreateViSurfaceNN_placeholder = 0; 11246 #endif /*VK_USE_PLATFORM_VI_NN*/ 11247 11248 //=== VK_KHR_maintenance1 === 11249 PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR = 0; 11250 11251 //=== VK_KHR_device_group_creation === 11252 PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR = 0; 11253 11254 //=== VK_KHR_external_memory_capabilities === 11255 PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR = 0; 11256 11257 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11258 //=== VK_KHR_external_memory_win32 === 11259 PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR = 0; 11260 PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR = 0; 11261 #else 11262 PFN_dummy vkGetMemoryWin32HandleKHR_placeholder = 0; 11263 PFN_dummy vkGetMemoryWin32HandlePropertiesKHR_placeholder = 0; 11264 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11265 11266 //=== VK_KHR_external_memory_fd === 11267 PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR = 0; 11268 PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR = 0; 11269 11270 //=== VK_KHR_external_semaphore_capabilities === 11271 PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = 0; 11272 11273 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11274 //=== VK_KHR_external_semaphore_win32 === 11275 PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR = 0; 11276 PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR = 0; 11277 #else 11278 PFN_dummy vkImportSemaphoreWin32HandleKHR_placeholder = 0; 11279 PFN_dummy vkGetSemaphoreWin32HandleKHR_placeholder = 0; 11280 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11281 11282 //=== VK_KHR_external_semaphore_fd === 11283 PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR = 0; 11284 PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR = 0; 11285 11286 //=== VK_KHR_push_descriptor === 11287 PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR = 0; 11288 PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR = 0; 11289 11290 //=== VK_EXT_conditional_rendering === 11291 PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT = 0; 11292 PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT = 0; 11293 11294 //=== VK_KHR_descriptor_update_template === 11295 PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR = 0; 11296 PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR = 0; 11297 PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR = 0; 11298 11299 //=== VK_NV_clip_space_w_scaling === 11300 PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV = 0; 11301 11302 //=== VK_EXT_direct_mode_display === 11303 PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT = 0; 11304 11305 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 11306 //=== VK_EXT_acquire_xlib_display === 11307 PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT = 0; 11308 PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT = 0; 11309 #else 11310 PFN_dummy vkAcquireXlibDisplayEXT_placeholder = 0; 11311 PFN_dummy vkGetRandROutputDisplayEXT_placeholder = 0; 11312 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 11313 11314 //=== VK_EXT_display_surface_counter === 11315 PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT = 0; 11316 11317 //=== VK_EXT_display_control === 11318 PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT = 0; 11319 PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT = 0; 11320 PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT = 0; 11321 PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT = 0; 11322 11323 //=== VK_GOOGLE_display_timing === 11324 PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE = 0; 11325 PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE = 0; 11326 11327 //=== VK_EXT_discard_rectangles === 11328 PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT = 0; 11329 11330 //=== VK_EXT_hdr_metadata === 11331 PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT = 0; 11332 11333 //=== VK_KHR_create_renderpass2 === 11334 PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR = 0; 11335 PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR = 0; 11336 PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR = 0; 11337 PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR = 0; 11338 11339 //=== VK_KHR_shared_presentable_image === 11340 PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR = 0; 11341 11342 //=== VK_KHR_external_fence_capabilities === 11343 PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR = 0; 11344 11345 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11346 //=== VK_KHR_external_fence_win32 === 11347 PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR = 0; 11348 PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR = 0; 11349 #else 11350 PFN_dummy vkImportFenceWin32HandleKHR_placeholder = 0; 11351 PFN_dummy vkGetFenceWin32HandleKHR_placeholder = 0; 11352 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11353 11354 //=== VK_KHR_external_fence_fd === 11355 PFN_vkImportFenceFdKHR vkImportFenceFdKHR = 0; 11356 PFN_vkGetFenceFdKHR vkGetFenceFdKHR = 0; 11357 11358 //=== VK_KHR_performance_query === 11359 PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR 11360 vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = 0; 11361 PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR 11362 vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = 0; 11363 PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR = 0; 11364 PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR = 0; 11365 11366 //=== VK_KHR_get_surface_capabilities2 === 11367 PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR = 0; 11368 PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR = 0; 11369 11370 //=== VK_KHR_get_display_properties2 === 11371 PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR = 0; 11372 PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR = 0; 11373 PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR = 0; 11374 PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR = 0; 11375 11376 #if defined( VK_USE_PLATFORM_IOS_MVK ) 11377 //=== VK_MVK_ios_surface === 11378 PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK = 0; 11379 #else 11380 PFN_dummy vkCreateIOSSurfaceMVK_placeholder = 0; 11381 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 11382 11383 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 11384 //=== VK_MVK_macos_surface === 11385 PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK = 0; 11386 #else 11387 PFN_dummy vkCreateMacOSSurfaceMVK_placeholder = 0; 11388 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 11389 11390 //=== VK_EXT_debug_utils === 11391 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT = 0; 11392 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT = 0; 11393 PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT = 0; 11394 PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT = 0; 11395 PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT = 0; 11396 PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT = 0; 11397 PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT = 0; 11398 PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT = 0; 11399 PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT = 0; 11400 PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT = 0; 11401 PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT = 0; 11402 11403 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 11404 //=== VK_ANDROID_external_memory_android_hardware_buffer === 11405 PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID = 0; 11406 PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID = 0; 11407 #else 11408 PFN_dummy vkGetAndroidHardwareBufferPropertiesANDROID_placeholder = 0; 11409 PFN_dummy vkGetMemoryAndroidHardwareBufferANDROID_placeholder = 0; 11410 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 11411 11412 //=== VK_EXT_sample_locations === 11413 PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT = 0; 11414 PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT = 0; 11415 11416 //=== VK_KHR_get_memory_requirements2 === 11417 PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR = 0; 11418 PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR = 0; 11419 PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR = 0; 11420 11421 //=== VK_KHR_acceleration_structure === 11422 PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR = 0; 11423 PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR = 0; 11424 PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR = 0; 11425 PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR = 0; 11426 PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR = 0; 11427 PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR = 0; 11428 PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR = 0; 11429 PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR = 0; 11430 PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR = 0; 11431 PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR = 0; 11432 PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR = 0; 11433 PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR = 0; 11434 PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR = 0; 11435 PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR = 0; 11436 PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR = 0; 11437 PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR = 0; 11438 11439 //=== VK_KHR_sampler_ycbcr_conversion === 11440 PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR = 0; 11441 PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR = 0; 11442 11443 //=== VK_KHR_bind_memory2 === 11444 PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR = 0; 11445 PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR = 0; 11446 11447 //=== VK_EXT_image_drm_format_modifier === 11448 PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT = 0; 11449 11450 //=== VK_EXT_validation_cache === 11451 PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT = 0; 11452 PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT = 0; 11453 PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT = 0; 11454 PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT = 0; 11455 11456 //=== VK_NV_shading_rate_image === 11457 PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV = 0; 11458 PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV = 0; 11459 PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV = 0; 11460 11461 //=== VK_NV_ray_tracing === 11462 PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV = 0; 11463 PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV = 0; 11464 PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV = 0; 11465 PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV = 0; 11466 PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV = 0; 11467 PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV = 0; 11468 PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV = 0; 11469 PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV = 0; 11470 PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV = 0; 11471 PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV = 0; 11472 PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV = 0; 11473 PFN_vkCompileDeferredNV vkCompileDeferredNV = 0; 11474 11475 //=== VK_KHR_maintenance3 === 11476 PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR = 0; 11477 11478 //=== VK_KHR_draw_indirect_count === 11479 PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR = 0; 11480 PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR = 0; 11481 11482 //=== VK_EXT_external_memory_host === 11483 PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT = 0; 11484 11485 //=== VK_AMD_buffer_marker === 11486 PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD = 0; 11487 11488 //=== VK_EXT_calibrated_timestamps === 11489 PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = 0; 11490 PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT = 0; 11491 11492 //=== VK_NV_mesh_shader === 11493 PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV = 0; 11494 PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV = 0; 11495 PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV = 0; 11496 11497 //=== VK_NV_scissor_exclusive === 11498 PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV = 0; 11499 11500 //=== VK_NV_device_diagnostic_checkpoints === 11501 PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV = 0; 11502 PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV = 0; 11503 11504 //=== VK_KHR_timeline_semaphore === 11505 PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR = 0; 11506 PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR = 0; 11507 PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR = 0; 11508 11509 //=== VK_INTEL_performance_query === 11510 PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL = 0; 11511 PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL = 0; 11512 PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL = 0; 11513 PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL = 0; 11514 PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL = 0; 11515 PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL = 0; 11516 PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL = 0; 11517 PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL = 0; 11518 PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL = 0; 11519 11520 //=== VK_AMD_display_native_hdr === 11521 PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD = 0; 11522 11523 #if defined( VK_USE_PLATFORM_FUCHSIA ) 11524 //=== VK_FUCHSIA_imagepipe_surface === 11525 PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA = 0; 11526 #else 11527 PFN_dummy vkCreateImagePipeSurfaceFUCHSIA_placeholder = 0; 11528 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 11529 11530 #if defined( VK_USE_PLATFORM_METAL_EXT ) 11531 //=== VK_EXT_metal_surface === 11532 PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT = 0; 11533 #else 11534 PFN_dummy vkCreateMetalSurfaceEXT_placeholder = 0; 11535 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 11536 11537 //=== VK_KHR_fragment_shading_rate === 11538 PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR = 0; 11539 PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR = 0; 11540 11541 //=== VK_EXT_buffer_device_address === 11542 PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT = 0; 11543 11544 //=== VK_EXT_tooling_info === 11545 PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT = 0; 11546 11547 //=== VK_KHR_present_wait === 11548 PFN_vkWaitForPresentKHR vkWaitForPresentKHR = 0; 11549 11550 //=== VK_NV_cooperative_matrix === 11551 PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = 0; 11552 11553 //=== VK_NV_coverage_reduction_mode === 11554 PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV 11555 vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = 0; 11556 11557 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11558 //=== VK_EXT_full_screen_exclusive === 11559 PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT = 0; 11560 PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT = 0; 11561 PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT = 0; 11562 PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT = 0; 11563 #else 11564 PFN_dummy vkGetPhysicalDeviceSurfacePresentModes2EXT_placeholder = 0; 11565 PFN_dummy vkAcquireFullScreenExclusiveModeEXT_placeholder = 0; 11566 PFN_dummy vkReleaseFullScreenExclusiveModeEXT_placeholder = 0; 11567 PFN_dummy vkGetDeviceGroupSurfacePresentModes2EXT_placeholder = 0; 11568 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11569 11570 //=== VK_EXT_headless_surface === 11571 PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT = 0; 11572 11573 //=== VK_KHR_buffer_device_address === 11574 PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR = 0; 11575 PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR = 0; 11576 PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR = 0; 11577 11578 //=== VK_EXT_line_rasterization === 11579 PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT = 0; 11580 11581 //=== VK_EXT_host_query_reset === 11582 PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT = 0; 11583 11584 //=== VK_EXT_extended_dynamic_state === 11585 PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT = 0; 11586 PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT = 0; 11587 PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT = 0; 11588 PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT = 0; 11589 PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT = 0; 11590 PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT = 0; 11591 PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT = 0; 11592 PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT = 0; 11593 PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT = 0; 11594 PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT = 0; 11595 PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT = 0; 11596 PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT = 0; 11597 11598 //=== VK_KHR_deferred_host_operations === 11599 PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR = 0; 11600 PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR = 0; 11601 PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR = 0; 11602 PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR = 0; 11603 PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR = 0; 11604 11605 //=== VK_KHR_pipeline_executable_properties === 11606 PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR = 0; 11607 PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR = 0; 11608 PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR = 0; 11609 11610 //=== VK_NV_device_generated_commands === 11611 PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV = 0; 11612 PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV = 0; 11613 PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV = 0; 11614 PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV = 0; 11615 PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV = 0; 11616 PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV = 0; 11617 11618 //=== VK_EXT_acquire_drm_display === 11619 PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT = 0; 11620 PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT = 0; 11621 11622 //=== VK_EXT_private_data === 11623 PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT = 0; 11624 PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT = 0; 11625 PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT = 0; 11626 PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT = 0; 11627 11628 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 11629 //=== VK_KHR_video_encode_queue === 11630 PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR = 0; 11631 #else 11632 PFN_dummy vkCmdEncodeVideoKHR_placeholder = 0; 11633 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 11634 11635 //=== VK_KHR_synchronization2 === 11636 PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR = 0; 11637 PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR = 0; 11638 PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR = 0; 11639 PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR = 0; 11640 PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR = 0; 11641 PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR = 0; 11642 PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD = 0; 11643 PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV = 0; 11644 11645 //=== VK_NV_fragment_shading_rate_enums === 11646 PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV = 0; 11647 11648 //=== VK_KHR_copy_commands2 === 11649 PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR = 0; 11650 PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR = 0; 11651 PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR = 0; 11652 PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR = 0; 11653 PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR = 0; 11654 PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR = 0; 11655 11656 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 11657 //=== VK_NV_acquire_winrt_display === 11658 PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV = 0; 11659 PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV = 0; 11660 #else 11661 PFN_dummy vkAcquireWinrtDisplayNV_placeholder = 0; 11662 PFN_dummy vkGetWinrtDisplayNV_placeholder = 0; 11663 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 11664 11665 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 11666 //=== VK_EXT_directfb_surface === 11667 PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT = 0; 11668 PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT = 0; 11669 #else 11670 PFN_dummy vkCreateDirectFBSurfaceEXT_placeholder = 0; 11671 PFN_dummy vkGetPhysicalDeviceDirectFBPresentationSupportEXT_placeholder = 0; 11672 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 11673 11674 //=== VK_KHR_ray_tracing_pipeline === 11675 PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR = 0; 11676 PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR = 0; 11677 PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR = 0; 11678 PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = 0; 11679 PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR = 0; 11680 PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR = 0; 11681 PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR = 0; 11682 11683 //=== VK_EXT_vertex_input_dynamic_state === 11684 PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT = 0; 11685 11686 #if defined( VK_USE_PLATFORM_FUCHSIA ) 11687 //=== VK_FUCHSIA_external_memory === 11688 PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0; 11689 PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA = 0; 11690 #else 11691 PFN_dummy vkGetMemoryZirconHandleFUCHSIA_placeholder = 0; 11692 PFN_dummy vkGetMemoryZirconHandlePropertiesFUCHSIA_placeholder = 0; 11693 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 11694 11695 #if defined( VK_USE_PLATFORM_FUCHSIA ) 11696 //=== VK_FUCHSIA_external_semaphore === 11697 PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA = 0; 11698 PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA = 0; 11699 #else 11700 PFN_dummy vkImportSemaphoreZirconHandleFUCHSIA_placeholder = 0; 11701 PFN_dummy vkGetSemaphoreZirconHandleFUCHSIA_placeholder = 0; 11702 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 11703 11704 #if defined( VK_USE_PLATFORM_FUCHSIA ) 11705 //=== VK_FUCHSIA_buffer_collection === 11706 PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA = 0; 11707 PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA = 0; 11708 PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA = 0; 11709 PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA = 0; 11710 PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA = 0; 11711 #else 11712 PFN_dummy vkCreateBufferCollectionFUCHSIA_placeholder = 0; 11713 PFN_dummy vkSetBufferCollectionImageConstraintsFUCHSIA_placeholder = 0; 11714 PFN_dummy vkSetBufferCollectionBufferConstraintsFUCHSIA_placeholder = 0; 11715 PFN_dummy vkDestroyBufferCollectionFUCHSIA_placeholder = 0; 11716 PFN_dummy vkGetBufferCollectionPropertiesFUCHSIA_placeholder = 0; 11717 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 11718 11719 //=== VK_HUAWEI_subpass_shading === 11720 PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = 0; 11721 PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI = 0; 11722 11723 //=== VK_HUAWEI_invocation_mask === 11724 PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI = 0; 11725 11726 //=== VK_NV_external_memory_rdma === 11727 PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV = 0; 11728 11729 //=== VK_EXT_extended_dynamic_state2 === 11730 PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT = 0; 11731 PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT = 0; 11732 PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT = 0; 11733 PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT = 0; 11734 PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT = 0; 11735 11736 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 11737 //=== VK_QNX_screen_surface === 11738 PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX = 0; 11739 PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX = 0; 11740 #else 11741 PFN_dummy vkCreateScreenSurfaceQNX_placeholder = 0; 11742 PFN_dummy vkGetPhysicalDeviceScreenPresentationSupportQNX_placeholder = 0; 11743 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 11744 11745 //=== VK_EXT_color_write_enable === 11746 PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT = 0; 11747 11748 //=== VK_EXT_multi_draw === 11749 PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT = 0; 11750 PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT = 0; 11751 11752 //=== VK_EXT_pageable_device_local_memory === 11753 PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT = 0; 11754 11755 //=== VK_KHR_maintenance4 === 11756 PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR = 0; 11757 PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR = 0; 11758 PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR = 0; 11759 11760 public: 11761 DispatchLoaderDynamic() VULKAN_HPP_NOEXCEPT = default; 11762 DispatchLoaderDynamic( DispatchLoaderDynamic const & rhs ) VULKAN_HPP_NOEXCEPT = default; 11763 11764 #if !defined( VK_NO_PROTOTYPES ) 11765 // This interface is designed to be used for per-device function pointers in combination with a linked vulkan 11766 // library. 11767 template <typename DynamicLoader> init(VULKAN_HPP_NAMESPACE::Instance const & instance,VULKAN_HPP_NAMESPACE::Device const & device,DynamicLoader const & dl)11768 void init( VULKAN_HPP_NAMESPACE::Instance const & instance, 11769 VULKAN_HPP_NAMESPACE::Device const & device, 11770 DynamicLoader const & dl ) VULKAN_HPP_NOEXCEPT 11771 { 11772 PFN_vkGetInstanceProcAddr getInstanceProcAddr = 11773 dl.template getProcAddress<PFN_vkGetInstanceProcAddr>( "vkGetInstanceProcAddr" ); 11774 PFN_vkGetDeviceProcAddr getDeviceProcAddr = 11775 dl.template getProcAddress<PFN_vkGetDeviceProcAddr>( "vkGetDeviceProcAddr" ); 11776 init( static_cast<VkInstance>( instance ), 11777 getInstanceProcAddr, 11778 static_cast<VkDevice>( device ), 11779 device ? getDeviceProcAddr : nullptr ); 11780 } 11781 11782 // This interface is designed to be used for per-device function pointers in combination with a linked vulkan 11783 // library. 11784 template <typename DynamicLoader 11785 # if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 11786 = VULKAN_HPP_NAMESPACE::DynamicLoader 11787 # endif 11788 > init(VULKAN_HPP_NAMESPACE::Instance const & instance,VULKAN_HPP_NAMESPACE::Device const & device)11789 void init( VULKAN_HPP_NAMESPACE::Instance const & instance, 11790 VULKAN_HPP_NAMESPACE::Device const & device ) VULKAN_HPP_NOEXCEPT 11791 { 11792 static DynamicLoader dl; 11793 init( instance, device, dl ); 11794 } 11795 #endif // !defined( VK_NO_PROTOTYPES ) 11796 DispatchLoaderDynamic(PFN_vkGetInstanceProcAddr getInstanceProcAddr)11797 DispatchLoaderDynamic( PFN_vkGetInstanceProcAddr getInstanceProcAddr ) VULKAN_HPP_NOEXCEPT 11798 { 11799 init( getInstanceProcAddr ); 11800 } 11801 init(PFN_vkGetInstanceProcAddr getInstanceProcAddr)11802 void init( PFN_vkGetInstanceProcAddr getInstanceProcAddr ) VULKAN_HPP_NOEXCEPT 11803 { 11804 VULKAN_HPP_ASSERT( getInstanceProcAddr ); 11805 11806 vkGetInstanceProcAddr = getInstanceProcAddr; 11807 11808 //=== VK_VERSION_1_0 === 11809 vkCreateInstance = PFN_vkCreateInstance( vkGetInstanceProcAddr( NULL, "vkCreateInstance" ) ); 11810 vkEnumerateInstanceExtensionProperties = PFN_vkEnumerateInstanceExtensionProperties( 11811 vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceExtensionProperties" ) ); 11812 vkEnumerateInstanceLayerProperties = 11813 PFN_vkEnumerateInstanceLayerProperties( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceLayerProperties" ) ); 11814 11815 //=== VK_VERSION_1_1 === 11816 vkEnumerateInstanceVersion = 11817 PFN_vkEnumerateInstanceVersion( vkGetInstanceProcAddr( NULL, "vkEnumerateInstanceVersion" ) ); 11818 } 11819 11820 // This interface does not require a linked vulkan library. DispatchLoaderDynamic(VkInstance instance,PFN_vkGetInstanceProcAddr getInstanceProcAddr,VkDevice device={},PFN_vkGetDeviceProcAddr getDeviceProcAddr=nullptr)11821 DispatchLoaderDynamic( VkInstance instance, 11822 PFN_vkGetInstanceProcAddr getInstanceProcAddr, 11823 VkDevice device = {}, 11824 PFN_vkGetDeviceProcAddr getDeviceProcAddr = nullptr ) VULKAN_HPP_NOEXCEPT 11825 { 11826 init( instance, getInstanceProcAddr, device, getDeviceProcAddr ); 11827 } 11828 11829 // This interface does not require a linked vulkan library. init(VkInstance instance,PFN_vkGetInstanceProcAddr getInstanceProcAddr,VkDevice device={},PFN_vkGetDeviceProcAddr=nullptr)11830 void init( VkInstance instance, 11831 PFN_vkGetInstanceProcAddr getInstanceProcAddr, 11832 VkDevice device = {}, 11833 PFN_vkGetDeviceProcAddr /*getDeviceProcAddr*/ = nullptr ) VULKAN_HPP_NOEXCEPT 11834 { 11835 VULKAN_HPP_ASSERT( instance && getInstanceProcAddr ); 11836 vkGetInstanceProcAddr = getInstanceProcAddr; 11837 init( VULKAN_HPP_NAMESPACE::Instance( instance ) ); 11838 if ( device ) 11839 { 11840 init( VULKAN_HPP_NAMESPACE::Device( device ) ); 11841 } 11842 } 11843 init(VULKAN_HPP_NAMESPACE::Instance instanceCpp)11844 void init( VULKAN_HPP_NAMESPACE::Instance instanceCpp ) VULKAN_HPP_NOEXCEPT 11845 { 11846 VkInstance instance = static_cast<VkInstance>( instanceCpp ); 11847 11848 //=== VK_VERSION_1_0 === 11849 vkDestroyInstance = PFN_vkDestroyInstance( vkGetInstanceProcAddr( instance, "vkDestroyInstance" ) ); 11850 vkEnumeratePhysicalDevices = 11851 PFN_vkEnumeratePhysicalDevices( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDevices" ) ); 11852 vkGetPhysicalDeviceFeatures = 11853 PFN_vkGetPhysicalDeviceFeatures( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures" ) ); 11854 vkGetPhysicalDeviceFormatProperties = PFN_vkGetPhysicalDeviceFormatProperties( 11855 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties" ) ); 11856 vkGetPhysicalDeviceImageFormatProperties = PFN_vkGetPhysicalDeviceImageFormatProperties( 11857 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties" ) ); 11858 vkGetPhysicalDeviceProperties = 11859 PFN_vkGetPhysicalDeviceProperties( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties" ) ); 11860 vkGetPhysicalDeviceQueueFamilyProperties = PFN_vkGetPhysicalDeviceQueueFamilyProperties( 11861 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" ) ); 11862 vkGetPhysicalDeviceMemoryProperties = PFN_vkGetPhysicalDeviceMemoryProperties( 11863 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties" ) ); 11864 vkGetInstanceProcAddr = PFN_vkGetInstanceProcAddr( vkGetInstanceProcAddr( instance, "vkGetInstanceProcAddr" ) ); 11865 vkGetDeviceProcAddr = PFN_vkGetDeviceProcAddr( vkGetInstanceProcAddr( instance, "vkGetDeviceProcAddr" ) ); 11866 vkCreateDevice = PFN_vkCreateDevice( vkGetInstanceProcAddr( instance, "vkCreateDevice" ) ); 11867 vkDestroyDevice = PFN_vkDestroyDevice( vkGetInstanceProcAddr( instance, "vkDestroyDevice" ) ); 11868 vkEnumerateDeviceExtensionProperties = PFN_vkEnumerateDeviceExtensionProperties( 11869 vkGetInstanceProcAddr( instance, "vkEnumerateDeviceExtensionProperties" ) ); 11870 vkEnumerateDeviceLayerProperties = 11871 PFN_vkEnumerateDeviceLayerProperties( vkGetInstanceProcAddr( instance, "vkEnumerateDeviceLayerProperties" ) ); 11872 vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetInstanceProcAddr( instance, "vkGetDeviceQueue" ) ); 11873 vkQueueSubmit = PFN_vkQueueSubmit( vkGetInstanceProcAddr( instance, "vkQueueSubmit" ) ); 11874 vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetInstanceProcAddr( instance, "vkQueueWaitIdle" ) ); 11875 vkDeviceWaitIdle = PFN_vkDeviceWaitIdle( vkGetInstanceProcAddr( instance, "vkDeviceWaitIdle" ) ); 11876 vkAllocateMemory = PFN_vkAllocateMemory( vkGetInstanceProcAddr( instance, "vkAllocateMemory" ) ); 11877 vkFreeMemory = PFN_vkFreeMemory( vkGetInstanceProcAddr( instance, "vkFreeMemory" ) ); 11878 vkMapMemory = PFN_vkMapMemory( vkGetInstanceProcAddr( instance, "vkMapMemory" ) ); 11879 vkUnmapMemory = PFN_vkUnmapMemory( vkGetInstanceProcAddr( instance, "vkUnmapMemory" ) ); 11880 vkFlushMappedMemoryRanges = 11881 PFN_vkFlushMappedMemoryRanges( vkGetInstanceProcAddr( instance, "vkFlushMappedMemoryRanges" ) ); 11882 vkInvalidateMappedMemoryRanges = 11883 PFN_vkInvalidateMappedMemoryRanges( vkGetInstanceProcAddr( instance, "vkInvalidateMappedMemoryRanges" ) ); 11884 vkGetDeviceMemoryCommitment = 11885 PFN_vkGetDeviceMemoryCommitment( vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryCommitment" ) ); 11886 vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetInstanceProcAddr( instance, "vkBindBufferMemory" ) ); 11887 vkBindImageMemory = PFN_vkBindImageMemory( vkGetInstanceProcAddr( instance, "vkBindImageMemory" ) ); 11888 vkGetBufferMemoryRequirements = 11889 PFN_vkGetBufferMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements" ) ); 11890 vkGetImageMemoryRequirements = 11891 PFN_vkGetImageMemoryRequirements( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements" ) ); 11892 vkGetImageSparseMemoryRequirements = PFN_vkGetImageSparseMemoryRequirements( 11893 vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements" ) ); 11894 vkGetPhysicalDeviceSparseImageFormatProperties = PFN_vkGetPhysicalDeviceSparseImageFormatProperties( 11895 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties" ) ); 11896 vkQueueBindSparse = PFN_vkQueueBindSparse( vkGetInstanceProcAddr( instance, "vkQueueBindSparse" ) ); 11897 vkCreateFence = PFN_vkCreateFence( vkGetInstanceProcAddr( instance, "vkCreateFence" ) ); 11898 vkDestroyFence = PFN_vkDestroyFence( vkGetInstanceProcAddr( instance, "vkDestroyFence" ) ); 11899 vkResetFences = PFN_vkResetFences( vkGetInstanceProcAddr( instance, "vkResetFences" ) ); 11900 vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetInstanceProcAddr( instance, "vkGetFenceStatus" ) ); 11901 vkWaitForFences = PFN_vkWaitForFences( vkGetInstanceProcAddr( instance, "vkWaitForFences" ) ); 11902 vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetInstanceProcAddr( instance, "vkCreateSemaphore" ) ); 11903 vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetInstanceProcAddr( instance, "vkDestroySemaphore" ) ); 11904 vkCreateEvent = PFN_vkCreateEvent( vkGetInstanceProcAddr( instance, "vkCreateEvent" ) ); 11905 vkDestroyEvent = PFN_vkDestroyEvent( vkGetInstanceProcAddr( instance, "vkDestroyEvent" ) ); 11906 vkGetEventStatus = PFN_vkGetEventStatus( vkGetInstanceProcAddr( instance, "vkGetEventStatus" ) ); 11907 vkSetEvent = PFN_vkSetEvent( vkGetInstanceProcAddr( instance, "vkSetEvent" ) ); 11908 vkResetEvent = PFN_vkResetEvent( vkGetInstanceProcAddr( instance, "vkResetEvent" ) ); 11909 vkCreateQueryPool = PFN_vkCreateQueryPool( vkGetInstanceProcAddr( instance, "vkCreateQueryPool" ) ); 11910 vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetInstanceProcAddr( instance, "vkDestroyQueryPool" ) ); 11911 vkGetQueryPoolResults = PFN_vkGetQueryPoolResults( vkGetInstanceProcAddr( instance, "vkGetQueryPoolResults" ) ); 11912 vkCreateBuffer = PFN_vkCreateBuffer( vkGetInstanceProcAddr( instance, "vkCreateBuffer" ) ); 11913 vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetInstanceProcAddr( instance, "vkDestroyBuffer" ) ); 11914 vkCreateBufferView = PFN_vkCreateBufferView( vkGetInstanceProcAddr( instance, "vkCreateBufferView" ) ); 11915 vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetInstanceProcAddr( instance, "vkDestroyBufferView" ) ); 11916 vkCreateImage = PFN_vkCreateImage( vkGetInstanceProcAddr( instance, "vkCreateImage" ) ); 11917 vkDestroyImage = PFN_vkDestroyImage( vkGetInstanceProcAddr( instance, "vkDestroyImage" ) ); 11918 vkGetImageSubresourceLayout = 11919 PFN_vkGetImageSubresourceLayout( vkGetInstanceProcAddr( instance, "vkGetImageSubresourceLayout" ) ); 11920 vkCreateImageView = PFN_vkCreateImageView( vkGetInstanceProcAddr( instance, "vkCreateImageView" ) ); 11921 vkDestroyImageView = PFN_vkDestroyImageView( vkGetInstanceProcAddr( instance, "vkDestroyImageView" ) ); 11922 vkCreateShaderModule = PFN_vkCreateShaderModule( vkGetInstanceProcAddr( instance, "vkCreateShaderModule" ) ); 11923 vkDestroyShaderModule = PFN_vkDestroyShaderModule( vkGetInstanceProcAddr( instance, "vkDestroyShaderModule" ) ); 11924 vkCreatePipelineCache = PFN_vkCreatePipelineCache( vkGetInstanceProcAddr( instance, "vkCreatePipelineCache" ) ); 11925 vkDestroyPipelineCache = 11926 PFN_vkDestroyPipelineCache( vkGetInstanceProcAddr( instance, "vkDestroyPipelineCache" ) ); 11927 vkGetPipelineCacheData = 11928 PFN_vkGetPipelineCacheData( vkGetInstanceProcAddr( instance, "vkGetPipelineCacheData" ) ); 11929 vkMergePipelineCaches = PFN_vkMergePipelineCaches( vkGetInstanceProcAddr( instance, "vkMergePipelineCaches" ) ); 11930 vkCreateGraphicsPipelines = 11931 PFN_vkCreateGraphicsPipelines( vkGetInstanceProcAddr( instance, "vkCreateGraphicsPipelines" ) ); 11932 vkCreateComputePipelines = 11933 PFN_vkCreateComputePipelines( vkGetInstanceProcAddr( instance, "vkCreateComputePipelines" ) ); 11934 vkDestroyPipeline = PFN_vkDestroyPipeline( vkGetInstanceProcAddr( instance, "vkDestroyPipeline" ) ); 11935 vkCreatePipelineLayout = 11936 PFN_vkCreatePipelineLayout( vkGetInstanceProcAddr( instance, "vkCreatePipelineLayout" ) ); 11937 vkDestroyPipelineLayout = 11938 PFN_vkDestroyPipelineLayout( vkGetInstanceProcAddr( instance, "vkDestroyPipelineLayout" ) ); 11939 vkCreateSampler = PFN_vkCreateSampler( vkGetInstanceProcAddr( instance, "vkCreateSampler" ) ); 11940 vkDestroySampler = PFN_vkDestroySampler( vkGetInstanceProcAddr( instance, "vkDestroySampler" ) ); 11941 vkCreateDescriptorSetLayout = 11942 PFN_vkCreateDescriptorSetLayout( vkGetInstanceProcAddr( instance, "vkCreateDescriptorSetLayout" ) ); 11943 vkDestroyDescriptorSetLayout = 11944 PFN_vkDestroyDescriptorSetLayout( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorSetLayout" ) ); 11945 vkCreateDescriptorPool = 11946 PFN_vkCreateDescriptorPool( vkGetInstanceProcAddr( instance, "vkCreateDescriptorPool" ) ); 11947 vkDestroyDescriptorPool = 11948 PFN_vkDestroyDescriptorPool( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorPool" ) ); 11949 vkResetDescriptorPool = PFN_vkResetDescriptorPool( vkGetInstanceProcAddr( instance, "vkResetDescriptorPool" ) ); 11950 vkAllocateDescriptorSets = 11951 PFN_vkAllocateDescriptorSets( vkGetInstanceProcAddr( instance, "vkAllocateDescriptorSets" ) ); 11952 vkFreeDescriptorSets = PFN_vkFreeDescriptorSets( vkGetInstanceProcAddr( instance, "vkFreeDescriptorSets" ) ); 11953 vkUpdateDescriptorSets = 11954 PFN_vkUpdateDescriptorSets( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSets" ) ); 11955 vkCreateFramebuffer = PFN_vkCreateFramebuffer( vkGetInstanceProcAddr( instance, "vkCreateFramebuffer" ) ); 11956 vkDestroyFramebuffer = PFN_vkDestroyFramebuffer( vkGetInstanceProcAddr( instance, "vkDestroyFramebuffer" ) ); 11957 vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetInstanceProcAddr( instance, "vkCreateRenderPass" ) ); 11958 vkDestroyRenderPass = PFN_vkDestroyRenderPass( vkGetInstanceProcAddr( instance, "vkDestroyRenderPass" ) ); 11959 vkGetRenderAreaGranularity = 11960 PFN_vkGetRenderAreaGranularity( vkGetInstanceProcAddr( instance, "vkGetRenderAreaGranularity" ) ); 11961 vkCreateCommandPool = PFN_vkCreateCommandPool( vkGetInstanceProcAddr( instance, "vkCreateCommandPool" ) ); 11962 vkDestroyCommandPool = PFN_vkDestroyCommandPool( vkGetInstanceProcAddr( instance, "vkDestroyCommandPool" ) ); 11963 vkResetCommandPool = PFN_vkResetCommandPool( vkGetInstanceProcAddr( instance, "vkResetCommandPool" ) ); 11964 vkAllocateCommandBuffers = 11965 PFN_vkAllocateCommandBuffers( vkGetInstanceProcAddr( instance, "vkAllocateCommandBuffers" ) ); 11966 vkFreeCommandBuffers = PFN_vkFreeCommandBuffers( vkGetInstanceProcAddr( instance, "vkFreeCommandBuffers" ) ); 11967 vkBeginCommandBuffer = PFN_vkBeginCommandBuffer( vkGetInstanceProcAddr( instance, "vkBeginCommandBuffer" ) ); 11968 vkEndCommandBuffer = PFN_vkEndCommandBuffer( vkGetInstanceProcAddr( instance, "vkEndCommandBuffer" ) ); 11969 vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetInstanceProcAddr( instance, "vkResetCommandBuffer" ) ); 11970 vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetInstanceProcAddr( instance, "vkCmdBindPipeline" ) ); 11971 vkCmdSetViewport = PFN_vkCmdSetViewport( vkGetInstanceProcAddr( instance, "vkCmdSetViewport" ) ); 11972 vkCmdSetScissor = PFN_vkCmdSetScissor( vkGetInstanceProcAddr( instance, "vkCmdSetScissor" ) ); 11973 vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetInstanceProcAddr( instance, "vkCmdSetLineWidth" ) ); 11974 vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBias" ) ); 11975 vkCmdSetBlendConstants = 11976 PFN_vkCmdSetBlendConstants( vkGetInstanceProcAddr( instance, "vkCmdSetBlendConstants" ) ); 11977 vkCmdSetDepthBounds = PFN_vkCmdSetDepthBounds( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBounds" ) ); 11978 vkCmdSetStencilCompareMask = 11979 PFN_vkCmdSetStencilCompareMask( vkGetInstanceProcAddr( instance, "vkCmdSetStencilCompareMask" ) ); 11980 vkCmdSetStencilWriteMask = 11981 PFN_vkCmdSetStencilWriteMask( vkGetInstanceProcAddr( instance, "vkCmdSetStencilWriteMask" ) ); 11982 vkCmdSetStencilReference = 11983 PFN_vkCmdSetStencilReference( vkGetInstanceProcAddr( instance, "vkCmdSetStencilReference" ) ); 11984 vkCmdBindDescriptorSets = 11985 PFN_vkCmdBindDescriptorSets( vkGetInstanceProcAddr( instance, "vkCmdBindDescriptorSets" ) ); 11986 vkCmdBindIndexBuffer = PFN_vkCmdBindIndexBuffer( vkGetInstanceProcAddr( instance, "vkCmdBindIndexBuffer" ) ); 11987 vkCmdBindVertexBuffers = 11988 PFN_vkCmdBindVertexBuffers( vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers" ) ); 11989 vkCmdDraw = PFN_vkCmdDraw( vkGetInstanceProcAddr( instance, "vkCmdDraw" ) ); 11990 vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexed" ) ); 11991 vkCmdDrawIndirect = PFN_vkCmdDrawIndirect( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirect" ) ); 11992 vkCmdDrawIndexedIndirect = 11993 PFN_vkCmdDrawIndexedIndirect( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirect" ) ); 11994 vkCmdDispatch = PFN_vkCmdDispatch( vkGetInstanceProcAddr( instance, "vkCmdDispatch" ) ); 11995 vkCmdDispatchIndirect = PFN_vkCmdDispatchIndirect( vkGetInstanceProcAddr( instance, "vkCmdDispatchIndirect" ) ); 11996 vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer" ) ); 11997 vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetInstanceProcAddr( instance, "vkCmdCopyImage" ) ); 11998 vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetInstanceProcAddr( instance, "vkCmdBlitImage" ) ); 11999 vkCmdCopyBufferToImage = 12000 PFN_vkCmdCopyBufferToImage( vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage" ) ); 12001 vkCmdCopyImageToBuffer = 12002 PFN_vkCmdCopyImageToBuffer( vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer" ) ); 12003 vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetInstanceProcAddr( instance, "vkCmdUpdateBuffer" ) ); 12004 vkCmdFillBuffer = PFN_vkCmdFillBuffer( vkGetInstanceProcAddr( instance, "vkCmdFillBuffer" ) ); 12005 vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetInstanceProcAddr( instance, "vkCmdClearColorImage" ) ); 12006 vkCmdClearDepthStencilImage = 12007 PFN_vkCmdClearDepthStencilImage( vkGetInstanceProcAddr( instance, "vkCmdClearDepthStencilImage" ) ); 12008 vkCmdClearAttachments = PFN_vkCmdClearAttachments( vkGetInstanceProcAddr( instance, "vkCmdClearAttachments" ) ); 12009 vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetInstanceProcAddr( instance, "vkCmdResolveImage" ) ); 12010 vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetInstanceProcAddr( instance, "vkCmdSetEvent" ) ); 12011 vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetInstanceProcAddr( instance, "vkCmdResetEvent" ) ); 12012 vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetInstanceProcAddr( instance, "vkCmdWaitEvents" ) ); 12013 vkCmdPipelineBarrier = PFN_vkCmdPipelineBarrier( vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier" ) ); 12014 vkCmdBeginQuery = PFN_vkCmdBeginQuery( vkGetInstanceProcAddr( instance, "vkCmdBeginQuery" ) ); 12015 vkCmdEndQuery = PFN_vkCmdEndQuery( vkGetInstanceProcAddr( instance, "vkCmdEndQuery" ) ); 12016 vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetInstanceProcAddr( instance, "vkCmdResetQueryPool" ) ); 12017 vkCmdWriteTimestamp = PFN_vkCmdWriteTimestamp( vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp" ) ); 12018 vkCmdCopyQueryPoolResults = 12019 PFN_vkCmdCopyQueryPoolResults( vkGetInstanceProcAddr( instance, "vkCmdCopyQueryPoolResults" ) ); 12020 vkCmdPushConstants = PFN_vkCmdPushConstants( vkGetInstanceProcAddr( instance, "vkCmdPushConstants" ) ); 12021 vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass" ) ); 12022 vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass" ) ); 12023 vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass" ) ); 12024 vkCmdExecuteCommands = PFN_vkCmdExecuteCommands( vkGetInstanceProcAddr( instance, "vkCmdExecuteCommands" ) ); 12025 12026 //=== VK_VERSION_1_1 === 12027 vkBindBufferMemory2 = PFN_vkBindBufferMemory2( vkGetInstanceProcAddr( instance, "vkBindBufferMemory2" ) ); 12028 vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetInstanceProcAddr( instance, "vkBindImageMemory2" ) ); 12029 vkGetDeviceGroupPeerMemoryFeatures = PFN_vkGetDeviceGroupPeerMemoryFeatures( 12030 vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeatures" ) ); 12031 vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMask" ) ); 12032 vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetInstanceProcAddr( instance, "vkCmdDispatchBase" ) ); 12033 vkEnumeratePhysicalDeviceGroups = 12034 PFN_vkEnumeratePhysicalDeviceGroups( vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroups" ) ); 12035 vkGetImageMemoryRequirements2 = 12036 PFN_vkGetImageMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2" ) ); 12037 vkGetBufferMemoryRequirements2 = 12038 PFN_vkGetBufferMemoryRequirements2( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2" ) ); 12039 vkGetImageSparseMemoryRequirements2 = PFN_vkGetImageSparseMemoryRequirements2( 12040 vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2" ) ); 12041 vkGetPhysicalDeviceFeatures2 = 12042 PFN_vkGetPhysicalDeviceFeatures2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2" ) ); 12043 vkGetPhysicalDeviceProperties2 = 12044 PFN_vkGetPhysicalDeviceProperties2( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2" ) ); 12045 vkGetPhysicalDeviceFormatProperties2 = PFN_vkGetPhysicalDeviceFormatProperties2( 12046 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2" ) ); 12047 vkGetPhysicalDeviceImageFormatProperties2 = PFN_vkGetPhysicalDeviceImageFormatProperties2( 12048 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2" ) ); 12049 vkGetPhysicalDeviceQueueFamilyProperties2 = PFN_vkGetPhysicalDeviceQueueFamilyProperties2( 12050 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2" ) ); 12051 vkGetPhysicalDeviceMemoryProperties2 = PFN_vkGetPhysicalDeviceMemoryProperties2( 12052 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2" ) ); 12053 vkGetPhysicalDeviceSparseImageFormatProperties2 = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2( 12054 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2" ) ); 12055 vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetInstanceProcAddr( instance, "vkTrimCommandPool" ) ); 12056 vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetInstanceProcAddr( instance, "vkGetDeviceQueue2" ) ); 12057 vkCreateSamplerYcbcrConversion = 12058 PFN_vkCreateSamplerYcbcrConversion( vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversion" ) ); 12059 vkDestroySamplerYcbcrConversion = 12060 PFN_vkDestroySamplerYcbcrConversion( vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversion" ) ); 12061 vkCreateDescriptorUpdateTemplate = 12062 PFN_vkCreateDescriptorUpdateTemplate( vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplate" ) ); 12063 vkDestroyDescriptorUpdateTemplate = 12064 PFN_vkDestroyDescriptorUpdateTemplate( vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplate" ) ); 12065 vkUpdateDescriptorSetWithTemplate = 12066 PFN_vkUpdateDescriptorSetWithTemplate( vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplate" ) ); 12067 vkGetPhysicalDeviceExternalBufferProperties = PFN_vkGetPhysicalDeviceExternalBufferProperties( 12068 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferProperties" ) ); 12069 vkGetPhysicalDeviceExternalFenceProperties = PFN_vkGetPhysicalDeviceExternalFenceProperties( 12070 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFenceProperties" ) ); 12071 vkGetPhysicalDeviceExternalSemaphoreProperties = PFN_vkGetPhysicalDeviceExternalSemaphoreProperties( 12072 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphoreProperties" ) ); 12073 vkGetDescriptorSetLayoutSupport = 12074 PFN_vkGetDescriptorSetLayoutSupport( vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupport" ) ); 12075 12076 //=== VK_VERSION_1_2 === 12077 vkCmdDrawIndirectCount = 12078 PFN_vkCmdDrawIndirectCount( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCount" ) ); 12079 vkCmdDrawIndexedIndirectCount = 12080 PFN_vkCmdDrawIndexedIndirectCount( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCount" ) ); 12081 vkCreateRenderPass2 = PFN_vkCreateRenderPass2( vkGetInstanceProcAddr( instance, "vkCreateRenderPass2" ) ); 12082 vkCmdBeginRenderPass2 = PFN_vkCmdBeginRenderPass2( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2" ) ); 12083 vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2" ) ); 12084 vkCmdEndRenderPass2 = PFN_vkCmdEndRenderPass2( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2" ) ); 12085 vkResetQueryPool = PFN_vkResetQueryPool( vkGetInstanceProcAddr( instance, "vkResetQueryPool" ) ); 12086 vkGetSemaphoreCounterValue = 12087 PFN_vkGetSemaphoreCounterValue( vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValue" ) ); 12088 vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetInstanceProcAddr( instance, "vkWaitSemaphores" ) ); 12089 vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetInstanceProcAddr( instance, "vkSignalSemaphore" ) ); 12090 vkGetBufferDeviceAddress = 12091 PFN_vkGetBufferDeviceAddress( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddress" ) ); 12092 vkGetBufferOpaqueCaptureAddress = 12093 PFN_vkGetBufferOpaqueCaptureAddress( vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddress" ) ); 12094 vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress( 12095 vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddress" ) ); 12096 12097 //=== VK_KHR_surface === 12098 vkDestroySurfaceKHR = PFN_vkDestroySurfaceKHR( vkGetInstanceProcAddr( instance, "vkDestroySurfaceKHR" ) ); 12099 vkGetPhysicalDeviceSurfaceSupportKHR = PFN_vkGetPhysicalDeviceSurfaceSupportKHR( 12100 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceSupportKHR" ) ); 12101 vkGetPhysicalDeviceSurfaceCapabilitiesKHR = PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR( 12102 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR" ) ); 12103 vkGetPhysicalDeviceSurfaceFormatsKHR = PFN_vkGetPhysicalDeviceSurfaceFormatsKHR( 12104 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormatsKHR" ) ); 12105 vkGetPhysicalDeviceSurfacePresentModesKHR = PFN_vkGetPhysicalDeviceSurfacePresentModesKHR( 12106 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModesKHR" ) ); 12107 12108 //=== VK_KHR_swapchain === 12109 vkCreateSwapchainKHR = PFN_vkCreateSwapchainKHR( vkGetInstanceProcAddr( instance, "vkCreateSwapchainKHR" ) ); 12110 vkDestroySwapchainKHR = PFN_vkDestroySwapchainKHR( vkGetInstanceProcAddr( instance, "vkDestroySwapchainKHR" ) ); 12111 vkGetSwapchainImagesKHR = 12112 PFN_vkGetSwapchainImagesKHR( vkGetInstanceProcAddr( instance, "vkGetSwapchainImagesKHR" ) ); 12113 vkAcquireNextImageKHR = PFN_vkAcquireNextImageKHR( vkGetInstanceProcAddr( instance, "vkAcquireNextImageKHR" ) ); 12114 vkQueuePresentKHR = PFN_vkQueuePresentKHR( vkGetInstanceProcAddr( instance, "vkQueuePresentKHR" ) ); 12115 vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR( 12116 vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPresentCapabilitiesKHR" ) ); 12117 vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR( 12118 vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModesKHR" ) ); 12119 vkGetPhysicalDevicePresentRectanglesKHR = PFN_vkGetPhysicalDevicePresentRectanglesKHR( 12120 vkGetInstanceProcAddr( instance, "vkGetPhysicalDevicePresentRectanglesKHR" ) ); 12121 vkAcquireNextImage2KHR = 12122 PFN_vkAcquireNextImage2KHR( vkGetInstanceProcAddr( instance, "vkAcquireNextImage2KHR" ) ); 12123 12124 //=== VK_KHR_display === 12125 vkGetPhysicalDeviceDisplayPropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPropertiesKHR( 12126 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPropertiesKHR" ) ); 12127 vkGetPhysicalDeviceDisplayPlanePropertiesKHR = PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR( 12128 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR" ) ); 12129 vkGetDisplayPlaneSupportedDisplaysKHR = PFN_vkGetDisplayPlaneSupportedDisplaysKHR( 12130 vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneSupportedDisplaysKHR" ) ); 12131 vkGetDisplayModePropertiesKHR = 12132 PFN_vkGetDisplayModePropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModePropertiesKHR" ) ); 12133 vkCreateDisplayModeKHR = 12134 PFN_vkCreateDisplayModeKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayModeKHR" ) ); 12135 vkGetDisplayPlaneCapabilitiesKHR = 12136 PFN_vkGetDisplayPlaneCapabilitiesKHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilitiesKHR" ) ); 12137 vkCreateDisplayPlaneSurfaceKHR = 12138 PFN_vkCreateDisplayPlaneSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateDisplayPlaneSurfaceKHR" ) ); 12139 12140 //=== VK_KHR_display_swapchain === 12141 vkCreateSharedSwapchainsKHR = 12142 PFN_vkCreateSharedSwapchainsKHR( vkGetInstanceProcAddr( instance, "vkCreateSharedSwapchainsKHR" ) ); 12143 12144 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 12145 //=== VK_KHR_xlib_surface === 12146 vkCreateXlibSurfaceKHR = 12147 PFN_vkCreateXlibSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXlibSurfaceKHR" ) ); 12148 vkGetPhysicalDeviceXlibPresentationSupportKHR = PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR( 12149 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXlibPresentationSupportKHR" ) ); 12150 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 12151 12152 #if defined( VK_USE_PLATFORM_XCB_KHR ) 12153 //=== VK_KHR_xcb_surface === 12154 vkCreateXcbSurfaceKHR = PFN_vkCreateXcbSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateXcbSurfaceKHR" ) ); 12155 vkGetPhysicalDeviceXcbPresentationSupportKHR = PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR( 12156 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR" ) ); 12157 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 12158 12159 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 12160 //=== VK_KHR_wayland_surface === 12161 vkCreateWaylandSurfaceKHR = 12162 PFN_vkCreateWaylandSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWaylandSurfaceKHR" ) ); 12163 vkGetPhysicalDeviceWaylandPresentationSupportKHR = PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR( 12164 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWaylandPresentationSupportKHR" ) ); 12165 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 12166 12167 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 12168 //=== VK_KHR_android_surface === 12169 vkCreateAndroidSurfaceKHR = 12170 PFN_vkCreateAndroidSurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateAndroidSurfaceKHR" ) ); 12171 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 12172 12173 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12174 //=== VK_KHR_win32_surface === 12175 vkCreateWin32SurfaceKHR = 12176 PFN_vkCreateWin32SurfaceKHR( vkGetInstanceProcAddr( instance, "vkCreateWin32SurfaceKHR" ) ); 12177 vkGetPhysicalDeviceWin32PresentationSupportKHR = PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR( 12178 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR" ) ); 12179 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12180 12181 //=== VK_EXT_debug_report === 12182 vkCreateDebugReportCallbackEXT = 12183 PFN_vkCreateDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugReportCallbackEXT" ) ); 12184 vkDestroyDebugReportCallbackEXT = 12185 PFN_vkDestroyDebugReportCallbackEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugReportCallbackEXT" ) ); 12186 vkDebugReportMessageEXT = 12187 PFN_vkDebugReportMessageEXT( vkGetInstanceProcAddr( instance, "vkDebugReportMessageEXT" ) ); 12188 12189 //=== VK_EXT_debug_marker === 12190 vkDebugMarkerSetObjectTagEXT = 12191 PFN_vkDebugMarkerSetObjectTagEXT( vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectTagEXT" ) ); 12192 vkDebugMarkerSetObjectNameEXT = 12193 PFN_vkDebugMarkerSetObjectNameEXT( vkGetInstanceProcAddr( instance, "vkDebugMarkerSetObjectNameEXT" ) ); 12194 vkCmdDebugMarkerBeginEXT = 12195 PFN_vkCmdDebugMarkerBeginEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerBeginEXT" ) ); 12196 vkCmdDebugMarkerEndEXT = 12197 PFN_vkCmdDebugMarkerEndEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerEndEXT" ) ); 12198 vkCmdDebugMarkerInsertEXT = 12199 PFN_vkCmdDebugMarkerInsertEXT( vkGetInstanceProcAddr( instance, "vkCmdDebugMarkerInsertEXT" ) ); 12200 12201 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 12202 //=== VK_KHR_video_queue === 12203 vkGetPhysicalDeviceVideoCapabilitiesKHR = PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR( 12204 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceVideoCapabilitiesKHR" ) ); 12205 vkGetPhysicalDeviceVideoFormatPropertiesKHR = PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR( 12206 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceVideoFormatPropertiesKHR" ) ); 12207 vkCreateVideoSessionKHR = 12208 PFN_vkCreateVideoSessionKHR( vkGetInstanceProcAddr( instance, "vkCreateVideoSessionKHR" ) ); 12209 vkDestroyVideoSessionKHR = 12210 PFN_vkDestroyVideoSessionKHR( vkGetInstanceProcAddr( instance, "vkDestroyVideoSessionKHR" ) ); 12211 vkGetVideoSessionMemoryRequirementsKHR = PFN_vkGetVideoSessionMemoryRequirementsKHR( 12212 vkGetInstanceProcAddr( instance, "vkGetVideoSessionMemoryRequirementsKHR" ) ); 12213 vkBindVideoSessionMemoryKHR = 12214 PFN_vkBindVideoSessionMemoryKHR( vkGetInstanceProcAddr( instance, "vkBindVideoSessionMemoryKHR" ) ); 12215 vkCreateVideoSessionParametersKHR = 12216 PFN_vkCreateVideoSessionParametersKHR( vkGetInstanceProcAddr( instance, "vkCreateVideoSessionParametersKHR" ) ); 12217 vkUpdateVideoSessionParametersKHR = 12218 PFN_vkUpdateVideoSessionParametersKHR( vkGetInstanceProcAddr( instance, "vkUpdateVideoSessionParametersKHR" ) ); 12219 vkDestroyVideoSessionParametersKHR = PFN_vkDestroyVideoSessionParametersKHR( 12220 vkGetInstanceProcAddr( instance, "vkDestroyVideoSessionParametersKHR" ) ); 12221 vkCmdBeginVideoCodingKHR = 12222 PFN_vkCmdBeginVideoCodingKHR( vkGetInstanceProcAddr( instance, "vkCmdBeginVideoCodingKHR" ) ); 12223 vkCmdEndVideoCodingKHR = 12224 PFN_vkCmdEndVideoCodingKHR( vkGetInstanceProcAddr( instance, "vkCmdEndVideoCodingKHR" ) ); 12225 vkCmdControlVideoCodingKHR = 12226 PFN_vkCmdControlVideoCodingKHR( vkGetInstanceProcAddr( instance, "vkCmdControlVideoCodingKHR" ) ); 12227 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 12228 12229 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 12230 //=== VK_KHR_video_decode_queue === 12231 vkCmdDecodeVideoKHR = PFN_vkCmdDecodeVideoKHR( vkGetInstanceProcAddr( instance, "vkCmdDecodeVideoKHR" ) ); 12232 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 12233 12234 //=== VK_EXT_transform_feedback === 12235 vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT( 12236 vkGetInstanceProcAddr( instance, "vkCmdBindTransformFeedbackBuffersEXT" ) ); 12237 vkCmdBeginTransformFeedbackEXT = 12238 PFN_vkCmdBeginTransformFeedbackEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginTransformFeedbackEXT" ) ); 12239 vkCmdEndTransformFeedbackEXT = 12240 PFN_vkCmdEndTransformFeedbackEXT( vkGetInstanceProcAddr( instance, "vkCmdEndTransformFeedbackEXT" ) ); 12241 vkCmdBeginQueryIndexedEXT = 12242 PFN_vkCmdBeginQueryIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginQueryIndexedEXT" ) ); 12243 vkCmdEndQueryIndexedEXT = 12244 PFN_vkCmdEndQueryIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdEndQueryIndexedEXT" ) ); 12245 vkCmdDrawIndirectByteCountEXT = 12246 PFN_vkCmdDrawIndirectByteCountEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectByteCountEXT" ) ); 12247 12248 //=== VK_NVX_binary_import === 12249 vkCreateCuModuleNVX = PFN_vkCreateCuModuleNVX( vkGetInstanceProcAddr( instance, "vkCreateCuModuleNVX" ) ); 12250 vkCreateCuFunctionNVX = PFN_vkCreateCuFunctionNVX( vkGetInstanceProcAddr( instance, "vkCreateCuFunctionNVX" ) ); 12251 vkDestroyCuModuleNVX = PFN_vkDestroyCuModuleNVX( vkGetInstanceProcAddr( instance, "vkDestroyCuModuleNVX" ) ); 12252 vkDestroyCuFunctionNVX = 12253 PFN_vkDestroyCuFunctionNVX( vkGetInstanceProcAddr( instance, "vkDestroyCuFunctionNVX" ) ); 12254 vkCmdCuLaunchKernelNVX = 12255 PFN_vkCmdCuLaunchKernelNVX( vkGetInstanceProcAddr( instance, "vkCmdCuLaunchKernelNVX" ) ); 12256 12257 //=== VK_NVX_image_view_handle === 12258 vkGetImageViewHandleNVX = 12259 PFN_vkGetImageViewHandleNVX( vkGetInstanceProcAddr( instance, "vkGetImageViewHandleNVX" ) ); 12260 vkGetImageViewAddressNVX = 12261 PFN_vkGetImageViewAddressNVX( vkGetInstanceProcAddr( instance, "vkGetImageViewAddressNVX" ) ); 12262 12263 //=== VK_AMD_draw_indirect_count === 12264 vkCmdDrawIndirectCountAMD = 12265 PFN_vkCmdDrawIndirectCountAMD( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCountAMD" ) ); 12266 if ( !vkCmdDrawIndirectCount ) 12267 vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD; 12268 vkCmdDrawIndexedIndirectCountAMD = 12269 PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCountAMD" ) ); 12270 if ( !vkCmdDrawIndexedIndirectCount ) 12271 vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD; 12272 12273 //=== VK_AMD_shader_info === 12274 vkGetShaderInfoAMD = PFN_vkGetShaderInfoAMD( vkGetInstanceProcAddr( instance, "vkGetShaderInfoAMD" ) ); 12275 12276 #if defined( VK_USE_PLATFORM_GGP ) 12277 //=== VK_GGP_stream_descriptor_surface === 12278 vkCreateStreamDescriptorSurfaceGGP = PFN_vkCreateStreamDescriptorSurfaceGGP( 12279 vkGetInstanceProcAddr( instance, "vkCreateStreamDescriptorSurfaceGGP" ) ); 12280 #endif /*VK_USE_PLATFORM_GGP*/ 12281 12282 //=== VK_NV_external_memory_capabilities === 12283 vkGetPhysicalDeviceExternalImageFormatPropertiesNV = PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV( 12284 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV" ) ); 12285 12286 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12287 //=== VK_NV_external_memory_win32 === 12288 vkGetMemoryWin32HandleNV = 12289 PFN_vkGetMemoryWin32HandleNV( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandleNV" ) ); 12290 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12291 12292 //=== VK_KHR_get_physical_device_properties2 === 12293 vkGetPhysicalDeviceFeatures2KHR = 12294 PFN_vkGetPhysicalDeviceFeatures2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFeatures2KHR" ) ); 12295 if ( !vkGetPhysicalDeviceFeatures2 ) 12296 vkGetPhysicalDeviceFeatures2 = vkGetPhysicalDeviceFeatures2KHR; 12297 vkGetPhysicalDeviceProperties2KHR = 12298 PFN_vkGetPhysicalDeviceProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceProperties2KHR" ) ); 12299 if ( !vkGetPhysicalDeviceProperties2 ) 12300 vkGetPhysicalDeviceProperties2 = vkGetPhysicalDeviceProperties2KHR; 12301 vkGetPhysicalDeviceFormatProperties2KHR = PFN_vkGetPhysicalDeviceFormatProperties2KHR( 12302 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFormatProperties2KHR" ) ); 12303 if ( !vkGetPhysicalDeviceFormatProperties2 ) 12304 vkGetPhysicalDeviceFormatProperties2 = vkGetPhysicalDeviceFormatProperties2KHR; 12305 vkGetPhysicalDeviceImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceImageFormatProperties2KHR( 12306 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceImageFormatProperties2KHR" ) ); 12307 if ( !vkGetPhysicalDeviceImageFormatProperties2 ) 12308 vkGetPhysicalDeviceImageFormatProperties2 = vkGetPhysicalDeviceImageFormatProperties2KHR; 12309 vkGetPhysicalDeviceQueueFamilyProperties2KHR = PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR( 12310 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties2KHR" ) ); 12311 if ( !vkGetPhysicalDeviceQueueFamilyProperties2 ) 12312 vkGetPhysicalDeviceQueueFamilyProperties2 = vkGetPhysicalDeviceQueueFamilyProperties2KHR; 12313 vkGetPhysicalDeviceMemoryProperties2KHR = PFN_vkGetPhysicalDeviceMemoryProperties2KHR( 12314 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMemoryProperties2KHR" ) ); 12315 if ( !vkGetPhysicalDeviceMemoryProperties2 ) 12316 vkGetPhysicalDeviceMemoryProperties2 = vkGetPhysicalDeviceMemoryProperties2KHR; 12317 vkGetPhysicalDeviceSparseImageFormatProperties2KHR = PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR( 12318 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR" ) ); 12319 if ( !vkGetPhysicalDeviceSparseImageFormatProperties2 ) 12320 vkGetPhysicalDeviceSparseImageFormatProperties2 = vkGetPhysicalDeviceSparseImageFormatProperties2KHR; 12321 12322 //=== VK_KHR_device_group === 12323 vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR( 12324 vkGetInstanceProcAddr( instance, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) ); 12325 if ( !vkGetDeviceGroupPeerMemoryFeatures ) 12326 vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR; 12327 vkCmdSetDeviceMaskKHR = PFN_vkCmdSetDeviceMaskKHR( vkGetInstanceProcAddr( instance, "vkCmdSetDeviceMaskKHR" ) ); 12328 if ( !vkCmdSetDeviceMask ) 12329 vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR; 12330 vkCmdDispatchBaseKHR = PFN_vkCmdDispatchBaseKHR( vkGetInstanceProcAddr( instance, "vkCmdDispatchBaseKHR" ) ); 12331 if ( !vkCmdDispatchBase ) 12332 vkCmdDispatchBase = vkCmdDispatchBaseKHR; 12333 12334 #if defined( VK_USE_PLATFORM_VI_NN ) 12335 //=== VK_NN_vi_surface === 12336 vkCreateViSurfaceNN = PFN_vkCreateViSurfaceNN( vkGetInstanceProcAddr( instance, "vkCreateViSurfaceNN" ) ); 12337 #endif /*VK_USE_PLATFORM_VI_NN*/ 12338 12339 //=== VK_KHR_maintenance1 === 12340 vkTrimCommandPoolKHR = PFN_vkTrimCommandPoolKHR( vkGetInstanceProcAddr( instance, "vkTrimCommandPoolKHR" ) ); 12341 if ( !vkTrimCommandPool ) 12342 vkTrimCommandPool = vkTrimCommandPoolKHR; 12343 12344 //=== VK_KHR_device_group_creation === 12345 vkEnumeratePhysicalDeviceGroupsKHR = PFN_vkEnumeratePhysicalDeviceGroupsKHR( 12346 vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceGroupsKHR" ) ); 12347 if ( !vkEnumeratePhysicalDeviceGroups ) 12348 vkEnumeratePhysicalDeviceGroups = vkEnumeratePhysicalDeviceGroupsKHR; 12349 12350 //=== VK_KHR_external_memory_capabilities === 12351 vkGetPhysicalDeviceExternalBufferPropertiesKHR = PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR( 12352 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalBufferPropertiesKHR" ) ); 12353 if ( !vkGetPhysicalDeviceExternalBufferProperties ) 12354 vkGetPhysicalDeviceExternalBufferProperties = vkGetPhysicalDeviceExternalBufferPropertiesKHR; 12355 12356 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12357 //=== VK_KHR_external_memory_win32 === 12358 vkGetMemoryWin32HandleKHR = 12359 PFN_vkGetMemoryWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandleKHR" ) ); 12360 vkGetMemoryWin32HandlePropertiesKHR = PFN_vkGetMemoryWin32HandlePropertiesKHR( 12361 vkGetInstanceProcAddr( instance, "vkGetMemoryWin32HandlePropertiesKHR" ) ); 12362 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12363 12364 //=== VK_KHR_external_memory_fd === 12365 vkGetMemoryFdKHR = PFN_vkGetMemoryFdKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryFdKHR" ) ); 12366 vkGetMemoryFdPropertiesKHR = 12367 PFN_vkGetMemoryFdPropertiesKHR( vkGetInstanceProcAddr( instance, "vkGetMemoryFdPropertiesKHR" ) ); 12368 12369 //=== VK_KHR_external_semaphore_capabilities === 12370 vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR( 12371 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR" ) ); 12372 if ( !vkGetPhysicalDeviceExternalSemaphoreProperties ) 12373 vkGetPhysicalDeviceExternalSemaphoreProperties = vkGetPhysicalDeviceExternalSemaphorePropertiesKHR; 12374 12375 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12376 //=== VK_KHR_external_semaphore_win32 === 12377 vkImportSemaphoreWin32HandleKHR = 12378 PFN_vkImportSemaphoreWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkImportSemaphoreWin32HandleKHR" ) ); 12379 vkGetSemaphoreWin32HandleKHR = 12380 PFN_vkGetSemaphoreWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreWin32HandleKHR" ) ); 12381 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12382 12383 //=== VK_KHR_external_semaphore_fd === 12384 vkImportSemaphoreFdKHR = 12385 PFN_vkImportSemaphoreFdKHR( vkGetInstanceProcAddr( instance, "vkImportSemaphoreFdKHR" ) ); 12386 vkGetSemaphoreFdKHR = PFN_vkGetSemaphoreFdKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreFdKHR" ) ); 12387 12388 //=== VK_KHR_push_descriptor === 12389 vkCmdPushDescriptorSetKHR = 12390 PFN_vkCmdPushDescriptorSetKHR( vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetKHR" ) ); 12391 vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR( 12392 vkGetInstanceProcAddr( instance, "vkCmdPushDescriptorSetWithTemplateKHR" ) ); 12393 12394 //=== VK_EXT_conditional_rendering === 12395 vkCmdBeginConditionalRenderingEXT = 12396 PFN_vkCmdBeginConditionalRenderingEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginConditionalRenderingEXT" ) ); 12397 vkCmdEndConditionalRenderingEXT = 12398 PFN_vkCmdEndConditionalRenderingEXT( vkGetInstanceProcAddr( instance, "vkCmdEndConditionalRenderingEXT" ) ); 12399 12400 //=== VK_KHR_descriptor_update_template === 12401 vkCreateDescriptorUpdateTemplateKHR = PFN_vkCreateDescriptorUpdateTemplateKHR( 12402 vkGetInstanceProcAddr( instance, "vkCreateDescriptorUpdateTemplateKHR" ) ); 12403 if ( !vkCreateDescriptorUpdateTemplate ) 12404 vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR; 12405 vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR( 12406 vkGetInstanceProcAddr( instance, "vkDestroyDescriptorUpdateTemplateKHR" ) ); 12407 if ( !vkDestroyDescriptorUpdateTemplate ) 12408 vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR; 12409 vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR( 12410 vkGetInstanceProcAddr( instance, "vkUpdateDescriptorSetWithTemplateKHR" ) ); 12411 if ( !vkUpdateDescriptorSetWithTemplate ) 12412 vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR; 12413 12414 //=== VK_NV_clip_space_w_scaling === 12415 vkCmdSetViewportWScalingNV = 12416 PFN_vkCmdSetViewportWScalingNV( vkGetInstanceProcAddr( instance, "vkCmdSetViewportWScalingNV" ) ); 12417 12418 //=== VK_EXT_direct_mode_display === 12419 vkReleaseDisplayEXT = PFN_vkReleaseDisplayEXT( vkGetInstanceProcAddr( instance, "vkReleaseDisplayEXT" ) ); 12420 12421 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 12422 //=== VK_EXT_acquire_xlib_display === 12423 vkAcquireXlibDisplayEXT = 12424 PFN_vkAcquireXlibDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireXlibDisplayEXT" ) ); 12425 vkGetRandROutputDisplayEXT = 12426 PFN_vkGetRandROutputDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetRandROutputDisplayEXT" ) ); 12427 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 12428 12429 //=== VK_EXT_display_surface_counter === 12430 vkGetPhysicalDeviceSurfaceCapabilities2EXT = PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT( 12431 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2EXT" ) ); 12432 12433 //=== VK_EXT_display_control === 12434 vkDisplayPowerControlEXT = 12435 PFN_vkDisplayPowerControlEXT( vkGetInstanceProcAddr( instance, "vkDisplayPowerControlEXT" ) ); 12436 vkRegisterDeviceEventEXT = 12437 PFN_vkRegisterDeviceEventEXT( vkGetInstanceProcAddr( instance, "vkRegisterDeviceEventEXT" ) ); 12438 vkRegisterDisplayEventEXT = 12439 PFN_vkRegisterDisplayEventEXT( vkGetInstanceProcAddr( instance, "vkRegisterDisplayEventEXT" ) ); 12440 vkGetSwapchainCounterEXT = 12441 PFN_vkGetSwapchainCounterEXT( vkGetInstanceProcAddr( instance, "vkGetSwapchainCounterEXT" ) ); 12442 12443 //=== VK_GOOGLE_display_timing === 12444 vkGetRefreshCycleDurationGOOGLE = 12445 PFN_vkGetRefreshCycleDurationGOOGLE( vkGetInstanceProcAddr( instance, "vkGetRefreshCycleDurationGOOGLE" ) ); 12446 vkGetPastPresentationTimingGOOGLE = 12447 PFN_vkGetPastPresentationTimingGOOGLE( vkGetInstanceProcAddr( instance, "vkGetPastPresentationTimingGOOGLE" ) ); 12448 12449 //=== VK_EXT_discard_rectangles === 12450 vkCmdSetDiscardRectangleEXT = 12451 PFN_vkCmdSetDiscardRectangleEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDiscardRectangleEXT" ) ); 12452 12453 //=== VK_EXT_hdr_metadata === 12454 vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetInstanceProcAddr( instance, "vkSetHdrMetadataEXT" ) ); 12455 12456 //=== VK_KHR_create_renderpass2 === 12457 vkCreateRenderPass2KHR = 12458 PFN_vkCreateRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCreateRenderPass2KHR" ) ); 12459 if ( !vkCreateRenderPass2 ) 12460 vkCreateRenderPass2 = vkCreateRenderPass2KHR; 12461 vkCmdBeginRenderPass2KHR = 12462 PFN_vkCmdBeginRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCmdBeginRenderPass2KHR" ) ); 12463 if ( !vkCmdBeginRenderPass2 ) 12464 vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR; 12465 vkCmdNextSubpass2KHR = PFN_vkCmdNextSubpass2KHR( vkGetInstanceProcAddr( instance, "vkCmdNextSubpass2KHR" ) ); 12466 if ( !vkCmdNextSubpass2 ) 12467 vkCmdNextSubpass2 = vkCmdNextSubpass2KHR; 12468 vkCmdEndRenderPass2KHR = 12469 PFN_vkCmdEndRenderPass2KHR( vkGetInstanceProcAddr( instance, "vkCmdEndRenderPass2KHR" ) ); 12470 if ( !vkCmdEndRenderPass2 ) 12471 vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR; 12472 12473 //=== VK_KHR_shared_presentable_image === 12474 vkGetSwapchainStatusKHR = 12475 PFN_vkGetSwapchainStatusKHR( vkGetInstanceProcAddr( instance, "vkGetSwapchainStatusKHR" ) ); 12476 12477 //=== VK_KHR_external_fence_capabilities === 12478 vkGetPhysicalDeviceExternalFencePropertiesKHR = PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR( 12479 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceExternalFencePropertiesKHR" ) ); 12480 if ( !vkGetPhysicalDeviceExternalFenceProperties ) 12481 vkGetPhysicalDeviceExternalFenceProperties = vkGetPhysicalDeviceExternalFencePropertiesKHR; 12482 12483 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12484 //=== VK_KHR_external_fence_win32 === 12485 vkImportFenceWin32HandleKHR = 12486 PFN_vkImportFenceWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkImportFenceWin32HandleKHR" ) ); 12487 vkGetFenceWin32HandleKHR = 12488 PFN_vkGetFenceWin32HandleKHR( vkGetInstanceProcAddr( instance, "vkGetFenceWin32HandleKHR" ) ); 12489 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12490 12491 //=== VK_KHR_external_fence_fd === 12492 vkImportFenceFdKHR = PFN_vkImportFenceFdKHR( vkGetInstanceProcAddr( instance, "vkImportFenceFdKHR" ) ); 12493 vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetInstanceProcAddr( instance, "vkGetFenceFdKHR" ) ); 12494 12495 //=== VK_KHR_performance_query === 12496 vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = 12497 PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR( 12498 vkGetInstanceProcAddr( instance, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR" ) ); 12499 vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = 12500 PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR( 12501 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR" ) ); 12502 vkAcquireProfilingLockKHR = 12503 PFN_vkAcquireProfilingLockKHR( vkGetInstanceProcAddr( instance, "vkAcquireProfilingLockKHR" ) ); 12504 vkReleaseProfilingLockKHR = 12505 PFN_vkReleaseProfilingLockKHR( vkGetInstanceProcAddr( instance, "vkReleaseProfilingLockKHR" ) ); 12506 12507 //=== VK_KHR_get_surface_capabilities2 === 12508 vkGetPhysicalDeviceSurfaceCapabilities2KHR = PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR( 12509 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceCapabilities2KHR" ) ); 12510 vkGetPhysicalDeviceSurfaceFormats2KHR = PFN_vkGetPhysicalDeviceSurfaceFormats2KHR( 12511 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfaceFormats2KHR" ) ); 12512 12513 //=== VK_KHR_get_display_properties2 === 12514 vkGetPhysicalDeviceDisplayProperties2KHR = PFN_vkGetPhysicalDeviceDisplayProperties2KHR( 12515 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayProperties2KHR" ) ); 12516 vkGetPhysicalDeviceDisplayPlaneProperties2KHR = PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR( 12517 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR" ) ); 12518 vkGetDisplayModeProperties2KHR = 12519 PFN_vkGetDisplayModeProperties2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayModeProperties2KHR" ) ); 12520 vkGetDisplayPlaneCapabilities2KHR = 12521 PFN_vkGetDisplayPlaneCapabilities2KHR( vkGetInstanceProcAddr( instance, "vkGetDisplayPlaneCapabilities2KHR" ) ); 12522 12523 #if defined( VK_USE_PLATFORM_IOS_MVK ) 12524 //=== VK_MVK_ios_surface === 12525 vkCreateIOSSurfaceMVK = PFN_vkCreateIOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateIOSSurfaceMVK" ) ); 12526 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 12527 12528 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 12529 //=== VK_MVK_macos_surface === 12530 vkCreateMacOSSurfaceMVK = 12531 PFN_vkCreateMacOSSurfaceMVK( vkGetInstanceProcAddr( instance, "vkCreateMacOSSurfaceMVK" ) ); 12532 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 12533 12534 //=== VK_EXT_debug_utils === 12535 vkSetDebugUtilsObjectNameEXT = 12536 PFN_vkSetDebugUtilsObjectNameEXT( vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectNameEXT" ) ); 12537 vkSetDebugUtilsObjectTagEXT = 12538 PFN_vkSetDebugUtilsObjectTagEXT( vkGetInstanceProcAddr( instance, "vkSetDebugUtilsObjectTagEXT" ) ); 12539 vkQueueBeginDebugUtilsLabelEXT = 12540 PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueBeginDebugUtilsLabelEXT" ) ); 12541 vkQueueEndDebugUtilsLabelEXT = 12542 PFN_vkQueueEndDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueEndDebugUtilsLabelEXT" ) ); 12543 vkQueueInsertDebugUtilsLabelEXT = 12544 PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkQueueInsertDebugUtilsLabelEXT" ) ); 12545 vkCmdBeginDebugUtilsLabelEXT = 12546 PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdBeginDebugUtilsLabelEXT" ) ); 12547 vkCmdEndDebugUtilsLabelEXT = 12548 PFN_vkCmdEndDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdEndDebugUtilsLabelEXT" ) ); 12549 vkCmdInsertDebugUtilsLabelEXT = 12550 PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetInstanceProcAddr( instance, "vkCmdInsertDebugUtilsLabelEXT" ) ); 12551 vkCreateDebugUtilsMessengerEXT = 12552 PFN_vkCreateDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkCreateDebugUtilsMessengerEXT" ) ); 12553 vkDestroyDebugUtilsMessengerEXT = 12554 PFN_vkDestroyDebugUtilsMessengerEXT( vkGetInstanceProcAddr( instance, "vkDestroyDebugUtilsMessengerEXT" ) ); 12555 vkSubmitDebugUtilsMessageEXT = 12556 PFN_vkSubmitDebugUtilsMessageEXT( vkGetInstanceProcAddr( instance, "vkSubmitDebugUtilsMessageEXT" ) ); 12557 12558 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 12559 //=== VK_ANDROID_external_memory_android_hardware_buffer === 12560 vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID( 12561 vkGetInstanceProcAddr( instance, "vkGetAndroidHardwareBufferPropertiesANDROID" ) ); 12562 vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID( 12563 vkGetInstanceProcAddr( instance, "vkGetMemoryAndroidHardwareBufferANDROID" ) ); 12564 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 12565 12566 //=== VK_EXT_sample_locations === 12567 vkCmdSetSampleLocationsEXT = 12568 PFN_vkCmdSetSampleLocationsEXT( vkGetInstanceProcAddr( instance, "vkCmdSetSampleLocationsEXT" ) ); 12569 vkGetPhysicalDeviceMultisamplePropertiesEXT = PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT( 12570 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceMultisamplePropertiesEXT" ) ); 12571 12572 //=== VK_KHR_get_memory_requirements2 === 12573 vkGetImageMemoryRequirements2KHR = 12574 PFN_vkGetImageMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetImageMemoryRequirements2KHR" ) ); 12575 if ( !vkGetImageMemoryRequirements2 ) 12576 vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR; 12577 vkGetBufferMemoryRequirements2KHR = 12578 PFN_vkGetBufferMemoryRequirements2KHR( vkGetInstanceProcAddr( instance, "vkGetBufferMemoryRequirements2KHR" ) ); 12579 if ( !vkGetBufferMemoryRequirements2 ) 12580 vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR; 12581 vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR( 12582 vkGetInstanceProcAddr( instance, "vkGetImageSparseMemoryRequirements2KHR" ) ); 12583 if ( !vkGetImageSparseMemoryRequirements2 ) 12584 vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR; 12585 12586 //=== VK_KHR_acceleration_structure === 12587 vkCreateAccelerationStructureKHR = 12588 PFN_vkCreateAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureKHR" ) ); 12589 vkDestroyAccelerationStructureKHR = 12590 PFN_vkDestroyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureKHR" ) ); 12591 vkCmdBuildAccelerationStructuresKHR = PFN_vkCmdBuildAccelerationStructuresKHR( 12592 vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresKHR" ) ); 12593 vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR( 12594 vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructuresIndirectKHR" ) ); 12595 vkBuildAccelerationStructuresKHR = 12596 PFN_vkBuildAccelerationStructuresKHR( vkGetInstanceProcAddr( instance, "vkBuildAccelerationStructuresKHR" ) ); 12597 vkCopyAccelerationStructureKHR = 12598 PFN_vkCopyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureKHR" ) ); 12599 vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR( 12600 vkGetInstanceProcAddr( instance, "vkCopyAccelerationStructureToMemoryKHR" ) ); 12601 vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR( 12602 vkGetInstanceProcAddr( instance, "vkCopyMemoryToAccelerationStructureKHR" ) ); 12603 vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR( 12604 vkGetInstanceProcAddr( instance, "vkWriteAccelerationStructuresPropertiesKHR" ) ); 12605 vkCmdCopyAccelerationStructureKHR = 12606 PFN_vkCmdCopyAccelerationStructureKHR( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureKHR" ) ); 12607 vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR( 12608 vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureToMemoryKHR" ) ); 12609 vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR( 12610 vkGetInstanceProcAddr( instance, "vkCmdCopyMemoryToAccelerationStructureKHR" ) ); 12611 vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR( 12612 vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureDeviceAddressKHR" ) ); 12613 vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR( 12614 vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) ); 12615 vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR( 12616 vkGetInstanceProcAddr( instance, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) ); 12617 vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR( 12618 vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureBuildSizesKHR" ) ); 12619 12620 //=== VK_KHR_sampler_ycbcr_conversion === 12621 vkCreateSamplerYcbcrConversionKHR = 12622 PFN_vkCreateSamplerYcbcrConversionKHR( vkGetInstanceProcAddr( instance, "vkCreateSamplerYcbcrConversionKHR" ) ); 12623 if ( !vkCreateSamplerYcbcrConversion ) 12624 vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR; 12625 vkDestroySamplerYcbcrConversionKHR = PFN_vkDestroySamplerYcbcrConversionKHR( 12626 vkGetInstanceProcAddr( instance, "vkDestroySamplerYcbcrConversionKHR" ) ); 12627 if ( !vkDestroySamplerYcbcrConversion ) 12628 vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR; 12629 12630 //=== VK_KHR_bind_memory2 === 12631 vkBindBufferMemory2KHR = 12632 PFN_vkBindBufferMemory2KHR( vkGetInstanceProcAddr( instance, "vkBindBufferMemory2KHR" ) ); 12633 if ( !vkBindBufferMemory2 ) 12634 vkBindBufferMemory2 = vkBindBufferMemory2KHR; 12635 vkBindImageMemory2KHR = PFN_vkBindImageMemory2KHR( vkGetInstanceProcAddr( instance, "vkBindImageMemory2KHR" ) ); 12636 if ( !vkBindImageMemory2 ) 12637 vkBindImageMemory2 = vkBindImageMemory2KHR; 12638 12639 //=== VK_EXT_image_drm_format_modifier === 12640 vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT( 12641 vkGetInstanceProcAddr( instance, "vkGetImageDrmFormatModifierPropertiesEXT" ) ); 12642 12643 //=== VK_EXT_validation_cache === 12644 vkCreateValidationCacheEXT = 12645 PFN_vkCreateValidationCacheEXT( vkGetInstanceProcAddr( instance, "vkCreateValidationCacheEXT" ) ); 12646 vkDestroyValidationCacheEXT = 12647 PFN_vkDestroyValidationCacheEXT( vkGetInstanceProcAddr( instance, "vkDestroyValidationCacheEXT" ) ); 12648 vkMergeValidationCachesEXT = 12649 PFN_vkMergeValidationCachesEXT( vkGetInstanceProcAddr( instance, "vkMergeValidationCachesEXT" ) ); 12650 vkGetValidationCacheDataEXT = 12651 PFN_vkGetValidationCacheDataEXT( vkGetInstanceProcAddr( instance, "vkGetValidationCacheDataEXT" ) ); 12652 12653 //=== VK_NV_shading_rate_image === 12654 vkCmdBindShadingRateImageNV = 12655 PFN_vkCmdBindShadingRateImageNV( vkGetInstanceProcAddr( instance, "vkCmdBindShadingRateImageNV" ) ); 12656 vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV( 12657 vkGetInstanceProcAddr( instance, "vkCmdSetViewportShadingRatePaletteNV" ) ); 12658 vkCmdSetCoarseSampleOrderNV = 12659 PFN_vkCmdSetCoarseSampleOrderNV( vkGetInstanceProcAddr( instance, "vkCmdSetCoarseSampleOrderNV" ) ); 12660 12661 //=== VK_NV_ray_tracing === 12662 vkCreateAccelerationStructureNV = 12663 PFN_vkCreateAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCreateAccelerationStructureNV" ) ); 12664 vkDestroyAccelerationStructureNV = 12665 PFN_vkDestroyAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkDestroyAccelerationStructureNV" ) ); 12666 vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV( 12667 vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureMemoryRequirementsNV" ) ); 12668 vkBindAccelerationStructureMemoryNV = PFN_vkBindAccelerationStructureMemoryNV( 12669 vkGetInstanceProcAddr( instance, "vkBindAccelerationStructureMemoryNV" ) ); 12670 vkCmdBuildAccelerationStructureNV = 12671 PFN_vkCmdBuildAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCmdBuildAccelerationStructureNV" ) ); 12672 vkCmdCopyAccelerationStructureNV = 12673 PFN_vkCmdCopyAccelerationStructureNV( vkGetInstanceProcAddr( instance, "vkCmdCopyAccelerationStructureNV" ) ); 12674 vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysNV" ) ); 12675 vkCreateRayTracingPipelinesNV = 12676 PFN_vkCreateRayTracingPipelinesNV( vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesNV" ) ); 12677 vkGetRayTracingShaderGroupHandlesNV = PFN_vkGetRayTracingShaderGroupHandlesNV( 12678 vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesNV" ) ); 12679 if ( !vkGetRayTracingShaderGroupHandlesKHR ) 12680 vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV; 12681 vkGetAccelerationStructureHandleNV = PFN_vkGetAccelerationStructureHandleNV( 12682 vkGetInstanceProcAddr( instance, "vkGetAccelerationStructureHandleNV" ) ); 12683 vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV( 12684 vkGetInstanceProcAddr( instance, "vkCmdWriteAccelerationStructuresPropertiesNV" ) ); 12685 vkCompileDeferredNV = PFN_vkCompileDeferredNV( vkGetInstanceProcAddr( instance, "vkCompileDeferredNV" ) ); 12686 12687 //=== VK_KHR_maintenance3 === 12688 vkGetDescriptorSetLayoutSupportKHR = PFN_vkGetDescriptorSetLayoutSupportKHR( 12689 vkGetInstanceProcAddr( instance, "vkGetDescriptorSetLayoutSupportKHR" ) ); 12690 if ( !vkGetDescriptorSetLayoutSupport ) 12691 vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR; 12692 12693 //=== VK_KHR_draw_indirect_count === 12694 vkCmdDrawIndirectCountKHR = 12695 PFN_vkCmdDrawIndirectCountKHR( vkGetInstanceProcAddr( instance, "vkCmdDrawIndirectCountKHR" ) ); 12696 if ( !vkCmdDrawIndirectCount ) 12697 vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR; 12698 vkCmdDrawIndexedIndirectCountKHR = 12699 PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetInstanceProcAddr( instance, "vkCmdDrawIndexedIndirectCountKHR" ) ); 12700 if ( !vkCmdDrawIndexedIndirectCount ) 12701 vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR; 12702 12703 //=== VK_EXT_external_memory_host === 12704 vkGetMemoryHostPointerPropertiesEXT = PFN_vkGetMemoryHostPointerPropertiesEXT( 12705 vkGetInstanceProcAddr( instance, "vkGetMemoryHostPointerPropertiesEXT" ) ); 12706 12707 //=== VK_AMD_buffer_marker === 12708 vkCmdWriteBufferMarkerAMD = 12709 PFN_vkCmdWriteBufferMarkerAMD( vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarkerAMD" ) ); 12710 12711 //=== VK_EXT_calibrated_timestamps === 12712 vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT( 12713 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT" ) ); 12714 vkGetCalibratedTimestampsEXT = 12715 PFN_vkGetCalibratedTimestampsEXT( vkGetInstanceProcAddr( instance, "vkGetCalibratedTimestampsEXT" ) ); 12716 12717 //=== VK_NV_mesh_shader === 12718 vkCmdDrawMeshTasksNV = PFN_vkCmdDrawMeshTasksNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksNV" ) ); 12719 vkCmdDrawMeshTasksIndirectNV = 12720 PFN_vkCmdDrawMeshTasksIndirectNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectNV" ) ); 12721 vkCmdDrawMeshTasksIndirectCountNV = 12722 PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetInstanceProcAddr( instance, "vkCmdDrawMeshTasksIndirectCountNV" ) ); 12723 12724 //=== VK_NV_scissor_exclusive === 12725 vkCmdSetExclusiveScissorNV = 12726 PFN_vkCmdSetExclusiveScissorNV( vkGetInstanceProcAddr( instance, "vkCmdSetExclusiveScissorNV" ) ); 12727 12728 //=== VK_NV_device_diagnostic_checkpoints === 12729 vkCmdSetCheckpointNV = PFN_vkCmdSetCheckpointNV( vkGetInstanceProcAddr( instance, "vkCmdSetCheckpointNV" ) ); 12730 vkGetQueueCheckpointDataNV = 12731 PFN_vkGetQueueCheckpointDataNV( vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointDataNV" ) ); 12732 12733 //=== VK_KHR_timeline_semaphore === 12734 vkGetSemaphoreCounterValueKHR = 12735 PFN_vkGetSemaphoreCounterValueKHR( vkGetInstanceProcAddr( instance, "vkGetSemaphoreCounterValueKHR" ) ); 12736 if ( !vkGetSemaphoreCounterValue ) 12737 vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR; 12738 vkWaitSemaphoresKHR = PFN_vkWaitSemaphoresKHR( vkGetInstanceProcAddr( instance, "vkWaitSemaphoresKHR" ) ); 12739 if ( !vkWaitSemaphores ) 12740 vkWaitSemaphores = vkWaitSemaphoresKHR; 12741 vkSignalSemaphoreKHR = PFN_vkSignalSemaphoreKHR( vkGetInstanceProcAddr( instance, "vkSignalSemaphoreKHR" ) ); 12742 if ( !vkSignalSemaphore ) 12743 vkSignalSemaphore = vkSignalSemaphoreKHR; 12744 12745 //=== VK_INTEL_performance_query === 12746 vkInitializePerformanceApiINTEL = 12747 PFN_vkInitializePerformanceApiINTEL( vkGetInstanceProcAddr( instance, "vkInitializePerformanceApiINTEL" ) ); 12748 vkUninitializePerformanceApiINTEL = 12749 PFN_vkUninitializePerformanceApiINTEL( vkGetInstanceProcAddr( instance, "vkUninitializePerformanceApiINTEL" ) ); 12750 vkCmdSetPerformanceMarkerINTEL = 12751 PFN_vkCmdSetPerformanceMarkerINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceMarkerINTEL" ) ); 12752 vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL( 12753 vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceStreamMarkerINTEL" ) ); 12754 vkCmdSetPerformanceOverrideINTEL = 12755 PFN_vkCmdSetPerformanceOverrideINTEL( vkGetInstanceProcAddr( instance, "vkCmdSetPerformanceOverrideINTEL" ) ); 12756 vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL( 12757 vkGetInstanceProcAddr( instance, "vkAcquirePerformanceConfigurationINTEL" ) ); 12758 vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL( 12759 vkGetInstanceProcAddr( instance, "vkReleasePerformanceConfigurationINTEL" ) ); 12760 vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL( 12761 vkGetInstanceProcAddr( instance, "vkQueueSetPerformanceConfigurationINTEL" ) ); 12762 vkGetPerformanceParameterINTEL = 12763 PFN_vkGetPerformanceParameterINTEL( vkGetInstanceProcAddr( instance, "vkGetPerformanceParameterINTEL" ) ); 12764 12765 //=== VK_AMD_display_native_hdr === 12766 vkSetLocalDimmingAMD = PFN_vkSetLocalDimmingAMD( vkGetInstanceProcAddr( instance, "vkSetLocalDimmingAMD" ) ); 12767 12768 #if defined( VK_USE_PLATFORM_FUCHSIA ) 12769 //=== VK_FUCHSIA_imagepipe_surface === 12770 vkCreateImagePipeSurfaceFUCHSIA = 12771 PFN_vkCreateImagePipeSurfaceFUCHSIA( vkGetInstanceProcAddr( instance, "vkCreateImagePipeSurfaceFUCHSIA" ) ); 12772 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 12773 12774 #if defined( VK_USE_PLATFORM_METAL_EXT ) 12775 //=== VK_EXT_metal_surface === 12776 vkCreateMetalSurfaceEXT = 12777 PFN_vkCreateMetalSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateMetalSurfaceEXT" ) ); 12778 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 12779 12780 //=== VK_KHR_fragment_shading_rate === 12781 vkGetPhysicalDeviceFragmentShadingRatesKHR = PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR( 12782 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceFragmentShadingRatesKHR" ) ); 12783 vkCmdSetFragmentShadingRateKHR = 12784 PFN_vkCmdSetFragmentShadingRateKHR( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateKHR" ) ); 12785 12786 //=== VK_EXT_buffer_device_address === 12787 vkGetBufferDeviceAddressEXT = 12788 PFN_vkGetBufferDeviceAddressEXT( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddressEXT" ) ); 12789 if ( !vkGetBufferDeviceAddress ) 12790 vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT; 12791 12792 //=== VK_EXT_tooling_info === 12793 vkGetPhysicalDeviceToolPropertiesEXT = PFN_vkGetPhysicalDeviceToolPropertiesEXT( 12794 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceToolPropertiesEXT" ) ); 12795 12796 //=== VK_KHR_present_wait === 12797 vkWaitForPresentKHR = PFN_vkWaitForPresentKHR( vkGetInstanceProcAddr( instance, "vkWaitForPresentKHR" ) ); 12798 12799 //=== VK_NV_cooperative_matrix === 12800 vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV( 12801 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV" ) ); 12802 12803 //=== VK_NV_coverage_reduction_mode === 12804 vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = 12805 PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV( 12806 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV" ) ); 12807 12808 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12809 //=== VK_EXT_full_screen_exclusive === 12810 vkGetPhysicalDeviceSurfacePresentModes2EXT = PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT( 12811 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceSurfacePresentModes2EXT" ) ); 12812 vkAcquireFullScreenExclusiveModeEXT = PFN_vkAcquireFullScreenExclusiveModeEXT( 12813 vkGetInstanceProcAddr( instance, "vkAcquireFullScreenExclusiveModeEXT" ) ); 12814 vkReleaseFullScreenExclusiveModeEXT = PFN_vkReleaseFullScreenExclusiveModeEXT( 12815 vkGetInstanceProcAddr( instance, "vkReleaseFullScreenExclusiveModeEXT" ) ); 12816 vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT( 12817 vkGetInstanceProcAddr( instance, "vkGetDeviceGroupSurfacePresentModes2EXT" ) ); 12818 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12819 12820 //=== VK_EXT_headless_surface === 12821 vkCreateHeadlessSurfaceEXT = 12822 PFN_vkCreateHeadlessSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateHeadlessSurfaceEXT" ) ); 12823 12824 //=== VK_KHR_buffer_device_address === 12825 vkGetBufferDeviceAddressKHR = 12826 PFN_vkGetBufferDeviceAddressKHR( vkGetInstanceProcAddr( instance, "vkGetBufferDeviceAddressKHR" ) ); 12827 if ( !vkGetBufferDeviceAddress ) 12828 vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR; 12829 vkGetBufferOpaqueCaptureAddressKHR = PFN_vkGetBufferOpaqueCaptureAddressKHR( 12830 vkGetInstanceProcAddr( instance, "vkGetBufferOpaqueCaptureAddressKHR" ) ); 12831 if ( !vkGetBufferOpaqueCaptureAddress ) 12832 vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR; 12833 vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR( 12834 vkGetInstanceProcAddr( instance, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) ); 12835 if ( !vkGetDeviceMemoryOpaqueCaptureAddress ) 12836 vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR; 12837 12838 //=== VK_EXT_line_rasterization === 12839 vkCmdSetLineStippleEXT = 12840 PFN_vkCmdSetLineStippleEXT( vkGetInstanceProcAddr( instance, "vkCmdSetLineStippleEXT" ) ); 12841 12842 //=== VK_EXT_host_query_reset === 12843 vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetInstanceProcAddr( instance, "vkResetQueryPoolEXT" ) ); 12844 if ( !vkResetQueryPool ) 12845 vkResetQueryPool = vkResetQueryPoolEXT; 12846 12847 //=== VK_EXT_extended_dynamic_state === 12848 vkCmdSetCullModeEXT = PFN_vkCmdSetCullModeEXT( vkGetInstanceProcAddr( instance, "vkCmdSetCullModeEXT" ) ); 12849 vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetInstanceProcAddr( instance, "vkCmdSetFrontFaceEXT" ) ); 12850 vkCmdSetPrimitiveTopologyEXT = 12851 PFN_vkCmdSetPrimitiveTopologyEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveTopologyEXT" ) ); 12852 vkCmdSetViewportWithCountEXT = 12853 PFN_vkCmdSetViewportWithCountEXT( vkGetInstanceProcAddr( instance, "vkCmdSetViewportWithCountEXT" ) ); 12854 vkCmdSetScissorWithCountEXT = 12855 PFN_vkCmdSetScissorWithCountEXT( vkGetInstanceProcAddr( instance, "vkCmdSetScissorWithCountEXT" ) ); 12856 vkCmdBindVertexBuffers2EXT = 12857 PFN_vkCmdBindVertexBuffers2EXT( vkGetInstanceProcAddr( instance, "vkCmdBindVertexBuffers2EXT" ) ); 12858 vkCmdSetDepthTestEnableEXT = 12859 PFN_vkCmdSetDepthTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthTestEnableEXT" ) ); 12860 vkCmdSetDepthWriteEnableEXT = 12861 PFN_vkCmdSetDepthWriteEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthWriteEnableEXT" ) ); 12862 vkCmdSetDepthCompareOpEXT = 12863 PFN_vkCmdSetDepthCompareOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthCompareOpEXT" ) ); 12864 vkCmdSetDepthBoundsTestEnableEXT = 12865 PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBoundsTestEnableEXT" ) ); 12866 vkCmdSetStencilTestEnableEXT = 12867 PFN_vkCmdSetStencilTestEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetStencilTestEnableEXT" ) ); 12868 vkCmdSetStencilOpEXT = PFN_vkCmdSetStencilOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetStencilOpEXT" ) ); 12869 12870 //=== VK_KHR_deferred_host_operations === 12871 vkCreateDeferredOperationKHR = 12872 PFN_vkCreateDeferredOperationKHR( vkGetInstanceProcAddr( instance, "vkCreateDeferredOperationKHR" ) ); 12873 vkDestroyDeferredOperationKHR = 12874 PFN_vkDestroyDeferredOperationKHR( vkGetInstanceProcAddr( instance, "vkDestroyDeferredOperationKHR" ) ); 12875 vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR( 12876 vkGetInstanceProcAddr( instance, "vkGetDeferredOperationMaxConcurrencyKHR" ) ); 12877 vkGetDeferredOperationResultKHR = 12878 PFN_vkGetDeferredOperationResultKHR( vkGetInstanceProcAddr( instance, "vkGetDeferredOperationResultKHR" ) ); 12879 vkDeferredOperationJoinKHR = 12880 PFN_vkDeferredOperationJoinKHR( vkGetInstanceProcAddr( instance, "vkDeferredOperationJoinKHR" ) ); 12881 12882 //=== VK_KHR_pipeline_executable_properties === 12883 vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR( 12884 vkGetInstanceProcAddr( instance, "vkGetPipelineExecutablePropertiesKHR" ) ); 12885 vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR( 12886 vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableStatisticsKHR" ) ); 12887 vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR( 12888 vkGetInstanceProcAddr( instance, "vkGetPipelineExecutableInternalRepresentationsKHR" ) ); 12889 12890 //=== VK_NV_device_generated_commands === 12891 vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV( 12892 vkGetInstanceProcAddr( instance, "vkGetGeneratedCommandsMemoryRequirementsNV" ) ); 12893 vkCmdPreprocessGeneratedCommandsNV = PFN_vkCmdPreprocessGeneratedCommandsNV( 12894 vkGetInstanceProcAddr( instance, "vkCmdPreprocessGeneratedCommandsNV" ) ); 12895 vkCmdExecuteGeneratedCommandsNV = 12896 PFN_vkCmdExecuteGeneratedCommandsNV( vkGetInstanceProcAddr( instance, "vkCmdExecuteGeneratedCommandsNV" ) ); 12897 vkCmdBindPipelineShaderGroupNV = 12898 PFN_vkCmdBindPipelineShaderGroupNV( vkGetInstanceProcAddr( instance, "vkCmdBindPipelineShaderGroupNV" ) ); 12899 vkCreateIndirectCommandsLayoutNV = 12900 PFN_vkCreateIndirectCommandsLayoutNV( vkGetInstanceProcAddr( instance, "vkCreateIndirectCommandsLayoutNV" ) ); 12901 vkDestroyIndirectCommandsLayoutNV = 12902 PFN_vkDestroyIndirectCommandsLayoutNV( vkGetInstanceProcAddr( instance, "vkDestroyIndirectCommandsLayoutNV" ) ); 12903 12904 //=== VK_EXT_acquire_drm_display === 12905 vkAcquireDrmDisplayEXT = 12906 PFN_vkAcquireDrmDisplayEXT( vkGetInstanceProcAddr( instance, "vkAcquireDrmDisplayEXT" ) ); 12907 vkGetDrmDisplayEXT = PFN_vkGetDrmDisplayEXT( vkGetInstanceProcAddr( instance, "vkGetDrmDisplayEXT" ) ); 12908 12909 //=== VK_EXT_private_data === 12910 vkCreatePrivateDataSlotEXT = 12911 PFN_vkCreatePrivateDataSlotEXT( vkGetInstanceProcAddr( instance, "vkCreatePrivateDataSlotEXT" ) ); 12912 vkDestroyPrivateDataSlotEXT = 12913 PFN_vkDestroyPrivateDataSlotEXT( vkGetInstanceProcAddr( instance, "vkDestroyPrivateDataSlotEXT" ) ); 12914 vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetInstanceProcAddr( instance, "vkSetPrivateDataEXT" ) ); 12915 vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetInstanceProcAddr( instance, "vkGetPrivateDataEXT" ) ); 12916 12917 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 12918 //=== VK_KHR_video_encode_queue === 12919 vkCmdEncodeVideoKHR = PFN_vkCmdEncodeVideoKHR( vkGetInstanceProcAddr( instance, "vkCmdEncodeVideoKHR" ) ); 12920 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 12921 12922 //=== VK_KHR_synchronization2 === 12923 vkCmdSetEvent2KHR = PFN_vkCmdSetEvent2KHR( vkGetInstanceProcAddr( instance, "vkCmdSetEvent2KHR" ) ); 12924 vkCmdResetEvent2KHR = PFN_vkCmdResetEvent2KHR( vkGetInstanceProcAddr( instance, "vkCmdResetEvent2KHR" ) ); 12925 vkCmdWaitEvents2KHR = PFN_vkCmdWaitEvents2KHR( vkGetInstanceProcAddr( instance, "vkCmdWaitEvents2KHR" ) ); 12926 vkCmdPipelineBarrier2KHR = 12927 PFN_vkCmdPipelineBarrier2KHR( vkGetInstanceProcAddr( instance, "vkCmdPipelineBarrier2KHR" ) ); 12928 vkCmdWriteTimestamp2KHR = 12929 PFN_vkCmdWriteTimestamp2KHR( vkGetInstanceProcAddr( instance, "vkCmdWriteTimestamp2KHR" ) ); 12930 vkQueueSubmit2KHR = PFN_vkQueueSubmit2KHR( vkGetInstanceProcAddr( instance, "vkQueueSubmit2KHR" ) ); 12931 vkCmdWriteBufferMarker2AMD = 12932 PFN_vkCmdWriteBufferMarker2AMD( vkGetInstanceProcAddr( instance, "vkCmdWriteBufferMarker2AMD" ) ); 12933 vkGetQueueCheckpointData2NV = 12934 PFN_vkGetQueueCheckpointData2NV( vkGetInstanceProcAddr( instance, "vkGetQueueCheckpointData2NV" ) ); 12935 12936 //=== VK_NV_fragment_shading_rate_enums === 12937 vkCmdSetFragmentShadingRateEnumNV = 12938 PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetInstanceProcAddr( instance, "vkCmdSetFragmentShadingRateEnumNV" ) ); 12939 12940 //=== VK_KHR_copy_commands2 === 12941 vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyBuffer2KHR" ) ); 12942 vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyImage2KHR" ) ); 12943 vkCmdCopyBufferToImage2KHR = 12944 PFN_vkCmdCopyBufferToImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyBufferToImage2KHR" ) ); 12945 vkCmdCopyImageToBuffer2KHR = 12946 PFN_vkCmdCopyImageToBuffer2KHR( vkGetInstanceProcAddr( instance, "vkCmdCopyImageToBuffer2KHR" ) ); 12947 vkCmdBlitImage2KHR = PFN_vkCmdBlitImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdBlitImage2KHR" ) ); 12948 vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2KHR( vkGetInstanceProcAddr( instance, "vkCmdResolveImage2KHR" ) ); 12949 12950 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 12951 //=== VK_NV_acquire_winrt_display === 12952 vkAcquireWinrtDisplayNV = 12953 PFN_vkAcquireWinrtDisplayNV( vkGetInstanceProcAddr( instance, "vkAcquireWinrtDisplayNV" ) ); 12954 vkGetWinrtDisplayNV = PFN_vkGetWinrtDisplayNV( vkGetInstanceProcAddr( instance, "vkGetWinrtDisplayNV" ) ); 12955 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 12956 12957 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 12958 //=== VK_EXT_directfb_surface === 12959 vkCreateDirectFBSurfaceEXT = 12960 PFN_vkCreateDirectFBSurfaceEXT( vkGetInstanceProcAddr( instance, "vkCreateDirectFBSurfaceEXT" ) ); 12961 vkGetPhysicalDeviceDirectFBPresentationSupportEXT = PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT( 12962 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT" ) ); 12963 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 12964 12965 //=== VK_KHR_ray_tracing_pipeline === 12966 vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysKHR" ) ); 12967 vkCreateRayTracingPipelinesKHR = 12968 PFN_vkCreateRayTracingPipelinesKHR( vkGetInstanceProcAddr( instance, "vkCreateRayTracingPipelinesKHR" ) ); 12969 vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR( 12970 vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupHandlesKHR" ) ); 12971 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( 12972 vkGetInstanceProcAddr( instance, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) ); 12973 vkCmdTraceRaysIndirectKHR = 12974 PFN_vkCmdTraceRaysIndirectKHR( vkGetInstanceProcAddr( instance, "vkCmdTraceRaysIndirectKHR" ) ); 12975 vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR( 12976 vkGetInstanceProcAddr( instance, "vkGetRayTracingShaderGroupStackSizeKHR" ) ); 12977 vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR( 12978 vkGetInstanceProcAddr( instance, "vkCmdSetRayTracingPipelineStackSizeKHR" ) ); 12979 12980 //=== VK_EXT_vertex_input_dynamic_state === 12981 vkCmdSetVertexInputEXT = 12982 PFN_vkCmdSetVertexInputEXT( vkGetInstanceProcAddr( instance, "vkCmdSetVertexInputEXT" ) ); 12983 12984 #if defined( VK_USE_PLATFORM_FUCHSIA ) 12985 //=== VK_FUCHSIA_external_memory === 12986 vkGetMemoryZirconHandleFUCHSIA = 12987 PFN_vkGetMemoryZirconHandleFUCHSIA( vkGetInstanceProcAddr( instance, "vkGetMemoryZirconHandleFUCHSIA" ) ); 12988 vkGetMemoryZirconHandlePropertiesFUCHSIA = PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA( 12989 vkGetInstanceProcAddr( instance, "vkGetMemoryZirconHandlePropertiesFUCHSIA" ) ); 12990 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 12991 12992 #if defined( VK_USE_PLATFORM_FUCHSIA ) 12993 //=== VK_FUCHSIA_external_semaphore === 12994 vkImportSemaphoreZirconHandleFUCHSIA = PFN_vkImportSemaphoreZirconHandleFUCHSIA( 12995 vkGetInstanceProcAddr( instance, "vkImportSemaphoreZirconHandleFUCHSIA" ) ); 12996 vkGetSemaphoreZirconHandleFUCHSIA = 12997 PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetInstanceProcAddr( instance, "vkGetSemaphoreZirconHandleFUCHSIA" ) ); 12998 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 12999 13000 #if defined( VK_USE_PLATFORM_FUCHSIA ) 13001 //=== VK_FUCHSIA_buffer_collection === 13002 vkCreateBufferCollectionFUCHSIA = 13003 PFN_vkCreateBufferCollectionFUCHSIA( vkGetInstanceProcAddr( instance, "vkCreateBufferCollectionFUCHSIA" ) ); 13004 vkSetBufferCollectionImageConstraintsFUCHSIA = PFN_vkSetBufferCollectionImageConstraintsFUCHSIA( 13005 vkGetInstanceProcAddr( instance, "vkSetBufferCollectionImageConstraintsFUCHSIA" ) ); 13006 vkSetBufferCollectionBufferConstraintsFUCHSIA = PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA( 13007 vkGetInstanceProcAddr( instance, "vkSetBufferCollectionBufferConstraintsFUCHSIA" ) ); 13008 vkDestroyBufferCollectionFUCHSIA = 13009 PFN_vkDestroyBufferCollectionFUCHSIA( vkGetInstanceProcAddr( instance, "vkDestroyBufferCollectionFUCHSIA" ) ); 13010 vkGetBufferCollectionPropertiesFUCHSIA = PFN_vkGetBufferCollectionPropertiesFUCHSIA( 13011 vkGetInstanceProcAddr( instance, "vkGetBufferCollectionPropertiesFUCHSIA" ) ); 13012 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 13013 13014 //=== VK_HUAWEI_subpass_shading === 13015 vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( 13016 vkGetInstanceProcAddr( instance, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ) ); 13017 vkCmdSubpassShadingHUAWEI = 13018 PFN_vkCmdSubpassShadingHUAWEI( vkGetInstanceProcAddr( instance, "vkCmdSubpassShadingHUAWEI" ) ); 13019 13020 //=== VK_HUAWEI_invocation_mask === 13021 vkCmdBindInvocationMaskHUAWEI = 13022 PFN_vkCmdBindInvocationMaskHUAWEI( vkGetInstanceProcAddr( instance, "vkCmdBindInvocationMaskHUAWEI" ) ); 13023 13024 //=== VK_NV_external_memory_rdma === 13025 vkGetMemoryRemoteAddressNV = 13026 PFN_vkGetMemoryRemoteAddressNV( vkGetInstanceProcAddr( instance, "vkGetMemoryRemoteAddressNV" ) ); 13027 13028 //=== VK_EXT_extended_dynamic_state2 === 13029 vkCmdSetPatchControlPointsEXT = 13030 PFN_vkCmdSetPatchControlPointsEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPatchControlPointsEXT" ) ); 13031 vkCmdSetRasterizerDiscardEnableEXT = PFN_vkCmdSetRasterizerDiscardEnableEXT( 13032 vkGetInstanceProcAddr( instance, "vkCmdSetRasterizerDiscardEnableEXT" ) ); 13033 vkCmdSetDepthBiasEnableEXT = 13034 PFN_vkCmdSetDepthBiasEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetDepthBiasEnableEXT" ) ); 13035 vkCmdSetLogicOpEXT = PFN_vkCmdSetLogicOpEXT( vkGetInstanceProcAddr( instance, "vkCmdSetLogicOpEXT" ) ); 13036 vkCmdSetPrimitiveRestartEnableEXT = 13037 PFN_vkCmdSetPrimitiveRestartEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetPrimitiveRestartEnableEXT" ) ); 13038 13039 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 13040 //=== VK_QNX_screen_surface === 13041 vkCreateScreenSurfaceQNX = 13042 PFN_vkCreateScreenSurfaceQNX( vkGetInstanceProcAddr( instance, "vkCreateScreenSurfaceQNX" ) ); 13043 vkGetPhysicalDeviceScreenPresentationSupportQNX = PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX( 13044 vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceScreenPresentationSupportQNX" ) ); 13045 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 13046 13047 //=== VK_EXT_color_write_enable === 13048 vkCmdSetColorWriteEnableEXT = 13049 PFN_vkCmdSetColorWriteEnableEXT( vkGetInstanceProcAddr( instance, "vkCmdSetColorWriteEnableEXT" ) ); 13050 13051 //=== VK_EXT_multi_draw === 13052 vkCmdDrawMultiEXT = PFN_vkCmdDrawMultiEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawMultiEXT" ) ); 13053 vkCmdDrawMultiIndexedEXT = 13054 PFN_vkCmdDrawMultiIndexedEXT( vkGetInstanceProcAddr( instance, "vkCmdDrawMultiIndexedEXT" ) ); 13055 13056 //=== VK_EXT_pageable_device_local_memory === 13057 vkSetDeviceMemoryPriorityEXT = 13058 PFN_vkSetDeviceMemoryPriorityEXT( vkGetInstanceProcAddr( instance, "vkSetDeviceMemoryPriorityEXT" ) ); 13059 13060 //=== VK_KHR_maintenance4 === 13061 vkGetDeviceBufferMemoryRequirementsKHR = PFN_vkGetDeviceBufferMemoryRequirementsKHR( 13062 vkGetInstanceProcAddr( instance, "vkGetDeviceBufferMemoryRequirementsKHR" ) ); 13063 vkGetDeviceImageMemoryRequirementsKHR = PFN_vkGetDeviceImageMemoryRequirementsKHR( 13064 vkGetInstanceProcAddr( instance, "vkGetDeviceImageMemoryRequirementsKHR" ) ); 13065 vkGetDeviceImageSparseMemoryRequirementsKHR = PFN_vkGetDeviceImageSparseMemoryRequirementsKHR( 13066 vkGetInstanceProcAddr( instance, "vkGetDeviceImageSparseMemoryRequirementsKHR" ) ); 13067 } 13068 init(VULKAN_HPP_NAMESPACE::Device deviceCpp)13069 void init( VULKAN_HPP_NAMESPACE::Device deviceCpp ) VULKAN_HPP_NOEXCEPT 13070 { 13071 VkDevice device = static_cast<VkDevice>( deviceCpp ); 13072 13073 //=== VK_VERSION_1_0 === 13074 vkGetDeviceProcAddr = PFN_vkGetDeviceProcAddr( vkGetDeviceProcAddr( device, "vkGetDeviceProcAddr" ) ); 13075 vkDestroyDevice = PFN_vkDestroyDevice( vkGetDeviceProcAddr( device, "vkDestroyDevice" ) ); 13076 vkGetDeviceQueue = PFN_vkGetDeviceQueue( vkGetDeviceProcAddr( device, "vkGetDeviceQueue" ) ); 13077 vkQueueSubmit = PFN_vkQueueSubmit( vkGetDeviceProcAddr( device, "vkQueueSubmit" ) ); 13078 vkQueueWaitIdle = PFN_vkQueueWaitIdle( vkGetDeviceProcAddr( device, "vkQueueWaitIdle" ) ); 13079 vkDeviceWaitIdle = PFN_vkDeviceWaitIdle( vkGetDeviceProcAddr( device, "vkDeviceWaitIdle" ) ); 13080 vkAllocateMemory = PFN_vkAllocateMemory( vkGetDeviceProcAddr( device, "vkAllocateMemory" ) ); 13081 vkFreeMemory = PFN_vkFreeMemory( vkGetDeviceProcAddr( device, "vkFreeMemory" ) ); 13082 vkMapMemory = PFN_vkMapMemory( vkGetDeviceProcAddr( device, "vkMapMemory" ) ); 13083 vkUnmapMemory = PFN_vkUnmapMemory( vkGetDeviceProcAddr( device, "vkUnmapMemory" ) ); 13084 vkFlushMappedMemoryRanges = 13085 PFN_vkFlushMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkFlushMappedMemoryRanges" ) ); 13086 vkInvalidateMappedMemoryRanges = 13087 PFN_vkInvalidateMappedMemoryRanges( vkGetDeviceProcAddr( device, "vkInvalidateMappedMemoryRanges" ) ); 13088 vkGetDeviceMemoryCommitment = 13089 PFN_vkGetDeviceMemoryCommitment( vkGetDeviceProcAddr( device, "vkGetDeviceMemoryCommitment" ) ); 13090 vkBindBufferMemory = PFN_vkBindBufferMemory( vkGetDeviceProcAddr( device, "vkBindBufferMemory" ) ); 13091 vkBindImageMemory = PFN_vkBindImageMemory( vkGetDeviceProcAddr( device, "vkBindImageMemory" ) ); 13092 vkGetBufferMemoryRequirements = 13093 PFN_vkGetBufferMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements" ) ); 13094 vkGetImageMemoryRequirements = 13095 PFN_vkGetImageMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements" ) ); 13096 vkGetImageSparseMemoryRequirements = 13097 PFN_vkGetImageSparseMemoryRequirements( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements" ) ); 13098 vkQueueBindSparse = PFN_vkQueueBindSparse( vkGetDeviceProcAddr( device, "vkQueueBindSparse" ) ); 13099 vkCreateFence = PFN_vkCreateFence( vkGetDeviceProcAddr( device, "vkCreateFence" ) ); 13100 vkDestroyFence = PFN_vkDestroyFence( vkGetDeviceProcAddr( device, "vkDestroyFence" ) ); 13101 vkResetFences = PFN_vkResetFences( vkGetDeviceProcAddr( device, "vkResetFences" ) ); 13102 vkGetFenceStatus = PFN_vkGetFenceStatus( vkGetDeviceProcAddr( device, "vkGetFenceStatus" ) ); 13103 vkWaitForFences = PFN_vkWaitForFences( vkGetDeviceProcAddr( device, "vkWaitForFences" ) ); 13104 vkCreateSemaphore = PFN_vkCreateSemaphore( vkGetDeviceProcAddr( device, "vkCreateSemaphore" ) ); 13105 vkDestroySemaphore = PFN_vkDestroySemaphore( vkGetDeviceProcAddr( device, "vkDestroySemaphore" ) ); 13106 vkCreateEvent = PFN_vkCreateEvent( vkGetDeviceProcAddr( device, "vkCreateEvent" ) ); 13107 vkDestroyEvent = PFN_vkDestroyEvent( vkGetDeviceProcAddr( device, "vkDestroyEvent" ) ); 13108 vkGetEventStatus = PFN_vkGetEventStatus( vkGetDeviceProcAddr( device, "vkGetEventStatus" ) ); 13109 vkSetEvent = PFN_vkSetEvent( vkGetDeviceProcAddr( device, "vkSetEvent" ) ); 13110 vkResetEvent = PFN_vkResetEvent( vkGetDeviceProcAddr( device, "vkResetEvent" ) ); 13111 vkCreateQueryPool = PFN_vkCreateQueryPool( vkGetDeviceProcAddr( device, "vkCreateQueryPool" ) ); 13112 vkDestroyQueryPool = PFN_vkDestroyQueryPool( vkGetDeviceProcAddr( device, "vkDestroyQueryPool" ) ); 13113 vkGetQueryPoolResults = PFN_vkGetQueryPoolResults( vkGetDeviceProcAddr( device, "vkGetQueryPoolResults" ) ); 13114 vkCreateBuffer = PFN_vkCreateBuffer( vkGetDeviceProcAddr( device, "vkCreateBuffer" ) ); 13115 vkDestroyBuffer = PFN_vkDestroyBuffer( vkGetDeviceProcAddr( device, "vkDestroyBuffer" ) ); 13116 vkCreateBufferView = PFN_vkCreateBufferView( vkGetDeviceProcAddr( device, "vkCreateBufferView" ) ); 13117 vkDestroyBufferView = PFN_vkDestroyBufferView( vkGetDeviceProcAddr( device, "vkDestroyBufferView" ) ); 13118 vkCreateImage = PFN_vkCreateImage( vkGetDeviceProcAddr( device, "vkCreateImage" ) ); 13119 vkDestroyImage = PFN_vkDestroyImage( vkGetDeviceProcAddr( device, "vkDestroyImage" ) ); 13120 vkGetImageSubresourceLayout = 13121 PFN_vkGetImageSubresourceLayout( vkGetDeviceProcAddr( device, "vkGetImageSubresourceLayout" ) ); 13122 vkCreateImageView = PFN_vkCreateImageView( vkGetDeviceProcAddr( device, "vkCreateImageView" ) ); 13123 vkDestroyImageView = PFN_vkDestroyImageView( vkGetDeviceProcAddr( device, "vkDestroyImageView" ) ); 13124 vkCreateShaderModule = PFN_vkCreateShaderModule( vkGetDeviceProcAddr( device, "vkCreateShaderModule" ) ); 13125 vkDestroyShaderModule = PFN_vkDestroyShaderModule( vkGetDeviceProcAddr( device, "vkDestroyShaderModule" ) ); 13126 vkCreatePipelineCache = PFN_vkCreatePipelineCache( vkGetDeviceProcAddr( device, "vkCreatePipelineCache" ) ); 13127 vkDestroyPipelineCache = PFN_vkDestroyPipelineCache( vkGetDeviceProcAddr( device, "vkDestroyPipelineCache" ) ); 13128 vkGetPipelineCacheData = PFN_vkGetPipelineCacheData( vkGetDeviceProcAddr( device, "vkGetPipelineCacheData" ) ); 13129 vkMergePipelineCaches = PFN_vkMergePipelineCaches( vkGetDeviceProcAddr( device, "vkMergePipelineCaches" ) ); 13130 vkCreateGraphicsPipelines = 13131 PFN_vkCreateGraphicsPipelines( vkGetDeviceProcAddr( device, "vkCreateGraphicsPipelines" ) ); 13132 vkCreateComputePipelines = 13133 PFN_vkCreateComputePipelines( vkGetDeviceProcAddr( device, "vkCreateComputePipelines" ) ); 13134 vkDestroyPipeline = PFN_vkDestroyPipeline( vkGetDeviceProcAddr( device, "vkDestroyPipeline" ) ); 13135 vkCreatePipelineLayout = PFN_vkCreatePipelineLayout( vkGetDeviceProcAddr( device, "vkCreatePipelineLayout" ) ); 13136 vkDestroyPipelineLayout = PFN_vkDestroyPipelineLayout( vkGetDeviceProcAddr( device, "vkDestroyPipelineLayout" ) ); 13137 vkCreateSampler = PFN_vkCreateSampler( vkGetDeviceProcAddr( device, "vkCreateSampler" ) ); 13138 vkDestroySampler = PFN_vkDestroySampler( vkGetDeviceProcAddr( device, "vkDestroySampler" ) ); 13139 vkCreateDescriptorSetLayout = 13140 PFN_vkCreateDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkCreateDescriptorSetLayout" ) ); 13141 vkDestroyDescriptorSetLayout = 13142 PFN_vkDestroyDescriptorSetLayout( vkGetDeviceProcAddr( device, "vkDestroyDescriptorSetLayout" ) ); 13143 vkCreateDescriptorPool = PFN_vkCreateDescriptorPool( vkGetDeviceProcAddr( device, "vkCreateDescriptorPool" ) ); 13144 vkDestroyDescriptorPool = PFN_vkDestroyDescriptorPool( vkGetDeviceProcAddr( device, "vkDestroyDescriptorPool" ) ); 13145 vkResetDescriptorPool = PFN_vkResetDescriptorPool( vkGetDeviceProcAddr( device, "vkResetDescriptorPool" ) ); 13146 vkAllocateDescriptorSets = 13147 PFN_vkAllocateDescriptorSets( vkGetDeviceProcAddr( device, "vkAllocateDescriptorSets" ) ); 13148 vkFreeDescriptorSets = PFN_vkFreeDescriptorSets( vkGetDeviceProcAddr( device, "vkFreeDescriptorSets" ) ); 13149 vkUpdateDescriptorSets = PFN_vkUpdateDescriptorSets( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSets" ) ); 13150 vkCreateFramebuffer = PFN_vkCreateFramebuffer( vkGetDeviceProcAddr( device, "vkCreateFramebuffer" ) ); 13151 vkDestroyFramebuffer = PFN_vkDestroyFramebuffer( vkGetDeviceProcAddr( device, "vkDestroyFramebuffer" ) ); 13152 vkCreateRenderPass = PFN_vkCreateRenderPass( vkGetDeviceProcAddr( device, "vkCreateRenderPass" ) ); 13153 vkDestroyRenderPass = PFN_vkDestroyRenderPass( vkGetDeviceProcAddr( device, "vkDestroyRenderPass" ) ); 13154 vkGetRenderAreaGranularity = 13155 PFN_vkGetRenderAreaGranularity( vkGetDeviceProcAddr( device, "vkGetRenderAreaGranularity" ) ); 13156 vkCreateCommandPool = PFN_vkCreateCommandPool( vkGetDeviceProcAddr( device, "vkCreateCommandPool" ) ); 13157 vkDestroyCommandPool = PFN_vkDestroyCommandPool( vkGetDeviceProcAddr( device, "vkDestroyCommandPool" ) ); 13158 vkResetCommandPool = PFN_vkResetCommandPool( vkGetDeviceProcAddr( device, "vkResetCommandPool" ) ); 13159 vkAllocateCommandBuffers = 13160 PFN_vkAllocateCommandBuffers( vkGetDeviceProcAddr( device, "vkAllocateCommandBuffers" ) ); 13161 vkFreeCommandBuffers = PFN_vkFreeCommandBuffers( vkGetDeviceProcAddr( device, "vkFreeCommandBuffers" ) ); 13162 vkBeginCommandBuffer = PFN_vkBeginCommandBuffer( vkGetDeviceProcAddr( device, "vkBeginCommandBuffer" ) ); 13163 vkEndCommandBuffer = PFN_vkEndCommandBuffer( vkGetDeviceProcAddr( device, "vkEndCommandBuffer" ) ); 13164 vkResetCommandBuffer = PFN_vkResetCommandBuffer( vkGetDeviceProcAddr( device, "vkResetCommandBuffer" ) ); 13165 vkCmdBindPipeline = PFN_vkCmdBindPipeline( vkGetDeviceProcAddr( device, "vkCmdBindPipeline" ) ); 13166 vkCmdSetViewport = PFN_vkCmdSetViewport( vkGetDeviceProcAddr( device, "vkCmdSetViewport" ) ); 13167 vkCmdSetScissor = PFN_vkCmdSetScissor( vkGetDeviceProcAddr( device, "vkCmdSetScissor" ) ); 13168 vkCmdSetLineWidth = PFN_vkCmdSetLineWidth( vkGetDeviceProcAddr( device, "vkCmdSetLineWidth" ) ); 13169 vkCmdSetDepthBias = PFN_vkCmdSetDepthBias( vkGetDeviceProcAddr( device, "vkCmdSetDepthBias" ) ); 13170 vkCmdSetBlendConstants = PFN_vkCmdSetBlendConstants( vkGetDeviceProcAddr( device, "vkCmdSetBlendConstants" ) ); 13171 vkCmdSetDepthBounds = PFN_vkCmdSetDepthBounds( vkGetDeviceProcAddr( device, "vkCmdSetDepthBounds" ) ); 13172 vkCmdSetStencilCompareMask = 13173 PFN_vkCmdSetStencilCompareMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilCompareMask" ) ); 13174 vkCmdSetStencilWriteMask = 13175 PFN_vkCmdSetStencilWriteMask( vkGetDeviceProcAddr( device, "vkCmdSetStencilWriteMask" ) ); 13176 vkCmdSetStencilReference = 13177 PFN_vkCmdSetStencilReference( vkGetDeviceProcAddr( device, "vkCmdSetStencilReference" ) ); 13178 vkCmdBindDescriptorSets = PFN_vkCmdBindDescriptorSets( vkGetDeviceProcAddr( device, "vkCmdBindDescriptorSets" ) ); 13179 vkCmdBindIndexBuffer = PFN_vkCmdBindIndexBuffer( vkGetDeviceProcAddr( device, "vkCmdBindIndexBuffer" ) ); 13180 vkCmdBindVertexBuffers = PFN_vkCmdBindVertexBuffers( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers" ) ); 13181 vkCmdDraw = PFN_vkCmdDraw( vkGetDeviceProcAddr( device, "vkCmdDraw" ) ); 13182 vkCmdDrawIndexed = PFN_vkCmdDrawIndexed( vkGetDeviceProcAddr( device, "vkCmdDrawIndexed" ) ); 13183 vkCmdDrawIndirect = PFN_vkCmdDrawIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndirect" ) ); 13184 vkCmdDrawIndexedIndirect = 13185 PFN_vkCmdDrawIndexedIndirect( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirect" ) ); 13186 vkCmdDispatch = PFN_vkCmdDispatch( vkGetDeviceProcAddr( device, "vkCmdDispatch" ) ); 13187 vkCmdDispatchIndirect = PFN_vkCmdDispatchIndirect( vkGetDeviceProcAddr( device, "vkCmdDispatchIndirect" ) ); 13188 vkCmdCopyBuffer = PFN_vkCmdCopyBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer" ) ); 13189 vkCmdCopyImage = PFN_vkCmdCopyImage( vkGetDeviceProcAddr( device, "vkCmdCopyImage" ) ); 13190 vkCmdBlitImage = PFN_vkCmdBlitImage( vkGetDeviceProcAddr( device, "vkCmdBlitImage" ) ); 13191 vkCmdCopyBufferToImage = PFN_vkCmdCopyBufferToImage( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage" ) ); 13192 vkCmdCopyImageToBuffer = PFN_vkCmdCopyImageToBuffer( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer" ) ); 13193 vkCmdUpdateBuffer = PFN_vkCmdUpdateBuffer( vkGetDeviceProcAddr( device, "vkCmdUpdateBuffer" ) ); 13194 vkCmdFillBuffer = PFN_vkCmdFillBuffer( vkGetDeviceProcAddr( device, "vkCmdFillBuffer" ) ); 13195 vkCmdClearColorImage = PFN_vkCmdClearColorImage( vkGetDeviceProcAddr( device, "vkCmdClearColorImage" ) ); 13196 vkCmdClearDepthStencilImage = 13197 PFN_vkCmdClearDepthStencilImage( vkGetDeviceProcAddr( device, "vkCmdClearDepthStencilImage" ) ); 13198 vkCmdClearAttachments = PFN_vkCmdClearAttachments( vkGetDeviceProcAddr( device, "vkCmdClearAttachments" ) ); 13199 vkCmdResolveImage = PFN_vkCmdResolveImage( vkGetDeviceProcAddr( device, "vkCmdResolveImage" ) ); 13200 vkCmdSetEvent = PFN_vkCmdSetEvent( vkGetDeviceProcAddr( device, "vkCmdSetEvent" ) ); 13201 vkCmdResetEvent = PFN_vkCmdResetEvent( vkGetDeviceProcAddr( device, "vkCmdResetEvent" ) ); 13202 vkCmdWaitEvents = PFN_vkCmdWaitEvents( vkGetDeviceProcAddr( device, "vkCmdWaitEvents" ) ); 13203 vkCmdPipelineBarrier = PFN_vkCmdPipelineBarrier( vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier" ) ); 13204 vkCmdBeginQuery = PFN_vkCmdBeginQuery( vkGetDeviceProcAddr( device, "vkCmdBeginQuery" ) ); 13205 vkCmdEndQuery = PFN_vkCmdEndQuery( vkGetDeviceProcAddr( device, "vkCmdEndQuery" ) ); 13206 vkCmdResetQueryPool = PFN_vkCmdResetQueryPool( vkGetDeviceProcAddr( device, "vkCmdResetQueryPool" ) ); 13207 vkCmdWriteTimestamp = PFN_vkCmdWriteTimestamp( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp" ) ); 13208 vkCmdCopyQueryPoolResults = 13209 PFN_vkCmdCopyQueryPoolResults( vkGetDeviceProcAddr( device, "vkCmdCopyQueryPoolResults" ) ); 13210 vkCmdPushConstants = PFN_vkCmdPushConstants( vkGetDeviceProcAddr( device, "vkCmdPushConstants" ) ); 13211 vkCmdBeginRenderPass = PFN_vkCmdBeginRenderPass( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass" ) ); 13212 vkCmdNextSubpass = PFN_vkCmdNextSubpass( vkGetDeviceProcAddr( device, "vkCmdNextSubpass" ) ); 13213 vkCmdEndRenderPass = PFN_vkCmdEndRenderPass( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass" ) ); 13214 vkCmdExecuteCommands = PFN_vkCmdExecuteCommands( vkGetDeviceProcAddr( device, "vkCmdExecuteCommands" ) ); 13215 13216 //=== VK_VERSION_1_1 === 13217 vkBindBufferMemory2 = PFN_vkBindBufferMemory2( vkGetDeviceProcAddr( device, "vkBindBufferMemory2" ) ); 13218 vkBindImageMemory2 = PFN_vkBindImageMemory2( vkGetDeviceProcAddr( device, "vkBindImageMemory2" ) ); 13219 vkGetDeviceGroupPeerMemoryFeatures = 13220 PFN_vkGetDeviceGroupPeerMemoryFeatures( vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeatures" ) ); 13221 vkCmdSetDeviceMask = PFN_vkCmdSetDeviceMask( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMask" ) ); 13222 vkCmdDispatchBase = PFN_vkCmdDispatchBase( vkGetDeviceProcAddr( device, "vkCmdDispatchBase" ) ); 13223 vkGetImageMemoryRequirements2 = 13224 PFN_vkGetImageMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2" ) ); 13225 vkGetBufferMemoryRequirements2 = 13226 PFN_vkGetBufferMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2" ) ); 13227 vkGetImageSparseMemoryRequirements2 = 13228 PFN_vkGetImageSparseMemoryRequirements2( vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2" ) ); 13229 vkTrimCommandPool = PFN_vkTrimCommandPool( vkGetDeviceProcAddr( device, "vkTrimCommandPool" ) ); 13230 vkGetDeviceQueue2 = PFN_vkGetDeviceQueue2( vkGetDeviceProcAddr( device, "vkGetDeviceQueue2" ) ); 13231 vkCreateSamplerYcbcrConversion = 13232 PFN_vkCreateSamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversion" ) ); 13233 vkDestroySamplerYcbcrConversion = 13234 PFN_vkDestroySamplerYcbcrConversion( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversion" ) ); 13235 vkCreateDescriptorUpdateTemplate = 13236 PFN_vkCreateDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplate" ) ); 13237 vkDestroyDescriptorUpdateTemplate = 13238 PFN_vkDestroyDescriptorUpdateTemplate( vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplate" ) ); 13239 vkUpdateDescriptorSetWithTemplate = 13240 PFN_vkUpdateDescriptorSetWithTemplate( vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplate" ) ); 13241 vkGetDescriptorSetLayoutSupport = 13242 PFN_vkGetDescriptorSetLayoutSupport( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupport" ) ); 13243 13244 //=== VK_VERSION_1_2 === 13245 vkCmdDrawIndirectCount = PFN_vkCmdDrawIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCount" ) ); 13246 vkCmdDrawIndexedIndirectCount = 13247 PFN_vkCmdDrawIndexedIndirectCount( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCount" ) ); 13248 vkCreateRenderPass2 = PFN_vkCreateRenderPass2( vkGetDeviceProcAddr( device, "vkCreateRenderPass2" ) ); 13249 vkCmdBeginRenderPass2 = PFN_vkCmdBeginRenderPass2( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2" ) ); 13250 vkCmdNextSubpass2 = PFN_vkCmdNextSubpass2( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2" ) ); 13251 vkCmdEndRenderPass2 = PFN_vkCmdEndRenderPass2( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2" ) ); 13252 vkResetQueryPool = PFN_vkResetQueryPool( vkGetDeviceProcAddr( device, "vkResetQueryPool" ) ); 13253 vkGetSemaphoreCounterValue = 13254 PFN_vkGetSemaphoreCounterValue( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValue" ) ); 13255 vkWaitSemaphores = PFN_vkWaitSemaphores( vkGetDeviceProcAddr( device, "vkWaitSemaphores" ) ); 13256 vkSignalSemaphore = PFN_vkSignalSemaphore( vkGetDeviceProcAddr( device, "vkSignalSemaphore" ) ); 13257 vkGetBufferDeviceAddress = 13258 PFN_vkGetBufferDeviceAddress( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddress" ) ); 13259 vkGetBufferOpaqueCaptureAddress = 13260 PFN_vkGetBufferOpaqueCaptureAddress( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddress" ) ); 13261 vkGetDeviceMemoryOpaqueCaptureAddress = PFN_vkGetDeviceMemoryOpaqueCaptureAddress( 13262 vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddress" ) ); 13263 13264 //=== VK_KHR_swapchain === 13265 vkCreateSwapchainKHR = PFN_vkCreateSwapchainKHR( vkGetDeviceProcAddr( device, "vkCreateSwapchainKHR" ) ); 13266 vkDestroySwapchainKHR = PFN_vkDestroySwapchainKHR( vkGetDeviceProcAddr( device, "vkDestroySwapchainKHR" ) ); 13267 vkGetSwapchainImagesKHR = PFN_vkGetSwapchainImagesKHR( vkGetDeviceProcAddr( device, "vkGetSwapchainImagesKHR" ) ); 13268 vkAcquireNextImageKHR = PFN_vkAcquireNextImageKHR( vkGetDeviceProcAddr( device, "vkAcquireNextImageKHR" ) ); 13269 vkQueuePresentKHR = PFN_vkQueuePresentKHR( vkGetDeviceProcAddr( device, "vkQueuePresentKHR" ) ); 13270 vkGetDeviceGroupPresentCapabilitiesKHR = PFN_vkGetDeviceGroupPresentCapabilitiesKHR( 13271 vkGetDeviceProcAddr( device, "vkGetDeviceGroupPresentCapabilitiesKHR" ) ); 13272 vkGetDeviceGroupSurfacePresentModesKHR = PFN_vkGetDeviceGroupSurfacePresentModesKHR( 13273 vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModesKHR" ) ); 13274 vkAcquireNextImage2KHR = PFN_vkAcquireNextImage2KHR( vkGetDeviceProcAddr( device, "vkAcquireNextImage2KHR" ) ); 13275 13276 //=== VK_KHR_display_swapchain === 13277 vkCreateSharedSwapchainsKHR = 13278 PFN_vkCreateSharedSwapchainsKHR( vkGetDeviceProcAddr( device, "vkCreateSharedSwapchainsKHR" ) ); 13279 13280 //=== VK_EXT_debug_marker === 13281 vkDebugMarkerSetObjectTagEXT = 13282 PFN_vkDebugMarkerSetObjectTagEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectTagEXT" ) ); 13283 vkDebugMarkerSetObjectNameEXT = 13284 PFN_vkDebugMarkerSetObjectNameEXT( vkGetDeviceProcAddr( device, "vkDebugMarkerSetObjectNameEXT" ) ); 13285 vkCmdDebugMarkerBeginEXT = 13286 PFN_vkCmdDebugMarkerBeginEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerBeginEXT" ) ); 13287 vkCmdDebugMarkerEndEXT = PFN_vkCmdDebugMarkerEndEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerEndEXT" ) ); 13288 vkCmdDebugMarkerInsertEXT = 13289 PFN_vkCmdDebugMarkerInsertEXT( vkGetDeviceProcAddr( device, "vkCmdDebugMarkerInsertEXT" ) ); 13290 13291 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 13292 //=== VK_KHR_video_queue === 13293 vkCreateVideoSessionKHR = PFN_vkCreateVideoSessionKHR( vkGetDeviceProcAddr( device, "vkCreateVideoSessionKHR" ) ); 13294 vkDestroyVideoSessionKHR = 13295 PFN_vkDestroyVideoSessionKHR( vkGetDeviceProcAddr( device, "vkDestroyVideoSessionKHR" ) ); 13296 vkGetVideoSessionMemoryRequirementsKHR = PFN_vkGetVideoSessionMemoryRequirementsKHR( 13297 vkGetDeviceProcAddr( device, "vkGetVideoSessionMemoryRequirementsKHR" ) ); 13298 vkBindVideoSessionMemoryKHR = 13299 PFN_vkBindVideoSessionMemoryKHR( vkGetDeviceProcAddr( device, "vkBindVideoSessionMemoryKHR" ) ); 13300 vkCreateVideoSessionParametersKHR = 13301 PFN_vkCreateVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkCreateVideoSessionParametersKHR" ) ); 13302 vkUpdateVideoSessionParametersKHR = 13303 PFN_vkUpdateVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkUpdateVideoSessionParametersKHR" ) ); 13304 vkDestroyVideoSessionParametersKHR = 13305 PFN_vkDestroyVideoSessionParametersKHR( vkGetDeviceProcAddr( device, "vkDestroyVideoSessionParametersKHR" ) ); 13306 vkCmdBeginVideoCodingKHR = 13307 PFN_vkCmdBeginVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdBeginVideoCodingKHR" ) ); 13308 vkCmdEndVideoCodingKHR = PFN_vkCmdEndVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdEndVideoCodingKHR" ) ); 13309 vkCmdControlVideoCodingKHR = 13310 PFN_vkCmdControlVideoCodingKHR( vkGetDeviceProcAddr( device, "vkCmdControlVideoCodingKHR" ) ); 13311 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 13312 13313 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 13314 //=== VK_KHR_video_decode_queue === 13315 vkCmdDecodeVideoKHR = PFN_vkCmdDecodeVideoKHR( vkGetDeviceProcAddr( device, "vkCmdDecodeVideoKHR" ) ); 13316 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 13317 13318 //=== VK_EXT_transform_feedback === 13319 vkCmdBindTransformFeedbackBuffersEXT = PFN_vkCmdBindTransformFeedbackBuffersEXT( 13320 vkGetDeviceProcAddr( device, "vkCmdBindTransformFeedbackBuffersEXT" ) ); 13321 vkCmdBeginTransformFeedbackEXT = 13322 PFN_vkCmdBeginTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdBeginTransformFeedbackEXT" ) ); 13323 vkCmdEndTransformFeedbackEXT = 13324 PFN_vkCmdEndTransformFeedbackEXT( vkGetDeviceProcAddr( device, "vkCmdEndTransformFeedbackEXT" ) ); 13325 vkCmdBeginQueryIndexedEXT = 13326 PFN_vkCmdBeginQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdBeginQueryIndexedEXT" ) ); 13327 vkCmdEndQueryIndexedEXT = PFN_vkCmdEndQueryIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdEndQueryIndexedEXT" ) ); 13328 vkCmdDrawIndirectByteCountEXT = 13329 PFN_vkCmdDrawIndirectByteCountEXT( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectByteCountEXT" ) ); 13330 13331 //=== VK_NVX_binary_import === 13332 vkCreateCuModuleNVX = PFN_vkCreateCuModuleNVX( vkGetDeviceProcAddr( device, "vkCreateCuModuleNVX" ) ); 13333 vkCreateCuFunctionNVX = PFN_vkCreateCuFunctionNVX( vkGetDeviceProcAddr( device, "vkCreateCuFunctionNVX" ) ); 13334 vkDestroyCuModuleNVX = PFN_vkDestroyCuModuleNVX( vkGetDeviceProcAddr( device, "vkDestroyCuModuleNVX" ) ); 13335 vkDestroyCuFunctionNVX = PFN_vkDestroyCuFunctionNVX( vkGetDeviceProcAddr( device, "vkDestroyCuFunctionNVX" ) ); 13336 vkCmdCuLaunchKernelNVX = PFN_vkCmdCuLaunchKernelNVX( vkGetDeviceProcAddr( device, "vkCmdCuLaunchKernelNVX" ) ); 13337 13338 //=== VK_NVX_image_view_handle === 13339 vkGetImageViewHandleNVX = PFN_vkGetImageViewHandleNVX( vkGetDeviceProcAddr( device, "vkGetImageViewHandleNVX" ) ); 13340 vkGetImageViewAddressNVX = 13341 PFN_vkGetImageViewAddressNVX( vkGetDeviceProcAddr( device, "vkGetImageViewAddressNVX" ) ); 13342 13343 //=== VK_AMD_draw_indirect_count === 13344 vkCmdDrawIndirectCountAMD = 13345 PFN_vkCmdDrawIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountAMD" ) ); 13346 if ( !vkCmdDrawIndirectCount ) 13347 vkCmdDrawIndirectCount = vkCmdDrawIndirectCountAMD; 13348 vkCmdDrawIndexedIndirectCountAMD = 13349 PFN_vkCmdDrawIndexedIndirectCountAMD( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountAMD" ) ); 13350 if ( !vkCmdDrawIndexedIndirectCount ) 13351 vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountAMD; 13352 13353 //=== VK_AMD_shader_info === 13354 vkGetShaderInfoAMD = PFN_vkGetShaderInfoAMD( vkGetDeviceProcAddr( device, "vkGetShaderInfoAMD" ) ); 13355 13356 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 13357 //=== VK_NV_external_memory_win32 === 13358 vkGetMemoryWin32HandleNV = 13359 PFN_vkGetMemoryWin32HandleNV( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleNV" ) ); 13360 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 13361 13362 //=== VK_KHR_device_group === 13363 vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR( 13364 vkGetDeviceProcAddr( device, "vkGetDeviceGroupPeerMemoryFeaturesKHR" ) ); 13365 if ( !vkGetDeviceGroupPeerMemoryFeatures ) 13366 vkGetDeviceGroupPeerMemoryFeatures = vkGetDeviceGroupPeerMemoryFeaturesKHR; 13367 vkCmdSetDeviceMaskKHR = PFN_vkCmdSetDeviceMaskKHR( vkGetDeviceProcAddr( device, "vkCmdSetDeviceMaskKHR" ) ); 13368 if ( !vkCmdSetDeviceMask ) 13369 vkCmdSetDeviceMask = vkCmdSetDeviceMaskKHR; 13370 vkCmdDispatchBaseKHR = PFN_vkCmdDispatchBaseKHR( vkGetDeviceProcAddr( device, "vkCmdDispatchBaseKHR" ) ); 13371 if ( !vkCmdDispatchBase ) 13372 vkCmdDispatchBase = vkCmdDispatchBaseKHR; 13373 13374 //=== VK_KHR_maintenance1 === 13375 vkTrimCommandPoolKHR = PFN_vkTrimCommandPoolKHR( vkGetDeviceProcAddr( device, "vkTrimCommandPoolKHR" ) ); 13376 if ( !vkTrimCommandPool ) 13377 vkTrimCommandPool = vkTrimCommandPoolKHR; 13378 13379 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 13380 //=== VK_KHR_external_memory_win32 === 13381 vkGetMemoryWin32HandleKHR = 13382 PFN_vkGetMemoryWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandleKHR" ) ); 13383 vkGetMemoryWin32HandlePropertiesKHR = 13384 PFN_vkGetMemoryWin32HandlePropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryWin32HandlePropertiesKHR" ) ); 13385 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 13386 13387 //=== VK_KHR_external_memory_fd === 13388 vkGetMemoryFdKHR = PFN_vkGetMemoryFdKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdKHR" ) ); 13389 vkGetMemoryFdPropertiesKHR = 13390 PFN_vkGetMemoryFdPropertiesKHR( vkGetDeviceProcAddr( device, "vkGetMemoryFdPropertiesKHR" ) ); 13391 13392 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 13393 //=== VK_KHR_external_semaphore_win32 === 13394 vkImportSemaphoreWin32HandleKHR = 13395 PFN_vkImportSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreWin32HandleKHR" ) ); 13396 vkGetSemaphoreWin32HandleKHR = 13397 PFN_vkGetSemaphoreWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreWin32HandleKHR" ) ); 13398 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 13399 13400 //=== VK_KHR_external_semaphore_fd === 13401 vkImportSemaphoreFdKHR = PFN_vkImportSemaphoreFdKHR( vkGetDeviceProcAddr( device, "vkImportSemaphoreFdKHR" ) ); 13402 vkGetSemaphoreFdKHR = PFN_vkGetSemaphoreFdKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreFdKHR" ) ); 13403 13404 //=== VK_KHR_push_descriptor === 13405 vkCmdPushDescriptorSetKHR = 13406 PFN_vkCmdPushDescriptorSetKHR( vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetKHR" ) ); 13407 vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplateKHR( 13408 vkGetDeviceProcAddr( device, "vkCmdPushDescriptorSetWithTemplateKHR" ) ); 13409 13410 //=== VK_EXT_conditional_rendering === 13411 vkCmdBeginConditionalRenderingEXT = 13412 PFN_vkCmdBeginConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdBeginConditionalRenderingEXT" ) ); 13413 vkCmdEndConditionalRenderingEXT = 13414 PFN_vkCmdEndConditionalRenderingEXT( vkGetDeviceProcAddr( device, "vkCmdEndConditionalRenderingEXT" ) ); 13415 13416 //=== VK_KHR_descriptor_update_template === 13417 vkCreateDescriptorUpdateTemplateKHR = 13418 PFN_vkCreateDescriptorUpdateTemplateKHR( vkGetDeviceProcAddr( device, "vkCreateDescriptorUpdateTemplateKHR" ) ); 13419 if ( !vkCreateDescriptorUpdateTemplate ) 13420 vkCreateDescriptorUpdateTemplate = vkCreateDescriptorUpdateTemplateKHR; 13421 vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplateKHR( 13422 vkGetDeviceProcAddr( device, "vkDestroyDescriptorUpdateTemplateKHR" ) ); 13423 if ( !vkDestroyDescriptorUpdateTemplate ) 13424 vkDestroyDescriptorUpdateTemplate = vkDestroyDescriptorUpdateTemplateKHR; 13425 vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplateKHR( 13426 vkGetDeviceProcAddr( device, "vkUpdateDescriptorSetWithTemplateKHR" ) ); 13427 if ( !vkUpdateDescriptorSetWithTemplate ) 13428 vkUpdateDescriptorSetWithTemplate = vkUpdateDescriptorSetWithTemplateKHR; 13429 13430 //=== VK_NV_clip_space_w_scaling === 13431 vkCmdSetViewportWScalingNV = 13432 PFN_vkCmdSetViewportWScalingNV( vkGetDeviceProcAddr( device, "vkCmdSetViewportWScalingNV" ) ); 13433 13434 //=== VK_EXT_display_control === 13435 vkDisplayPowerControlEXT = 13436 PFN_vkDisplayPowerControlEXT( vkGetDeviceProcAddr( device, "vkDisplayPowerControlEXT" ) ); 13437 vkRegisterDeviceEventEXT = 13438 PFN_vkRegisterDeviceEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDeviceEventEXT" ) ); 13439 vkRegisterDisplayEventEXT = 13440 PFN_vkRegisterDisplayEventEXT( vkGetDeviceProcAddr( device, "vkRegisterDisplayEventEXT" ) ); 13441 vkGetSwapchainCounterEXT = 13442 PFN_vkGetSwapchainCounterEXT( vkGetDeviceProcAddr( device, "vkGetSwapchainCounterEXT" ) ); 13443 13444 //=== VK_GOOGLE_display_timing === 13445 vkGetRefreshCycleDurationGOOGLE = 13446 PFN_vkGetRefreshCycleDurationGOOGLE( vkGetDeviceProcAddr( device, "vkGetRefreshCycleDurationGOOGLE" ) ); 13447 vkGetPastPresentationTimingGOOGLE = 13448 PFN_vkGetPastPresentationTimingGOOGLE( vkGetDeviceProcAddr( device, "vkGetPastPresentationTimingGOOGLE" ) ); 13449 13450 //=== VK_EXT_discard_rectangles === 13451 vkCmdSetDiscardRectangleEXT = 13452 PFN_vkCmdSetDiscardRectangleEXT( vkGetDeviceProcAddr( device, "vkCmdSetDiscardRectangleEXT" ) ); 13453 13454 //=== VK_EXT_hdr_metadata === 13455 vkSetHdrMetadataEXT = PFN_vkSetHdrMetadataEXT( vkGetDeviceProcAddr( device, "vkSetHdrMetadataEXT" ) ); 13456 13457 //=== VK_KHR_create_renderpass2 === 13458 vkCreateRenderPass2KHR = PFN_vkCreateRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCreateRenderPass2KHR" ) ); 13459 if ( !vkCreateRenderPass2 ) 13460 vkCreateRenderPass2 = vkCreateRenderPass2KHR; 13461 vkCmdBeginRenderPass2KHR = 13462 PFN_vkCmdBeginRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdBeginRenderPass2KHR" ) ); 13463 if ( !vkCmdBeginRenderPass2 ) 13464 vkCmdBeginRenderPass2 = vkCmdBeginRenderPass2KHR; 13465 vkCmdNextSubpass2KHR = PFN_vkCmdNextSubpass2KHR( vkGetDeviceProcAddr( device, "vkCmdNextSubpass2KHR" ) ); 13466 if ( !vkCmdNextSubpass2 ) 13467 vkCmdNextSubpass2 = vkCmdNextSubpass2KHR; 13468 vkCmdEndRenderPass2KHR = PFN_vkCmdEndRenderPass2KHR( vkGetDeviceProcAddr( device, "vkCmdEndRenderPass2KHR" ) ); 13469 if ( !vkCmdEndRenderPass2 ) 13470 vkCmdEndRenderPass2 = vkCmdEndRenderPass2KHR; 13471 13472 //=== VK_KHR_shared_presentable_image === 13473 vkGetSwapchainStatusKHR = PFN_vkGetSwapchainStatusKHR( vkGetDeviceProcAddr( device, "vkGetSwapchainStatusKHR" ) ); 13474 13475 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 13476 //=== VK_KHR_external_fence_win32 === 13477 vkImportFenceWin32HandleKHR = 13478 PFN_vkImportFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkImportFenceWin32HandleKHR" ) ); 13479 vkGetFenceWin32HandleKHR = 13480 PFN_vkGetFenceWin32HandleKHR( vkGetDeviceProcAddr( device, "vkGetFenceWin32HandleKHR" ) ); 13481 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 13482 13483 //=== VK_KHR_external_fence_fd === 13484 vkImportFenceFdKHR = PFN_vkImportFenceFdKHR( vkGetDeviceProcAddr( device, "vkImportFenceFdKHR" ) ); 13485 vkGetFenceFdKHR = PFN_vkGetFenceFdKHR( vkGetDeviceProcAddr( device, "vkGetFenceFdKHR" ) ); 13486 13487 //=== VK_KHR_performance_query === 13488 vkAcquireProfilingLockKHR = 13489 PFN_vkAcquireProfilingLockKHR( vkGetDeviceProcAddr( device, "vkAcquireProfilingLockKHR" ) ); 13490 vkReleaseProfilingLockKHR = 13491 PFN_vkReleaseProfilingLockKHR( vkGetDeviceProcAddr( device, "vkReleaseProfilingLockKHR" ) ); 13492 13493 //=== VK_EXT_debug_utils === 13494 vkSetDebugUtilsObjectNameEXT = 13495 PFN_vkSetDebugUtilsObjectNameEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectNameEXT" ) ); 13496 vkSetDebugUtilsObjectTagEXT = 13497 PFN_vkSetDebugUtilsObjectTagEXT( vkGetDeviceProcAddr( device, "vkSetDebugUtilsObjectTagEXT" ) ); 13498 vkQueueBeginDebugUtilsLabelEXT = 13499 PFN_vkQueueBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueBeginDebugUtilsLabelEXT" ) ); 13500 vkQueueEndDebugUtilsLabelEXT = 13501 PFN_vkQueueEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueEndDebugUtilsLabelEXT" ) ); 13502 vkQueueInsertDebugUtilsLabelEXT = 13503 PFN_vkQueueInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkQueueInsertDebugUtilsLabelEXT" ) ); 13504 vkCmdBeginDebugUtilsLabelEXT = 13505 PFN_vkCmdBeginDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdBeginDebugUtilsLabelEXT" ) ); 13506 vkCmdEndDebugUtilsLabelEXT = 13507 PFN_vkCmdEndDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdEndDebugUtilsLabelEXT" ) ); 13508 vkCmdInsertDebugUtilsLabelEXT = 13509 PFN_vkCmdInsertDebugUtilsLabelEXT( vkGetDeviceProcAddr( device, "vkCmdInsertDebugUtilsLabelEXT" ) ); 13510 13511 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 13512 //=== VK_ANDROID_external_memory_android_hardware_buffer === 13513 vkGetAndroidHardwareBufferPropertiesANDROID = PFN_vkGetAndroidHardwareBufferPropertiesANDROID( 13514 vkGetDeviceProcAddr( device, "vkGetAndroidHardwareBufferPropertiesANDROID" ) ); 13515 vkGetMemoryAndroidHardwareBufferANDROID = PFN_vkGetMemoryAndroidHardwareBufferANDROID( 13516 vkGetDeviceProcAddr( device, "vkGetMemoryAndroidHardwareBufferANDROID" ) ); 13517 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 13518 13519 //=== VK_EXT_sample_locations === 13520 vkCmdSetSampleLocationsEXT = 13521 PFN_vkCmdSetSampleLocationsEXT( vkGetDeviceProcAddr( device, "vkCmdSetSampleLocationsEXT" ) ); 13522 13523 //=== VK_KHR_get_memory_requirements2 === 13524 vkGetImageMemoryRequirements2KHR = 13525 PFN_vkGetImageMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetImageMemoryRequirements2KHR" ) ); 13526 if ( !vkGetImageMemoryRequirements2 ) 13527 vkGetImageMemoryRequirements2 = vkGetImageMemoryRequirements2KHR; 13528 vkGetBufferMemoryRequirements2KHR = 13529 PFN_vkGetBufferMemoryRequirements2KHR( vkGetDeviceProcAddr( device, "vkGetBufferMemoryRequirements2KHR" ) ); 13530 if ( !vkGetBufferMemoryRequirements2 ) 13531 vkGetBufferMemoryRequirements2 = vkGetBufferMemoryRequirements2KHR; 13532 vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2KHR( 13533 vkGetDeviceProcAddr( device, "vkGetImageSparseMemoryRequirements2KHR" ) ); 13534 if ( !vkGetImageSparseMemoryRequirements2 ) 13535 vkGetImageSparseMemoryRequirements2 = vkGetImageSparseMemoryRequirements2KHR; 13536 13537 //=== VK_KHR_acceleration_structure === 13538 vkCreateAccelerationStructureKHR = 13539 PFN_vkCreateAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureKHR" ) ); 13540 vkDestroyAccelerationStructureKHR = 13541 PFN_vkDestroyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureKHR" ) ); 13542 vkCmdBuildAccelerationStructuresKHR = 13543 PFN_vkCmdBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresKHR" ) ); 13544 vkCmdBuildAccelerationStructuresIndirectKHR = PFN_vkCmdBuildAccelerationStructuresIndirectKHR( 13545 vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructuresIndirectKHR" ) ); 13546 vkBuildAccelerationStructuresKHR = 13547 PFN_vkBuildAccelerationStructuresKHR( vkGetDeviceProcAddr( device, "vkBuildAccelerationStructuresKHR" ) ); 13548 vkCopyAccelerationStructureKHR = 13549 PFN_vkCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureKHR" ) ); 13550 vkCopyAccelerationStructureToMemoryKHR = PFN_vkCopyAccelerationStructureToMemoryKHR( 13551 vkGetDeviceProcAddr( device, "vkCopyAccelerationStructureToMemoryKHR" ) ); 13552 vkCopyMemoryToAccelerationStructureKHR = PFN_vkCopyMemoryToAccelerationStructureKHR( 13553 vkGetDeviceProcAddr( device, "vkCopyMemoryToAccelerationStructureKHR" ) ); 13554 vkWriteAccelerationStructuresPropertiesKHR = PFN_vkWriteAccelerationStructuresPropertiesKHR( 13555 vkGetDeviceProcAddr( device, "vkWriteAccelerationStructuresPropertiesKHR" ) ); 13556 vkCmdCopyAccelerationStructureKHR = 13557 PFN_vkCmdCopyAccelerationStructureKHR( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureKHR" ) ); 13558 vkCmdCopyAccelerationStructureToMemoryKHR = PFN_vkCmdCopyAccelerationStructureToMemoryKHR( 13559 vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureToMemoryKHR" ) ); 13560 vkCmdCopyMemoryToAccelerationStructureKHR = PFN_vkCmdCopyMemoryToAccelerationStructureKHR( 13561 vkGetDeviceProcAddr( device, "vkCmdCopyMemoryToAccelerationStructureKHR" ) ); 13562 vkGetAccelerationStructureDeviceAddressKHR = PFN_vkGetAccelerationStructureDeviceAddressKHR( 13563 vkGetDeviceProcAddr( device, "vkGetAccelerationStructureDeviceAddressKHR" ) ); 13564 vkCmdWriteAccelerationStructuresPropertiesKHR = PFN_vkCmdWriteAccelerationStructuresPropertiesKHR( 13565 vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesKHR" ) ); 13566 vkGetDeviceAccelerationStructureCompatibilityKHR = PFN_vkGetDeviceAccelerationStructureCompatibilityKHR( 13567 vkGetDeviceProcAddr( device, "vkGetDeviceAccelerationStructureCompatibilityKHR" ) ); 13568 vkGetAccelerationStructureBuildSizesKHR = PFN_vkGetAccelerationStructureBuildSizesKHR( 13569 vkGetDeviceProcAddr( device, "vkGetAccelerationStructureBuildSizesKHR" ) ); 13570 13571 //=== VK_KHR_sampler_ycbcr_conversion === 13572 vkCreateSamplerYcbcrConversionKHR = 13573 PFN_vkCreateSamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkCreateSamplerYcbcrConversionKHR" ) ); 13574 if ( !vkCreateSamplerYcbcrConversion ) 13575 vkCreateSamplerYcbcrConversion = vkCreateSamplerYcbcrConversionKHR; 13576 vkDestroySamplerYcbcrConversionKHR = 13577 PFN_vkDestroySamplerYcbcrConversionKHR( vkGetDeviceProcAddr( device, "vkDestroySamplerYcbcrConversionKHR" ) ); 13578 if ( !vkDestroySamplerYcbcrConversion ) 13579 vkDestroySamplerYcbcrConversion = vkDestroySamplerYcbcrConversionKHR; 13580 13581 //=== VK_KHR_bind_memory2 === 13582 vkBindBufferMemory2KHR = PFN_vkBindBufferMemory2KHR( vkGetDeviceProcAddr( device, "vkBindBufferMemory2KHR" ) ); 13583 if ( !vkBindBufferMemory2 ) 13584 vkBindBufferMemory2 = vkBindBufferMemory2KHR; 13585 vkBindImageMemory2KHR = PFN_vkBindImageMemory2KHR( vkGetDeviceProcAddr( device, "vkBindImageMemory2KHR" ) ); 13586 if ( !vkBindImageMemory2 ) 13587 vkBindImageMemory2 = vkBindImageMemory2KHR; 13588 13589 //=== VK_EXT_image_drm_format_modifier === 13590 vkGetImageDrmFormatModifierPropertiesEXT = PFN_vkGetImageDrmFormatModifierPropertiesEXT( 13591 vkGetDeviceProcAddr( device, "vkGetImageDrmFormatModifierPropertiesEXT" ) ); 13592 13593 //=== VK_EXT_validation_cache === 13594 vkCreateValidationCacheEXT = 13595 PFN_vkCreateValidationCacheEXT( vkGetDeviceProcAddr( device, "vkCreateValidationCacheEXT" ) ); 13596 vkDestroyValidationCacheEXT = 13597 PFN_vkDestroyValidationCacheEXT( vkGetDeviceProcAddr( device, "vkDestroyValidationCacheEXT" ) ); 13598 vkMergeValidationCachesEXT = 13599 PFN_vkMergeValidationCachesEXT( vkGetDeviceProcAddr( device, "vkMergeValidationCachesEXT" ) ); 13600 vkGetValidationCacheDataEXT = 13601 PFN_vkGetValidationCacheDataEXT( vkGetDeviceProcAddr( device, "vkGetValidationCacheDataEXT" ) ); 13602 13603 //=== VK_NV_shading_rate_image === 13604 vkCmdBindShadingRateImageNV = 13605 PFN_vkCmdBindShadingRateImageNV( vkGetDeviceProcAddr( device, "vkCmdBindShadingRateImageNV" ) ); 13606 vkCmdSetViewportShadingRatePaletteNV = PFN_vkCmdSetViewportShadingRatePaletteNV( 13607 vkGetDeviceProcAddr( device, "vkCmdSetViewportShadingRatePaletteNV" ) ); 13608 vkCmdSetCoarseSampleOrderNV = 13609 PFN_vkCmdSetCoarseSampleOrderNV( vkGetDeviceProcAddr( device, "vkCmdSetCoarseSampleOrderNV" ) ); 13610 13611 //=== VK_NV_ray_tracing === 13612 vkCreateAccelerationStructureNV = 13613 PFN_vkCreateAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCreateAccelerationStructureNV" ) ); 13614 vkDestroyAccelerationStructureNV = 13615 PFN_vkDestroyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkDestroyAccelerationStructureNV" ) ); 13616 vkGetAccelerationStructureMemoryRequirementsNV = PFN_vkGetAccelerationStructureMemoryRequirementsNV( 13617 vkGetDeviceProcAddr( device, "vkGetAccelerationStructureMemoryRequirementsNV" ) ); 13618 vkBindAccelerationStructureMemoryNV = 13619 PFN_vkBindAccelerationStructureMemoryNV( vkGetDeviceProcAddr( device, "vkBindAccelerationStructureMemoryNV" ) ); 13620 vkCmdBuildAccelerationStructureNV = 13621 PFN_vkCmdBuildAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdBuildAccelerationStructureNV" ) ); 13622 vkCmdCopyAccelerationStructureNV = 13623 PFN_vkCmdCopyAccelerationStructureNV( vkGetDeviceProcAddr( device, "vkCmdCopyAccelerationStructureNV" ) ); 13624 vkCmdTraceRaysNV = PFN_vkCmdTraceRaysNV( vkGetDeviceProcAddr( device, "vkCmdTraceRaysNV" ) ); 13625 vkCreateRayTracingPipelinesNV = 13626 PFN_vkCreateRayTracingPipelinesNV( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesNV" ) ); 13627 vkGetRayTracingShaderGroupHandlesNV = 13628 PFN_vkGetRayTracingShaderGroupHandlesNV( vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesNV" ) ); 13629 if ( !vkGetRayTracingShaderGroupHandlesKHR ) 13630 vkGetRayTracingShaderGroupHandlesKHR = vkGetRayTracingShaderGroupHandlesNV; 13631 vkGetAccelerationStructureHandleNV = 13632 PFN_vkGetAccelerationStructureHandleNV( vkGetDeviceProcAddr( device, "vkGetAccelerationStructureHandleNV" ) ); 13633 vkCmdWriteAccelerationStructuresPropertiesNV = PFN_vkCmdWriteAccelerationStructuresPropertiesNV( 13634 vkGetDeviceProcAddr( device, "vkCmdWriteAccelerationStructuresPropertiesNV" ) ); 13635 vkCompileDeferredNV = PFN_vkCompileDeferredNV( vkGetDeviceProcAddr( device, "vkCompileDeferredNV" ) ); 13636 13637 //=== VK_KHR_maintenance3 === 13638 vkGetDescriptorSetLayoutSupportKHR = 13639 PFN_vkGetDescriptorSetLayoutSupportKHR( vkGetDeviceProcAddr( device, "vkGetDescriptorSetLayoutSupportKHR" ) ); 13640 if ( !vkGetDescriptorSetLayoutSupport ) 13641 vkGetDescriptorSetLayoutSupport = vkGetDescriptorSetLayoutSupportKHR; 13642 13643 //=== VK_KHR_draw_indirect_count === 13644 vkCmdDrawIndirectCountKHR = 13645 PFN_vkCmdDrawIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndirectCountKHR" ) ); 13646 if ( !vkCmdDrawIndirectCount ) 13647 vkCmdDrawIndirectCount = vkCmdDrawIndirectCountKHR; 13648 vkCmdDrawIndexedIndirectCountKHR = 13649 PFN_vkCmdDrawIndexedIndirectCountKHR( vkGetDeviceProcAddr( device, "vkCmdDrawIndexedIndirectCountKHR" ) ); 13650 if ( !vkCmdDrawIndexedIndirectCount ) 13651 vkCmdDrawIndexedIndirectCount = vkCmdDrawIndexedIndirectCountKHR; 13652 13653 //=== VK_EXT_external_memory_host === 13654 vkGetMemoryHostPointerPropertiesEXT = 13655 PFN_vkGetMemoryHostPointerPropertiesEXT( vkGetDeviceProcAddr( device, "vkGetMemoryHostPointerPropertiesEXT" ) ); 13656 13657 //=== VK_AMD_buffer_marker === 13658 vkCmdWriteBufferMarkerAMD = 13659 PFN_vkCmdWriteBufferMarkerAMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarkerAMD" ) ); 13660 13661 //=== VK_EXT_calibrated_timestamps === 13662 vkGetCalibratedTimestampsEXT = 13663 PFN_vkGetCalibratedTimestampsEXT( vkGetDeviceProcAddr( device, "vkGetCalibratedTimestampsEXT" ) ); 13664 13665 //=== VK_NV_mesh_shader === 13666 vkCmdDrawMeshTasksNV = PFN_vkCmdDrawMeshTasksNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksNV" ) ); 13667 vkCmdDrawMeshTasksIndirectNV = 13668 PFN_vkCmdDrawMeshTasksIndirectNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectNV" ) ); 13669 vkCmdDrawMeshTasksIndirectCountNV = 13670 PFN_vkCmdDrawMeshTasksIndirectCountNV( vkGetDeviceProcAddr( device, "vkCmdDrawMeshTasksIndirectCountNV" ) ); 13671 13672 //=== VK_NV_scissor_exclusive === 13673 vkCmdSetExclusiveScissorNV = 13674 PFN_vkCmdSetExclusiveScissorNV( vkGetDeviceProcAddr( device, "vkCmdSetExclusiveScissorNV" ) ); 13675 13676 //=== VK_NV_device_diagnostic_checkpoints === 13677 vkCmdSetCheckpointNV = PFN_vkCmdSetCheckpointNV( vkGetDeviceProcAddr( device, "vkCmdSetCheckpointNV" ) ); 13678 vkGetQueueCheckpointDataNV = 13679 PFN_vkGetQueueCheckpointDataNV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointDataNV" ) ); 13680 13681 //=== VK_KHR_timeline_semaphore === 13682 vkGetSemaphoreCounterValueKHR = 13683 PFN_vkGetSemaphoreCounterValueKHR( vkGetDeviceProcAddr( device, "vkGetSemaphoreCounterValueKHR" ) ); 13684 if ( !vkGetSemaphoreCounterValue ) 13685 vkGetSemaphoreCounterValue = vkGetSemaphoreCounterValueKHR; 13686 vkWaitSemaphoresKHR = PFN_vkWaitSemaphoresKHR( vkGetDeviceProcAddr( device, "vkWaitSemaphoresKHR" ) ); 13687 if ( !vkWaitSemaphores ) 13688 vkWaitSemaphores = vkWaitSemaphoresKHR; 13689 vkSignalSemaphoreKHR = PFN_vkSignalSemaphoreKHR( vkGetDeviceProcAddr( device, "vkSignalSemaphoreKHR" ) ); 13690 if ( !vkSignalSemaphore ) 13691 vkSignalSemaphore = vkSignalSemaphoreKHR; 13692 13693 //=== VK_INTEL_performance_query === 13694 vkInitializePerformanceApiINTEL = 13695 PFN_vkInitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkInitializePerformanceApiINTEL" ) ); 13696 vkUninitializePerformanceApiINTEL = 13697 PFN_vkUninitializePerformanceApiINTEL( vkGetDeviceProcAddr( device, "vkUninitializePerformanceApiINTEL" ) ); 13698 vkCmdSetPerformanceMarkerINTEL = 13699 PFN_vkCmdSetPerformanceMarkerINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceMarkerINTEL" ) ); 13700 vkCmdSetPerformanceStreamMarkerINTEL = PFN_vkCmdSetPerformanceStreamMarkerINTEL( 13701 vkGetDeviceProcAddr( device, "vkCmdSetPerformanceStreamMarkerINTEL" ) ); 13702 vkCmdSetPerformanceOverrideINTEL = 13703 PFN_vkCmdSetPerformanceOverrideINTEL( vkGetDeviceProcAddr( device, "vkCmdSetPerformanceOverrideINTEL" ) ); 13704 vkAcquirePerformanceConfigurationINTEL = PFN_vkAcquirePerformanceConfigurationINTEL( 13705 vkGetDeviceProcAddr( device, "vkAcquirePerformanceConfigurationINTEL" ) ); 13706 vkReleasePerformanceConfigurationINTEL = PFN_vkReleasePerformanceConfigurationINTEL( 13707 vkGetDeviceProcAddr( device, "vkReleasePerformanceConfigurationINTEL" ) ); 13708 vkQueueSetPerformanceConfigurationINTEL = PFN_vkQueueSetPerformanceConfigurationINTEL( 13709 vkGetDeviceProcAddr( device, "vkQueueSetPerformanceConfigurationINTEL" ) ); 13710 vkGetPerformanceParameterINTEL = 13711 PFN_vkGetPerformanceParameterINTEL( vkGetDeviceProcAddr( device, "vkGetPerformanceParameterINTEL" ) ); 13712 13713 //=== VK_AMD_display_native_hdr === 13714 vkSetLocalDimmingAMD = PFN_vkSetLocalDimmingAMD( vkGetDeviceProcAddr( device, "vkSetLocalDimmingAMD" ) ); 13715 13716 //=== VK_KHR_fragment_shading_rate === 13717 vkCmdSetFragmentShadingRateKHR = 13718 PFN_vkCmdSetFragmentShadingRateKHR( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateKHR" ) ); 13719 13720 //=== VK_EXT_buffer_device_address === 13721 vkGetBufferDeviceAddressEXT = 13722 PFN_vkGetBufferDeviceAddressEXT( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressEXT" ) ); 13723 if ( !vkGetBufferDeviceAddress ) 13724 vkGetBufferDeviceAddress = vkGetBufferDeviceAddressEXT; 13725 13726 //=== VK_KHR_present_wait === 13727 vkWaitForPresentKHR = PFN_vkWaitForPresentKHR( vkGetDeviceProcAddr( device, "vkWaitForPresentKHR" ) ); 13728 13729 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 13730 //=== VK_EXT_full_screen_exclusive === 13731 vkAcquireFullScreenExclusiveModeEXT = 13732 PFN_vkAcquireFullScreenExclusiveModeEXT( vkGetDeviceProcAddr( device, "vkAcquireFullScreenExclusiveModeEXT" ) ); 13733 vkReleaseFullScreenExclusiveModeEXT = 13734 PFN_vkReleaseFullScreenExclusiveModeEXT( vkGetDeviceProcAddr( device, "vkReleaseFullScreenExclusiveModeEXT" ) ); 13735 vkGetDeviceGroupSurfacePresentModes2EXT = PFN_vkGetDeviceGroupSurfacePresentModes2EXT( 13736 vkGetDeviceProcAddr( device, "vkGetDeviceGroupSurfacePresentModes2EXT" ) ); 13737 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 13738 13739 //=== VK_KHR_buffer_device_address === 13740 vkGetBufferDeviceAddressKHR = 13741 PFN_vkGetBufferDeviceAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferDeviceAddressKHR" ) ); 13742 if ( !vkGetBufferDeviceAddress ) 13743 vkGetBufferDeviceAddress = vkGetBufferDeviceAddressKHR; 13744 vkGetBufferOpaqueCaptureAddressKHR = 13745 PFN_vkGetBufferOpaqueCaptureAddressKHR( vkGetDeviceProcAddr( device, "vkGetBufferOpaqueCaptureAddressKHR" ) ); 13746 if ( !vkGetBufferOpaqueCaptureAddress ) 13747 vkGetBufferOpaqueCaptureAddress = vkGetBufferOpaqueCaptureAddressKHR; 13748 vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR( 13749 vkGetDeviceProcAddr( device, "vkGetDeviceMemoryOpaqueCaptureAddressKHR" ) ); 13750 if ( !vkGetDeviceMemoryOpaqueCaptureAddress ) 13751 vkGetDeviceMemoryOpaqueCaptureAddress = vkGetDeviceMemoryOpaqueCaptureAddressKHR; 13752 13753 //=== VK_EXT_line_rasterization === 13754 vkCmdSetLineStippleEXT = PFN_vkCmdSetLineStippleEXT( vkGetDeviceProcAddr( device, "vkCmdSetLineStippleEXT" ) ); 13755 13756 //=== VK_EXT_host_query_reset === 13757 vkResetQueryPoolEXT = PFN_vkResetQueryPoolEXT( vkGetDeviceProcAddr( device, "vkResetQueryPoolEXT" ) ); 13758 if ( !vkResetQueryPool ) 13759 vkResetQueryPool = vkResetQueryPoolEXT; 13760 13761 //=== VK_EXT_extended_dynamic_state === 13762 vkCmdSetCullModeEXT = PFN_vkCmdSetCullModeEXT( vkGetDeviceProcAddr( device, "vkCmdSetCullModeEXT" ) ); 13763 vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFaceEXT( vkGetDeviceProcAddr( device, "vkCmdSetFrontFaceEXT" ) ); 13764 vkCmdSetPrimitiveTopologyEXT = 13765 PFN_vkCmdSetPrimitiveTopologyEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveTopologyEXT" ) ); 13766 vkCmdSetViewportWithCountEXT = 13767 PFN_vkCmdSetViewportWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetViewportWithCountEXT" ) ); 13768 vkCmdSetScissorWithCountEXT = 13769 PFN_vkCmdSetScissorWithCountEXT( vkGetDeviceProcAddr( device, "vkCmdSetScissorWithCountEXT" ) ); 13770 vkCmdBindVertexBuffers2EXT = 13771 PFN_vkCmdBindVertexBuffers2EXT( vkGetDeviceProcAddr( device, "vkCmdBindVertexBuffers2EXT" ) ); 13772 vkCmdSetDepthTestEnableEXT = 13773 PFN_vkCmdSetDepthTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthTestEnableEXT" ) ); 13774 vkCmdSetDepthWriteEnableEXT = 13775 PFN_vkCmdSetDepthWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthWriteEnableEXT" ) ); 13776 vkCmdSetDepthCompareOpEXT = 13777 PFN_vkCmdSetDepthCompareOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthCompareOpEXT" ) ); 13778 vkCmdSetDepthBoundsTestEnableEXT = 13779 PFN_vkCmdSetDepthBoundsTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBoundsTestEnableEXT" ) ); 13780 vkCmdSetStencilTestEnableEXT = 13781 PFN_vkCmdSetStencilTestEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilTestEnableEXT" ) ); 13782 vkCmdSetStencilOpEXT = PFN_vkCmdSetStencilOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetStencilOpEXT" ) ); 13783 13784 //=== VK_KHR_deferred_host_operations === 13785 vkCreateDeferredOperationKHR = 13786 PFN_vkCreateDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkCreateDeferredOperationKHR" ) ); 13787 vkDestroyDeferredOperationKHR = 13788 PFN_vkDestroyDeferredOperationKHR( vkGetDeviceProcAddr( device, "vkDestroyDeferredOperationKHR" ) ); 13789 vkGetDeferredOperationMaxConcurrencyKHR = PFN_vkGetDeferredOperationMaxConcurrencyKHR( 13790 vkGetDeviceProcAddr( device, "vkGetDeferredOperationMaxConcurrencyKHR" ) ); 13791 vkGetDeferredOperationResultKHR = 13792 PFN_vkGetDeferredOperationResultKHR( vkGetDeviceProcAddr( device, "vkGetDeferredOperationResultKHR" ) ); 13793 vkDeferredOperationJoinKHR = 13794 PFN_vkDeferredOperationJoinKHR( vkGetDeviceProcAddr( device, "vkDeferredOperationJoinKHR" ) ); 13795 13796 //=== VK_KHR_pipeline_executable_properties === 13797 vkGetPipelineExecutablePropertiesKHR = PFN_vkGetPipelineExecutablePropertiesKHR( 13798 vkGetDeviceProcAddr( device, "vkGetPipelineExecutablePropertiesKHR" ) ); 13799 vkGetPipelineExecutableStatisticsKHR = PFN_vkGetPipelineExecutableStatisticsKHR( 13800 vkGetDeviceProcAddr( device, "vkGetPipelineExecutableStatisticsKHR" ) ); 13801 vkGetPipelineExecutableInternalRepresentationsKHR = PFN_vkGetPipelineExecutableInternalRepresentationsKHR( 13802 vkGetDeviceProcAddr( device, "vkGetPipelineExecutableInternalRepresentationsKHR" ) ); 13803 13804 //=== VK_NV_device_generated_commands === 13805 vkGetGeneratedCommandsMemoryRequirementsNV = PFN_vkGetGeneratedCommandsMemoryRequirementsNV( 13806 vkGetDeviceProcAddr( device, "vkGetGeneratedCommandsMemoryRequirementsNV" ) ); 13807 vkCmdPreprocessGeneratedCommandsNV = 13808 PFN_vkCmdPreprocessGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdPreprocessGeneratedCommandsNV" ) ); 13809 vkCmdExecuteGeneratedCommandsNV = 13810 PFN_vkCmdExecuteGeneratedCommandsNV( vkGetDeviceProcAddr( device, "vkCmdExecuteGeneratedCommandsNV" ) ); 13811 vkCmdBindPipelineShaderGroupNV = 13812 PFN_vkCmdBindPipelineShaderGroupNV( vkGetDeviceProcAddr( device, "vkCmdBindPipelineShaderGroupNV" ) ); 13813 vkCreateIndirectCommandsLayoutNV = 13814 PFN_vkCreateIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkCreateIndirectCommandsLayoutNV" ) ); 13815 vkDestroyIndirectCommandsLayoutNV = 13816 PFN_vkDestroyIndirectCommandsLayoutNV( vkGetDeviceProcAddr( device, "vkDestroyIndirectCommandsLayoutNV" ) ); 13817 13818 //=== VK_EXT_private_data === 13819 vkCreatePrivateDataSlotEXT = 13820 PFN_vkCreatePrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkCreatePrivateDataSlotEXT" ) ); 13821 vkDestroyPrivateDataSlotEXT = 13822 PFN_vkDestroyPrivateDataSlotEXT( vkGetDeviceProcAddr( device, "vkDestroyPrivateDataSlotEXT" ) ); 13823 vkSetPrivateDataEXT = PFN_vkSetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkSetPrivateDataEXT" ) ); 13824 vkGetPrivateDataEXT = PFN_vkGetPrivateDataEXT( vkGetDeviceProcAddr( device, "vkGetPrivateDataEXT" ) ); 13825 13826 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 13827 //=== VK_KHR_video_encode_queue === 13828 vkCmdEncodeVideoKHR = PFN_vkCmdEncodeVideoKHR( vkGetDeviceProcAddr( device, "vkCmdEncodeVideoKHR" ) ); 13829 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 13830 13831 //=== VK_KHR_synchronization2 === 13832 vkCmdSetEvent2KHR = PFN_vkCmdSetEvent2KHR( vkGetDeviceProcAddr( device, "vkCmdSetEvent2KHR" ) ); 13833 vkCmdResetEvent2KHR = PFN_vkCmdResetEvent2KHR( vkGetDeviceProcAddr( device, "vkCmdResetEvent2KHR" ) ); 13834 vkCmdWaitEvents2KHR = PFN_vkCmdWaitEvents2KHR( vkGetDeviceProcAddr( device, "vkCmdWaitEvents2KHR" ) ); 13835 vkCmdPipelineBarrier2KHR = 13836 PFN_vkCmdPipelineBarrier2KHR( vkGetDeviceProcAddr( device, "vkCmdPipelineBarrier2KHR" ) ); 13837 vkCmdWriteTimestamp2KHR = PFN_vkCmdWriteTimestamp2KHR( vkGetDeviceProcAddr( device, "vkCmdWriteTimestamp2KHR" ) ); 13838 vkQueueSubmit2KHR = PFN_vkQueueSubmit2KHR( vkGetDeviceProcAddr( device, "vkQueueSubmit2KHR" ) ); 13839 vkCmdWriteBufferMarker2AMD = 13840 PFN_vkCmdWriteBufferMarker2AMD( vkGetDeviceProcAddr( device, "vkCmdWriteBufferMarker2AMD" ) ); 13841 vkGetQueueCheckpointData2NV = 13842 PFN_vkGetQueueCheckpointData2NV( vkGetDeviceProcAddr( device, "vkGetQueueCheckpointData2NV" ) ); 13843 13844 //=== VK_NV_fragment_shading_rate_enums === 13845 vkCmdSetFragmentShadingRateEnumNV = 13846 PFN_vkCmdSetFragmentShadingRateEnumNV( vkGetDeviceProcAddr( device, "vkCmdSetFragmentShadingRateEnumNV" ) ); 13847 13848 //=== VK_KHR_copy_commands2 === 13849 vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBuffer2KHR" ) ); 13850 vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImage2KHR" ) ); 13851 vkCmdCopyBufferToImage2KHR = 13852 PFN_vkCmdCopyBufferToImage2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyBufferToImage2KHR" ) ); 13853 vkCmdCopyImageToBuffer2KHR = 13854 PFN_vkCmdCopyImageToBuffer2KHR( vkGetDeviceProcAddr( device, "vkCmdCopyImageToBuffer2KHR" ) ); 13855 vkCmdBlitImage2KHR = PFN_vkCmdBlitImage2KHR( vkGetDeviceProcAddr( device, "vkCmdBlitImage2KHR" ) ); 13856 vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2KHR( vkGetDeviceProcAddr( device, "vkCmdResolveImage2KHR" ) ); 13857 13858 //=== VK_KHR_ray_tracing_pipeline === 13859 vkCmdTraceRaysKHR = PFN_vkCmdTraceRaysKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysKHR" ) ); 13860 vkCreateRayTracingPipelinesKHR = 13861 PFN_vkCreateRayTracingPipelinesKHR( vkGetDeviceProcAddr( device, "vkCreateRayTracingPipelinesKHR" ) ); 13862 vkGetRayTracingShaderGroupHandlesKHR = PFN_vkGetRayTracingShaderGroupHandlesKHR( 13863 vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupHandlesKHR" ) ); 13864 vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR( 13865 vkGetDeviceProcAddr( device, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR" ) ); 13866 vkCmdTraceRaysIndirectKHR = 13867 PFN_vkCmdTraceRaysIndirectKHR( vkGetDeviceProcAddr( device, "vkCmdTraceRaysIndirectKHR" ) ); 13868 vkGetRayTracingShaderGroupStackSizeKHR = PFN_vkGetRayTracingShaderGroupStackSizeKHR( 13869 vkGetDeviceProcAddr( device, "vkGetRayTracingShaderGroupStackSizeKHR" ) ); 13870 vkCmdSetRayTracingPipelineStackSizeKHR = PFN_vkCmdSetRayTracingPipelineStackSizeKHR( 13871 vkGetDeviceProcAddr( device, "vkCmdSetRayTracingPipelineStackSizeKHR" ) ); 13872 13873 //=== VK_EXT_vertex_input_dynamic_state === 13874 vkCmdSetVertexInputEXT = PFN_vkCmdSetVertexInputEXT( vkGetDeviceProcAddr( device, "vkCmdSetVertexInputEXT" ) ); 13875 13876 #if defined( VK_USE_PLATFORM_FUCHSIA ) 13877 //=== VK_FUCHSIA_external_memory === 13878 vkGetMemoryZirconHandleFUCHSIA = 13879 PFN_vkGetMemoryZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetMemoryZirconHandleFUCHSIA" ) ); 13880 vkGetMemoryZirconHandlePropertiesFUCHSIA = PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA( 13881 vkGetDeviceProcAddr( device, "vkGetMemoryZirconHandlePropertiesFUCHSIA" ) ); 13882 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 13883 13884 #if defined( VK_USE_PLATFORM_FUCHSIA ) 13885 //=== VK_FUCHSIA_external_semaphore === 13886 vkImportSemaphoreZirconHandleFUCHSIA = PFN_vkImportSemaphoreZirconHandleFUCHSIA( 13887 vkGetDeviceProcAddr( device, "vkImportSemaphoreZirconHandleFUCHSIA" ) ); 13888 vkGetSemaphoreZirconHandleFUCHSIA = 13889 PFN_vkGetSemaphoreZirconHandleFUCHSIA( vkGetDeviceProcAddr( device, "vkGetSemaphoreZirconHandleFUCHSIA" ) ); 13890 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 13891 13892 #if defined( VK_USE_PLATFORM_FUCHSIA ) 13893 //=== VK_FUCHSIA_buffer_collection === 13894 vkCreateBufferCollectionFUCHSIA = 13895 PFN_vkCreateBufferCollectionFUCHSIA( vkGetDeviceProcAddr( device, "vkCreateBufferCollectionFUCHSIA" ) ); 13896 vkSetBufferCollectionImageConstraintsFUCHSIA = PFN_vkSetBufferCollectionImageConstraintsFUCHSIA( 13897 vkGetDeviceProcAddr( device, "vkSetBufferCollectionImageConstraintsFUCHSIA" ) ); 13898 vkSetBufferCollectionBufferConstraintsFUCHSIA = PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA( 13899 vkGetDeviceProcAddr( device, "vkSetBufferCollectionBufferConstraintsFUCHSIA" ) ); 13900 vkDestroyBufferCollectionFUCHSIA = 13901 PFN_vkDestroyBufferCollectionFUCHSIA( vkGetDeviceProcAddr( device, "vkDestroyBufferCollectionFUCHSIA" ) ); 13902 vkGetBufferCollectionPropertiesFUCHSIA = PFN_vkGetBufferCollectionPropertiesFUCHSIA( 13903 vkGetDeviceProcAddr( device, "vkGetBufferCollectionPropertiesFUCHSIA" ) ); 13904 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 13905 13906 //=== VK_HUAWEI_subpass_shading === 13907 vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI( 13908 vkGetDeviceProcAddr( device, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI" ) ); 13909 vkCmdSubpassShadingHUAWEI = 13910 PFN_vkCmdSubpassShadingHUAWEI( vkGetDeviceProcAddr( device, "vkCmdSubpassShadingHUAWEI" ) ); 13911 13912 //=== VK_HUAWEI_invocation_mask === 13913 vkCmdBindInvocationMaskHUAWEI = 13914 PFN_vkCmdBindInvocationMaskHUAWEI( vkGetDeviceProcAddr( device, "vkCmdBindInvocationMaskHUAWEI" ) ); 13915 13916 //=== VK_NV_external_memory_rdma === 13917 vkGetMemoryRemoteAddressNV = 13918 PFN_vkGetMemoryRemoteAddressNV( vkGetDeviceProcAddr( device, "vkGetMemoryRemoteAddressNV" ) ); 13919 13920 //=== VK_EXT_extended_dynamic_state2 === 13921 vkCmdSetPatchControlPointsEXT = 13922 PFN_vkCmdSetPatchControlPointsEXT( vkGetDeviceProcAddr( device, "vkCmdSetPatchControlPointsEXT" ) ); 13923 vkCmdSetRasterizerDiscardEnableEXT = 13924 PFN_vkCmdSetRasterizerDiscardEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetRasterizerDiscardEnableEXT" ) ); 13925 vkCmdSetDepthBiasEnableEXT = 13926 PFN_vkCmdSetDepthBiasEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetDepthBiasEnableEXT" ) ); 13927 vkCmdSetLogicOpEXT = PFN_vkCmdSetLogicOpEXT( vkGetDeviceProcAddr( device, "vkCmdSetLogicOpEXT" ) ); 13928 vkCmdSetPrimitiveRestartEnableEXT = 13929 PFN_vkCmdSetPrimitiveRestartEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetPrimitiveRestartEnableEXT" ) ); 13930 13931 //=== VK_EXT_color_write_enable === 13932 vkCmdSetColorWriteEnableEXT = 13933 PFN_vkCmdSetColorWriteEnableEXT( vkGetDeviceProcAddr( device, "vkCmdSetColorWriteEnableEXT" ) ); 13934 13935 //=== VK_EXT_multi_draw === 13936 vkCmdDrawMultiEXT = PFN_vkCmdDrawMultiEXT( vkGetDeviceProcAddr( device, "vkCmdDrawMultiEXT" ) ); 13937 vkCmdDrawMultiIndexedEXT = 13938 PFN_vkCmdDrawMultiIndexedEXT( vkGetDeviceProcAddr( device, "vkCmdDrawMultiIndexedEXT" ) ); 13939 13940 //=== VK_EXT_pageable_device_local_memory === 13941 vkSetDeviceMemoryPriorityEXT = 13942 PFN_vkSetDeviceMemoryPriorityEXT( vkGetDeviceProcAddr( device, "vkSetDeviceMemoryPriorityEXT" ) ); 13943 13944 //=== VK_KHR_maintenance4 === 13945 vkGetDeviceBufferMemoryRequirementsKHR = PFN_vkGetDeviceBufferMemoryRequirementsKHR( 13946 vkGetDeviceProcAddr( device, "vkGetDeviceBufferMemoryRequirementsKHR" ) ); 13947 vkGetDeviceImageMemoryRequirementsKHR = PFN_vkGetDeviceImageMemoryRequirementsKHR( 13948 vkGetDeviceProcAddr( device, "vkGetDeviceImageMemoryRequirementsKHR" ) ); 13949 vkGetDeviceImageSparseMemoryRequirementsKHR = PFN_vkGetDeviceImageSparseMemoryRequirementsKHR( 13950 vkGetDeviceProcAddr( device, "vkGetDeviceImageSparseMemoryRequirementsKHR" ) ); 13951 } 13952 }; 13953 } // namespace VULKAN_HPP_NAMESPACE 13954 13955 namespace std 13956 { 13957 //======================= 13958 //=== HASH structures === 13959 //======================= 13960 13961 template <typename BitType> 13962 struct hash<VULKAN_HPP_NAMESPACE::Flags<BitType>> 13963 { operator ()std::hash13964 std::size_t operator()( VULKAN_HPP_NAMESPACE::Flags<BitType> const & flags ) const VULKAN_HPP_NOEXCEPT 13965 { 13966 return std::hash<typename std::underlying_type<BitType>::type>{}( 13967 static_cast<typename std::underlying_type<BitType>::type>( flags ) ); 13968 } 13969 }; 13970 13971 //=== VK_VERSION_1_0 === 13972 13973 template <> 13974 struct hash<VULKAN_HPP_NAMESPACE::Instance> 13975 { operator ()std::hash13976 std::size_t operator()( VULKAN_HPP_NAMESPACE::Instance const & instance ) const VULKAN_HPP_NOEXCEPT 13977 { 13978 return std::hash<VkInstance>{}( static_cast<VkInstance>( instance ) ); 13979 } 13980 }; 13981 13982 template <> 13983 struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevice> 13984 { operator ()std::hash13985 std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDevice const & physicalDevice ) const VULKAN_HPP_NOEXCEPT 13986 { 13987 return std::hash<VkPhysicalDevice>{}( static_cast<VkPhysicalDevice>( physicalDevice ) ); 13988 } 13989 }; 13990 13991 template <> 13992 struct hash<VULKAN_HPP_NAMESPACE::Device> 13993 { operator ()std::hash13994 std::size_t operator()( VULKAN_HPP_NAMESPACE::Device const & device ) const VULKAN_HPP_NOEXCEPT 13995 { 13996 return std::hash<VkDevice>{}( static_cast<VkDevice>( device ) ); 13997 } 13998 }; 13999 14000 template <> 14001 struct hash<VULKAN_HPP_NAMESPACE::Queue> 14002 { operator ()std::hash14003 std::size_t operator()( VULKAN_HPP_NAMESPACE::Queue const & queue ) const VULKAN_HPP_NOEXCEPT 14004 { 14005 return std::hash<VkQueue>{}( static_cast<VkQueue>( queue ) ); 14006 } 14007 }; 14008 14009 template <> 14010 struct hash<VULKAN_HPP_NAMESPACE::DeviceMemory> 14011 { operator ()std::hash14012 std::size_t operator()( VULKAN_HPP_NAMESPACE::DeviceMemory const & deviceMemory ) const VULKAN_HPP_NOEXCEPT 14013 { 14014 return std::hash<VkDeviceMemory>{}( static_cast<VkDeviceMemory>( deviceMemory ) ); 14015 } 14016 }; 14017 14018 template <> 14019 struct hash<VULKAN_HPP_NAMESPACE::Fence> 14020 { operator ()std::hash14021 std::size_t operator()( VULKAN_HPP_NAMESPACE::Fence const & fence ) const VULKAN_HPP_NOEXCEPT 14022 { 14023 return std::hash<VkFence>{}( static_cast<VkFence>( fence ) ); 14024 } 14025 }; 14026 14027 template <> 14028 struct hash<VULKAN_HPP_NAMESPACE::Semaphore> 14029 { operator ()std::hash14030 std::size_t operator()( VULKAN_HPP_NAMESPACE::Semaphore const & semaphore ) const VULKAN_HPP_NOEXCEPT 14031 { 14032 return std::hash<VkSemaphore>{}( static_cast<VkSemaphore>( semaphore ) ); 14033 } 14034 }; 14035 14036 template <> 14037 struct hash<VULKAN_HPP_NAMESPACE::Event> 14038 { operator ()std::hash14039 std::size_t operator()( VULKAN_HPP_NAMESPACE::Event const & event ) const VULKAN_HPP_NOEXCEPT 14040 { 14041 return std::hash<VkEvent>{}( static_cast<VkEvent>( event ) ); 14042 } 14043 }; 14044 14045 template <> 14046 struct hash<VULKAN_HPP_NAMESPACE::QueryPool> 14047 { operator ()std::hash14048 std::size_t operator()( VULKAN_HPP_NAMESPACE::QueryPool const & queryPool ) const VULKAN_HPP_NOEXCEPT 14049 { 14050 return std::hash<VkQueryPool>{}( static_cast<VkQueryPool>( queryPool ) ); 14051 } 14052 }; 14053 14054 template <> 14055 struct hash<VULKAN_HPP_NAMESPACE::Buffer> 14056 { operator ()std::hash14057 std::size_t operator()( VULKAN_HPP_NAMESPACE::Buffer const & buffer ) const VULKAN_HPP_NOEXCEPT 14058 { 14059 return std::hash<VkBuffer>{}( static_cast<VkBuffer>( buffer ) ); 14060 } 14061 }; 14062 14063 template <> 14064 struct hash<VULKAN_HPP_NAMESPACE::BufferView> 14065 { operator ()std::hash14066 std::size_t operator()( VULKAN_HPP_NAMESPACE::BufferView const & bufferView ) const VULKAN_HPP_NOEXCEPT 14067 { 14068 return std::hash<VkBufferView>{}( static_cast<VkBufferView>( bufferView ) ); 14069 } 14070 }; 14071 14072 template <> 14073 struct hash<VULKAN_HPP_NAMESPACE::Image> 14074 { operator ()std::hash14075 std::size_t operator()( VULKAN_HPP_NAMESPACE::Image const & image ) const VULKAN_HPP_NOEXCEPT 14076 { 14077 return std::hash<VkImage>{}( static_cast<VkImage>( image ) ); 14078 } 14079 }; 14080 14081 template <> 14082 struct hash<VULKAN_HPP_NAMESPACE::ImageView> 14083 { operator ()std::hash14084 std::size_t operator()( VULKAN_HPP_NAMESPACE::ImageView const & imageView ) const VULKAN_HPP_NOEXCEPT 14085 { 14086 return std::hash<VkImageView>{}( static_cast<VkImageView>( imageView ) ); 14087 } 14088 }; 14089 14090 template <> 14091 struct hash<VULKAN_HPP_NAMESPACE::ShaderModule> 14092 { operator ()std::hash14093 std::size_t operator()( VULKAN_HPP_NAMESPACE::ShaderModule const & shaderModule ) const VULKAN_HPP_NOEXCEPT 14094 { 14095 return std::hash<VkShaderModule>{}( static_cast<VkShaderModule>( shaderModule ) ); 14096 } 14097 }; 14098 14099 template <> 14100 struct hash<VULKAN_HPP_NAMESPACE::PipelineCache> 14101 { operator ()std::hash14102 std::size_t operator()( VULKAN_HPP_NAMESPACE::PipelineCache const & pipelineCache ) const VULKAN_HPP_NOEXCEPT 14103 { 14104 return std::hash<VkPipelineCache>{}( static_cast<VkPipelineCache>( pipelineCache ) ); 14105 } 14106 }; 14107 14108 template <> 14109 struct hash<VULKAN_HPP_NAMESPACE::Pipeline> 14110 { operator ()std::hash14111 std::size_t operator()( VULKAN_HPP_NAMESPACE::Pipeline const & pipeline ) const VULKAN_HPP_NOEXCEPT 14112 { 14113 return std::hash<VkPipeline>{}( static_cast<VkPipeline>( pipeline ) ); 14114 } 14115 }; 14116 14117 template <> 14118 struct hash<VULKAN_HPP_NAMESPACE::PipelineLayout> 14119 { operator ()std::hash14120 std::size_t operator()( VULKAN_HPP_NAMESPACE::PipelineLayout const & pipelineLayout ) const VULKAN_HPP_NOEXCEPT 14121 { 14122 return std::hash<VkPipelineLayout>{}( static_cast<VkPipelineLayout>( pipelineLayout ) ); 14123 } 14124 }; 14125 14126 template <> 14127 struct hash<VULKAN_HPP_NAMESPACE::Sampler> 14128 { operator ()std::hash14129 std::size_t operator()( VULKAN_HPP_NAMESPACE::Sampler const & sampler ) const VULKAN_HPP_NOEXCEPT 14130 { 14131 return std::hash<VkSampler>{}( static_cast<VkSampler>( sampler ) ); 14132 } 14133 }; 14134 14135 template <> 14136 struct hash<VULKAN_HPP_NAMESPACE::DescriptorPool> 14137 { operator ()std::hash14138 std::size_t operator()( VULKAN_HPP_NAMESPACE::DescriptorPool const & descriptorPool ) const VULKAN_HPP_NOEXCEPT 14139 { 14140 return std::hash<VkDescriptorPool>{}( static_cast<VkDescriptorPool>( descriptorPool ) ); 14141 } 14142 }; 14143 14144 template <> 14145 struct hash<VULKAN_HPP_NAMESPACE::DescriptorSet> 14146 { operator ()std::hash14147 std::size_t operator()( VULKAN_HPP_NAMESPACE::DescriptorSet const & descriptorSet ) const VULKAN_HPP_NOEXCEPT 14148 { 14149 return std::hash<VkDescriptorSet>{}( static_cast<VkDescriptorSet>( descriptorSet ) ); 14150 } 14151 }; 14152 14153 template <> 14154 struct hash<VULKAN_HPP_NAMESPACE::DescriptorSetLayout> 14155 { 14156 std::size_t operator ()std::hash14157 operator()( VULKAN_HPP_NAMESPACE::DescriptorSetLayout const & descriptorSetLayout ) const VULKAN_HPP_NOEXCEPT 14158 { 14159 return std::hash<VkDescriptorSetLayout>{}( static_cast<VkDescriptorSetLayout>( descriptorSetLayout ) ); 14160 } 14161 }; 14162 14163 template <> 14164 struct hash<VULKAN_HPP_NAMESPACE::Framebuffer> 14165 { operator ()std::hash14166 std::size_t operator()( VULKAN_HPP_NAMESPACE::Framebuffer const & framebuffer ) const VULKAN_HPP_NOEXCEPT 14167 { 14168 return std::hash<VkFramebuffer>{}( static_cast<VkFramebuffer>( framebuffer ) ); 14169 } 14170 }; 14171 14172 template <> 14173 struct hash<VULKAN_HPP_NAMESPACE::RenderPass> 14174 { operator ()std::hash14175 std::size_t operator()( VULKAN_HPP_NAMESPACE::RenderPass const & renderPass ) const VULKAN_HPP_NOEXCEPT 14176 { 14177 return std::hash<VkRenderPass>{}( static_cast<VkRenderPass>( renderPass ) ); 14178 } 14179 }; 14180 14181 template <> 14182 struct hash<VULKAN_HPP_NAMESPACE::CommandPool> 14183 { operator ()std::hash14184 std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandPool const & commandPool ) const VULKAN_HPP_NOEXCEPT 14185 { 14186 return std::hash<VkCommandPool>{}( static_cast<VkCommandPool>( commandPool ) ); 14187 } 14188 }; 14189 14190 template <> 14191 struct hash<VULKAN_HPP_NAMESPACE::CommandBuffer> 14192 { operator ()std::hash14193 std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandBuffer const & commandBuffer ) const VULKAN_HPP_NOEXCEPT 14194 { 14195 return std::hash<VkCommandBuffer>{}( static_cast<VkCommandBuffer>( commandBuffer ) ); 14196 } 14197 }; 14198 14199 //=== VK_VERSION_1_1 === 14200 14201 template <> 14202 struct hash<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion> 14203 { operator ()std::hash14204 std::size_t operator()( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const & samplerYcbcrConversion ) const 14205 VULKAN_HPP_NOEXCEPT 14206 { 14207 return std::hash<VkSamplerYcbcrConversion>{}( static_cast<VkSamplerYcbcrConversion>( samplerYcbcrConversion ) ); 14208 } 14209 }; 14210 14211 template <> 14212 struct hash<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate> 14213 { operator ()std::hash14214 std::size_t operator()( VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate const & descriptorUpdateTemplate ) const 14215 VULKAN_HPP_NOEXCEPT 14216 { 14217 return std::hash<VkDescriptorUpdateTemplate>{}( 14218 static_cast<VkDescriptorUpdateTemplate>( descriptorUpdateTemplate ) ); 14219 } 14220 }; 14221 14222 //=== VK_KHR_surface === 14223 14224 template <> 14225 struct hash<VULKAN_HPP_NAMESPACE::SurfaceKHR> 14226 { operator ()std::hash14227 std::size_t operator()( VULKAN_HPP_NAMESPACE::SurfaceKHR const & surfaceKHR ) const VULKAN_HPP_NOEXCEPT 14228 { 14229 return std::hash<VkSurfaceKHR>{}( static_cast<VkSurfaceKHR>( surfaceKHR ) ); 14230 } 14231 }; 14232 14233 //=== VK_KHR_swapchain === 14234 14235 template <> 14236 struct hash<VULKAN_HPP_NAMESPACE::SwapchainKHR> 14237 { operator ()std::hash14238 std::size_t operator()( VULKAN_HPP_NAMESPACE::SwapchainKHR const & swapchainKHR ) const VULKAN_HPP_NOEXCEPT 14239 { 14240 return std::hash<VkSwapchainKHR>{}( static_cast<VkSwapchainKHR>( swapchainKHR ) ); 14241 } 14242 }; 14243 14244 //=== VK_KHR_display === 14245 14246 template <> 14247 struct hash<VULKAN_HPP_NAMESPACE::DisplayKHR> 14248 { operator ()std::hash14249 std::size_t operator()( VULKAN_HPP_NAMESPACE::DisplayKHR const & displayKHR ) const VULKAN_HPP_NOEXCEPT 14250 { 14251 return std::hash<VkDisplayKHR>{}( static_cast<VkDisplayKHR>( displayKHR ) ); 14252 } 14253 }; 14254 14255 template <> 14256 struct hash<VULKAN_HPP_NAMESPACE::DisplayModeKHR> 14257 { operator ()std::hash14258 std::size_t operator()( VULKAN_HPP_NAMESPACE::DisplayModeKHR const & displayModeKHR ) const VULKAN_HPP_NOEXCEPT 14259 { 14260 return std::hash<VkDisplayModeKHR>{}( static_cast<VkDisplayModeKHR>( displayModeKHR ) ); 14261 } 14262 }; 14263 14264 //=== VK_EXT_debug_report === 14265 14266 template <> 14267 struct hash<VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT> 14268 { operator ()std::hash14269 std::size_t operator()( VULKAN_HPP_NAMESPACE::DebugReportCallbackEXT const & debugReportCallbackEXT ) const 14270 VULKAN_HPP_NOEXCEPT 14271 { 14272 return std::hash<VkDebugReportCallbackEXT>{}( static_cast<VkDebugReportCallbackEXT>( debugReportCallbackEXT ) ); 14273 } 14274 }; 14275 14276 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 14277 //=== VK_KHR_video_queue === 14278 14279 template <> 14280 struct hash<VULKAN_HPP_NAMESPACE::VideoSessionKHR> 14281 { operator ()std::hash14282 std::size_t operator()( VULKAN_HPP_NAMESPACE::VideoSessionKHR const & videoSessionKHR ) const VULKAN_HPP_NOEXCEPT 14283 { 14284 return std::hash<VkVideoSessionKHR>{}( static_cast<VkVideoSessionKHR>( videoSessionKHR ) ); 14285 } 14286 }; 14287 14288 template <> 14289 struct hash<VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR> 14290 { operator ()std::hash14291 std::size_t operator()( VULKAN_HPP_NAMESPACE::VideoSessionParametersKHR const & videoSessionParametersKHR ) const 14292 VULKAN_HPP_NOEXCEPT 14293 { 14294 return std::hash<VkVideoSessionParametersKHR>{}( 14295 static_cast<VkVideoSessionParametersKHR>( videoSessionParametersKHR ) ); 14296 } 14297 }; 14298 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 14299 14300 //=== VK_NVX_binary_import === 14301 14302 template <> 14303 struct hash<VULKAN_HPP_NAMESPACE::CuModuleNVX> 14304 { operator ()std::hash14305 std::size_t operator()( VULKAN_HPP_NAMESPACE::CuModuleNVX const & cuModuleNVX ) const VULKAN_HPP_NOEXCEPT 14306 { 14307 return std::hash<VkCuModuleNVX>{}( static_cast<VkCuModuleNVX>( cuModuleNVX ) ); 14308 } 14309 }; 14310 14311 template <> 14312 struct hash<VULKAN_HPP_NAMESPACE::CuFunctionNVX> 14313 { operator ()std::hash14314 std::size_t operator()( VULKAN_HPP_NAMESPACE::CuFunctionNVX const & cuFunctionNVX ) const VULKAN_HPP_NOEXCEPT 14315 { 14316 return std::hash<VkCuFunctionNVX>{}( static_cast<VkCuFunctionNVX>( cuFunctionNVX ) ); 14317 } 14318 }; 14319 14320 //=== VK_EXT_debug_utils === 14321 14322 template <> 14323 struct hash<VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT> 14324 { operator ()std::hash14325 std::size_t operator()( VULKAN_HPP_NAMESPACE::DebugUtilsMessengerEXT const & debugUtilsMessengerEXT ) const 14326 VULKAN_HPP_NOEXCEPT 14327 { 14328 return std::hash<VkDebugUtilsMessengerEXT>{}( static_cast<VkDebugUtilsMessengerEXT>( debugUtilsMessengerEXT ) ); 14329 } 14330 }; 14331 14332 //=== VK_KHR_acceleration_structure === 14333 14334 template <> 14335 struct hash<VULKAN_HPP_NAMESPACE::AccelerationStructureKHR> 14336 { operator ()std::hash14337 std::size_t operator()( VULKAN_HPP_NAMESPACE::AccelerationStructureKHR const & accelerationStructureKHR ) const 14338 VULKAN_HPP_NOEXCEPT 14339 { 14340 return std::hash<VkAccelerationStructureKHR>{}( 14341 static_cast<VkAccelerationStructureKHR>( accelerationStructureKHR ) ); 14342 } 14343 }; 14344 14345 //=== VK_EXT_validation_cache === 14346 14347 template <> 14348 struct hash<VULKAN_HPP_NAMESPACE::ValidationCacheEXT> 14349 { 14350 std::size_t operator ()std::hash14351 operator()( VULKAN_HPP_NAMESPACE::ValidationCacheEXT const & validationCacheEXT ) const VULKAN_HPP_NOEXCEPT 14352 { 14353 return std::hash<VkValidationCacheEXT>{}( static_cast<VkValidationCacheEXT>( validationCacheEXT ) ); 14354 } 14355 }; 14356 14357 //=== VK_NV_ray_tracing === 14358 14359 template <> 14360 struct hash<VULKAN_HPP_NAMESPACE::AccelerationStructureNV> 14361 { operator ()std::hash14362 std::size_t operator()( VULKAN_HPP_NAMESPACE::AccelerationStructureNV const & accelerationStructureNV ) const 14363 VULKAN_HPP_NOEXCEPT 14364 { 14365 return std::hash<VkAccelerationStructureNV>{}( 14366 static_cast<VkAccelerationStructureNV>( accelerationStructureNV ) ); 14367 } 14368 }; 14369 14370 //=== VK_INTEL_performance_query === 14371 14372 template <> 14373 struct hash<VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL> 14374 { operator ()std::hash14375 std::size_t operator()( VULKAN_HPP_NAMESPACE::PerformanceConfigurationINTEL const & performanceConfigurationINTEL ) 14376 const VULKAN_HPP_NOEXCEPT 14377 { 14378 return std::hash<VkPerformanceConfigurationINTEL>{}( 14379 static_cast<VkPerformanceConfigurationINTEL>( performanceConfigurationINTEL ) ); 14380 } 14381 }; 14382 14383 //=== VK_KHR_deferred_host_operations === 14384 14385 template <> 14386 struct hash<VULKAN_HPP_NAMESPACE::DeferredOperationKHR> 14387 { 14388 std::size_t operator ()std::hash14389 operator()( VULKAN_HPP_NAMESPACE::DeferredOperationKHR const & deferredOperationKHR ) const VULKAN_HPP_NOEXCEPT 14390 { 14391 return std::hash<VkDeferredOperationKHR>{}( static_cast<VkDeferredOperationKHR>( deferredOperationKHR ) ); 14392 } 14393 }; 14394 14395 //=== VK_NV_device_generated_commands === 14396 14397 template <> 14398 struct hash<VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV> 14399 { operator ()std::hash14400 std::size_t operator()( VULKAN_HPP_NAMESPACE::IndirectCommandsLayoutNV const & indirectCommandsLayoutNV ) const 14401 VULKAN_HPP_NOEXCEPT 14402 { 14403 return std::hash<VkIndirectCommandsLayoutNV>{}( 14404 static_cast<VkIndirectCommandsLayoutNV>( indirectCommandsLayoutNV ) ); 14405 } 14406 }; 14407 14408 //=== VK_EXT_private_data === 14409 14410 template <> 14411 struct hash<VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT> 14412 { 14413 std::size_t operator ()std::hash14414 operator()( VULKAN_HPP_NAMESPACE::PrivateDataSlotEXT const & privateDataSlotEXT ) const VULKAN_HPP_NOEXCEPT 14415 { 14416 return std::hash<VkPrivateDataSlotEXT>{}( static_cast<VkPrivateDataSlotEXT>( privateDataSlotEXT ) ); 14417 } 14418 }; 14419 14420 #if defined( VK_USE_PLATFORM_FUCHSIA ) 14421 //=== VK_FUCHSIA_buffer_collection === 14422 14423 template <> 14424 struct hash<VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA> 14425 { operator ()std::hash14426 std::size_t operator()( VULKAN_HPP_NAMESPACE::BufferCollectionFUCHSIA const & bufferCollectionFUCHSIA ) const 14427 VULKAN_HPP_NOEXCEPT 14428 { 14429 return std::hash<VkBufferCollectionFUCHSIA>{}( 14430 static_cast<VkBufferCollectionFUCHSIA>( bufferCollectionFUCHSIA ) ); 14431 } 14432 }; 14433 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 14434 14435 } // namespace std 14436 #endif 14437