1/* WARNING: This is auto-generated file. Do not modify, since changes will 2 * be lost! Modify the generating script instead. 3 */ 4struct VkApplicationInfo 5{ 6 VkStructureType sType; 7 const void* pNext; 8 const char* pApplicationName; 9 deUint32 applicationVersion; 10 const char* pEngineName; 11 deUint32 engineVersion; 12 deUint32 apiVersion; 13}; 14 15struct VkInstanceCreateInfo 16{ 17 VkStructureType sType; 18 const void* pNext; 19 VkInstanceCreateFlags flags; 20 const VkApplicationInfo* pApplicationInfo; 21 deUint32 enabledLayerCount; 22 const char* const* ppEnabledLayerNames; 23 deUint32 enabledExtensionCount; 24 const char* const* ppEnabledExtensionNames; 25}; 26 27struct VkAllocationCallbacks 28{ 29 void* pUserData; 30 PFN_vkAllocationFunction pfnAllocation; 31 PFN_vkReallocationFunction pfnReallocation; 32 PFN_vkFreeFunction pfnFree; 33 PFN_vkInternalAllocationNotification pfnInternalAllocation; 34 PFN_vkInternalFreeNotification pfnInternalFree; 35}; 36 37struct VkPhysicalDeviceFeatures 38{ 39 VkBool32 robustBufferAccess; 40 VkBool32 fullDrawIndexUint32; 41 VkBool32 imageCubeArray; 42 VkBool32 independentBlend; 43 VkBool32 geometryShader; 44 VkBool32 tessellationShader; 45 VkBool32 sampleRateShading; 46 VkBool32 dualSrcBlend; 47 VkBool32 logicOp; 48 VkBool32 multiDrawIndirect; 49 VkBool32 drawIndirectFirstInstance; 50 VkBool32 depthClamp; 51 VkBool32 depthBiasClamp; 52 VkBool32 fillModeNonSolid; 53 VkBool32 depthBounds; 54 VkBool32 wideLines; 55 VkBool32 largePoints; 56 VkBool32 alphaToOne; 57 VkBool32 multiViewport; 58 VkBool32 samplerAnisotropy; 59 VkBool32 textureCompressionETC2; 60 VkBool32 textureCompressionASTC_LDR; 61 VkBool32 textureCompressionBC; 62 VkBool32 occlusionQueryPrecise; 63 VkBool32 pipelineStatisticsQuery; 64 VkBool32 vertexPipelineStoresAndAtomics; 65 VkBool32 fragmentStoresAndAtomics; 66 VkBool32 shaderTessellationAndGeometryPointSize; 67 VkBool32 shaderImageGatherExtended; 68 VkBool32 shaderStorageImageExtendedFormats; 69 VkBool32 shaderStorageImageMultisample; 70 VkBool32 shaderStorageImageReadWithoutFormat; 71 VkBool32 shaderStorageImageWriteWithoutFormat; 72 VkBool32 shaderUniformBufferArrayDynamicIndexing; 73 VkBool32 shaderSampledImageArrayDynamicIndexing; 74 VkBool32 shaderStorageBufferArrayDynamicIndexing; 75 VkBool32 shaderStorageImageArrayDynamicIndexing; 76 VkBool32 shaderClipDistance; 77 VkBool32 shaderCullDistance; 78 VkBool32 shaderFloat64; 79 VkBool32 shaderInt64; 80 VkBool32 shaderInt16; 81 VkBool32 shaderResourceResidency; 82 VkBool32 shaderResourceMinLod; 83 VkBool32 sparseBinding; 84 VkBool32 sparseResidencyBuffer; 85 VkBool32 sparseResidencyImage2D; 86 VkBool32 sparseResidencyImage3D; 87 VkBool32 sparseResidency2Samples; 88 VkBool32 sparseResidency4Samples; 89 VkBool32 sparseResidency8Samples; 90 VkBool32 sparseResidency16Samples; 91 VkBool32 sparseResidencyAliased; 92 VkBool32 variableMultisampleRate; 93 VkBool32 inheritedQueries; 94}; 95 96struct VkFormatProperties 97{ 98 VkFormatFeatureFlags linearTilingFeatures; 99 VkFormatFeatureFlags optimalTilingFeatures; 100 VkFormatFeatureFlags bufferFeatures; 101}; 102 103struct VkExtent3D 104{ 105 deUint32 width; 106 deUint32 height; 107 deUint32 depth; 108}; 109 110struct VkImageFormatProperties 111{ 112 VkExtent3D maxExtent; 113 deUint32 maxMipLevels; 114 deUint32 maxArrayLayers; 115 VkSampleCountFlags sampleCounts; 116 VkDeviceSize maxResourceSize; 117}; 118 119struct VkPhysicalDeviceLimits 120{ 121 deUint32 maxImageDimension1D; 122 deUint32 maxImageDimension2D; 123 deUint32 maxImageDimension3D; 124 deUint32 maxImageDimensionCube; 125 deUint32 maxImageArrayLayers; 126 deUint32 maxTexelBufferElements; 127 deUint32 maxUniformBufferRange; 128 deUint32 maxStorageBufferRange; 129 deUint32 maxPushConstantsSize; 130 deUint32 maxMemoryAllocationCount; 131 deUint32 maxSamplerAllocationCount; 132 VkDeviceSize bufferImageGranularity; 133 VkDeviceSize sparseAddressSpaceSize; 134 deUint32 maxBoundDescriptorSets; 135 deUint32 maxPerStageDescriptorSamplers; 136 deUint32 maxPerStageDescriptorUniformBuffers; 137 deUint32 maxPerStageDescriptorStorageBuffers; 138 deUint32 maxPerStageDescriptorSampledImages; 139 deUint32 maxPerStageDescriptorStorageImages; 140 deUint32 maxPerStageDescriptorInputAttachments; 141 deUint32 maxPerStageResources; 142 deUint32 maxDescriptorSetSamplers; 143 deUint32 maxDescriptorSetUniformBuffers; 144 deUint32 maxDescriptorSetUniformBuffersDynamic; 145 deUint32 maxDescriptorSetStorageBuffers; 146 deUint32 maxDescriptorSetStorageBuffersDynamic; 147 deUint32 maxDescriptorSetSampledImages; 148 deUint32 maxDescriptorSetStorageImages; 149 deUint32 maxDescriptorSetInputAttachments; 150 deUint32 maxVertexInputAttributes; 151 deUint32 maxVertexInputBindings; 152 deUint32 maxVertexInputAttributeOffset; 153 deUint32 maxVertexInputBindingStride; 154 deUint32 maxVertexOutputComponents; 155 deUint32 maxTessellationGenerationLevel; 156 deUint32 maxTessellationPatchSize; 157 deUint32 maxTessellationControlPerVertexInputComponents; 158 deUint32 maxTessellationControlPerVertexOutputComponents; 159 deUint32 maxTessellationControlPerPatchOutputComponents; 160 deUint32 maxTessellationControlTotalOutputComponents; 161 deUint32 maxTessellationEvaluationInputComponents; 162 deUint32 maxTessellationEvaluationOutputComponents; 163 deUint32 maxGeometryShaderInvocations; 164 deUint32 maxGeometryInputComponents; 165 deUint32 maxGeometryOutputComponents; 166 deUint32 maxGeometryOutputVertices; 167 deUint32 maxGeometryTotalOutputComponents; 168 deUint32 maxFragmentInputComponents; 169 deUint32 maxFragmentOutputAttachments; 170 deUint32 maxFragmentDualSrcAttachments; 171 deUint32 maxFragmentCombinedOutputResources; 172 deUint32 maxComputeSharedMemorySize; 173 deUint32 maxComputeWorkGroupCount[3]; 174 deUint32 maxComputeWorkGroupInvocations; 175 deUint32 maxComputeWorkGroupSize[3]; 176 deUint32 subPixelPrecisionBits; 177 deUint32 subTexelPrecisionBits; 178 deUint32 mipmapPrecisionBits; 179 deUint32 maxDrawIndexedIndexValue; 180 deUint32 maxDrawIndirectCount; 181 float maxSamplerLodBias; 182 float maxSamplerAnisotropy; 183 deUint32 maxViewports; 184 deUint32 maxViewportDimensions[2]; 185 float viewportBoundsRange[2]; 186 deUint32 viewportSubPixelBits; 187 deUintptr minMemoryMapAlignment; 188 VkDeviceSize minTexelBufferOffsetAlignment; 189 VkDeviceSize minUniformBufferOffsetAlignment; 190 VkDeviceSize minStorageBufferOffsetAlignment; 191 deInt32 minTexelOffset; 192 deUint32 maxTexelOffset; 193 deInt32 minTexelGatherOffset; 194 deUint32 maxTexelGatherOffset; 195 float minInterpolationOffset; 196 float maxInterpolationOffset; 197 deUint32 subPixelInterpolationOffsetBits; 198 deUint32 maxFramebufferWidth; 199 deUint32 maxFramebufferHeight; 200 deUint32 maxFramebufferLayers; 201 VkSampleCountFlags framebufferColorSampleCounts; 202 VkSampleCountFlags framebufferDepthSampleCounts; 203 VkSampleCountFlags framebufferStencilSampleCounts; 204 VkSampleCountFlags framebufferNoAttachmentsSampleCounts; 205 deUint32 maxColorAttachments; 206 VkSampleCountFlags sampledImageColorSampleCounts; 207 VkSampleCountFlags sampledImageIntegerSampleCounts; 208 VkSampleCountFlags sampledImageDepthSampleCounts; 209 VkSampleCountFlags sampledImageStencilSampleCounts; 210 VkSampleCountFlags storageImageSampleCounts; 211 deUint32 maxSampleMaskWords; 212 VkBool32 timestampComputeAndGraphics; 213 float timestampPeriod; 214 deUint32 maxClipDistances; 215 deUint32 maxCullDistances; 216 deUint32 maxCombinedClipAndCullDistances; 217 deUint32 discreteQueuePriorities; 218 float pointSizeRange[2]; 219 float lineWidthRange[2]; 220 float pointSizeGranularity; 221 float lineWidthGranularity; 222 VkBool32 strictLines; 223 VkBool32 standardSampleLocations; 224 VkDeviceSize optimalBufferCopyOffsetAlignment; 225 VkDeviceSize optimalBufferCopyRowPitchAlignment; 226 VkDeviceSize nonCoherentAtomSize; 227}; 228 229struct VkPhysicalDeviceSparseProperties 230{ 231 VkBool32 residencyStandard2DBlockShape; 232 VkBool32 residencyStandard2DMultisampleBlockShape; 233 VkBool32 residencyStandard3DBlockShape; 234 VkBool32 residencyAlignedMipSize; 235 VkBool32 residencyNonResidentStrict; 236}; 237 238struct VkPhysicalDeviceProperties 239{ 240 deUint32 apiVersion; 241 deUint32 driverVersion; 242 deUint32 vendorID; 243 deUint32 deviceID; 244 VkPhysicalDeviceType deviceType; 245 char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE]; 246 deUint8 pipelineCacheUUID[VK_UUID_SIZE]; 247 VkPhysicalDeviceLimits limits; 248 VkPhysicalDeviceSparseProperties sparseProperties; 249}; 250 251struct VkQueueFamilyProperties 252{ 253 VkQueueFlags queueFlags; 254 deUint32 queueCount; 255 deUint32 timestampValidBits; 256 VkExtent3D minImageTransferGranularity; 257}; 258 259struct VkMemoryType 260{ 261 VkMemoryPropertyFlags propertyFlags; 262 deUint32 heapIndex; 263}; 264 265struct VkMemoryHeap 266{ 267 VkDeviceSize size; 268 VkMemoryHeapFlags flags; 269}; 270 271struct VkPhysicalDeviceMemoryProperties 272{ 273 deUint32 memoryTypeCount; 274 VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES]; 275 deUint32 memoryHeapCount; 276 VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS]; 277}; 278 279struct VkDeviceQueueCreateInfo 280{ 281 VkStructureType sType; 282 const void* pNext; 283 VkDeviceQueueCreateFlags flags; 284 deUint32 queueFamilyIndex; 285 deUint32 queueCount; 286 const float* pQueuePriorities; 287}; 288 289struct VkDeviceCreateInfo 290{ 291 VkStructureType sType; 292 const void* pNext; 293 VkDeviceCreateFlags flags; 294 deUint32 queueCreateInfoCount; 295 const VkDeviceQueueCreateInfo* pQueueCreateInfos; 296 deUint32 enabledLayerCount; 297 const char* const* ppEnabledLayerNames; 298 deUint32 enabledExtensionCount; 299 const char* const* ppEnabledExtensionNames; 300 const VkPhysicalDeviceFeatures* pEnabledFeatures; 301}; 302 303struct VkExtensionProperties 304{ 305 char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; 306 deUint32 specVersion; 307}; 308 309struct VkLayerProperties 310{ 311 char layerName[VK_MAX_EXTENSION_NAME_SIZE]; 312 deUint32 specVersion; 313 deUint32 implementationVersion; 314 char description[VK_MAX_DESCRIPTION_SIZE]; 315}; 316 317struct VkSubmitInfo 318{ 319 VkStructureType sType; 320 const void* pNext; 321 deUint32 waitSemaphoreCount; 322 const VkSemaphore* pWaitSemaphores; 323 const VkPipelineStageFlags* pWaitDstStageMask; 324 deUint32 commandBufferCount; 325 const VkCommandBuffer* pCommandBuffers; 326 deUint32 signalSemaphoreCount; 327 const VkSemaphore* pSignalSemaphores; 328}; 329 330struct VkMemoryAllocateInfo 331{ 332 VkStructureType sType; 333 const void* pNext; 334 VkDeviceSize allocationSize; 335 deUint32 memoryTypeIndex; 336}; 337 338struct VkMappedMemoryRange 339{ 340 VkStructureType sType; 341 const void* pNext; 342 VkDeviceMemory memory; 343 VkDeviceSize offset; 344 VkDeviceSize size; 345}; 346 347struct VkMemoryRequirements 348{ 349 VkDeviceSize size; 350 VkDeviceSize alignment; 351 deUint32 memoryTypeBits; 352}; 353 354struct VkSparseImageFormatProperties 355{ 356 VkImageAspectFlags aspectMask; 357 VkExtent3D imageGranularity; 358 VkSparseImageFormatFlags flags; 359}; 360 361struct VkSparseImageMemoryRequirements 362{ 363 VkSparseImageFormatProperties formatProperties; 364 deUint32 imageMipTailFirstLod; 365 VkDeviceSize imageMipTailSize; 366 VkDeviceSize imageMipTailOffset; 367 VkDeviceSize imageMipTailStride; 368}; 369 370struct VkSparseMemoryBind 371{ 372 VkDeviceSize resourceOffset; 373 VkDeviceSize size; 374 VkDeviceMemory memory; 375 VkDeviceSize memoryOffset; 376 VkSparseMemoryBindFlags flags; 377}; 378 379struct VkSparseBufferMemoryBindInfo 380{ 381 VkBuffer buffer; 382 deUint32 bindCount; 383 const VkSparseMemoryBind* pBinds; 384}; 385 386struct VkSparseImageOpaqueMemoryBindInfo 387{ 388 VkImage image; 389 deUint32 bindCount; 390 const VkSparseMemoryBind* pBinds; 391}; 392 393struct VkImageSubresource 394{ 395 VkImageAspectFlags aspectMask; 396 deUint32 mipLevel; 397 deUint32 arrayLayer; 398}; 399 400struct VkOffset3D 401{ 402 deInt32 x; 403 deInt32 y; 404 deInt32 z; 405}; 406 407struct VkSparseImageMemoryBind 408{ 409 VkImageSubresource subresource; 410 VkOffset3D offset; 411 VkExtent3D extent; 412 VkDeviceMemory memory; 413 VkDeviceSize memoryOffset; 414 VkSparseMemoryBindFlags flags; 415}; 416 417struct VkSparseImageMemoryBindInfo 418{ 419 VkImage image; 420 deUint32 bindCount; 421 const VkSparseImageMemoryBind* pBinds; 422}; 423 424struct VkBindSparseInfo 425{ 426 VkStructureType sType; 427 const void* pNext; 428 deUint32 waitSemaphoreCount; 429 const VkSemaphore* pWaitSemaphores; 430 deUint32 bufferBindCount; 431 const VkSparseBufferMemoryBindInfo* pBufferBinds; 432 deUint32 imageOpaqueBindCount; 433 const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds; 434 deUint32 imageBindCount; 435 const VkSparseImageMemoryBindInfo* pImageBinds; 436 deUint32 signalSemaphoreCount; 437 const VkSemaphore* pSignalSemaphores; 438}; 439 440struct VkFenceCreateInfo 441{ 442 VkStructureType sType; 443 const void* pNext; 444 VkFenceCreateFlags flags; 445}; 446 447struct VkSemaphoreCreateInfo 448{ 449 VkStructureType sType; 450 const void* pNext; 451 VkSemaphoreCreateFlags flags; 452}; 453 454struct VkEventCreateInfo 455{ 456 VkStructureType sType; 457 const void* pNext; 458 VkEventCreateFlags flags; 459}; 460 461struct VkQueryPoolCreateInfo 462{ 463 VkStructureType sType; 464 const void* pNext; 465 VkQueryPoolCreateFlags flags; 466 VkQueryType queryType; 467 deUint32 queryCount; 468 VkQueryPipelineStatisticFlags pipelineStatistics; 469}; 470 471struct VkBufferCreateInfo 472{ 473 VkStructureType sType; 474 const void* pNext; 475 VkBufferCreateFlags flags; 476 VkDeviceSize size; 477 VkBufferUsageFlags usage; 478 VkSharingMode sharingMode; 479 deUint32 queueFamilyIndexCount; 480 const deUint32* pQueueFamilyIndices; 481}; 482 483struct VkBufferViewCreateInfo 484{ 485 VkStructureType sType; 486 const void* pNext; 487 VkBufferViewCreateFlags flags; 488 VkBuffer buffer; 489 VkFormat format; 490 VkDeviceSize offset; 491 VkDeviceSize range; 492}; 493 494struct VkImageCreateInfo 495{ 496 VkStructureType sType; 497 const void* pNext; 498 VkImageCreateFlags flags; 499 VkImageType imageType; 500 VkFormat format; 501 VkExtent3D extent; 502 deUint32 mipLevels; 503 deUint32 arrayLayers; 504 VkSampleCountFlagBits samples; 505 VkImageTiling tiling; 506 VkImageUsageFlags usage; 507 VkSharingMode sharingMode; 508 deUint32 queueFamilyIndexCount; 509 const deUint32* pQueueFamilyIndices; 510 VkImageLayout initialLayout; 511}; 512 513struct VkSubresourceLayout 514{ 515 VkDeviceSize offset; 516 VkDeviceSize size; 517 VkDeviceSize rowPitch; 518 VkDeviceSize arrayPitch; 519 VkDeviceSize depthPitch; 520}; 521 522struct VkComponentMapping 523{ 524 VkComponentSwizzle r; 525 VkComponentSwizzle g; 526 VkComponentSwizzle b; 527 VkComponentSwizzle a; 528}; 529 530struct VkImageSubresourceRange 531{ 532 VkImageAspectFlags aspectMask; 533 deUint32 baseMipLevel; 534 deUint32 levelCount; 535 deUint32 baseArrayLayer; 536 deUint32 layerCount; 537}; 538 539struct VkImageViewCreateInfo 540{ 541 VkStructureType sType; 542 const void* pNext; 543 VkImageViewCreateFlags flags; 544 VkImage image; 545 VkImageViewType viewType; 546 VkFormat format; 547 VkComponentMapping components; 548 VkImageSubresourceRange subresourceRange; 549}; 550 551struct VkShaderModuleCreateInfo 552{ 553 VkStructureType sType; 554 const void* pNext; 555 VkShaderModuleCreateFlags flags; 556 deUintptr codeSize; 557 const deUint32* pCode; 558}; 559 560struct VkPipelineCacheCreateInfo 561{ 562 VkStructureType sType; 563 const void* pNext; 564 VkPipelineCacheCreateFlags flags; 565 deUintptr initialDataSize; 566 const void* pInitialData; 567}; 568 569struct VkSpecializationMapEntry 570{ 571 deUint32 constantID; 572 deUint32 offset; 573 deUintptr size; 574}; 575 576struct VkSpecializationInfo 577{ 578 deUint32 mapEntryCount; 579 const VkSpecializationMapEntry* pMapEntries; 580 deUintptr dataSize; 581 const void* pData; 582}; 583 584struct VkPipelineShaderStageCreateInfo 585{ 586 VkStructureType sType; 587 const void* pNext; 588 VkPipelineShaderStageCreateFlags flags; 589 VkShaderStageFlagBits stage; 590 VkShaderModule module; 591 const char* pName; 592 const VkSpecializationInfo* pSpecializationInfo; 593}; 594 595struct VkVertexInputBindingDescription 596{ 597 deUint32 binding; 598 deUint32 stride; 599 VkVertexInputRate inputRate; 600}; 601 602struct VkVertexInputAttributeDescription 603{ 604 deUint32 location; 605 deUint32 binding; 606 VkFormat format; 607 deUint32 offset; 608}; 609 610struct VkPipelineVertexInputStateCreateInfo 611{ 612 VkStructureType sType; 613 const void* pNext; 614 VkPipelineVertexInputStateCreateFlags flags; 615 deUint32 vertexBindingDescriptionCount; 616 const VkVertexInputBindingDescription* pVertexBindingDescriptions; 617 deUint32 vertexAttributeDescriptionCount; 618 const VkVertexInputAttributeDescription* pVertexAttributeDescriptions; 619}; 620 621struct VkPipelineInputAssemblyStateCreateInfo 622{ 623 VkStructureType sType; 624 const void* pNext; 625 VkPipelineInputAssemblyStateCreateFlags flags; 626 VkPrimitiveTopology topology; 627 VkBool32 primitiveRestartEnable; 628}; 629 630struct VkPipelineTessellationStateCreateInfo 631{ 632 VkStructureType sType; 633 const void* pNext; 634 VkPipelineTessellationStateCreateFlags flags; 635 deUint32 patchControlPoints; 636}; 637 638struct VkViewport 639{ 640 float x; 641 float y; 642 float width; 643 float height; 644 float minDepth; 645 float maxDepth; 646}; 647 648struct VkOffset2D 649{ 650 deInt32 x; 651 deInt32 y; 652}; 653 654struct VkExtent2D 655{ 656 deUint32 width; 657 deUint32 height; 658}; 659 660struct VkRect2D 661{ 662 VkOffset2D offset; 663 VkExtent2D extent; 664}; 665 666struct VkPipelineViewportStateCreateInfo 667{ 668 VkStructureType sType; 669 const void* pNext; 670 VkPipelineViewportStateCreateFlags flags; 671 deUint32 viewportCount; 672 const VkViewport* pViewports; 673 deUint32 scissorCount; 674 const VkRect2D* pScissors; 675}; 676 677struct VkPipelineRasterizationStateCreateInfo 678{ 679 VkStructureType sType; 680 const void* pNext; 681 VkPipelineRasterizationStateCreateFlags flags; 682 VkBool32 depthClampEnable; 683 VkBool32 rasterizerDiscardEnable; 684 VkPolygonMode polygonMode; 685 VkCullModeFlags cullMode; 686 VkFrontFace frontFace; 687 VkBool32 depthBiasEnable; 688 float depthBiasConstantFactor; 689 float depthBiasClamp; 690 float depthBiasSlopeFactor; 691 float lineWidth; 692}; 693 694struct VkPipelineMultisampleStateCreateInfo 695{ 696 VkStructureType sType; 697 const void* pNext; 698 VkPipelineMultisampleStateCreateFlags flags; 699 VkSampleCountFlagBits rasterizationSamples; 700 VkBool32 sampleShadingEnable; 701 float minSampleShading; 702 const VkSampleMask* pSampleMask; 703 VkBool32 alphaToCoverageEnable; 704 VkBool32 alphaToOneEnable; 705}; 706 707struct VkStencilOpState 708{ 709 VkStencilOp failOp; 710 VkStencilOp passOp; 711 VkStencilOp depthFailOp; 712 VkCompareOp compareOp; 713 deUint32 compareMask; 714 deUint32 writeMask; 715 deUint32 reference; 716}; 717 718struct VkPipelineDepthStencilStateCreateInfo 719{ 720 VkStructureType sType; 721 const void* pNext; 722 VkPipelineDepthStencilStateCreateFlags flags; 723 VkBool32 depthTestEnable; 724 VkBool32 depthWriteEnable; 725 VkCompareOp depthCompareOp; 726 VkBool32 depthBoundsTestEnable; 727 VkBool32 stencilTestEnable; 728 VkStencilOpState front; 729 VkStencilOpState back; 730 float minDepthBounds; 731 float maxDepthBounds; 732}; 733 734struct VkPipelineColorBlendAttachmentState 735{ 736 VkBool32 blendEnable; 737 VkBlendFactor srcColorBlendFactor; 738 VkBlendFactor dstColorBlendFactor; 739 VkBlendOp colorBlendOp; 740 VkBlendFactor srcAlphaBlendFactor; 741 VkBlendFactor dstAlphaBlendFactor; 742 VkBlendOp alphaBlendOp; 743 VkColorComponentFlags colorWriteMask; 744}; 745 746struct VkPipelineColorBlendStateCreateInfo 747{ 748 VkStructureType sType; 749 const void* pNext; 750 VkPipelineColorBlendStateCreateFlags flags; 751 VkBool32 logicOpEnable; 752 VkLogicOp logicOp; 753 deUint32 attachmentCount; 754 const VkPipelineColorBlendAttachmentState* pAttachments; 755 float blendConstants[4]; 756}; 757 758struct VkPipelineDynamicStateCreateInfo 759{ 760 VkStructureType sType; 761 const void* pNext; 762 VkPipelineDynamicStateCreateFlags flags; 763 deUint32 dynamicStateCount; 764 const VkDynamicState* pDynamicStates; 765}; 766 767struct VkGraphicsPipelineCreateInfo 768{ 769 VkStructureType sType; 770 const void* pNext; 771 VkPipelineCreateFlags flags; 772 deUint32 stageCount; 773 const VkPipelineShaderStageCreateInfo* pStages; 774 const VkPipelineVertexInputStateCreateInfo* pVertexInputState; 775 const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState; 776 const VkPipelineTessellationStateCreateInfo* pTessellationState; 777 const VkPipelineViewportStateCreateInfo* pViewportState; 778 const VkPipelineRasterizationStateCreateInfo* pRasterizationState; 779 const VkPipelineMultisampleStateCreateInfo* pMultisampleState; 780 const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState; 781 const VkPipelineColorBlendStateCreateInfo* pColorBlendState; 782 const VkPipelineDynamicStateCreateInfo* pDynamicState; 783 VkPipelineLayout layout; 784 VkRenderPass renderPass; 785 deUint32 subpass; 786 VkPipeline basePipelineHandle; 787 deInt32 basePipelineIndex; 788}; 789 790struct VkComputePipelineCreateInfo 791{ 792 VkStructureType sType; 793 const void* pNext; 794 VkPipelineCreateFlags flags; 795 VkPipelineShaderStageCreateInfo stage; 796 VkPipelineLayout layout; 797 VkPipeline basePipelineHandle; 798 deInt32 basePipelineIndex; 799}; 800 801struct VkPushConstantRange 802{ 803 VkShaderStageFlags stageFlags; 804 deUint32 offset; 805 deUint32 size; 806}; 807 808struct VkPipelineLayoutCreateInfo 809{ 810 VkStructureType sType; 811 const void* pNext; 812 VkPipelineLayoutCreateFlags flags; 813 deUint32 setLayoutCount; 814 const VkDescriptorSetLayout* pSetLayouts; 815 deUint32 pushConstantRangeCount; 816 const VkPushConstantRange* pPushConstantRanges; 817}; 818 819struct VkSamplerCreateInfo 820{ 821 VkStructureType sType; 822 const void* pNext; 823 VkSamplerCreateFlags flags; 824 VkFilter magFilter; 825 VkFilter minFilter; 826 VkSamplerMipmapMode mipmapMode; 827 VkSamplerAddressMode addressModeU; 828 VkSamplerAddressMode addressModeV; 829 VkSamplerAddressMode addressModeW; 830 float mipLodBias; 831 VkBool32 anisotropyEnable; 832 float maxAnisotropy; 833 VkBool32 compareEnable; 834 VkCompareOp compareOp; 835 float minLod; 836 float maxLod; 837 VkBorderColor borderColor; 838 VkBool32 unnormalizedCoordinates; 839}; 840 841struct VkDescriptorSetLayoutBinding 842{ 843 deUint32 binding; 844 VkDescriptorType descriptorType; 845 deUint32 descriptorCount; 846 VkShaderStageFlags stageFlags; 847 const VkSampler* pImmutableSamplers; 848}; 849 850struct VkDescriptorSetLayoutCreateInfo 851{ 852 VkStructureType sType; 853 const void* pNext; 854 VkDescriptorSetLayoutCreateFlags flags; 855 deUint32 bindingCount; 856 const VkDescriptorSetLayoutBinding* pBindings; 857}; 858 859struct VkDescriptorPoolSize 860{ 861 VkDescriptorType type; 862 deUint32 descriptorCount; 863}; 864 865struct VkDescriptorPoolCreateInfo 866{ 867 VkStructureType sType; 868 const void* pNext; 869 VkDescriptorPoolCreateFlags flags; 870 deUint32 maxSets; 871 deUint32 poolSizeCount; 872 const VkDescriptorPoolSize* pPoolSizes; 873}; 874 875struct VkDescriptorSetAllocateInfo 876{ 877 VkStructureType sType; 878 const void* pNext; 879 VkDescriptorPool descriptorPool; 880 deUint32 descriptorSetCount; 881 const VkDescriptorSetLayout* pSetLayouts; 882}; 883 884struct VkDescriptorImageInfo 885{ 886 VkSampler sampler; 887 VkImageView imageView; 888 VkImageLayout imageLayout; 889}; 890 891struct VkDescriptorBufferInfo 892{ 893 VkBuffer buffer; 894 VkDeviceSize offset; 895 VkDeviceSize range; 896}; 897 898struct VkWriteDescriptorSet 899{ 900 VkStructureType sType; 901 const void* pNext; 902 VkDescriptorSet dstSet; 903 deUint32 dstBinding; 904 deUint32 dstArrayElement; 905 deUint32 descriptorCount; 906 VkDescriptorType descriptorType; 907 const VkDescriptorImageInfo* pImageInfo; 908 const VkDescriptorBufferInfo* pBufferInfo; 909 const VkBufferView* pTexelBufferView; 910}; 911 912struct VkCopyDescriptorSet 913{ 914 VkStructureType sType; 915 const void* pNext; 916 VkDescriptorSet srcSet; 917 deUint32 srcBinding; 918 deUint32 srcArrayElement; 919 VkDescriptorSet dstSet; 920 deUint32 dstBinding; 921 deUint32 dstArrayElement; 922 deUint32 descriptorCount; 923}; 924 925struct VkFramebufferCreateInfo 926{ 927 VkStructureType sType; 928 const void* pNext; 929 VkFramebufferCreateFlags flags; 930 VkRenderPass renderPass; 931 deUint32 attachmentCount; 932 const VkImageView* pAttachments; 933 deUint32 width; 934 deUint32 height; 935 deUint32 layers; 936}; 937 938struct VkAttachmentDescription 939{ 940 VkAttachmentDescriptionFlags flags; 941 VkFormat format; 942 VkSampleCountFlagBits samples; 943 VkAttachmentLoadOp loadOp; 944 VkAttachmentStoreOp storeOp; 945 VkAttachmentLoadOp stencilLoadOp; 946 VkAttachmentStoreOp stencilStoreOp; 947 VkImageLayout initialLayout; 948 VkImageLayout finalLayout; 949}; 950 951struct VkAttachmentReference 952{ 953 deUint32 attachment; 954 VkImageLayout layout; 955}; 956 957struct VkSubpassDescription 958{ 959 VkSubpassDescriptionFlags flags; 960 VkPipelineBindPoint pipelineBindPoint; 961 deUint32 inputAttachmentCount; 962 const VkAttachmentReference* pInputAttachments; 963 deUint32 colorAttachmentCount; 964 const VkAttachmentReference* pColorAttachments; 965 const VkAttachmentReference* pResolveAttachments; 966 const VkAttachmentReference* pDepthStencilAttachment; 967 deUint32 preserveAttachmentCount; 968 const deUint32* pPreserveAttachments; 969}; 970 971struct VkSubpassDependency 972{ 973 deUint32 srcSubpass; 974 deUint32 dstSubpass; 975 VkPipelineStageFlags srcStageMask; 976 VkPipelineStageFlags dstStageMask; 977 VkAccessFlags srcAccessMask; 978 VkAccessFlags dstAccessMask; 979 VkDependencyFlags dependencyFlags; 980}; 981 982struct VkRenderPassCreateInfo 983{ 984 VkStructureType sType; 985 const void* pNext; 986 VkRenderPassCreateFlags flags; 987 deUint32 attachmentCount; 988 const VkAttachmentDescription* pAttachments; 989 deUint32 subpassCount; 990 const VkSubpassDescription* pSubpasses; 991 deUint32 dependencyCount; 992 const VkSubpassDependency* pDependencies; 993}; 994 995struct VkCommandPoolCreateInfo 996{ 997 VkStructureType sType; 998 const void* pNext; 999 VkCommandPoolCreateFlags flags; 1000 deUint32 queueFamilyIndex; 1001}; 1002 1003struct VkCommandBufferAllocateInfo 1004{ 1005 VkStructureType sType; 1006 const void* pNext; 1007 VkCommandPool commandPool; 1008 VkCommandBufferLevel level; 1009 deUint32 commandBufferCount; 1010}; 1011 1012struct VkCommandBufferInheritanceInfo 1013{ 1014 VkStructureType sType; 1015 const void* pNext; 1016 VkRenderPass renderPass; 1017 deUint32 subpass; 1018 VkFramebuffer framebuffer; 1019 VkBool32 occlusionQueryEnable; 1020 VkQueryControlFlags queryFlags; 1021 VkQueryPipelineStatisticFlags pipelineStatistics; 1022}; 1023 1024struct VkCommandBufferBeginInfo 1025{ 1026 VkStructureType sType; 1027 const void* pNext; 1028 VkCommandBufferUsageFlags flags; 1029 const VkCommandBufferInheritanceInfo* pInheritanceInfo; 1030}; 1031 1032struct VkBufferCopy 1033{ 1034 VkDeviceSize srcOffset; 1035 VkDeviceSize dstOffset; 1036 VkDeviceSize size; 1037}; 1038 1039struct VkImageSubresourceLayers 1040{ 1041 VkImageAspectFlags aspectMask; 1042 deUint32 mipLevel; 1043 deUint32 baseArrayLayer; 1044 deUint32 layerCount; 1045}; 1046 1047struct VkImageCopy 1048{ 1049 VkImageSubresourceLayers srcSubresource; 1050 VkOffset3D srcOffset; 1051 VkImageSubresourceLayers dstSubresource; 1052 VkOffset3D dstOffset; 1053 VkExtent3D extent; 1054}; 1055 1056struct VkImageBlit 1057{ 1058 VkImageSubresourceLayers srcSubresource; 1059 VkOffset3D srcOffsets[2]; 1060 VkImageSubresourceLayers dstSubresource; 1061 VkOffset3D dstOffsets[2]; 1062}; 1063 1064struct VkBufferImageCopy 1065{ 1066 VkDeviceSize bufferOffset; 1067 deUint32 bufferRowLength; 1068 deUint32 bufferImageHeight; 1069 VkImageSubresourceLayers imageSubresource; 1070 VkOffset3D imageOffset; 1071 VkExtent3D imageExtent; 1072}; 1073 1074union VkClearColorValue 1075{ 1076 float float32[4]; 1077 deInt32 int32[4]; 1078 deUint32 uint32[4]; 1079}; 1080 1081struct VkClearDepthStencilValue 1082{ 1083 float depth; 1084 deUint32 stencil; 1085}; 1086 1087union VkClearValue 1088{ 1089 VkClearColorValue color; 1090 VkClearDepthStencilValue depthStencil; 1091}; 1092 1093struct VkClearAttachment 1094{ 1095 VkImageAspectFlags aspectMask; 1096 deUint32 colorAttachment; 1097 VkClearValue clearValue; 1098}; 1099 1100struct VkClearRect 1101{ 1102 VkRect2D rect; 1103 deUint32 baseArrayLayer; 1104 deUint32 layerCount; 1105}; 1106 1107struct VkImageResolve 1108{ 1109 VkImageSubresourceLayers srcSubresource; 1110 VkOffset3D srcOffset; 1111 VkImageSubresourceLayers dstSubresource; 1112 VkOffset3D dstOffset; 1113 VkExtent3D extent; 1114}; 1115 1116struct VkMemoryBarrier 1117{ 1118 VkStructureType sType; 1119 const void* pNext; 1120 VkAccessFlags srcAccessMask; 1121 VkAccessFlags dstAccessMask; 1122}; 1123 1124struct VkBufferMemoryBarrier 1125{ 1126 VkStructureType sType; 1127 const void* pNext; 1128 VkAccessFlags srcAccessMask; 1129 VkAccessFlags dstAccessMask; 1130 deUint32 srcQueueFamilyIndex; 1131 deUint32 dstQueueFamilyIndex; 1132 VkBuffer buffer; 1133 VkDeviceSize offset; 1134 VkDeviceSize size; 1135}; 1136 1137struct VkImageMemoryBarrier 1138{ 1139 VkStructureType sType; 1140 const void* pNext; 1141 VkAccessFlags srcAccessMask; 1142 VkAccessFlags dstAccessMask; 1143 VkImageLayout oldLayout; 1144 VkImageLayout newLayout; 1145 deUint32 srcQueueFamilyIndex; 1146 deUint32 dstQueueFamilyIndex; 1147 VkImage image; 1148 VkImageSubresourceRange subresourceRange; 1149}; 1150 1151struct VkRenderPassBeginInfo 1152{ 1153 VkStructureType sType; 1154 const void* pNext; 1155 VkRenderPass renderPass; 1156 VkFramebuffer framebuffer; 1157 VkRect2D renderArea; 1158 deUint32 clearValueCount; 1159 const VkClearValue* pClearValues; 1160}; 1161 1162struct VkDispatchIndirectCommand 1163{ 1164 deUint32 x; 1165 deUint32 y; 1166 deUint32 z; 1167}; 1168 1169struct VkDrawIndexedIndirectCommand 1170{ 1171 deUint32 indexCount; 1172 deUint32 instanceCount; 1173 deUint32 firstIndex; 1174 deInt32 vertexOffset; 1175 deUint32 firstInstance; 1176}; 1177 1178struct VkDrawIndirectCommand 1179{ 1180 deUint32 vertexCount; 1181 deUint32 instanceCount; 1182 deUint32 firstVertex; 1183 deUint32 firstInstance; 1184}; 1185 1186struct VkBaseOutStructure 1187{ 1188 VkStructureType sType; 1189 struct VkBaseOutStructure* pNext; 1190}; 1191 1192struct VkBaseInStructure 1193{ 1194 VkStructureType sType; 1195 const struct VkBaseInStructure* pNext; 1196}; 1197 1198struct VkPhysicalDeviceSubgroupProperties 1199{ 1200 VkStructureType sType; 1201 void* pNext; 1202 deUint32 subgroupSize; 1203 VkShaderStageFlags supportedStages; 1204 VkSubgroupFeatureFlags supportedOperations; 1205 VkBool32 quadOperationsInAllStages; 1206}; 1207 1208struct VkBindBufferMemoryInfo 1209{ 1210 VkStructureType sType; 1211 const void* pNext; 1212 VkBuffer buffer; 1213 VkDeviceMemory memory; 1214 VkDeviceSize memoryOffset; 1215}; 1216 1217struct VkBindImageMemoryInfo 1218{ 1219 VkStructureType sType; 1220 const void* pNext; 1221 VkImage image; 1222 VkDeviceMemory memory; 1223 VkDeviceSize memoryOffset; 1224}; 1225 1226struct VkPhysicalDevice16BitStorageFeatures 1227{ 1228 VkStructureType sType; 1229 void* pNext; 1230 VkBool32 storageBuffer16BitAccess; 1231 VkBool32 uniformAndStorageBuffer16BitAccess; 1232 VkBool32 storagePushConstant16; 1233 VkBool32 storageInputOutput16; 1234}; 1235 1236struct VkMemoryDedicatedRequirements 1237{ 1238 VkStructureType sType; 1239 void* pNext; 1240 VkBool32 prefersDedicatedAllocation; 1241 VkBool32 requiresDedicatedAllocation; 1242}; 1243 1244struct VkMemoryDedicatedAllocateInfo 1245{ 1246 VkStructureType sType; 1247 const void* pNext; 1248 VkImage image; 1249 VkBuffer buffer; 1250}; 1251 1252struct VkMemoryAllocateFlagsInfo 1253{ 1254 VkStructureType sType; 1255 const void* pNext; 1256 VkMemoryAllocateFlags flags; 1257 deUint32 deviceMask; 1258}; 1259 1260struct VkDeviceGroupRenderPassBeginInfo 1261{ 1262 VkStructureType sType; 1263 const void* pNext; 1264 deUint32 deviceMask; 1265 deUint32 deviceRenderAreaCount; 1266 const VkRect2D* pDeviceRenderAreas; 1267}; 1268 1269struct VkDeviceGroupCommandBufferBeginInfo 1270{ 1271 VkStructureType sType; 1272 const void* pNext; 1273 deUint32 deviceMask; 1274}; 1275 1276struct VkDeviceGroupSubmitInfo 1277{ 1278 VkStructureType sType; 1279 const void* pNext; 1280 deUint32 waitSemaphoreCount; 1281 const deUint32* pWaitSemaphoreDeviceIndices; 1282 deUint32 commandBufferCount; 1283 const deUint32* pCommandBufferDeviceMasks; 1284 deUint32 signalSemaphoreCount; 1285 const deUint32* pSignalSemaphoreDeviceIndices; 1286}; 1287 1288struct VkDeviceGroupBindSparseInfo 1289{ 1290 VkStructureType sType; 1291 const void* pNext; 1292 deUint32 resourceDeviceIndex; 1293 deUint32 memoryDeviceIndex; 1294}; 1295 1296struct VkBindBufferMemoryDeviceGroupInfo 1297{ 1298 VkStructureType sType; 1299 const void* pNext; 1300 deUint32 deviceIndexCount; 1301 const deUint32* pDeviceIndices; 1302}; 1303 1304struct VkBindImageMemoryDeviceGroupInfo 1305{ 1306 VkStructureType sType; 1307 const void* pNext; 1308 deUint32 deviceIndexCount; 1309 const deUint32* pDeviceIndices; 1310 deUint32 splitInstanceBindRegionCount; 1311 const VkRect2D* pSplitInstanceBindRegions; 1312}; 1313 1314struct VkPhysicalDeviceGroupProperties 1315{ 1316 VkStructureType sType; 1317 void* pNext; 1318 deUint32 physicalDeviceCount; 1319 VkPhysicalDevice physicalDevices[VK_MAX_DEVICE_GROUP_SIZE]; 1320 VkBool32 subsetAllocation; 1321}; 1322 1323struct VkDeviceGroupDeviceCreateInfo 1324{ 1325 VkStructureType sType; 1326 const void* pNext; 1327 deUint32 physicalDeviceCount; 1328 const VkPhysicalDevice* pPhysicalDevices; 1329}; 1330 1331struct VkBufferMemoryRequirementsInfo2 1332{ 1333 VkStructureType sType; 1334 const void* pNext; 1335 VkBuffer buffer; 1336}; 1337 1338struct VkImageMemoryRequirementsInfo2 1339{ 1340 VkStructureType sType; 1341 const void* pNext; 1342 VkImage image; 1343}; 1344 1345struct VkImageSparseMemoryRequirementsInfo2 1346{ 1347 VkStructureType sType; 1348 const void* pNext; 1349 VkImage image; 1350}; 1351 1352struct VkMemoryRequirements2 1353{ 1354 VkStructureType sType; 1355 void* pNext; 1356 VkMemoryRequirements memoryRequirements; 1357}; 1358 1359struct VkSparseImageMemoryRequirements2 1360{ 1361 VkStructureType sType; 1362 void* pNext; 1363 VkSparseImageMemoryRequirements memoryRequirements; 1364}; 1365 1366struct VkPhysicalDeviceFeatures2 1367{ 1368 VkStructureType sType; 1369 void* pNext; 1370 VkPhysicalDeviceFeatures features; 1371}; 1372 1373struct VkPhysicalDeviceProperties2 1374{ 1375 VkStructureType sType; 1376 void* pNext; 1377 VkPhysicalDeviceProperties properties; 1378}; 1379 1380struct VkFormatProperties2 1381{ 1382 VkStructureType sType; 1383 void* pNext; 1384 VkFormatProperties formatProperties; 1385}; 1386 1387struct VkImageFormatProperties2 1388{ 1389 VkStructureType sType; 1390 void* pNext; 1391 VkImageFormatProperties imageFormatProperties; 1392}; 1393 1394struct VkPhysicalDeviceImageFormatInfo2 1395{ 1396 VkStructureType sType; 1397 const void* pNext; 1398 VkFormat format; 1399 VkImageType type; 1400 VkImageTiling tiling; 1401 VkImageUsageFlags usage; 1402 VkImageCreateFlags flags; 1403}; 1404 1405struct VkQueueFamilyProperties2 1406{ 1407 VkStructureType sType; 1408 void* pNext; 1409 VkQueueFamilyProperties queueFamilyProperties; 1410}; 1411 1412struct VkPhysicalDeviceMemoryProperties2 1413{ 1414 VkStructureType sType; 1415 void* pNext; 1416 VkPhysicalDeviceMemoryProperties memoryProperties; 1417}; 1418 1419struct VkSparseImageFormatProperties2 1420{ 1421 VkStructureType sType; 1422 void* pNext; 1423 VkSparseImageFormatProperties properties; 1424}; 1425 1426struct VkPhysicalDeviceSparseImageFormatInfo2 1427{ 1428 VkStructureType sType; 1429 const void* pNext; 1430 VkFormat format; 1431 VkImageType type; 1432 VkSampleCountFlagBits samples; 1433 VkImageUsageFlags usage; 1434 VkImageTiling tiling; 1435}; 1436 1437struct VkPhysicalDevicePointClippingProperties 1438{ 1439 VkStructureType sType; 1440 void* pNext; 1441 VkPointClippingBehavior pointClippingBehavior; 1442}; 1443 1444struct VkInputAttachmentAspectReference 1445{ 1446 deUint32 subpass; 1447 deUint32 inputAttachmentIndex; 1448 VkImageAspectFlags aspectMask; 1449}; 1450 1451struct VkRenderPassInputAttachmentAspectCreateInfo 1452{ 1453 VkStructureType sType; 1454 const void* pNext; 1455 deUint32 aspectReferenceCount; 1456 const VkInputAttachmentAspectReference* pAspectReferences; 1457}; 1458 1459struct VkImageViewUsageCreateInfo 1460{ 1461 VkStructureType sType; 1462 const void* pNext; 1463 VkImageUsageFlags usage; 1464}; 1465 1466struct VkPipelineTessellationDomainOriginStateCreateInfo 1467{ 1468 VkStructureType sType; 1469 const void* pNext; 1470 VkTessellationDomainOrigin domainOrigin; 1471}; 1472 1473struct VkRenderPassMultiviewCreateInfo 1474{ 1475 VkStructureType sType; 1476 const void* pNext; 1477 deUint32 subpassCount; 1478 const deUint32* pViewMasks; 1479 deUint32 dependencyCount; 1480 const deInt32* pViewOffsets; 1481 deUint32 correlationMaskCount; 1482 const deUint32* pCorrelationMasks; 1483}; 1484 1485struct VkPhysicalDeviceMultiviewFeatures 1486{ 1487 VkStructureType sType; 1488 void* pNext; 1489 VkBool32 multiview; 1490 VkBool32 multiviewGeometryShader; 1491 VkBool32 multiviewTessellationShader; 1492}; 1493 1494struct VkPhysicalDeviceMultiviewProperties 1495{ 1496 VkStructureType sType; 1497 void* pNext; 1498 deUint32 maxMultiviewViewCount; 1499 deUint32 maxMultiviewInstanceIndex; 1500}; 1501 1502struct VkPhysicalDeviceVariablePointersFeatures 1503{ 1504 VkStructureType sType; 1505 void* pNext; 1506 VkBool32 variablePointersStorageBuffer; 1507 VkBool32 variablePointers; 1508}; 1509 1510struct VkPhysicalDeviceProtectedMemoryFeatures 1511{ 1512 VkStructureType sType; 1513 void* pNext; 1514 VkBool32 protectedMemory; 1515}; 1516 1517struct VkPhysicalDeviceProtectedMemoryProperties 1518{ 1519 VkStructureType sType; 1520 void* pNext; 1521 VkBool32 protectedNoFault; 1522}; 1523 1524struct VkDeviceQueueInfo2 1525{ 1526 VkStructureType sType; 1527 const void* pNext; 1528 VkDeviceQueueCreateFlags flags; 1529 deUint32 queueFamilyIndex; 1530 deUint32 queueIndex; 1531}; 1532 1533struct VkProtectedSubmitInfo 1534{ 1535 VkStructureType sType; 1536 const void* pNext; 1537 VkBool32 protectedSubmit; 1538}; 1539 1540struct VkSamplerYcbcrConversionCreateInfo 1541{ 1542 VkStructureType sType; 1543 const void* pNext; 1544 VkFormat format; 1545 VkSamplerYcbcrModelConversion ycbcrModel; 1546 VkSamplerYcbcrRange ycbcrRange; 1547 VkComponentMapping components; 1548 VkChromaLocation xChromaOffset; 1549 VkChromaLocation yChromaOffset; 1550 VkFilter chromaFilter; 1551 VkBool32 forceExplicitReconstruction; 1552}; 1553 1554struct VkSamplerYcbcrConversionInfo 1555{ 1556 VkStructureType sType; 1557 const void* pNext; 1558 VkSamplerYcbcrConversion conversion; 1559}; 1560 1561struct VkBindImagePlaneMemoryInfo 1562{ 1563 VkStructureType sType; 1564 const void* pNext; 1565 VkImageAspectFlagBits planeAspect; 1566}; 1567 1568struct VkImagePlaneMemoryRequirementsInfo 1569{ 1570 VkStructureType sType; 1571 const void* pNext; 1572 VkImageAspectFlagBits planeAspect; 1573}; 1574 1575struct VkPhysicalDeviceSamplerYcbcrConversionFeatures 1576{ 1577 VkStructureType sType; 1578 void* pNext; 1579 VkBool32 samplerYcbcrConversion; 1580}; 1581 1582struct VkSamplerYcbcrConversionImageFormatProperties 1583{ 1584 VkStructureType sType; 1585 void* pNext; 1586 deUint32 combinedImageSamplerDescriptorCount; 1587}; 1588 1589struct VkDescriptorUpdateTemplateEntry 1590{ 1591 deUint32 dstBinding; 1592 deUint32 dstArrayElement; 1593 deUint32 descriptorCount; 1594 VkDescriptorType descriptorType; 1595 deUintptr offset; 1596 deUintptr stride; 1597}; 1598 1599struct VkDescriptorUpdateTemplateCreateInfo 1600{ 1601 VkStructureType sType; 1602 const void* pNext; 1603 VkDescriptorUpdateTemplateCreateFlags flags; 1604 deUint32 descriptorUpdateEntryCount; 1605 const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries; 1606 VkDescriptorUpdateTemplateType templateType; 1607 VkDescriptorSetLayout descriptorSetLayout; 1608 VkPipelineBindPoint pipelineBindPoint; 1609 VkPipelineLayout pipelineLayout; 1610 deUint32 set; 1611}; 1612 1613struct VkExternalMemoryProperties 1614{ 1615 VkExternalMemoryFeatureFlags externalMemoryFeatures; 1616 VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes; 1617 VkExternalMemoryHandleTypeFlags compatibleHandleTypes; 1618}; 1619 1620struct VkPhysicalDeviceExternalImageFormatInfo 1621{ 1622 VkStructureType sType; 1623 const void* pNext; 1624 VkExternalMemoryHandleTypeFlagBits handleType; 1625}; 1626 1627struct VkExternalImageFormatProperties 1628{ 1629 VkStructureType sType; 1630 void* pNext; 1631 VkExternalMemoryProperties externalMemoryProperties; 1632}; 1633 1634struct VkPhysicalDeviceExternalBufferInfo 1635{ 1636 VkStructureType sType; 1637 const void* pNext; 1638 VkBufferCreateFlags flags; 1639 VkBufferUsageFlags usage; 1640 VkExternalMemoryHandleTypeFlagBits handleType; 1641}; 1642 1643struct VkExternalBufferProperties 1644{ 1645 VkStructureType sType; 1646 void* pNext; 1647 VkExternalMemoryProperties externalMemoryProperties; 1648}; 1649 1650struct VkPhysicalDeviceIDProperties 1651{ 1652 VkStructureType sType; 1653 void* pNext; 1654 deUint8 deviceUUID[VK_UUID_SIZE]; 1655 deUint8 driverUUID[VK_UUID_SIZE]; 1656 deUint8 deviceLUID[VK_LUID_SIZE]; 1657 deUint32 deviceNodeMask; 1658 VkBool32 deviceLUIDValid; 1659}; 1660 1661struct VkExternalMemoryImageCreateInfo 1662{ 1663 VkStructureType sType; 1664 const void* pNext; 1665 VkExternalMemoryHandleTypeFlags handleTypes; 1666}; 1667 1668struct VkExternalMemoryBufferCreateInfo 1669{ 1670 VkStructureType sType; 1671 const void* pNext; 1672 VkExternalMemoryHandleTypeFlags handleTypes; 1673}; 1674 1675struct VkExportMemoryAllocateInfo 1676{ 1677 VkStructureType sType; 1678 const void* pNext; 1679 VkExternalMemoryHandleTypeFlags handleTypes; 1680}; 1681 1682struct VkPhysicalDeviceExternalFenceInfo 1683{ 1684 VkStructureType sType; 1685 const void* pNext; 1686 VkExternalFenceHandleTypeFlagBits handleType; 1687}; 1688 1689struct VkExternalFenceProperties 1690{ 1691 VkStructureType sType; 1692 void* pNext; 1693 VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes; 1694 VkExternalFenceHandleTypeFlags compatibleHandleTypes; 1695 VkExternalFenceFeatureFlags externalFenceFeatures; 1696}; 1697 1698struct VkExportFenceCreateInfo 1699{ 1700 VkStructureType sType; 1701 const void* pNext; 1702 VkExternalFenceHandleTypeFlags handleTypes; 1703}; 1704 1705struct VkExportSemaphoreCreateInfo 1706{ 1707 VkStructureType sType; 1708 const void* pNext; 1709 VkExternalSemaphoreHandleTypeFlags handleTypes; 1710}; 1711 1712struct VkPhysicalDeviceExternalSemaphoreInfo 1713{ 1714 VkStructureType sType; 1715 const void* pNext; 1716 VkExternalSemaphoreHandleTypeFlagBits handleType; 1717}; 1718 1719struct VkExternalSemaphoreProperties 1720{ 1721 VkStructureType sType; 1722 void* pNext; 1723 VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes; 1724 VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes; 1725 VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures; 1726}; 1727 1728struct VkPhysicalDeviceMaintenance3Properties 1729{ 1730 VkStructureType sType; 1731 void* pNext; 1732 deUint32 maxPerSetDescriptors; 1733 VkDeviceSize maxMemoryAllocationSize; 1734}; 1735 1736struct VkDescriptorSetLayoutSupport 1737{ 1738 VkStructureType sType; 1739 void* pNext; 1740 VkBool32 supported; 1741}; 1742 1743struct VkPhysicalDeviceShaderDrawParametersFeatures 1744{ 1745 VkStructureType sType; 1746 void* pNext; 1747 VkBool32 shaderDrawParameters; 1748}; 1749 1750struct VkPhysicalDeviceVulkan11Features 1751{ 1752 VkStructureType sType; 1753 void* pNext; 1754 VkBool32 storageBuffer16BitAccess; 1755 VkBool32 uniformAndStorageBuffer16BitAccess; 1756 VkBool32 storagePushConstant16; 1757 VkBool32 storageInputOutput16; 1758 VkBool32 multiview; 1759 VkBool32 multiviewGeometryShader; 1760 VkBool32 multiviewTessellationShader; 1761 VkBool32 variablePointersStorageBuffer; 1762 VkBool32 variablePointers; 1763 VkBool32 protectedMemory; 1764 VkBool32 samplerYcbcrConversion; 1765 VkBool32 shaderDrawParameters; 1766}; 1767 1768struct VkPhysicalDeviceVulkan11Properties 1769{ 1770 VkStructureType sType; 1771 void* pNext; 1772 deUint8 deviceUUID[VK_UUID_SIZE]; 1773 deUint8 driverUUID[VK_UUID_SIZE]; 1774 deUint8 deviceLUID[VK_LUID_SIZE]; 1775 deUint32 deviceNodeMask; 1776 VkBool32 deviceLUIDValid; 1777 deUint32 subgroupSize; 1778 VkShaderStageFlags subgroupSupportedStages; 1779 VkSubgroupFeatureFlags subgroupSupportedOperations; 1780 VkBool32 subgroupQuadOperationsInAllStages; 1781 VkPointClippingBehavior pointClippingBehavior; 1782 deUint32 maxMultiviewViewCount; 1783 deUint32 maxMultiviewInstanceIndex; 1784 VkBool32 protectedNoFault; 1785 deUint32 maxPerSetDescriptors; 1786 VkDeviceSize maxMemoryAllocationSize; 1787}; 1788 1789struct VkPhysicalDeviceVulkan12Features 1790{ 1791 VkStructureType sType; 1792 void* pNext; 1793 VkBool32 samplerMirrorClampToEdge; 1794 VkBool32 drawIndirectCount; 1795 VkBool32 storageBuffer8BitAccess; 1796 VkBool32 uniformAndStorageBuffer8BitAccess; 1797 VkBool32 storagePushConstant8; 1798 VkBool32 shaderBufferInt64Atomics; 1799 VkBool32 shaderSharedInt64Atomics; 1800 VkBool32 shaderFloat16; 1801 VkBool32 shaderInt8; 1802 VkBool32 descriptorIndexing; 1803 VkBool32 shaderInputAttachmentArrayDynamicIndexing; 1804 VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; 1805 VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; 1806 VkBool32 shaderUniformBufferArrayNonUniformIndexing; 1807 VkBool32 shaderSampledImageArrayNonUniformIndexing; 1808 VkBool32 shaderStorageBufferArrayNonUniformIndexing; 1809 VkBool32 shaderStorageImageArrayNonUniformIndexing; 1810 VkBool32 shaderInputAttachmentArrayNonUniformIndexing; 1811 VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; 1812 VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; 1813 VkBool32 descriptorBindingUniformBufferUpdateAfterBind; 1814 VkBool32 descriptorBindingSampledImageUpdateAfterBind; 1815 VkBool32 descriptorBindingStorageImageUpdateAfterBind; 1816 VkBool32 descriptorBindingStorageBufferUpdateAfterBind; 1817 VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; 1818 VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; 1819 VkBool32 descriptorBindingUpdateUnusedWhilePending; 1820 VkBool32 descriptorBindingPartiallyBound; 1821 VkBool32 descriptorBindingVariableDescriptorCount; 1822 VkBool32 runtimeDescriptorArray; 1823 VkBool32 samplerFilterMinmax; 1824 VkBool32 scalarBlockLayout; 1825 VkBool32 imagelessFramebuffer; 1826 VkBool32 uniformBufferStandardLayout; 1827 VkBool32 shaderSubgroupExtendedTypes; 1828 VkBool32 separateDepthStencilLayouts; 1829 VkBool32 hostQueryReset; 1830 VkBool32 timelineSemaphore; 1831 VkBool32 bufferDeviceAddress; 1832 VkBool32 bufferDeviceAddressCaptureReplay; 1833 VkBool32 bufferDeviceAddressMultiDevice; 1834 VkBool32 vulkanMemoryModel; 1835 VkBool32 vulkanMemoryModelDeviceScope; 1836 VkBool32 vulkanMemoryModelAvailabilityVisibilityChains; 1837 VkBool32 shaderOutputViewportIndex; 1838 VkBool32 shaderOutputLayer; 1839 VkBool32 subgroupBroadcastDynamicId; 1840}; 1841 1842struct VkConformanceVersion 1843{ 1844 deUint8 major; 1845 deUint8 minor; 1846 deUint8 subminor; 1847 deUint8 patch; 1848}; 1849 1850struct VkPhysicalDeviceVulkan12Properties 1851{ 1852 VkStructureType sType; 1853 void* pNext; 1854 VkDriverId driverID; 1855 char driverName[VK_MAX_DRIVER_NAME_SIZE]; 1856 char driverInfo[VK_MAX_DRIVER_INFO_SIZE]; 1857 VkConformanceVersion conformanceVersion; 1858 VkShaderFloatControlsIndependence denormBehaviorIndependence; 1859 VkShaderFloatControlsIndependence roundingModeIndependence; 1860 VkBool32 shaderSignedZeroInfNanPreserveFloat16; 1861 VkBool32 shaderSignedZeroInfNanPreserveFloat32; 1862 VkBool32 shaderSignedZeroInfNanPreserveFloat64; 1863 VkBool32 shaderDenormPreserveFloat16; 1864 VkBool32 shaderDenormPreserveFloat32; 1865 VkBool32 shaderDenormPreserveFloat64; 1866 VkBool32 shaderDenormFlushToZeroFloat16; 1867 VkBool32 shaderDenormFlushToZeroFloat32; 1868 VkBool32 shaderDenormFlushToZeroFloat64; 1869 VkBool32 shaderRoundingModeRTEFloat16; 1870 VkBool32 shaderRoundingModeRTEFloat32; 1871 VkBool32 shaderRoundingModeRTEFloat64; 1872 VkBool32 shaderRoundingModeRTZFloat16; 1873 VkBool32 shaderRoundingModeRTZFloat32; 1874 VkBool32 shaderRoundingModeRTZFloat64; 1875 deUint32 maxUpdateAfterBindDescriptorsInAllPools; 1876 VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; 1877 VkBool32 shaderSampledImageArrayNonUniformIndexingNative; 1878 VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; 1879 VkBool32 shaderStorageImageArrayNonUniformIndexingNative; 1880 VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; 1881 VkBool32 robustBufferAccessUpdateAfterBind; 1882 VkBool32 quadDivergentImplicitLod; 1883 deUint32 maxPerStageDescriptorUpdateAfterBindSamplers; 1884 deUint32 maxPerStageDescriptorUpdateAfterBindUniformBuffers; 1885 deUint32 maxPerStageDescriptorUpdateAfterBindStorageBuffers; 1886 deUint32 maxPerStageDescriptorUpdateAfterBindSampledImages; 1887 deUint32 maxPerStageDescriptorUpdateAfterBindStorageImages; 1888 deUint32 maxPerStageDescriptorUpdateAfterBindInputAttachments; 1889 deUint32 maxPerStageUpdateAfterBindResources; 1890 deUint32 maxDescriptorSetUpdateAfterBindSamplers; 1891 deUint32 maxDescriptorSetUpdateAfterBindUniformBuffers; 1892 deUint32 maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; 1893 deUint32 maxDescriptorSetUpdateAfterBindStorageBuffers; 1894 deUint32 maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; 1895 deUint32 maxDescriptorSetUpdateAfterBindSampledImages; 1896 deUint32 maxDescriptorSetUpdateAfterBindStorageImages; 1897 deUint32 maxDescriptorSetUpdateAfterBindInputAttachments; 1898 VkResolveModeFlags supportedDepthResolveModes; 1899 VkResolveModeFlags supportedStencilResolveModes; 1900 VkBool32 independentResolveNone; 1901 VkBool32 independentResolve; 1902 VkBool32 filterMinmaxSingleComponentFormats; 1903 VkBool32 filterMinmaxImageComponentMapping; 1904 deUint64 maxTimelineSemaphoreValueDifference; 1905 VkSampleCountFlags framebufferIntegerColorSampleCounts; 1906}; 1907 1908struct VkImageFormatListCreateInfo 1909{ 1910 VkStructureType sType; 1911 const void* pNext; 1912 deUint32 viewFormatCount; 1913 const VkFormat* pViewFormats; 1914}; 1915 1916struct VkAttachmentDescription2 1917{ 1918 VkStructureType sType; 1919 const void* pNext; 1920 VkAttachmentDescriptionFlags flags; 1921 VkFormat format; 1922 VkSampleCountFlagBits samples; 1923 VkAttachmentLoadOp loadOp; 1924 VkAttachmentStoreOp storeOp; 1925 VkAttachmentLoadOp stencilLoadOp; 1926 VkAttachmentStoreOp stencilStoreOp; 1927 VkImageLayout initialLayout; 1928 VkImageLayout finalLayout; 1929}; 1930 1931struct VkAttachmentReference2 1932{ 1933 VkStructureType sType; 1934 const void* pNext; 1935 deUint32 attachment; 1936 VkImageLayout layout; 1937 VkImageAspectFlags aspectMask; 1938}; 1939 1940struct VkSubpassDescription2 1941{ 1942 VkStructureType sType; 1943 const void* pNext; 1944 VkSubpassDescriptionFlags flags; 1945 VkPipelineBindPoint pipelineBindPoint; 1946 deUint32 viewMask; 1947 deUint32 inputAttachmentCount; 1948 const VkAttachmentReference2* pInputAttachments; 1949 deUint32 colorAttachmentCount; 1950 const VkAttachmentReference2* pColorAttachments; 1951 const VkAttachmentReference2* pResolveAttachments; 1952 const VkAttachmentReference2* pDepthStencilAttachment; 1953 deUint32 preserveAttachmentCount; 1954 const deUint32* pPreserveAttachments; 1955}; 1956 1957struct VkSubpassDependency2 1958{ 1959 VkStructureType sType; 1960 const void* pNext; 1961 deUint32 srcSubpass; 1962 deUint32 dstSubpass; 1963 VkPipelineStageFlags srcStageMask; 1964 VkPipelineStageFlags dstStageMask; 1965 VkAccessFlags srcAccessMask; 1966 VkAccessFlags dstAccessMask; 1967 VkDependencyFlags dependencyFlags; 1968 deInt32 viewOffset; 1969}; 1970 1971struct VkRenderPassCreateInfo2 1972{ 1973 VkStructureType sType; 1974 const void* pNext; 1975 VkRenderPassCreateFlags flags; 1976 deUint32 attachmentCount; 1977 const VkAttachmentDescription2* pAttachments; 1978 deUint32 subpassCount; 1979 const VkSubpassDescription2* pSubpasses; 1980 deUint32 dependencyCount; 1981 const VkSubpassDependency2* pDependencies; 1982 deUint32 correlatedViewMaskCount; 1983 const deUint32* pCorrelatedViewMasks; 1984}; 1985 1986struct VkSubpassBeginInfo 1987{ 1988 VkStructureType sType; 1989 const void* pNext; 1990 VkSubpassContents contents; 1991}; 1992 1993struct VkSubpassEndInfo 1994{ 1995 VkStructureType sType; 1996 const void* pNext; 1997}; 1998 1999struct VkPhysicalDevice8BitStorageFeatures 2000{ 2001 VkStructureType sType; 2002 void* pNext; 2003 VkBool32 storageBuffer8BitAccess; 2004 VkBool32 uniformAndStorageBuffer8BitAccess; 2005 VkBool32 storagePushConstant8; 2006}; 2007 2008struct VkPhysicalDeviceDriverProperties 2009{ 2010 VkStructureType sType; 2011 void* pNext; 2012 VkDriverId driverID; 2013 char driverName[VK_MAX_DRIVER_NAME_SIZE]; 2014 char driverInfo[VK_MAX_DRIVER_INFO_SIZE]; 2015 VkConformanceVersion conformanceVersion; 2016}; 2017 2018struct VkPhysicalDeviceShaderAtomicInt64Features 2019{ 2020 VkStructureType sType; 2021 void* pNext; 2022 VkBool32 shaderBufferInt64Atomics; 2023 VkBool32 shaderSharedInt64Atomics; 2024}; 2025 2026struct VkPhysicalDeviceShaderFloat16Int8Features 2027{ 2028 VkStructureType sType; 2029 void* pNext; 2030 VkBool32 shaderFloat16; 2031 VkBool32 shaderInt8; 2032}; 2033 2034struct VkPhysicalDeviceFloatControlsProperties 2035{ 2036 VkStructureType sType; 2037 void* pNext; 2038 VkShaderFloatControlsIndependence denormBehaviorIndependence; 2039 VkShaderFloatControlsIndependence roundingModeIndependence; 2040 VkBool32 shaderSignedZeroInfNanPreserveFloat16; 2041 VkBool32 shaderSignedZeroInfNanPreserveFloat32; 2042 VkBool32 shaderSignedZeroInfNanPreserveFloat64; 2043 VkBool32 shaderDenormPreserveFloat16; 2044 VkBool32 shaderDenormPreserveFloat32; 2045 VkBool32 shaderDenormPreserveFloat64; 2046 VkBool32 shaderDenormFlushToZeroFloat16; 2047 VkBool32 shaderDenormFlushToZeroFloat32; 2048 VkBool32 shaderDenormFlushToZeroFloat64; 2049 VkBool32 shaderRoundingModeRTEFloat16; 2050 VkBool32 shaderRoundingModeRTEFloat32; 2051 VkBool32 shaderRoundingModeRTEFloat64; 2052 VkBool32 shaderRoundingModeRTZFloat16; 2053 VkBool32 shaderRoundingModeRTZFloat32; 2054 VkBool32 shaderRoundingModeRTZFloat64; 2055}; 2056 2057struct VkDescriptorSetLayoutBindingFlagsCreateInfo 2058{ 2059 VkStructureType sType; 2060 const void* pNext; 2061 deUint32 bindingCount; 2062 const VkDescriptorBindingFlags* pBindingFlags; 2063}; 2064 2065struct VkPhysicalDeviceDescriptorIndexingFeatures 2066{ 2067 VkStructureType sType; 2068 void* pNext; 2069 VkBool32 shaderInputAttachmentArrayDynamicIndexing; 2070 VkBool32 shaderUniformTexelBufferArrayDynamicIndexing; 2071 VkBool32 shaderStorageTexelBufferArrayDynamicIndexing; 2072 VkBool32 shaderUniformBufferArrayNonUniformIndexing; 2073 VkBool32 shaderSampledImageArrayNonUniformIndexing; 2074 VkBool32 shaderStorageBufferArrayNonUniformIndexing; 2075 VkBool32 shaderStorageImageArrayNonUniformIndexing; 2076 VkBool32 shaderInputAttachmentArrayNonUniformIndexing; 2077 VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing; 2078 VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing; 2079 VkBool32 descriptorBindingUniformBufferUpdateAfterBind; 2080 VkBool32 descriptorBindingSampledImageUpdateAfterBind; 2081 VkBool32 descriptorBindingStorageImageUpdateAfterBind; 2082 VkBool32 descriptorBindingStorageBufferUpdateAfterBind; 2083 VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind; 2084 VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind; 2085 VkBool32 descriptorBindingUpdateUnusedWhilePending; 2086 VkBool32 descriptorBindingPartiallyBound; 2087 VkBool32 descriptorBindingVariableDescriptorCount; 2088 VkBool32 runtimeDescriptorArray; 2089}; 2090 2091struct VkPhysicalDeviceDescriptorIndexingProperties 2092{ 2093 VkStructureType sType; 2094 void* pNext; 2095 deUint32 maxUpdateAfterBindDescriptorsInAllPools; 2096 VkBool32 shaderUniformBufferArrayNonUniformIndexingNative; 2097 VkBool32 shaderSampledImageArrayNonUniformIndexingNative; 2098 VkBool32 shaderStorageBufferArrayNonUniformIndexingNative; 2099 VkBool32 shaderStorageImageArrayNonUniformIndexingNative; 2100 VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative; 2101 VkBool32 robustBufferAccessUpdateAfterBind; 2102 VkBool32 quadDivergentImplicitLod; 2103 deUint32 maxPerStageDescriptorUpdateAfterBindSamplers; 2104 deUint32 maxPerStageDescriptorUpdateAfterBindUniformBuffers; 2105 deUint32 maxPerStageDescriptorUpdateAfterBindStorageBuffers; 2106 deUint32 maxPerStageDescriptorUpdateAfterBindSampledImages; 2107 deUint32 maxPerStageDescriptorUpdateAfterBindStorageImages; 2108 deUint32 maxPerStageDescriptorUpdateAfterBindInputAttachments; 2109 deUint32 maxPerStageUpdateAfterBindResources; 2110 deUint32 maxDescriptorSetUpdateAfterBindSamplers; 2111 deUint32 maxDescriptorSetUpdateAfterBindUniformBuffers; 2112 deUint32 maxDescriptorSetUpdateAfterBindUniformBuffersDynamic; 2113 deUint32 maxDescriptorSetUpdateAfterBindStorageBuffers; 2114 deUint32 maxDescriptorSetUpdateAfterBindStorageBuffersDynamic; 2115 deUint32 maxDescriptorSetUpdateAfterBindSampledImages; 2116 deUint32 maxDescriptorSetUpdateAfterBindStorageImages; 2117 deUint32 maxDescriptorSetUpdateAfterBindInputAttachments; 2118}; 2119 2120struct VkDescriptorSetVariableDescriptorCountAllocateInfo 2121{ 2122 VkStructureType sType; 2123 const void* pNext; 2124 deUint32 descriptorSetCount; 2125 const deUint32* pDescriptorCounts; 2126}; 2127 2128struct VkDescriptorSetVariableDescriptorCountLayoutSupport 2129{ 2130 VkStructureType sType; 2131 void* pNext; 2132 deUint32 maxVariableDescriptorCount; 2133}; 2134 2135struct VkSubpassDescriptionDepthStencilResolve 2136{ 2137 VkStructureType sType; 2138 const void* pNext; 2139 VkResolveModeFlagBits depthResolveMode; 2140 VkResolveModeFlagBits stencilResolveMode; 2141 const VkAttachmentReference2* pDepthStencilResolveAttachment; 2142}; 2143 2144struct VkPhysicalDeviceDepthStencilResolveProperties 2145{ 2146 VkStructureType sType; 2147 void* pNext; 2148 VkResolveModeFlags supportedDepthResolveModes; 2149 VkResolveModeFlags supportedStencilResolveModes; 2150 VkBool32 independentResolveNone; 2151 VkBool32 independentResolve; 2152}; 2153 2154struct VkPhysicalDeviceScalarBlockLayoutFeatures 2155{ 2156 VkStructureType sType; 2157 void* pNext; 2158 VkBool32 scalarBlockLayout; 2159}; 2160 2161struct VkImageStencilUsageCreateInfo 2162{ 2163 VkStructureType sType; 2164 const void* pNext; 2165 VkImageUsageFlags stencilUsage; 2166}; 2167 2168struct VkSamplerReductionModeCreateInfo 2169{ 2170 VkStructureType sType; 2171 const void* pNext; 2172 VkSamplerReductionMode reductionMode; 2173}; 2174 2175struct VkPhysicalDeviceSamplerFilterMinmaxProperties 2176{ 2177 VkStructureType sType; 2178 void* pNext; 2179 VkBool32 filterMinmaxSingleComponentFormats; 2180 VkBool32 filterMinmaxImageComponentMapping; 2181}; 2182 2183struct VkPhysicalDeviceVulkanMemoryModelFeatures 2184{ 2185 VkStructureType sType; 2186 void* pNext; 2187 VkBool32 vulkanMemoryModel; 2188 VkBool32 vulkanMemoryModelDeviceScope; 2189 VkBool32 vulkanMemoryModelAvailabilityVisibilityChains; 2190}; 2191 2192struct VkPhysicalDeviceImagelessFramebufferFeatures 2193{ 2194 VkStructureType sType; 2195 void* pNext; 2196 VkBool32 imagelessFramebuffer; 2197}; 2198 2199struct VkFramebufferAttachmentImageInfo 2200{ 2201 VkStructureType sType; 2202 const void* pNext; 2203 VkImageCreateFlags flags; 2204 VkImageUsageFlags usage; 2205 deUint32 width; 2206 deUint32 height; 2207 deUint32 layerCount; 2208 deUint32 viewFormatCount; 2209 const VkFormat* pViewFormats; 2210}; 2211 2212struct VkFramebufferAttachmentsCreateInfo 2213{ 2214 VkStructureType sType; 2215 const void* pNext; 2216 deUint32 attachmentImageInfoCount; 2217 const VkFramebufferAttachmentImageInfo* pAttachmentImageInfos; 2218}; 2219 2220struct VkRenderPassAttachmentBeginInfo 2221{ 2222 VkStructureType sType; 2223 const void* pNext; 2224 deUint32 attachmentCount; 2225 const VkImageView* pAttachments; 2226}; 2227 2228struct VkPhysicalDeviceUniformBufferStandardLayoutFeatures 2229{ 2230 VkStructureType sType; 2231 void* pNext; 2232 VkBool32 uniformBufferStandardLayout; 2233}; 2234 2235struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures 2236{ 2237 VkStructureType sType; 2238 void* pNext; 2239 VkBool32 shaderSubgroupExtendedTypes; 2240}; 2241 2242struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures 2243{ 2244 VkStructureType sType; 2245 void* pNext; 2246 VkBool32 separateDepthStencilLayouts; 2247}; 2248 2249struct VkAttachmentReferenceStencilLayout 2250{ 2251 VkStructureType sType; 2252 void* pNext; 2253 VkImageLayout stencilLayout; 2254}; 2255 2256struct VkAttachmentDescriptionStencilLayout 2257{ 2258 VkStructureType sType; 2259 void* pNext; 2260 VkImageLayout stencilInitialLayout; 2261 VkImageLayout stencilFinalLayout; 2262}; 2263 2264struct VkPhysicalDeviceHostQueryResetFeatures 2265{ 2266 VkStructureType sType; 2267 void* pNext; 2268 VkBool32 hostQueryReset; 2269}; 2270 2271struct VkPhysicalDeviceTimelineSemaphoreFeatures 2272{ 2273 VkStructureType sType; 2274 void* pNext; 2275 VkBool32 timelineSemaphore; 2276}; 2277 2278struct VkPhysicalDeviceTimelineSemaphoreProperties 2279{ 2280 VkStructureType sType; 2281 void* pNext; 2282 deUint64 maxTimelineSemaphoreValueDifference; 2283}; 2284 2285struct VkSemaphoreTypeCreateInfo 2286{ 2287 VkStructureType sType; 2288 const void* pNext; 2289 VkSemaphoreType semaphoreType; 2290 deUint64 initialValue; 2291}; 2292 2293struct VkTimelineSemaphoreSubmitInfo 2294{ 2295 VkStructureType sType; 2296 const void* pNext; 2297 deUint32 waitSemaphoreValueCount; 2298 const deUint64* pWaitSemaphoreValues; 2299 deUint32 signalSemaphoreValueCount; 2300 const deUint64* pSignalSemaphoreValues; 2301}; 2302 2303struct VkSemaphoreWaitInfo 2304{ 2305 VkStructureType sType; 2306 const void* pNext; 2307 VkSemaphoreWaitFlags flags; 2308 deUint32 semaphoreCount; 2309 const VkSemaphore* pSemaphores; 2310 const deUint64* pValues; 2311}; 2312 2313struct VkSemaphoreSignalInfo 2314{ 2315 VkStructureType sType; 2316 const void* pNext; 2317 VkSemaphore semaphore; 2318 deUint64 value; 2319}; 2320 2321struct VkPhysicalDeviceBufferDeviceAddressFeatures 2322{ 2323 VkStructureType sType; 2324 void* pNext; 2325 VkBool32 bufferDeviceAddress; 2326 VkBool32 bufferDeviceAddressCaptureReplay; 2327 VkBool32 bufferDeviceAddressMultiDevice; 2328}; 2329 2330struct VkBufferDeviceAddressInfo 2331{ 2332 VkStructureType sType; 2333 const void* pNext; 2334 VkBuffer buffer; 2335}; 2336 2337struct VkBufferOpaqueCaptureAddressCreateInfo 2338{ 2339 VkStructureType sType; 2340 const void* pNext; 2341 deUint64 opaqueCaptureAddress; 2342}; 2343 2344struct VkMemoryOpaqueCaptureAddressAllocateInfo 2345{ 2346 VkStructureType sType; 2347 const void* pNext; 2348 deUint64 opaqueCaptureAddress; 2349}; 2350 2351struct VkDeviceMemoryOpaqueCaptureAddressInfo 2352{ 2353 VkStructureType sType; 2354 const void* pNext; 2355 VkDeviceMemory memory; 2356}; 2357 2358struct VkSurfaceCapabilitiesKHR 2359{ 2360 deUint32 minImageCount; 2361 deUint32 maxImageCount; 2362 VkExtent2D currentExtent; 2363 VkExtent2D minImageExtent; 2364 VkExtent2D maxImageExtent; 2365 deUint32 maxImageArrayLayers; 2366 VkSurfaceTransformFlagsKHR supportedTransforms; 2367 VkSurfaceTransformFlagBitsKHR currentTransform; 2368 VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 2369 VkImageUsageFlags supportedUsageFlags; 2370}; 2371 2372struct VkSurfaceFormatKHR 2373{ 2374 VkFormat format; 2375 VkColorSpaceKHR colorSpace; 2376}; 2377 2378struct VkSwapchainCreateInfoKHR 2379{ 2380 VkStructureType sType; 2381 const void* pNext; 2382 VkSwapchainCreateFlagsKHR flags; 2383 VkSurfaceKHR surface; 2384 deUint32 minImageCount; 2385 VkFormat imageFormat; 2386 VkColorSpaceKHR imageColorSpace; 2387 VkExtent2D imageExtent; 2388 deUint32 imageArrayLayers; 2389 VkImageUsageFlags imageUsage; 2390 VkSharingMode imageSharingMode; 2391 deUint32 queueFamilyIndexCount; 2392 const deUint32* pQueueFamilyIndices; 2393 VkSurfaceTransformFlagBitsKHR preTransform; 2394 VkCompositeAlphaFlagBitsKHR compositeAlpha; 2395 VkPresentModeKHR presentMode; 2396 VkBool32 clipped; 2397 VkSwapchainKHR oldSwapchain; 2398}; 2399 2400struct VkPresentInfoKHR 2401{ 2402 VkStructureType sType; 2403 const void* pNext; 2404 deUint32 waitSemaphoreCount; 2405 const VkSemaphore* pWaitSemaphores; 2406 deUint32 swapchainCount; 2407 const VkSwapchainKHR* pSwapchains; 2408 const deUint32* pImageIndices; 2409 VkResult* pResults; 2410}; 2411 2412struct VkImageSwapchainCreateInfoKHR 2413{ 2414 VkStructureType sType; 2415 const void* pNext; 2416 VkSwapchainKHR swapchain; 2417}; 2418 2419struct VkBindImageMemorySwapchainInfoKHR 2420{ 2421 VkStructureType sType; 2422 const void* pNext; 2423 VkSwapchainKHR swapchain; 2424 deUint32 imageIndex; 2425}; 2426 2427struct VkAcquireNextImageInfoKHR 2428{ 2429 VkStructureType sType; 2430 const void* pNext; 2431 VkSwapchainKHR swapchain; 2432 deUint64 timeout; 2433 VkSemaphore semaphore; 2434 VkFence fence; 2435 deUint32 deviceMask; 2436}; 2437 2438struct VkDeviceGroupPresentCapabilitiesKHR 2439{ 2440 VkStructureType sType; 2441 const void* pNext; 2442 deUint32 presentMask[VK_MAX_DEVICE_GROUP_SIZE]; 2443 VkDeviceGroupPresentModeFlagsKHR modes; 2444}; 2445 2446struct VkDeviceGroupPresentInfoKHR 2447{ 2448 VkStructureType sType; 2449 const void* pNext; 2450 deUint32 swapchainCount; 2451 const deUint32* pDeviceMasks; 2452 VkDeviceGroupPresentModeFlagBitsKHR mode; 2453}; 2454 2455struct VkDeviceGroupSwapchainCreateInfoKHR 2456{ 2457 VkStructureType sType; 2458 const void* pNext; 2459 VkDeviceGroupPresentModeFlagsKHR modes; 2460}; 2461 2462struct VkDisplayPropertiesKHR 2463{ 2464 VkDisplayKHR display; 2465 const char* displayName; 2466 VkExtent2D physicalDimensions; 2467 VkExtent2D physicalResolution; 2468 VkSurfaceTransformFlagsKHR supportedTransforms; 2469 VkBool32 planeReorderPossible; 2470 VkBool32 persistentContent; 2471}; 2472 2473struct VkDisplayModeParametersKHR 2474{ 2475 VkExtent2D visibleRegion; 2476 deUint32 refreshRate; 2477}; 2478 2479struct VkDisplayModePropertiesKHR 2480{ 2481 VkDisplayModeKHR displayMode; 2482 VkDisplayModeParametersKHR parameters; 2483}; 2484 2485struct VkDisplayModeCreateInfoKHR 2486{ 2487 VkStructureType sType; 2488 const void* pNext; 2489 VkDisplayModeCreateFlagsKHR flags; 2490 VkDisplayModeParametersKHR parameters; 2491}; 2492 2493struct VkDisplayPlaneCapabilitiesKHR 2494{ 2495 VkDisplayPlaneAlphaFlagsKHR supportedAlpha; 2496 VkOffset2D minSrcPosition; 2497 VkOffset2D maxSrcPosition; 2498 VkExtent2D minSrcExtent; 2499 VkExtent2D maxSrcExtent; 2500 VkOffset2D minDstPosition; 2501 VkOffset2D maxDstPosition; 2502 VkExtent2D minDstExtent; 2503 VkExtent2D maxDstExtent; 2504}; 2505 2506struct VkDisplayPlanePropertiesKHR 2507{ 2508 VkDisplayKHR currentDisplay; 2509 deUint32 currentStackIndex; 2510}; 2511 2512struct VkDisplaySurfaceCreateInfoKHR 2513{ 2514 VkStructureType sType; 2515 const void* pNext; 2516 VkDisplaySurfaceCreateFlagsKHR flags; 2517 VkDisplayModeKHR displayMode; 2518 deUint32 planeIndex; 2519 deUint32 planeStackIndex; 2520 VkSurfaceTransformFlagBitsKHR transform; 2521 float globalAlpha; 2522 VkDisplayPlaneAlphaFlagBitsKHR alphaMode; 2523 VkExtent2D imageExtent; 2524}; 2525 2526struct VkDisplayPresentInfoKHR 2527{ 2528 VkStructureType sType; 2529 const void* pNext; 2530 VkRect2D srcRect; 2531 VkRect2D dstRect; 2532 VkBool32 persistent; 2533}; 2534 2535struct VkImportMemoryFdInfoKHR 2536{ 2537 VkStructureType sType; 2538 const void* pNext; 2539 VkExternalMemoryHandleTypeFlagBits handleType; 2540 int fd; 2541}; 2542 2543struct VkMemoryFdPropertiesKHR 2544{ 2545 VkStructureType sType; 2546 void* pNext; 2547 deUint32 memoryTypeBits; 2548}; 2549 2550struct VkMemoryGetFdInfoKHR 2551{ 2552 VkStructureType sType; 2553 const void* pNext; 2554 VkDeviceMemory memory; 2555 VkExternalMemoryHandleTypeFlagBits handleType; 2556}; 2557 2558struct VkImportSemaphoreFdInfoKHR 2559{ 2560 VkStructureType sType; 2561 const void* pNext; 2562 VkSemaphore semaphore; 2563 VkSemaphoreImportFlags flags; 2564 VkExternalSemaphoreHandleTypeFlagBits handleType; 2565 int fd; 2566}; 2567 2568struct VkSemaphoreGetFdInfoKHR 2569{ 2570 VkStructureType sType; 2571 const void* pNext; 2572 VkSemaphore semaphore; 2573 VkExternalSemaphoreHandleTypeFlagBits handleType; 2574}; 2575 2576struct VkPhysicalDevicePushDescriptorPropertiesKHR 2577{ 2578 VkStructureType sType; 2579 void* pNext; 2580 deUint32 maxPushDescriptors; 2581}; 2582 2583struct VkRectLayerKHR 2584{ 2585 VkOffset2D offset; 2586 VkExtent2D extent; 2587 deUint32 layer; 2588}; 2589 2590struct VkPresentRegionKHR 2591{ 2592 deUint32 rectangleCount; 2593 const VkRectLayerKHR* pRectangles; 2594}; 2595 2596struct VkPresentRegionsKHR 2597{ 2598 VkStructureType sType; 2599 const void* pNext; 2600 deUint32 swapchainCount; 2601 const VkPresentRegionKHR* pRegions; 2602}; 2603 2604struct VkSharedPresentSurfaceCapabilitiesKHR 2605{ 2606 VkStructureType sType; 2607 void* pNext; 2608 VkImageUsageFlags sharedPresentSupportedUsageFlags; 2609}; 2610 2611struct VkImportFenceFdInfoKHR 2612{ 2613 VkStructureType sType; 2614 const void* pNext; 2615 VkFence fence; 2616 VkFenceImportFlags flags; 2617 VkExternalFenceHandleTypeFlagBits handleType; 2618 int fd; 2619}; 2620 2621struct VkFenceGetFdInfoKHR 2622{ 2623 VkStructureType sType; 2624 const void* pNext; 2625 VkFence fence; 2626 VkExternalFenceHandleTypeFlagBits handleType; 2627}; 2628 2629struct VkPhysicalDevicePerformanceQueryFeaturesKHR 2630{ 2631 VkStructureType sType; 2632 void* pNext; 2633 VkBool32 performanceCounterQueryPools; 2634 VkBool32 performanceCounterMultipleQueryPools; 2635}; 2636 2637struct VkPhysicalDevicePerformanceQueryPropertiesKHR 2638{ 2639 VkStructureType sType; 2640 void* pNext; 2641 VkBool32 allowCommandBufferQueryCopies; 2642}; 2643 2644struct VkPerformanceCounterKHR 2645{ 2646 VkStructureType sType; 2647 const void* pNext; 2648 VkPerformanceCounterUnitKHR unit; 2649 VkPerformanceCounterScopeKHR scope; 2650 VkPerformanceCounterStorageKHR storage; 2651 deUint8 uuid[VK_UUID_SIZE]; 2652}; 2653 2654struct VkPerformanceCounterDescriptionKHR 2655{ 2656 VkStructureType sType; 2657 const void* pNext; 2658 VkPerformanceCounterDescriptionFlagsKHR flags; 2659 char name[VK_MAX_DESCRIPTION_SIZE]; 2660 char category[VK_MAX_DESCRIPTION_SIZE]; 2661 char description[VK_MAX_DESCRIPTION_SIZE]; 2662}; 2663 2664struct VkQueryPoolPerformanceCreateInfoKHR 2665{ 2666 VkStructureType sType; 2667 const void* pNext; 2668 deUint32 queueFamilyIndex; 2669 deUint32 counterIndexCount; 2670 const deUint32* pCounterIndices; 2671}; 2672 2673union VkPerformanceCounterResultKHR 2674{ 2675 deInt32 int32; 2676 deInt64 int64; 2677 deUint32 uint32; 2678 deUint64 uint64; 2679 float float32; 2680 double float64; 2681}; 2682 2683struct VkAcquireProfilingLockInfoKHR 2684{ 2685 VkStructureType sType; 2686 const void* pNext; 2687 VkAcquireProfilingLockFlagsKHR flags; 2688 deUint64 timeout; 2689}; 2690 2691struct VkPerformanceQuerySubmitInfoKHR 2692{ 2693 VkStructureType sType; 2694 const void* pNext; 2695 deUint32 counterPassIndex; 2696}; 2697 2698struct VkPhysicalDeviceSurfaceInfo2KHR 2699{ 2700 VkStructureType sType; 2701 const void* pNext; 2702 VkSurfaceKHR surface; 2703}; 2704 2705struct VkSurfaceCapabilities2KHR 2706{ 2707 VkStructureType sType; 2708 void* pNext; 2709 VkSurfaceCapabilitiesKHR surfaceCapabilities; 2710}; 2711 2712struct VkSurfaceFormat2KHR 2713{ 2714 VkStructureType sType; 2715 void* pNext; 2716 VkSurfaceFormatKHR surfaceFormat; 2717}; 2718 2719struct VkDisplayProperties2KHR 2720{ 2721 VkStructureType sType; 2722 void* pNext; 2723 VkDisplayPropertiesKHR displayProperties; 2724}; 2725 2726struct VkDisplayPlaneProperties2KHR 2727{ 2728 VkStructureType sType; 2729 void* pNext; 2730 VkDisplayPlanePropertiesKHR displayPlaneProperties; 2731}; 2732 2733struct VkDisplayModeProperties2KHR 2734{ 2735 VkStructureType sType; 2736 void* pNext; 2737 VkDisplayModePropertiesKHR displayModeProperties; 2738}; 2739 2740struct VkDisplayPlaneInfo2KHR 2741{ 2742 VkStructureType sType; 2743 const void* pNext; 2744 VkDisplayModeKHR mode; 2745 deUint32 planeIndex; 2746}; 2747 2748struct VkDisplayPlaneCapabilities2KHR 2749{ 2750 VkStructureType sType; 2751 void* pNext; 2752 VkDisplayPlaneCapabilitiesKHR capabilities; 2753}; 2754 2755struct VkPhysicalDeviceShaderClockFeaturesKHR 2756{ 2757 VkStructureType sType; 2758 void* pNext; 2759 VkBool32 shaderSubgroupClock; 2760 VkBool32 shaderDeviceClock; 2761}; 2762 2763struct VkSurfaceProtectedCapabilitiesKHR 2764{ 2765 VkStructureType sType; 2766 const void* pNext; 2767 VkBool32 supportsProtected; 2768}; 2769 2770struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR 2771{ 2772 VkStructureType sType; 2773 void* pNext; 2774 VkBool32 pipelineExecutableInfo; 2775}; 2776 2777struct VkPipelineInfoKHR 2778{ 2779 VkStructureType sType; 2780 const void* pNext; 2781 VkPipeline pipeline; 2782}; 2783 2784struct VkPipelineExecutablePropertiesKHR 2785{ 2786 VkStructureType sType; 2787 void* pNext; 2788 VkShaderStageFlags stages; 2789 char name[VK_MAX_DESCRIPTION_SIZE]; 2790 char description[VK_MAX_DESCRIPTION_SIZE]; 2791 deUint32 subgroupSize; 2792}; 2793 2794struct VkPipelineExecutableInfoKHR 2795{ 2796 VkStructureType sType; 2797 const void* pNext; 2798 VkPipeline pipeline; 2799 deUint32 executableIndex; 2800}; 2801 2802union VkPipelineExecutableStatisticValueKHR 2803{ 2804 VkBool32 b32; 2805 deInt64 i64; 2806 deUint64 u64; 2807 double f64; 2808}; 2809 2810struct VkPipelineExecutableStatisticKHR 2811{ 2812 VkStructureType sType; 2813 void* pNext; 2814 char name[VK_MAX_DESCRIPTION_SIZE]; 2815 char description[VK_MAX_DESCRIPTION_SIZE]; 2816 VkPipelineExecutableStatisticFormatKHR format; 2817 VkPipelineExecutableStatisticValueKHR value; 2818}; 2819 2820struct VkPipelineExecutableInternalRepresentationKHR 2821{ 2822 VkStructureType sType; 2823 void* pNext; 2824 char name[VK_MAX_DESCRIPTION_SIZE]; 2825 char description[VK_MAX_DESCRIPTION_SIZE]; 2826 VkBool32 isText; 2827 deUintptr dataSize; 2828 void* pData; 2829}; 2830 2831struct VkDebugReportCallbackCreateInfoEXT 2832{ 2833 VkStructureType sType; 2834 const void* pNext; 2835 VkDebugReportFlagsEXT flags; 2836 PFN_vkDebugReportCallbackEXT pfnCallback; 2837 void* pUserData; 2838}; 2839 2840struct VkPipelineRasterizationStateRasterizationOrderAMD 2841{ 2842 VkStructureType sType; 2843 const void* pNext; 2844 VkRasterizationOrderAMD rasterizationOrder; 2845}; 2846 2847struct VkDebugMarkerObjectNameInfoEXT 2848{ 2849 VkStructureType sType; 2850 const void* pNext; 2851 VkDebugReportObjectTypeEXT objectType; 2852 deUint64 object; 2853 const char* pObjectName; 2854}; 2855 2856struct VkDebugMarkerObjectTagInfoEXT 2857{ 2858 VkStructureType sType; 2859 const void* pNext; 2860 VkDebugReportObjectTypeEXT objectType; 2861 deUint64 object; 2862 deUint64 tagName; 2863 deUintptr tagSize; 2864 const void* pTag; 2865}; 2866 2867struct VkDebugMarkerMarkerInfoEXT 2868{ 2869 VkStructureType sType; 2870 const void* pNext; 2871 const char* pMarkerName; 2872 float color[4]; 2873}; 2874 2875struct VkDedicatedAllocationImageCreateInfoNV 2876{ 2877 VkStructureType sType; 2878 const void* pNext; 2879 VkBool32 dedicatedAllocation; 2880}; 2881 2882struct VkDedicatedAllocationBufferCreateInfoNV 2883{ 2884 VkStructureType sType; 2885 const void* pNext; 2886 VkBool32 dedicatedAllocation; 2887}; 2888 2889struct VkDedicatedAllocationMemoryAllocateInfoNV 2890{ 2891 VkStructureType sType; 2892 const void* pNext; 2893 VkImage image; 2894 VkBuffer buffer; 2895}; 2896 2897struct VkPhysicalDeviceTransformFeedbackFeaturesEXT 2898{ 2899 VkStructureType sType; 2900 void* pNext; 2901 VkBool32 transformFeedback; 2902 VkBool32 geometryStreams; 2903}; 2904 2905struct VkPhysicalDeviceTransformFeedbackPropertiesEXT 2906{ 2907 VkStructureType sType; 2908 void* pNext; 2909 deUint32 maxTransformFeedbackStreams; 2910 deUint32 maxTransformFeedbackBuffers; 2911 VkDeviceSize maxTransformFeedbackBufferSize; 2912 deUint32 maxTransformFeedbackStreamDataSize; 2913 deUint32 maxTransformFeedbackBufferDataSize; 2914 deUint32 maxTransformFeedbackBufferDataStride; 2915 VkBool32 transformFeedbackQueries; 2916 VkBool32 transformFeedbackStreamsLinesTriangles; 2917 VkBool32 transformFeedbackRasterizationStreamSelect; 2918 VkBool32 transformFeedbackDraw; 2919}; 2920 2921struct VkPipelineRasterizationStateStreamCreateInfoEXT 2922{ 2923 VkStructureType sType; 2924 const void* pNext; 2925 VkPipelineRasterizationStateStreamCreateFlagsEXT flags; 2926 deUint32 rasterizationStream; 2927}; 2928 2929struct VkImageViewHandleInfoNVX 2930{ 2931 VkStructureType sType; 2932 const void* pNext; 2933 VkImageView imageView; 2934 VkDescriptorType descriptorType; 2935 VkSampler sampler; 2936}; 2937 2938struct VkTextureLODGatherFormatPropertiesAMD 2939{ 2940 VkStructureType sType; 2941 void* pNext; 2942 VkBool32 supportsTextureGatherLODBiasAMD; 2943}; 2944 2945struct VkShaderResourceUsageAMD 2946{ 2947 deUint32 numUsedVgprs; 2948 deUint32 numUsedSgprs; 2949 deUint32 ldsSizePerLocalWorkGroup; 2950 deUintptr ldsUsageSizeInBytes; 2951 deUintptr scratchMemUsageInBytes; 2952}; 2953 2954struct VkShaderStatisticsInfoAMD 2955{ 2956 VkShaderStageFlags shaderStageMask; 2957 VkShaderResourceUsageAMD resourceUsage; 2958 deUint32 numPhysicalVgprs; 2959 deUint32 numPhysicalSgprs; 2960 deUint32 numAvailableVgprs; 2961 deUint32 numAvailableSgprs; 2962 deUint32 computeWorkGroupSize[3]; 2963}; 2964 2965struct VkPhysicalDeviceCornerSampledImageFeaturesNV 2966{ 2967 VkStructureType sType; 2968 void* pNext; 2969 VkBool32 cornerSampledImage; 2970}; 2971 2972struct VkExternalImageFormatPropertiesNV 2973{ 2974 VkImageFormatProperties imageFormatProperties; 2975 VkExternalMemoryFeatureFlagsNV externalMemoryFeatures; 2976 VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes; 2977 VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes; 2978}; 2979 2980struct VkExternalMemoryImageCreateInfoNV 2981{ 2982 VkStructureType sType; 2983 const void* pNext; 2984 VkExternalMemoryHandleTypeFlagsNV handleTypes; 2985}; 2986 2987struct VkExportMemoryAllocateInfoNV 2988{ 2989 VkStructureType sType; 2990 const void* pNext; 2991 VkExternalMemoryHandleTypeFlagsNV handleTypes; 2992}; 2993 2994struct VkValidationFlagsEXT 2995{ 2996 VkStructureType sType; 2997 const void* pNext; 2998 deUint32 disabledValidationCheckCount; 2999 const VkValidationCheckEXT* pDisabledValidationChecks; 3000}; 3001 3002struct VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT 3003{ 3004 VkStructureType sType; 3005 void* pNext; 3006 VkBool32 textureCompressionASTC_HDR; 3007}; 3008 3009struct VkImageViewASTCDecodeModeEXT 3010{ 3011 VkStructureType sType; 3012 const void* pNext; 3013 VkFormat decodeMode; 3014}; 3015 3016struct VkPhysicalDeviceASTCDecodeFeaturesEXT 3017{ 3018 VkStructureType sType; 3019 void* pNext; 3020 VkBool32 decodeModeSharedExponent; 3021}; 3022 3023struct VkConditionalRenderingBeginInfoEXT 3024{ 3025 VkStructureType sType; 3026 const void* pNext; 3027 VkBuffer buffer; 3028 VkDeviceSize offset; 3029 VkConditionalRenderingFlagsEXT flags; 3030}; 3031 3032struct VkPhysicalDeviceConditionalRenderingFeaturesEXT 3033{ 3034 VkStructureType sType; 3035 void* pNext; 3036 VkBool32 conditionalRendering; 3037 VkBool32 inheritedConditionalRendering; 3038}; 3039 3040struct VkCommandBufferInheritanceConditionalRenderingInfoEXT 3041{ 3042 VkStructureType sType; 3043 const void* pNext; 3044 VkBool32 conditionalRenderingEnable; 3045}; 3046 3047struct VkDeviceGeneratedCommandsFeaturesNVX 3048{ 3049 VkStructureType sType; 3050 const void* pNext; 3051 VkBool32 computeBindingPointSupport; 3052}; 3053 3054struct VkDeviceGeneratedCommandsLimitsNVX 3055{ 3056 VkStructureType sType; 3057 const void* pNext; 3058 deUint32 maxIndirectCommandsLayoutTokenCount; 3059 deUint32 maxObjectEntryCounts; 3060 deUint32 minSequenceCountBufferOffsetAlignment; 3061 deUint32 minSequenceIndexBufferOffsetAlignment; 3062 deUint32 minCommandsTokenBufferOffsetAlignment; 3063}; 3064 3065struct VkIndirectCommandsTokenNVX 3066{ 3067 VkIndirectCommandsTokenTypeNVX tokenType; 3068 VkBuffer buffer; 3069 VkDeviceSize offset; 3070}; 3071 3072struct VkIndirectCommandsLayoutTokenNVX 3073{ 3074 VkIndirectCommandsTokenTypeNVX tokenType; 3075 deUint32 bindingUnit; 3076 deUint32 dynamicCount; 3077 deUint32 divisor; 3078}; 3079 3080struct VkIndirectCommandsLayoutCreateInfoNVX 3081{ 3082 VkStructureType sType; 3083 const void* pNext; 3084 VkPipelineBindPoint pipelineBindPoint; 3085 VkIndirectCommandsLayoutUsageFlagsNVX flags; 3086 deUint32 tokenCount; 3087 const VkIndirectCommandsLayoutTokenNVX* pTokens; 3088}; 3089 3090struct VkCmdProcessCommandsInfoNVX 3091{ 3092 VkStructureType sType; 3093 const void* pNext; 3094 VkObjectTableNVX objectTable; 3095 VkIndirectCommandsLayoutNVX indirectCommandsLayout; 3096 deUint32 indirectCommandsTokenCount; 3097 const VkIndirectCommandsTokenNVX* pIndirectCommandsTokens; 3098 deUint32 maxSequencesCount; 3099 VkCommandBuffer targetCommandBuffer; 3100 VkBuffer sequencesCountBuffer; 3101 VkDeviceSize sequencesCountOffset; 3102 VkBuffer sequencesIndexBuffer; 3103 VkDeviceSize sequencesIndexOffset; 3104}; 3105 3106struct VkCmdReserveSpaceForCommandsInfoNVX 3107{ 3108 VkStructureType sType; 3109 const void* pNext; 3110 VkObjectTableNVX objectTable; 3111 VkIndirectCommandsLayoutNVX indirectCommandsLayout; 3112 deUint32 maxSequencesCount; 3113}; 3114 3115struct VkObjectTableCreateInfoNVX 3116{ 3117 VkStructureType sType; 3118 const void* pNext; 3119 deUint32 objectCount; 3120 const VkObjectEntryTypeNVX* pObjectEntryTypes; 3121 const deUint32* pObjectEntryCounts; 3122 const VkObjectEntryUsageFlagsNVX* pObjectEntryUsageFlags; 3123 deUint32 maxUniformBuffersPerDescriptor; 3124 deUint32 maxStorageBuffersPerDescriptor; 3125 deUint32 maxStorageImagesPerDescriptor; 3126 deUint32 maxSampledImagesPerDescriptor; 3127 deUint32 maxPipelineLayouts; 3128}; 3129 3130struct VkObjectTableEntryNVX 3131{ 3132 VkObjectEntryTypeNVX type; 3133 VkObjectEntryUsageFlagsNVX flags; 3134}; 3135 3136struct VkObjectTablePipelineEntryNVX 3137{ 3138 VkObjectEntryTypeNVX type; 3139 VkObjectEntryUsageFlagsNVX flags; 3140 VkPipeline pipeline; 3141}; 3142 3143struct VkObjectTableDescriptorSetEntryNVX 3144{ 3145 VkObjectEntryTypeNVX type; 3146 VkObjectEntryUsageFlagsNVX flags; 3147 VkPipelineLayout pipelineLayout; 3148 VkDescriptorSet descriptorSet; 3149}; 3150 3151struct VkObjectTableVertexBufferEntryNVX 3152{ 3153 VkObjectEntryTypeNVX type; 3154 VkObjectEntryUsageFlagsNVX flags; 3155 VkBuffer buffer; 3156}; 3157 3158struct VkObjectTableIndexBufferEntryNVX 3159{ 3160 VkObjectEntryTypeNVX type; 3161 VkObjectEntryUsageFlagsNVX flags; 3162 VkBuffer buffer; 3163 VkIndexType indexType; 3164}; 3165 3166struct VkObjectTablePushConstantEntryNVX 3167{ 3168 VkObjectEntryTypeNVX type; 3169 VkObjectEntryUsageFlagsNVX flags; 3170 VkPipelineLayout pipelineLayout; 3171 VkShaderStageFlags stageFlags; 3172}; 3173 3174struct VkViewportWScalingNV 3175{ 3176 float xcoeff; 3177 float ycoeff; 3178}; 3179 3180struct VkPipelineViewportWScalingStateCreateInfoNV 3181{ 3182 VkStructureType sType; 3183 const void* pNext; 3184 VkBool32 viewportWScalingEnable; 3185 deUint32 viewportCount; 3186 const VkViewportWScalingNV* pViewportWScalings; 3187}; 3188 3189struct VkSurfaceCapabilities2EXT 3190{ 3191 VkStructureType sType; 3192 void* pNext; 3193 deUint32 minImageCount; 3194 deUint32 maxImageCount; 3195 VkExtent2D currentExtent; 3196 VkExtent2D minImageExtent; 3197 VkExtent2D maxImageExtent; 3198 deUint32 maxImageArrayLayers; 3199 VkSurfaceTransformFlagsKHR supportedTransforms; 3200 VkSurfaceTransformFlagBitsKHR currentTransform; 3201 VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 3202 VkImageUsageFlags supportedUsageFlags; 3203 VkSurfaceCounterFlagsEXT supportedSurfaceCounters; 3204}; 3205 3206struct VkDisplayPowerInfoEXT 3207{ 3208 VkStructureType sType; 3209 const void* pNext; 3210 VkDisplayPowerStateEXT powerState; 3211}; 3212 3213struct VkDeviceEventInfoEXT 3214{ 3215 VkStructureType sType; 3216 const void* pNext; 3217 VkDeviceEventTypeEXT deviceEvent; 3218}; 3219 3220struct VkDisplayEventInfoEXT 3221{ 3222 VkStructureType sType; 3223 const void* pNext; 3224 VkDisplayEventTypeEXT displayEvent; 3225}; 3226 3227struct VkSwapchainCounterCreateInfoEXT 3228{ 3229 VkStructureType sType; 3230 const void* pNext; 3231 VkSurfaceCounterFlagsEXT surfaceCounters; 3232}; 3233 3234struct VkRefreshCycleDurationGOOGLE 3235{ 3236 deUint64 refreshDuration; 3237}; 3238 3239struct VkPastPresentationTimingGOOGLE 3240{ 3241 deUint32 presentID; 3242 deUint64 desiredPresentTime; 3243 deUint64 actualPresentTime; 3244 deUint64 earliestPresentTime; 3245 deUint64 presentMargin; 3246}; 3247 3248struct VkPresentTimeGOOGLE 3249{ 3250 deUint32 presentID; 3251 deUint64 desiredPresentTime; 3252}; 3253 3254struct VkPresentTimesInfoGOOGLE 3255{ 3256 VkStructureType sType; 3257 const void* pNext; 3258 deUint32 swapchainCount; 3259 const VkPresentTimeGOOGLE* pTimes; 3260}; 3261 3262struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX 3263{ 3264 VkStructureType sType; 3265 void* pNext; 3266 VkBool32 perViewPositionAllComponents; 3267}; 3268 3269struct VkViewportSwizzleNV 3270{ 3271 VkViewportCoordinateSwizzleNV x; 3272 VkViewportCoordinateSwizzleNV y; 3273 VkViewportCoordinateSwizzleNV z; 3274 VkViewportCoordinateSwizzleNV w; 3275}; 3276 3277struct VkPipelineViewportSwizzleStateCreateInfoNV 3278{ 3279 VkStructureType sType; 3280 const void* pNext; 3281 VkPipelineViewportSwizzleStateCreateFlagsNV flags; 3282 deUint32 viewportCount; 3283 const VkViewportSwizzleNV* pViewportSwizzles; 3284}; 3285 3286struct VkPhysicalDeviceDiscardRectanglePropertiesEXT 3287{ 3288 VkStructureType sType; 3289 void* pNext; 3290 deUint32 maxDiscardRectangles; 3291}; 3292 3293struct VkPipelineDiscardRectangleStateCreateInfoEXT 3294{ 3295 VkStructureType sType; 3296 const void* pNext; 3297 VkPipelineDiscardRectangleStateCreateFlagsEXT flags; 3298 VkDiscardRectangleModeEXT discardRectangleMode; 3299 deUint32 discardRectangleCount; 3300 const VkRect2D* pDiscardRectangles; 3301}; 3302 3303struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT 3304{ 3305 VkStructureType sType; 3306 void* pNext; 3307 float primitiveOverestimationSize; 3308 float maxExtraPrimitiveOverestimationSize; 3309 float extraPrimitiveOverestimationSizeGranularity; 3310 VkBool32 primitiveUnderestimation; 3311 VkBool32 conservativePointAndLineRasterization; 3312 VkBool32 degenerateTrianglesRasterized; 3313 VkBool32 degenerateLinesRasterized; 3314 VkBool32 fullyCoveredFragmentShaderInputVariable; 3315 VkBool32 conservativeRasterizationPostDepthCoverage; 3316}; 3317 3318struct VkPipelineRasterizationConservativeStateCreateInfoEXT 3319{ 3320 VkStructureType sType; 3321 const void* pNext; 3322 VkPipelineRasterizationConservativeStateCreateFlagsEXT flags; 3323 VkConservativeRasterizationModeEXT conservativeRasterizationMode; 3324 float extraPrimitiveOverestimationSize; 3325}; 3326 3327struct VkPhysicalDeviceDepthClipEnableFeaturesEXT 3328{ 3329 VkStructureType sType; 3330 void* pNext; 3331 VkBool32 depthClipEnable; 3332}; 3333 3334struct VkPipelineRasterizationDepthClipStateCreateInfoEXT 3335{ 3336 VkStructureType sType; 3337 const void* pNext; 3338 VkPipelineRasterizationDepthClipStateCreateFlagsEXT flags; 3339 VkBool32 depthClipEnable; 3340}; 3341 3342struct VkXYColorEXT 3343{ 3344 float x; 3345 float y; 3346}; 3347 3348struct VkHdrMetadataEXT 3349{ 3350 VkStructureType sType; 3351 const void* pNext; 3352 VkXYColorEXT displayPrimaryRed; 3353 VkXYColorEXT displayPrimaryGreen; 3354 VkXYColorEXT displayPrimaryBlue; 3355 VkXYColorEXT whitePoint; 3356 float maxLuminance; 3357 float minLuminance; 3358 float maxContentLightLevel; 3359 float maxFrameAverageLightLevel; 3360}; 3361 3362struct VkDebugUtilsObjectNameInfoEXT 3363{ 3364 VkStructureType sType; 3365 const void* pNext; 3366 VkObjectType objectType; 3367 deUint64 objectHandle; 3368 const char* pObjectName; 3369}; 3370 3371struct VkDebugUtilsObjectTagInfoEXT 3372{ 3373 VkStructureType sType; 3374 const void* pNext; 3375 VkObjectType objectType; 3376 deUint64 objectHandle; 3377 deUint64 tagName; 3378 deUintptr tagSize; 3379 const void* pTag; 3380}; 3381 3382struct VkDebugUtilsLabelEXT 3383{ 3384 VkStructureType sType; 3385 const void* pNext; 3386 const char* pLabelName; 3387 float color[4]; 3388}; 3389 3390struct VkDebugUtilsMessengerCallbackDataEXT 3391{ 3392 VkStructureType sType; 3393 const void* pNext; 3394 VkDebugUtilsMessengerCallbackDataFlagsEXT flags; 3395 const char* pMessageIdName; 3396 deInt32 messageIdNumber; 3397 const char* pMessage; 3398 deUint32 queueLabelCount; 3399 const VkDebugUtilsLabelEXT* pQueueLabels; 3400 deUint32 cmdBufLabelCount; 3401 const VkDebugUtilsLabelEXT* pCmdBufLabels; 3402 deUint32 objectCount; 3403 const VkDebugUtilsObjectNameInfoEXT* pObjects; 3404}; 3405 3406struct VkDebugUtilsMessengerCreateInfoEXT 3407{ 3408 VkStructureType sType; 3409 const void* pNext; 3410 VkDebugUtilsMessengerCreateFlagsEXT flags; 3411 VkDebugUtilsMessageSeverityFlagsEXT messageSeverity; 3412 VkDebugUtilsMessageTypeFlagsEXT messageType; 3413 PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback; 3414 void* pUserData; 3415}; 3416 3417struct VkPhysicalDeviceInlineUniformBlockFeaturesEXT 3418{ 3419 VkStructureType sType; 3420 void* pNext; 3421 VkBool32 inlineUniformBlock; 3422 VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind; 3423}; 3424 3425struct VkPhysicalDeviceInlineUniformBlockPropertiesEXT 3426{ 3427 VkStructureType sType; 3428 void* pNext; 3429 deUint32 maxInlineUniformBlockSize; 3430 deUint32 maxPerStageDescriptorInlineUniformBlocks; 3431 deUint32 maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks; 3432 deUint32 maxDescriptorSetInlineUniformBlocks; 3433 deUint32 maxDescriptorSetUpdateAfterBindInlineUniformBlocks; 3434}; 3435 3436struct VkWriteDescriptorSetInlineUniformBlockEXT 3437{ 3438 VkStructureType sType; 3439 const void* pNext; 3440 deUint32 dataSize; 3441 const void* pData; 3442}; 3443 3444struct VkDescriptorPoolInlineUniformBlockCreateInfoEXT 3445{ 3446 VkStructureType sType; 3447 const void* pNext; 3448 deUint32 maxInlineUniformBlockBindings; 3449}; 3450 3451struct VkSampleLocationEXT 3452{ 3453 float x; 3454 float y; 3455}; 3456 3457struct VkSampleLocationsInfoEXT 3458{ 3459 VkStructureType sType; 3460 const void* pNext; 3461 VkSampleCountFlagBits sampleLocationsPerPixel; 3462 VkExtent2D sampleLocationGridSize; 3463 deUint32 sampleLocationsCount; 3464 const VkSampleLocationEXT* pSampleLocations; 3465}; 3466 3467struct VkAttachmentSampleLocationsEXT 3468{ 3469 deUint32 attachmentIndex; 3470 VkSampleLocationsInfoEXT sampleLocationsInfo; 3471}; 3472 3473struct VkSubpassSampleLocationsEXT 3474{ 3475 deUint32 subpassIndex; 3476 VkSampleLocationsInfoEXT sampleLocationsInfo; 3477}; 3478 3479struct VkRenderPassSampleLocationsBeginInfoEXT 3480{ 3481 VkStructureType sType; 3482 const void* pNext; 3483 deUint32 attachmentInitialSampleLocationsCount; 3484 const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations; 3485 deUint32 postSubpassSampleLocationsCount; 3486 const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations; 3487}; 3488 3489struct VkPipelineSampleLocationsStateCreateInfoEXT 3490{ 3491 VkStructureType sType; 3492 const void* pNext; 3493 VkBool32 sampleLocationsEnable; 3494 VkSampleLocationsInfoEXT sampleLocationsInfo; 3495}; 3496 3497struct VkPhysicalDeviceSampleLocationsPropertiesEXT 3498{ 3499 VkStructureType sType; 3500 void* pNext; 3501 VkSampleCountFlags sampleLocationSampleCounts; 3502 VkExtent2D maxSampleLocationGridSize; 3503 float sampleLocationCoordinateRange[2]; 3504 deUint32 sampleLocationSubPixelBits; 3505 VkBool32 variableSampleLocations; 3506}; 3507 3508struct VkMultisamplePropertiesEXT 3509{ 3510 VkStructureType sType; 3511 void* pNext; 3512 VkExtent2D maxSampleLocationGridSize; 3513}; 3514 3515struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT 3516{ 3517 VkStructureType sType; 3518 void* pNext; 3519 VkBool32 advancedBlendCoherentOperations; 3520}; 3521 3522struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT 3523{ 3524 VkStructureType sType; 3525 void* pNext; 3526 deUint32 advancedBlendMaxColorAttachments; 3527 VkBool32 advancedBlendIndependentBlend; 3528 VkBool32 advancedBlendNonPremultipliedSrcColor; 3529 VkBool32 advancedBlendNonPremultipliedDstColor; 3530 VkBool32 advancedBlendCorrelatedOverlap; 3531 VkBool32 advancedBlendAllOperations; 3532}; 3533 3534struct VkPipelineColorBlendAdvancedStateCreateInfoEXT 3535{ 3536 VkStructureType sType; 3537 const void* pNext; 3538 VkBool32 srcPremultiplied; 3539 VkBool32 dstPremultiplied; 3540 VkBlendOverlapEXT blendOverlap; 3541}; 3542 3543struct VkPipelineCoverageToColorStateCreateInfoNV 3544{ 3545 VkStructureType sType; 3546 const void* pNext; 3547 VkPipelineCoverageToColorStateCreateFlagsNV flags; 3548 VkBool32 coverageToColorEnable; 3549 deUint32 coverageToColorLocation; 3550}; 3551 3552struct VkPipelineCoverageModulationStateCreateInfoNV 3553{ 3554 VkStructureType sType; 3555 const void* pNext; 3556 VkPipelineCoverageModulationStateCreateFlagsNV flags; 3557 VkCoverageModulationModeNV coverageModulationMode; 3558 VkBool32 coverageModulationTableEnable; 3559 deUint32 coverageModulationTableCount; 3560 const float* pCoverageModulationTable; 3561}; 3562 3563struct VkPhysicalDeviceShaderSMBuiltinsPropertiesNV 3564{ 3565 VkStructureType sType; 3566 void* pNext; 3567 deUint32 shaderSMCount; 3568 deUint32 shaderWarpsPerSM; 3569}; 3570 3571struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV 3572{ 3573 VkStructureType sType; 3574 void* pNext; 3575 VkBool32 shaderSMBuiltins; 3576}; 3577 3578struct VkDrmFormatModifierPropertiesEXT 3579{ 3580 deUint64 drmFormatModifier; 3581 deUint32 drmFormatModifierPlaneCount; 3582 VkFormatFeatureFlags drmFormatModifierTilingFeatures; 3583}; 3584 3585struct VkDrmFormatModifierPropertiesListEXT 3586{ 3587 VkStructureType sType; 3588 void* pNext; 3589 deUint32 drmFormatModifierCount; 3590 VkDrmFormatModifierPropertiesEXT* pDrmFormatModifierProperties; 3591}; 3592 3593struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT 3594{ 3595 VkStructureType sType; 3596 const void* pNext; 3597 deUint64 drmFormatModifier; 3598 VkSharingMode sharingMode; 3599 deUint32 queueFamilyIndexCount; 3600 const deUint32* pQueueFamilyIndices; 3601}; 3602 3603struct VkImageDrmFormatModifierListCreateInfoEXT 3604{ 3605 VkStructureType sType; 3606 const void* pNext; 3607 deUint32 drmFormatModifierCount; 3608 const deUint64* pDrmFormatModifiers; 3609}; 3610 3611struct VkImageDrmFormatModifierExplicitCreateInfoEXT 3612{ 3613 VkStructureType sType; 3614 const void* pNext; 3615 deUint64 drmFormatModifier; 3616 deUint32 drmFormatModifierPlaneCount; 3617 const VkSubresourceLayout* pPlaneLayouts; 3618}; 3619 3620struct VkImageDrmFormatModifierPropertiesEXT 3621{ 3622 VkStructureType sType; 3623 void* pNext; 3624 deUint64 drmFormatModifier; 3625}; 3626 3627struct VkValidationCacheCreateInfoEXT 3628{ 3629 VkStructureType sType; 3630 const void* pNext; 3631 VkValidationCacheCreateFlagsEXT flags; 3632 deUintptr initialDataSize; 3633 const void* pInitialData; 3634}; 3635 3636struct VkShaderModuleValidationCacheCreateInfoEXT 3637{ 3638 VkStructureType sType; 3639 const void* pNext; 3640 VkValidationCacheEXT validationCache; 3641}; 3642 3643struct VkShadingRatePaletteNV 3644{ 3645 deUint32 shadingRatePaletteEntryCount; 3646 const VkShadingRatePaletteEntryNV* pShadingRatePaletteEntries; 3647}; 3648 3649struct VkPipelineViewportShadingRateImageStateCreateInfoNV 3650{ 3651 VkStructureType sType; 3652 const void* pNext; 3653 VkBool32 shadingRateImageEnable; 3654 deUint32 viewportCount; 3655 const VkShadingRatePaletteNV* pShadingRatePalettes; 3656}; 3657 3658struct VkPhysicalDeviceShadingRateImageFeaturesNV 3659{ 3660 VkStructureType sType; 3661 void* pNext; 3662 VkBool32 shadingRateImage; 3663 VkBool32 shadingRateCoarseSampleOrder; 3664}; 3665 3666struct VkPhysicalDeviceShadingRateImagePropertiesNV 3667{ 3668 VkStructureType sType; 3669 void* pNext; 3670 VkExtent2D shadingRateTexelSize; 3671 deUint32 shadingRatePaletteSize; 3672 deUint32 shadingRateMaxCoarseSamples; 3673}; 3674 3675struct VkCoarseSampleLocationNV 3676{ 3677 deUint32 pixelX; 3678 deUint32 pixelY; 3679 deUint32 sample; 3680}; 3681 3682struct VkCoarseSampleOrderCustomNV 3683{ 3684 VkShadingRatePaletteEntryNV shadingRate; 3685 deUint32 sampleCount; 3686 deUint32 sampleLocationCount; 3687 const VkCoarseSampleLocationNV* pSampleLocations; 3688}; 3689 3690struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV 3691{ 3692 VkStructureType sType; 3693 const void* pNext; 3694 VkCoarseSampleOrderTypeNV sampleOrderType; 3695 deUint32 customSampleOrderCount; 3696 const VkCoarseSampleOrderCustomNV* pCustomSampleOrders; 3697}; 3698 3699struct VkRayTracingShaderGroupCreateInfoNV 3700{ 3701 VkStructureType sType; 3702 const void* pNext; 3703 VkRayTracingShaderGroupTypeNV type; 3704 deUint32 generalShader; 3705 deUint32 closestHitShader; 3706 deUint32 anyHitShader; 3707 deUint32 intersectionShader; 3708}; 3709 3710struct VkRayTracingPipelineCreateInfoNV 3711{ 3712 VkStructureType sType; 3713 const void* pNext; 3714 VkPipelineCreateFlags flags; 3715 deUint32 stageCount; 3716 const VkPipelineShaderStageCreateInfo* pStages; 3717 deUint32 groupCount; 3718 const VkRayTracingShaderGroupCreateInfoNV* pGroups; 3719 deUint32 maxRecursionDepth; 3720 VkPipelineLayout layout; 3721 VkPipeline basePipelineHandle; 3722 deInt32 basePipelineIndex; 3723}; 3724 3725struct VkGeometryTrianglesNV 3726{ 3727 VkStructureType sType; 3728 const void* pNext; 3729 VkBuffer vertexData; 3730 VkDeviceSize vertexOffset; 3731 deUint32 vertexCount; 3732 VkDeviceSize vertexStride; 3733 VkFormat vertexFormat; 3734 VkBuffer indexData; 3735 VkDeviceSize indexOffset; 3736 deUint32 indexCount; 3737 VkIndexType indexType; 3738 VkBuffer transformData; 3739 VkDeviceSize transformOffset; 3740}; 3741 3742struct VkGeometryAABBNV 3743{ 3744 VkStructureType sType; 3745 const void* pNext; 3746 VkBuffer aabbData; 3747 deUint32 numAABBs; 3748 deUint32 stride; 3749 VkDeviceSize offset; 3750}; 3751 3752struct VkGeometryDataNV 3753{ 3754 VkGeometryTrianglesNV triangles; 3755 VkGeometryAABBNV aabbs; 3756}; 3757 3758struct VkGeometryNV 3759{ 3760 VkStructureType sType; 3761 const void* pNext; 3762 VkGeometryTypeNV geometryType; 3763 VkGeometryDataNV geometry; 3764 VkGeometryFlagsNV flags; 3765}; 3766 3767struct VkAccelerationStructureInfoNV 3768{ 3769 VkStructureType sType; 3770 const void* pNext; 3771 VkAccelerationStructureTypeNV type; 3772 VkBuildAccelerationStructureFlagsNV flags; 3773 deUint32 instanceCount; 3774 deUint32 geometryCount; 3775 const VkGeometryNV* pGeometries; 3776}; 3777 3778struct VkAccelerationStructureCreateInfoNV 3779{ 3780 VkStructureType sType; 3781 const void* pNext; 3782 VkDeviceSize compactedSize; 3783 VkAccelerationStructureInfoNV info; 3784}; 3785 3786struct VkBindAccelerationStructureMemoryInfoNV 3787{ 3788 VkStructureType sType; 3789 const void* pNext; 3790 VkAccelerationStructureNV accelerationStructure; 3791 VkDeviceMemory memory; 3792 VkDeviceSize memoryOffset; 3793 deUint32 deviceIndexCount; 3794 const deUint32* pDeviceIndices; 3795}; 3796 3797struct VkWriteDescriptorSetAccelerationStructureNV 3798{ 3799 VkStructureType sType; 3800 const void* pNext; 3801 deUint32 accelerationStructureCount; 3802 const VkAccelerationStructureNV* pAccelerationStructures; 3803}; 3804 3805struct VkAccelerationStructureMemoryRequirementsInfoNV 3806{ 3807 VkStructureType sType; 3808 const void* pNext; 3809 VkAccelerationStructureMemoryRequirementsTypeNV type; 3810 VkAccelerationStructureNV accelerationStructure; 3811}; 3812 3813struct VkPhysicalDeviceRayTracingPropertiesNV 3814{ 3815 VkStructureType sType; 3816 void* pNext; 3817 deUint32 shaderGroupHandleSize; 3818 deUint32 maxRecursionDepth; 3819 deUint32 maxShaderGroupStride; 3820 deUint32 shaderGroupBaseAlignment; 3821 deUint64 maxGeometryCount; 3822 deUint64 maxInstanceCount; 3823 deUint64 maxTriangleCount; 3824 deUint32 maxDescriptorSetAccelerationStructures; 3825}; 3826 3827struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV 3828{ 3829 VkStructureType sType; 3830 void* pNext; 3831 VkBool32 representativeFragmentTest; 3832}; 3833 3834struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV 3835{ 3836 VkStructureType sType; 3837 const void* pNext; 3838 VkBool32 representativeFragmentTestEnable; 3839}; 3840 3841struct VkPhysicalDeviceImageViewImageFormatInfoEXT 3842{ 3843 VkStructureType sType; 3844 void* pNext; 3845 VkImageViewType imageViewType; 3846}; 3847 3848struct VkFilterCubicImageViewImageFormatPropertiesEXT 3849{ 3850 VkStructureType sType; 3851 void* pNext; 3852 VkBool32 filterCubic; 3853 VkBool32 filterCubicMinmax; 3854}; 3855 3856struct VkDeviceQueueGlobalPriorityCreateInfoEXT 3857{ 3858 VkStructureType sType; 3859 const void* pNext; 3860 VkQueueGlobalPriorityEXT globalPriority; 3861}; 3862 3863struct VkImportMemoryHostPointerInfoEXT 3864{ 3865 VkStructureType sType; 3866 const void* pNext; 3867 VkExternalMemoryHandleTypeFlagBits handleType; 3868 void* pHostPointer; 3869}; 3870 3871struct VkMemoryHostPointerPropertiesEXT 3872{ 3873 VkStructureType sType; 3874 void* pNext; 3875 deUint32 memoryTypeBits; 3876}; 3877 3878struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT 3879{ 3880 VkStructureType sType; 3881 void* pNext; 3882 VkDeviceSize minImportedHostPointerAlignment; 3883}; 3884 3885struct VkPipelineCompilerControlCreateInfoAMD 3886{ 3887 VkStructureType sType; 3888 const void* pNext; 3889 VkPipelineCompilerControlFlagsAMD compilerControlFlags; 3890}; 3891 3892struct VkCalibratedTimestampInfoEXT 3893{ 3894 VkStructureType sType; 3895 const void* pNext; 3896 VkTimeDomainEXT timeDomain; 3897}; 3898 3899struct VkPhysicalDeviceShaderCorePropertiesAMD 3900{ 3901 VkStructureType sType; 3902 void* pNext; 3903 deUint32 shaderEngineCount; 3904 deUint32 shaderArraysPerEngineCount; 3905 deUint32 computeUnitsPerShaderArray; 3906 deUint32 simdPerComputeUnit; 3907 deUint32 wavefrontsPerSimd; 3908 deUint32 wavefrontSize; 3909 deUint32 sgprsPerSimd; 3910 deUint32 minSgprAllocation; 3911 deUint32 maxSgprAllocation; 3912 deUint32 sgprAllocationGranularity; 3913 deUint32 vgprsPerSimd; 3914 deUint32 minVgprAllocation; 3915 deUint32 maxVgprAllocation; 3916 deUint32 vgprAllocationGranularity; 3917}; 3918 3919struct VkDeviceMemoryOverallocationCreateInfoAMD 3920{ 3921 VkStructureType sType; 3922 const void* pNext; 3923 VkMemoryOverallocationBehaviorAMD overallocationBehavior; 3924}; 3925 3926struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT 3927{ 3928 VkStructureType sType; 3929 void* pNext; 3930 deUint32 maxVertexAttribDivisor; 3931}; 3932 3933struct VkVertexInputBindingDivisorDescriptionEXT 3934{ 3935 deUint32 binding; 3936 deUint32 divisor; 3937}; 3938 3939struct VkPipelineVertexInputDivisorStateCreateInfoEXT 3940{ 3941 VkStructureType sType; 3942 const void* pNext; 3943 deUint32 vertexBindingDivisorCount; 3944 const VkVertexInputBindingDivisorDescriptionEXT* pVertexBindingDivisors; 3945}; 3946 3947struct VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT 3948{ 3949 VkStructureType sType; 3950 void* pNext; 3951 VkBool32 vertexAttributeInstanceRateDivisor; 3952 VkBool32 vertexAttributeInstanceRateZeroDivisor; 3953}; 3954 3955struct VkPipelineCreationFeedbackEXT 3956{ 3957 VkPipelineCreationFeedbackFlagsEXT flags; 3958 deUint64 duration; 3959}; 3960 3961struct VkPipelineCreationFeedbackCreateInfoEXT 3962{ 3963 VkStructureType sType; 3964 const void* pNext; 3965 VkPipelineCreationFeedbackEXT* pPipelineCreationFeedback; 3966 deUint32 pipelineStageCreationFeedbackCount; 3967 VkPipelineCreationFeedbackEXT* pPipelineStageCreationFeedbacks; 3968}; 3969 3970struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV 3971{ 3972 VkStructureType sType; 3973 void* pNext; 3974 VkBool32 computeDerivativeGroupQuads; 3975 VkBool32 computeDerivativeGroupLinear; 3976}; 3977 3978struct VkPhysicalDeviceMeshShaderFeaturesNV 3979{ 3980 VkStructureType sType; 3981 void* pNext; 3982 VkBool32 taskShader; 3983 VkBool32 meshShader; 3984}; 3985 3986struct VkPhysicalDeviceMeshShaderPropertiesNV 3987{ 3988 VkStructureType sType; 3989 void* pNext; 3990 deUint32 maxDrawMeshTasksCount; 3991 deUint32 maxTaskWorkGroupInvocations; 3992 deUint32 maxTaskWorkGroupSize[3]; 3993 deUint32 maxTaskTotalMemorySize; 3994 deUint32 maxTaskOutputCount; 3995 deUint32 maxMeshWorkGroupInvocations; 3996 deUint32 maxMeshWorkGroupSize[3]; 3997 deUint32 maxMeshTotalMemorySize; 3998 deUint32 maxMeshOutputVertices; 3999 deUint32 maxMeshOutputPrimitives; 4000 deUint32 maxMeshMultiviewViewCount; 4001 deUint32 meshOutputPerVertexGranularity; 4002 deUint32 meshOutputPerPrimitiveGranularity; 4003}; 4004 4005struct VkDrawMeshTasksIndirectCommandNV 4006{ 4007 deUint32 taskCount; 4008 deUint32 firstTask; 4009}; 4010 4011struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV 4012{ 4013 VkStructureType sType; 4014 void* pNext; 4015 VkBool32 fragmentShaderBarycentric; 4016}; 4017 4018struct VkPhysicalDeviceShaderImageFootprintFeaturesNV 4019{ 4020 VkStructureType sType; 4021 void* pNext; 4022 VkBool32 imageFootprint; 4023}; 4024 4025struct VkPipelineViewportExclusiveScissorStateCreateInfoNV 4026{ 4027 VkStructureType sType; 4028 const void* pNext; 4029 deUint32 exclusiveScissorCount; 4030 const VkRect2D* pExclusiveScissors; 4031}; 4032 4033struct VkPhysicalDeviceExclusiveScissorFeaturesNV 4034{ 4035 VkStructureType sType; 4036 void* pNext; 4037 VkBool32 exclusiveScissor; 4038}; 4039 4040struct VkQueueFamilyCheckpointPropertiesNV 4041{ 4042 VkStructureType sType; 4043 void* pNext; 4044 VkPipelineStageFlags checkpointExecutionStageMask; 4045}; 4046 4047struct VkCheckpointDataNV 4048{ 4049 VkStructureType sType; 4050 void* pNext; 4051 VkPipelineStageFlagBits stage; 4052 void* pCheckpointMarker; 4053}; 4054 4055struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL 4056{ 4057 VkStructureType sType; 4058 void* pNext; 4059 VkBool32 shaderIntegerFunctions2; 4060}; 4061 4062union VkPerformanceValueDataINTEL 4063{ 4064 deUint32 value32; 4065 deUint64 value64; 4066 float valueFloat; 4067 VkBool32 valueBool; 4068 const char* valueString; 4069}; 4070 4071struct VkPerformanceValueINTEL 4072{ 4073 VkPerformanceValueTypeINTEL type; 4074 VkPerformanceValueDataINTEL data; 4075}; 4076 4077struct VkInitializePerformanceApiInfoINTEL 4078{ 4079 VkStructureType sType; 4080 const void* pNext; 4081 void* pUserData; 4082}; 4083 4084struct VkQueryPoolCreateInfoINTEL 4085{ 4086 VkStructureType sType; 4087 const void* pNext; 4088 VkQueryPoolSamplingModeINTEL performanceCountersSampling; 4089}; 4090 4091struct VkPerformanceMarkerInfoINTEL 4092{ 4093 VkStructureType sType; 4094 const void* pNext; 4095 deUint64 marker; 4096}; 4097 4098struct VkPerformanceStreamMarkerInfoINTEL 4099{ 4100 VkStructureType sType; 4101 const void* pNext; 4102 deUint32 marker; 4103}; 4104 4105struct VkPerformanceOverrideInfoINTEL 4106{ 4107 VkStructureType sType; 4108 const void* pNext; 4109 VkPerformanceOverrideTypeINTEL type; 4110 VkBool32 enable; 4111 deUint64 parameter; 4112}; 4113 4114struct VkPerformanceConfigurationAcquireInfoINTEL 4115{ 4116 VkStructureType sType; 4117 const void* pNext; 4118 VkPerformanceConfigurationTypeINTEL type; 4119}; 4120 4121struct VkPhysicalDevicePCIBusInfoPropertiesEXT 4122{ 4123 VkStructureType sType; 4124 void* pNext; 4125 deUint32 pciDomain; 4126 deUint32 pciBus; 4127 deUint32 pciDevice; 4128 deUint32 pciFunction; 4129}; 4130 4131struct VkDisplayNativeHdrSurfaceCapabilitiesAMD 4132{ 4133 VkStructureType sType; 4134 void* pNext; 4135 VkBool32 localDimmingSupport; 4136}; 4137 4138struct VkSwapchainDisplayNativeHdrCreateInfoAMD 4139{ 4140 VkStructureType sType; 4141 const void* pNext; 4142 VkBool32 localDimmingEnable; 4143}; 4144 4145struct VkPhysicalDeviceFragmentDensityMapFeaturesEXT 4146{ 4147 VkStructureType sType; 4148 void* pNext; 4149 VkBool32 fragmentDensityMap; 4150 VkBool32 fragmentDensityMapDynamic; 4151 VkBool32 fragmentDensityMapNonSubsampledImages; 4152}; 4153 4154struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT 4155{ 4156 VkStructureType sType; 4157 void* pNext; 4158 VkExtent2D minFragmentDensityTexelSize; 4159 VkExtent2D maxFragmentDensityTexelSize; 4160 VkBool32 fragmentDensityInvocations; 4161}; 4162 4163struct VkRenderPassFragmentDensityMapCreateInfoEXT 4164{ 4165 VkStructureType sType; 4166 const void* pNext; 4167 VkAttachmentReference fragmentDensityMapAttachment; 4168}; 4169 4170struct VkPhysicalDeviceSubgroupSizeControlFeaturesEXT 4171{ 4172 VkStructureType sType; 4173 void* pNext; 4174 VkBool32 subgroupSizeControl; 4175 VkBool32 computeFullSubgroups; 4176}; 4177 4178struct VkPhysicalDeviceSubgroupSizeControlPropertiesEXT 4179{ 4180 VkStructureType sType; 4181 void* pNext; 4182 deUint32 minSubgroupSize; 4183 deUint32 maxSubgroupSize; 4184 deUint32 maxComputeWorkgroupSubgroups; 4185 VkShaderStageFlags requiredSubgroupSizeStages; 4186}; 4187 4188struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT 4189{ 4190 VkStructureType sType; 4191 void* pNext; 4192 deUint32 requiredSubgroupSize; 4193}; 4194 4195struct VkPhysicalDeviceShaderCoreProperties2AMD 4196{ 4197 VkStructureType sType; 4198 void* pNext; 4199 VkShaderCorePropertiesFlagsAMD shaderCoreFeatures; 4200 deUint32 activeComputeUnitCount; 4201}; 4202 4203struct VkPhysicalDeviceCoherentMemoryFeaturesAMD 4204{ 4205 VkStructureType sType; 4206 void* pNext; 4207 VkBool32 deviceCoherentMemory; 4208}; 4209 4210struct VkPhysicalDeviceMemoryBudgetPropertiesEXT 4211{ 4212 VkStructureType sType; 4213 void* pNext; 4214 VkDeviceSize heapBudget[VK_MAX_MEMORY_HEAPS]; 4215 VkDeviceSize heapUsage[VK_MAX_MEMORY_HEAPS]; 4216}; 4217 4218struct VkPhysicalDeviceMemoryPriorityFeaturesEXT 4219{ 4220 VkStructureType sType; 4221 void* pNext; 4222 VkBool32 memoryPriority; 4223}; 4224 4225struct VkMemoryPriorityAllocateInfoEXT 4226{ 4227 VkStructureType sType; 4228 const void* pNext; 4229 float priority; 4230}; 4231 4232struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV 4233{ 4234 VkStructureType sType; 4235 void* pNext; 4236 VkBool32 dedicatedAllocationImageAliasing; 4237}; 4238 4239struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT 4240{ 4241 VkStructureType sType; 4242 void* pNext; 4243 VkBool32 bufferDeviceAddress; 4244 VkBool32 bufferDeviceAddressCaptureReplay; 4245 VkBool32 bufferDeviceAddressMultiDevice; 4246}; 4247 4248struct VkBufferDeviceAddressCreateInfoEXT 4249{ 4250 VkStructureType sType; 4251 const void* pNext; 4252 VkDeviceAddress deviceAddress; 4253}; 4254 4255struct VkPhysicalDeviceToolPropertiesEXT 4256{ 4257 VkStructureType sType; 4258 void* pNext; 4259 char name[VK_MAX_EXTENSION_NAME_SIZE]; 4260 char version[VK_MAX_EXTENSION_NAME_SIZE]; 4261 VkToolPurposeFlagsEXT purposes; 4262 char description[VK_MAX_DESCRIPTION_SIZE]; 4263 char layer[VK_MAX_EXTENSION_NAME_SIZE]; 4264}; 4265 4266struct VkValidationFeaturesEXT 4267{ 4268 VkStructureType sType; 4269 const void* pNext; 4270 deUint32 enabledValidationFeatureCount; 4271 const VkValidationFeatureEnableEXT* pEnabledValidationFeatures; 4272 deUint32 disabledValidationFeatureCount; 4273 const VkValidationFeatureDisableEXT* pDisabledValidationFeatures; 4274}; 4275 4276struct VkCooperativeMatrixPropertiesNV 4277{ 4278 VkStructureType sType; 4279 void* pNext; 4280 deUint32 MSize; 4281 deUint32 NSize; 4282 deUint32 KSize; 4283 VkComponentTypeNV AType; 4284 VkComponentTypeNV BType; 4285 VkComponentTypeNV CType; 4286 VkComponentTypeNV DType; 4287 VkScopeNV scope; 4288}; 4289 4290struct VkPhysicalDeviceCooperativeMatrixFeaturesNV 4291{ 4292 VkStructureType sType; 4293 void* pNext; 4294 VkBool32 cooperativeMatrix; 4295 VkBool32 cooperativeMatrixRobustBufferAccess; 4296}; 4297 4298struct VkPhysicalDeviceCooperativeMatrixPropertiesNV 4299{ 4300 VkStructureType sType; 4301 void* pNext; 4302 VkShaderStageFlags cooperativeMatrixSupportedStages; 4303}; 4304 4305struct VkPhysicalDeviceCoverageReductionModeFeaturesNV 4306{ 4307 VkStructureType sType; 4308 void* pNext; 4309 VkBool32 coverageReductionMode; 4310}; 4311 4312struct VkPipelineCoverageReductionStateCreateInfoNV 4313{ 4314 VkStructureType sType; 4315 const void* pNext; 4316 VkPipelineCoverageReductionStateCreateFlagsNV flags; 4317 VkCoverageReductionModeNV coverageReductionMode; 4318}; 4319 4320struct VkFramebufferMixedSamplesCombinationNV 4321{ 4322 VkStructureType sType; 4323 void* pNext; 4324 VkCoverageReductionModeNV coverageReductionMode; 4325 VkSampleCountFlagBits rasterizationSamples; 4326 VkSampleCountFlags depthStencilSamples; 4327 VkSampleCountFlags colorSamples; 4328}; 4329 4330struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT 4331{ 4332 VkStructureType sType; 4333 void* pNext; 4334 VkBool32 fragmentShaderSampleInterlock; 4335 VkBool32 fragmentShaderPixelInterlock; 4336 VkBool32 fragmentShaderShadingRateInterlock; 4337}; 4338 4339struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT 4340{ 4341 VkStructureType sType; 4342 void* pNext; 4343 VkBool32 ycbcrImageArrays; 4344}; 4345 4346struct VkHeadlessSurfaceCreateInfoEXT 4347{ 4348 VkStructureType sType; 4349 const void* pNext; 4350 VkHeadlessSurfaceCreateFlagsEXT flags; 4351}; 4352 4353struct VkPhysicalDeviceLineRasterizationFeaturesEXT 4354{ 4355 VkStructureType sType; 4356 void* pNext; 4357 VkBool32 rectangularLines; 4358 VkBool32 bresenhamLines; 4359 VkBool32 smoothLines; 4360 VkBool32 stippledRectangularLines; 4361 VkBool32 stippledBresenhamLines; 4362 VkBool32 stippledSmoothLines; 4363}; 4364 4365struct VkPhysicalDeviceLineRasterizationPropertiesEXT 4366{ 4367 VkStructureType sType; 4368 void* pNext; 4369 deUint32 lineSubPixelPrecisionBits; 4370}; 4371 4372struct VkPipelineRasterizationLineStateCreateInfoEXT 4373{ 4374 VkStructureType sType; 4375 const void* pNext; 4376 VkLineRasterizationModeEXT lineRasterizationMode; 4377 VkBool32 stippledLineEnable; 4378 deUint32 lineStippleFactor; 4379 deUint16 lineStipplePattern; 4380}; 4381 4382struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT 4383{ 4384 VkStructureType sType; 4385 void* pNext; 4386 VkBool32 indexTypeUint8; 4387}; 4388 4389struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT 4390{ 4391 VkStructureType sType; 4392 void* pNext; 4393 VkBool32 shaderDemoteToHelperInvocation; 4394}; 4395 4396struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT 4397{ 4398 VkStructureType sType; 4399 void* pNext; 4400 VkBool32 texelBufferAlignment; 4401}; 4402 4403struct VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT 4404{ 4405 VkStructureType sType; 4406 void* pNext; 4407 VkDeviceSize storageTexelBufferOffsetAlignmentBytes; 4408 VkBool32 storageTexelBufferOffsetSingleTexelAlignment; 4409 VkDeviceSize uniformTexelBufferOffsetAlignmentBytes; 4410 VkBool32 uniformTexelBufferOffsetSingleTexelAlignment; 4411}; 4412 4413struct VkAndroidSurfaceCreateInfoKHR 4414{ 4415 VkStructureType sType; 4416 const void* pNext; 4417 VkAndroidSurfaceCreateFlagsKHR flags; 4418 struct pt::AndroidNativeWindowPtr window; 4419}; 4420 4421struct VkAndroidHardwareBufferUsageANDROID 4422{ 4423 VkStructureType sType; 4424 void* pNext; 4425 deUint64 androidHardwareBufferUsage; 4426}; 4427 4428struct VkAndroidHardwareBufferPropertiesANDROID 4429{ 4430 VkStructureType sType; 4431 void* pNext; 4432 VkDeviceSize allocationSize; 4433 deUint32 memoryTypeBits; 4434}; 4435 4436struct VkAndroidHardwareBufferFormatPropertiesANDROID 4437{ 4438 VkStructureType sType; 4439 void* pNext; 4440 VkFormat format; 4441 deUint64 externalFormat; 4442 VkFormatFeatureFlags formatFeatures; 4443 VkComponentMapping samplerYcbcrConversionComponents; 4444 VkSamplerYcbcrModelConversion suggestedYcbcrModel; 4445 VkSamplerYcbcrRange suggestedYcbcrRange; 4446 VkChromaLocation suggestedXChromaOffset; 4447 VkChromaLocation suggestedYChromaOffset; 4448}; 4449 4450struct VkImportAndroidHardwareBufferInfoANDROID 4451{ 4452 VkStructureType sType; 4453 const void* pNext; 4454 struct pt::AndroidHardwareBufferPtr buffer; 4455}; 4456 4457struct VkMemoryGetAndroidHardwareBufferInfoANDROID 4458{ 4459 VkStructureType sType; 4460 const void* pNext; 4461 VkDeviceMemory memory; 4462}; 4463 4464struct VkExternalFormatANDROID 4465{ 4466 VkStructureType sType; 4467 void* pNext; 4468 deUint64 externalFormat; 4469}; 4470 4471struct VkImagePipeSurfaceCreateInfoFUCHSIA 4472{ 4473 VkStructureType sType; 4474 const void* pNext; 4475 VkImagePipeSurfaceCreateFlagsFUCHSIA flags; 4476 pt::zx_handle_t imagePipeHandle; 4477}; 4478 4479struct VkStreamDescriptorSurfaceCreateInfoGGP 4480{ 4481 VkStructureType sType; 4482 const void* pNext; 4483 VkStreamDescriptorSurfaceCreateFlagsGGP flags; 4484 pt::GgpStreamDescriptor streamDescriptor; 4485}; 4486 4487struct VkPresentFrameTokenGGP 4488{ 4489 VkStructureType sType; 4490 const void* pNext; 4491 pt::GgpFrameToken frameToken; 4492}; 4493 4494struct VkIOSSurfaceCreateInfoMVK 4495{ 4496 VkStructureType sType; 4497 const void* pNext; 4498 VkIOSSurfaceCreateFlagsMVK flags; 4499 const void* pView; 4500}; 4501 4502struct VkMacOSSurfaceCreateInfoMVK 4503{ 4504 VkStructureType sType; 4505 const void* pNext; 4506 VkMacOSSurfaceCreateFlagsMVK flags; 4507 const void* pView; 4508}; 4509 4510struct VkMetalSurfaceCreateInfoEXT 4511{ 4512 VkStructureType sType; 4513 const void* pNext; 4514 VkMetalSurfaceCreateFlagsEXT flags; 4515 const pt::CAMetalLayer* pLayer; 4516}; 4517 4518struct VkViSurfaceCreateInfoNN 4519{ 4520 VkStructureType sType; 4521 const void* pNext; 4522 VkViSurfaceCreateFlagsNN flags; 4523 void* window; 4524}; 4525 4526struct VkWaylandSurfaceCreateInfoKHR 4527{ 4528 VkStructureType sType; 4529 const void* pNext; 4530 VkWaylandSurfaceCreateFlagsKHR flags; 4531 pt::WaylandDisplayPtr display; 4532 pt::WaylandSurfacePtr surface; 4533}; 4534 4535struct VkWin32SurfaceCreateInfoKHR 4536{ 4537 VkStructureType sType; 4538 const void* pNext; 4539 VkWin32SurfaceCreateFlagsKHR flags; 4540 pt::Win32InstanceHandle hinstance; 4541 pt::Win32WindowHandle hwnd; 4542}; 4543 4544struct VkImportMemoryWin32HandleInfoKHR 4545{ 4546 VkStructureType sType; 4547 const void* pNext; 4548 VkExternalMemoryHandleTypeFlagBits handleType; 4549 pt::Win32Handle handle; 4550 pt::Win32LPCWSTR name; 4551}; 4552 4553struct VkExportMemoryWin32HandleInfoKHR 4554{ 4555 VkStructureType sType; 4556 const void* pNext; 4557 pt::Win32SecurityAttributesPtr pAttributes; 4558 deUint32 dwAccess; 4559 pt::Win32LPCWSTR name; 4560}; 4561 4562struct VkMemoryWin32HandlePropertiesKHR 4563{ 4564 VkStructureType sType; 4565 void* pNext; 4566 deUint32 memoryTypeBits; 4567}; 4568 4569struct VkMemoryGetWin32HandleInfoKHR 4570{ 4571 VkStructureType sType; 4572 const void* pNext; 4573 VkDeviceMemory memory; 4574 VkExternalMemoryHandleTypeFlagBits handleType; 4575}; 4576 4577struct VkWin32KeyedMutexAcquireReleaseInfoKHR 4578{ 4579 VkStructureType sType; 4580 const void* pNext; 4581 deUint32 acquireCount; 4582 const VkDeviceMemory* pAcquireSyncs; 4583 const deUint64* pAcquireKeys; 4584 const deUint32* pAcquireTimeouts; 4585 deUint32 releaseCount; 4586 const VkDeviceMemory* pReleaseSyncs; 4587 const deUint64* pReleaseKeys; 4588}; 4589 4590struct VkImportSemaphoreWin32HandleInfoKHR 4591{ 4592 VkStructureType sType; 4593 const void* pNext; 4594 VkSemaphore semaphore; 4595 VkSemaphoreImportFlags flags; 4596 VkExternalSemaphoreHandleTypeFlagBits handleType; 4597 pt::Win32Handle handle; 4598 pt::Win32LPCWSTR name; 4599}; 4600 4601struct VkExportSemaphoreWin32HandleInfoKHR 4602{ 4603 VkStructureType sType; 4604 const void* pNext; 4605 pt::Win32SecurityAttributesPtr pAttributes; 4606 deUint32 dwAccess; 4607 pt::Win32LPCWSTR name; 4608}; 4609 4610struct VkD3D12FenceSubmitInfoKHR 4611{ 4612 VkStructureType sType; 4613 const void* pNext; 4614 deUint32 waitSemaphoreValuesCount; 4615 const deUint64* pWaitSemaphoreValues; 4616 deUint32 signalSemaphoreValuesCount; 4617 const deUint64* pSignalSemaphoreValues; 4618}; 4619 4620struct VkSemaphoreGetWin32HandleInfoKHR 4621{ 4622 VkStructureType sType; 4623 const void* pNext; 4624 VkSemaphore semaphore; 4625 VkExternalSemaphoreHandleTypeFlagBits handleType; 4626}; 4627 4628struct VkImportFenceWin32HandleInfoKHR 4629{ 4630 VkStructureType sType; 4631 const void* pNext; 4632 VkFence fence; 4633 VkFenceImportFlags flags; 4634 VkExternalFenceHandleTypeFlagBits handleType; 4635 pt::Win32Handle handle; 4636 pt::Win32LPCWSTR name; 4637}; 4638 4639struct VkExportFenceWin32HandleInfoKHR 4640{ 4641 VkStructureType sType; 4642 const void* pNext; 4643 pt::Win32SecurityAttributesPtr pAttributes; 4644 deUint32 dwAccess; 4645 pt::Win32LPCWSTR name; 4646}; 4647 4648struct VkFenceGetWin32HandleInfoKHR 4649{ 4650 VkStructureType sType; 4651 const void* pNext; 4652 VkFence fence; 4653 VkExternalFenceHandleTypeFlagBits handleType; 4654}; 4655 4656struct VkImportMemoryWin32HandleInfoNV 4657{ 4658 VkStructureType sType; 4659 const void* pNext; 4660 VkExternalMemoryHandleTypeFlagsNV handleType; 4661 pt::Win32Handle handle; 4662}; 4663 4664struct VkExportMemoryWin32HandleInfoNV 4665{ 4666 VkStructureType sType; 4667 const void* pNext; 4668 pt::Win32SecurityAttributesPtr pAttributes; 4669 deUint32 dwAccess; 4670}; 4671 4672struct VkWin32KeyedMutexAcquireReleaseInfoNV 4673{ 4674 VkStructureType sType; 4675 const void* pNext; 4676 deUint32 acquireCount; 4677 const VkDeviceMemory* pAcquireSyncs; 4678 const deUint64* pAcquireKeys; 4679 const deUint32* pAcquireTimeoutMilliseconds; 4680 deUint32 releaseCount; 4681 const VkDeviceMemory* pReleaseSyncs; 4682 const deUint64* pReleaseKeys; 4683}; 4684 4685struct VkSurfaceFullScreenExclusiveInfoEXT 4686{ 4687 VkStructureType sType; 4688 void* pNext; 4689 VkFullScreenExclusiveEXT fullScreenExclusive; 4690}; 4691 4692struct VkSurfaceCapabilitiesFullScreenExclusiveEXT 4693{ 4694 VkStructureType sType; 4695 void* pNext; 4696 VkBool32 fullScreenExclusiveSupported; 4697}; 4698 4699struct VkSurfaceFullScreenExclusiveWin32InfoEXT 4700{ 4701 VkStructureType sType; 4702 const void* pNext; 4703 pt::Win32MonitorHandle hmonitor; 4704}; 4705 4706struct VkXcbSurfaceCreateInfoKHR 4707{ 4708 VkStructureType sType; 4709 const void* pNext; 4710 VkXcbSurfaceCreateFlagsKHR flags; 4711 pt::XcbConnectionPtr connection; 4712 pt::XcbWindow window; 4713}; 4714 4715struct VkXlibSurfaceCreateInfoKHR 4716{ 4717 VkStructureType sType; 4718 const void* pNext; 4719 VkXlibSurfaceCreateFlagsKHR flags; 4720 pt::XlibDisplayPtr dpy; 4721 pt::XlibWindow window; 4722}; 4723 4724typedef VkBindBufferMemoryInfo VkBindBufferMemoryInfoKHR; 4725 4726typedef VkBindImageMemoryInfo VkBindImageMemoryInfoKHR; 4727 4728typedef VkPhysicalDevice16BitStorageFeatures VkPhysicalDevice16BitStorageFeaturesKHR; 4729 4730typedef VkMemoryDedicatedRequirements VkMemoryDedicatedRequirementsKHR; 4731 4732typedef VkMemoryDedicatedAllocateInfo VkMemoryDedicatedAllocateInfoKHR; 4733 4734typedef VkMemoryAllocateFlagsInfo VkMemoryAllocateFlagsInfoKHR; 4735 4736typedef VkDeviceGroupRenderPassBeginInfo VkDeviceGroupRenderPassBeginInfoKHR; 4737 4738typedef VkDeviceGroupCommandBufferBeginInfo VkDeviceGroupCommandBufferBeginInfoKHR; 4739 4740typedef VkDeviceGroupSubmitInfo VkDeviceGroupSubmitInfoKHR; 4741 4742typedef VkDeviceGroupBindSparseInfo VkDeviceGroupBindSparseInfoKHR; 4743 4744typedef VkBindBufferMemoryDeviceGroupInfo VkBindBufferMemoryDeviceGroupInfoKHR; 4745 4746typedef VkBindImageMemoryDeviceGroupInfo VkBindImageMemoryDeviceGroupInfoKHR; 4747 4748typedef VkPhysicalDeviceGroupProperties VkPhysicalDeviceGroupPropertiesKHR; 4749 4750typedef VkDeviceGroupDeviceCreateInfo VkDeviceGroupDeviceCreateInfoKHR; 4751 4752typedef VkBufferMemoryRequirementsInfo2 VkBufferMemoryRequirementsInfo2KHR; 4753 4754typedef VkImageMemoryRequirementsInfo2 VkImageMemoryRequirementsInfo2KHR; 4755 4756typedef VkImageSparseMemoryRequirementsInfo2 VkImageSparseMemoryRequirementsInfo2KHR; 4757 4758typedef VkMemoryRequirements2 VkMemoryRequirements2KHR; 4759 4760typedef VkSparseImageMemoryRequirements2 VkSparseImageMemoryRequirements2KHR; 4761 4762typedef VkPhysicalDeviceFeatures2 VkPhysicalDeviceFeatures2KHR; 4763 4764typedef VkPhysicalDeviceProperties2 VkPhysicalDeviceProperties2KHR; 4765 4766typedef VkFormatProperties2 VkFormatProperties2KHR; 4767 4768typedef VkImageFormatProperties2 VkImageFormatProperties2KHR; 4769 4770typedef VkPhysicalDeviceImageFormatInfo2 VkPhysicalDeviceImageFormatInfo2KHR; 4771 4772typedef VkQueueFamilyProperties2 VkQueueFamilyProperties2KHR; 4773 4774typedef VkPhysicalDeviceMemoryProperties2 VkPhysicalDeviceMemoryProperties2KHR; 4775 4776typedef VkSparseImageFormatProperties2 VkSparseImageFormatProperties2KHR; 4777 4778typedef VkPhysicalDeviceSparseImageFormatInfo2 VkPhysicalDeviceSparseImageFormatInfo2KHR; 4779 4780typedef VkPhysicalDevicePointClippingProperties VkPhysicalDevicePointClippingPropertiesKHR; 4781 4782typedef VkInputAttachmentAspectReference VkInputAttachmentAspectReferenceKHR; 4783 4784typedef VkRenderPassInputAttachmentAspectCreateInfo VkRenderPassInputAttachmentAspectCreateInfoKHR; 4785 4786typedef VkImageViewUsageCreateInfo VkImageViewUsageCreateInfoKHR; 4787 4788typedef VkPipelineTessellationDomainOriginStateCreateInfo VkPipelineTessellationDomainOriginStateCreateInfoKHR; 4789 4790typedef VkRenderPassMultiviewCreateInfo VkRenderPassMultiviewCreateInfoKHR; 4791 4792typedef VkPhysicalDeviceMultiviewFeatures VkPhysicalDeviceMultiviewFeaturesKHR; 4793 4794typedef VkPhysicalDeviceMultiviewProperties VkPhysicalDeviceMultiviewPropertiesKHR; 4795 4796typedef VkSamplerYcbcrConversionCreateInfo VkSamplerYcbcrConversionCreateInfoKHR; 4797 4798typedef VkSamplerYcbcrConversionInfo VkSamplerYcbcrConversionInfoKHR; 4799 4800typedef VkBindImagePlaneMemoryInfo VkBindImagePlaneMemoryInfoKHR; 4801 4802typedef VkImagePlaneMemoryRequirementsInfo VkImagePlaneMemoryRequirementsInfoKHR; 4803 4804typedef VkPhysicalDeviceSamplerYcbcrConversionFeatures VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR; 4805 4806typedef VkSamplerYcbcrConversionImageFormatProperties VkSamplerYcbcrConversionImageFormatPropertiesKHR; 4807 4808typedef VkDescriptorUpdateTemplateEntry VkDescriptorUpdateTemplateEntryKHR; 4809 4810typedef VkDescriptorUpdateTemplateCreateInfo VkDescriptorUpdateTemplateCreateInfoKHR; 4811 4812typedef VkExternalMemoryProperties VkExternalMemoryPropertiesKHR; 4813 4814typedef VkPhysicalDeviceExternalImageFormatInfo VkPhysicalDeviceExternalImageFormatInfoKHR; 4815 4816typedef VkExternalImageFormatProperties VkExternalImageFormatPropertiesKHR; 4817 4818typedef VkPhysicalDeviceExternalBufferInfo VkPhysicalDeviceExternalBufferInfoKHR; 4819 4820typedef VkExternalBufferProperties VkExternalBufferPropertiesKHR; 4821 4822typedef VkPhysicalDeviceIDProperties VkPhysicalDeviceIDPropertiesKHR; 4823 4824typedef VkExternalMemoryImageCreateInfo VkExternalMemoryImageCreateInfoKHR; 4825 4826typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR; 4827 4828typedef VkExportMemoryAllocateInfo VkExportMemoryAllocateInfoKHR; 4829 4830typedef VkPhysicalDeviceExternalFenceInfo VkPhysicalDeviceExternalFenceInfoKHR; 4831 4832typedef VkExternalFenceProperties VkExternalFencePropertiesKHR; 4833 4834typedef VkExportFenceCreateInfo VkExportFenceCreateInfoKHR; 4835 4836typedef VkExportSemaphoreCreateInfo VkExportSemaphoreCreateInfoKHR; 4837 4838typedef VkPhysicalDeviceExternalSemaphoreInfo VkPhysicalDeviceExternalSemaphoreInfoKHR; 4839 4840typedef VkExternalSemaphoreProperties VkExternalSemaphorePropertiesKHR; 4841 4842typedef VkPhysicalDeviceMaintenance3Properties VkPhysicalDeviceMaintenance3PropertiesKHR; 4843 4844typedef VkDescriptorSetLayoutSupport VkDescriptorSetLayoutSupportKHR; 4845 4846typedef VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderDrawParameterFeatures; 4847 4848typedef VkConformanceVersion VkConformanceVersionKHR; 4849 4850typedef VkImageFormatListCreateInfo VkImageFormatListCreateInfoKHR; 4851 4852typedef VkAttachmentDescription2 VkAttachmentDescription2KHR; 4853 4854typedef VkAttachmentReference2 VkAttachmentReference2KHR; 4855 4856typedef VkSubpassDescription2 VkSubpassDescription2KHR; 4857 4858typedef VkSubpassDependency2 VkSubpassDependency2KHR; 4859 4860typedef VkRenderPassCreateInfo2 VkRenderPassCreateInfo2KHR; 4861 4862typedef VkSubpassBeginInfo VkSubpassBeginInfoKHR; 4863 4864typedef VkSubpassEndInfo VkSubpassEndInfoKHR; 4865 4866typedef VkPhysicalDevice8BitStorageFeatures VkPhysicalDevice8BitStorageFeaturesKHR; 4867 4868typedef VkPhysicalDeviceDriverProperties VkPhysicalDeviceDriverPropertiesKHR; 4869 4870typedef VkPhysicalDeviceShaderAtomicInt64Features VkPhysicalDeviceShaderAtomicInt64FeaturesKHR; 4871 4872typedef VkPhysicalDeviceFloatControlsProperties VkPhysicalDeviceFloatControlsPropertiesKHR; 4873 4874typedef VkDescriptorSetLayoutBindingFlagsCreateInfo VkDescriptorSetLayoutBindingFlagsCreateInfoEXT; 4875 4876typedef VkPhysicalDeviceDescriptorIndexingFeatures VkPhysicalDeviceDescriptorIndexingFeaturesEXT; 4877 4878typedef VkPhysicalDeviceDescriptorIndexingProperties VkPhysicalDeviceDescriptorIndexingPropertiesEXT; 4879 4880typedef VkDescriptorSetVariableDescriptorCountAllocateInfo VkDescriptorSetVariableDescriptorCountAllocateInfoEXT; 4881 4882typedef VkDescriptorSetVariableDescriptorCountLayoutSupport VkDescriptorSetVariableDescriptorCountLayoutSupportEXT; 4883 4884typedef VkSubpassDescriptionDepthStencilResolve VkSubpassDescriptionDepthStencilResolveKHR; 4885 4886typedef VkPhysicalDeviceDepthStencilResolveProperties VkPhysicalDeviceDepthStencilResolvePropertiesKHR; 4887 4888typedef VkPhysicalDeviceScalarBlockLayoutFeatures VkPhysicalDeviceScalarBlockLayoutFeaturesEXT; 4889 4890typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT; 4891 4892typedef VkSamplerReductionModeCreateInfo VkSamplerReductionModeCreateInfoEXT; 4893 4894typedef VkPhysicalDeviceSamplerFilterMinmaxProperties VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT; 4895 4896typedef VkPhysicalDeviceVulkanMemoryModelFeatures VkPhysicalDeviceVulkanMemoryModelFeaturesKHR; 4897 4898typedef VkPhysicalDeviceImagelessFramebufferFeatures VkPhysicalDeviceImagelessFramebufferFeaturesKHR; 4899 4900typedef VkFramebufferAttachmentImageInfo VkFramebufferAttachmentImageInfoKHR; 4901 4902typedef VkFramebufferAttachmentsCreateInfo VkFramebufferAttachmentsCreateInfoKHR; 4903 4904typedef VkRenderPassAttachmentBeginInfo VkRenderPassAttachmentBeginInfoKHR; 4905 4906typedef VkPhysicalDeviceUniformBufferStandardLayoutFeatures VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR; 4907 4908typedef VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR; 4909 4910typedef VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR; 4911 4912typedef VkAttachmentReferenceStencilLayout VkAttachmentReferenceStencilLayoutKHR; 4913 4914typedef VkAttachmentDescriptionStencilLayout VkAttachmentDescriptionStencilLayoutKHR; 4915 4916typedef VkPhysicalDeviceHostQueryResetFeatures VkPhysicalDeviceHostQueryResetFeaturesEXT; 4917 4918typedef VkPhysicalDeviceTimelineSemaphoreFeatures VkPhysicalDeviceTimelineSemaphoreFeaturesKHR; 4919 4920typedef VkPhysicalDeviceTimelineSemaphoreProperties VkPhysicalDeviceTimelineSemaphorePropertiesKHR; 4921 4922typedef VkSemaphoreTypeCreateInfo VkSemaphoreTypeCreateInfoKHR; 4923 4924typedef VkTimelineSemaphoreSubmitInfo VkTimelineSemaphoreSubmitInfoKHR; 4925 4926typedef VkSemaphoreWaitInfo VkSemaphoreWaitInfoKHR; 4927 4928typedef VkSemaphoreSignalInfo VkSemaphoreSignalInfoKHR; 4929 4930typedef VkPhysicalDeviceBufferDeviceAddressFeatures VkPhysicalDeviceBufferDeviceAddressFeaturesKHR; 4931 4932typedef VkBufferOpaqueCaptureAddressCreateInfo VkBufferOpaqueCaptureAddressCreateInfoKHR; 4933 4934typedef VkMemoryOpaqueCaptureAddressAllocateInfo VkMemoryOpaqueCaptureAddressAllocateInfoKHR; 4935 4936typedef VkDeviceMemoryOpaqueCaptureAddressInfo VkDeviceMemoryOpaqueCaptureAddressInfoKHR; 4937 4938typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT; 4939 4940