vulkan.h revision 563380d389732337a84e7455caa01ec955ebee30
1dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall#ifndef __vulkan_h_ 2dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall#define __vulkan_h_ 1 304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#ifdef __cplusplus 504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallextern "C" { 604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall/* 904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** Copyright (c) 2015 The Khronos Group Inc. 1004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 1104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** Permission is hereby granted, free of charge, to any person obtaining a 1204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** copy of this software and/or associated documentation files (the 1304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** "Materials"), to deal in the Materials without restriction, including 1404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** without limitation the rights to use, copy, modify, merge, publish, 1504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** distribute, sublicense, and/or sell copies of the Materials, and to 1604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** permit persons to whom the Materials are furnished to do so, subject to 1704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** the following conditions: 1804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 1904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** The above copyright notice and this permission notice shall be included 2004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** in all copies or substantial portions of the Materials. 2104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 2204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 2304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 2404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 2504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 2604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 2704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 2804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 2904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall*/ 3004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall/* 3204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** This header is generated from the Khronos Vulkan XML API Registry. 3304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall** 3404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall*/ 3504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#define VK_VERSION_1_0 1 3804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#include "vk_platform.h" 3904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#define VK_MAKE_VERSION(major, minor, patch) \ 4104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall ((major << 22) | (minor << 12) | patch) 4204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall// Vulkan API version supported by this file 44563380d389732337a84e7455caa01ec955ebee30Jesse Hall#define VK_API_VERSION VK_MAKE_VERSION(1, 0, 1) 455ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 465ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 47a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall#define VK_NULL_HANDLE 0 48f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 4904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; 5204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 54a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall#if defined(__LP64__) || defined(_WIN64) || defined(__x86_64__) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) 553fbc856120217247c72fb5ed88500000f3881c45Jesse Hall #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object; 5604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#else 573fbc856120217247c72fb5ed88500000f3881c45Jesse Hall #define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; 5804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 59f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 6004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 625ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef uint32_t VkFlags; 63a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef uint32_t VkBool32; 645ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef uint64_t VkDeviceSize; 655ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef uint32_t VkSampleMask; 6604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkInstance) 6804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkPhysicalDevice) 6904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkDevice) 7004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallVK_DEFINE_HANDLE(VkQueue) 713fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore) 723fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_HANDLE(VkCommandBuffer) 733fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence) 743fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory) 753fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer) 763fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage) 773fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent) 783fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool) 793fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView) 803fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView) 813fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule) 823fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache) 833fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout) 843fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass) 853fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline) 863fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout) 873fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler) 883fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool) 893fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet) 903fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer) 913fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool) 9204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 935ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_LOD_CLAMP_NONE 1000.0f 945ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_REMAINING_MIP_LEVELS (~0U) 955ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_REMAINING_ARRAY_LAYERS (~0U) 965ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_WHOLE_SIZE (~0ULL) 975ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_ATTACHMENT_UNUSED (~0U) 985ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_TRUE 1 995ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_FALSE 0 1005ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_QUEUE_FAMILY_IGNORED (~0U) 1015ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_SUBPASS_EXTERNAL (~0U) 10265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE 256 10365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_UUID_SIZE 16 1045ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_MAX_MEMORY_TYPES 32 1055ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall#define VK_MAX_MEMORY_HEAPS 16 10665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_MAX_EXTENSION_NAME_SIZE 256 10765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall#define VK_MAX_DESCRIPTION_SIZE 256 1085ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 10904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 110543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef enum VkPipelineCacheHeaderVersion { 111543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1, 112543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE, 113543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE = VK_PIPELINE_CACHE_HEADER_VERSION_ONE, 114543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE = (VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1), 115543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF 116543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall} VkPipelineCacheHeaderVersion; 117543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall 1183e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkResult { 11904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SUCCESS = 0, 120a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_NOT_READY = 1, 121a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_TIMEOUT = 2, 122a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_EVENT_SET = 3, 123a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_EVENT_RESET = 4, 124a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_INCOMPLETE = 5, 1255ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_OUT_OF_HOST_MEMORY = -1, 1265ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_OUT_OF_DEVICE_MEMORY = -2, 12704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ERROR_INITIALIZATION_FAILED = -3, 1285ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_DEVICE_LOST = -4, 1295ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_MEMORY_MAP_FAILED = -5, 1305ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_LAYER_NOT_PRESENT = -6, 1315ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ERROR_EXTENSION_NOT_PRESENT = -7, 132606a54e194a5884c628130ba2eda1b3bfbc157d7Jesse Hall VK_ERROR_FEATURE_NOT_PRESENT = -8, 133606a54e194a5884c628130ba2eda1b3bfbc157d7Jesse Hall VK_ERROR_INCOMPATIBLE_DRIVER = -9, 134091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_ERROR_TOO_MANY_OBJECTS = -10, 135a9e5703e380d9d7f096d177adb792621a1e8d4baJesse Hall VK_ERROR_FORMAT_NOT_SUPPORTED = -11, 136bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_ERROR_SURFACE_LOST_KHR = -1000000000, 137563380d389732337a84e7455caa01ec955ebee30Jesse Hall VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001, 138bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_SUBOPTIMAL_KHR = 1000001003, 139bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_ERROR_OUT_OF_DATE_KHR = -1000001004, 140bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001, 141543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_ERROR_VALIDATION_FAILED_EXT = -1000011001, 142a9e5703e380d9d7f096d177adb792621a1e8d4baJesse Hall VK_RESULT_BEGIN_RANGE = VK_ERROR_FORMAT_NOT_SUPPORTED, 14304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_RESULT_END_RANGE = VK_INCOMPLETE, 144a9e5703e380d9d7f096d177adb792621a1e8d4baJesse Hall VK_RESULT_RANGE_SIZE = (VK_INCOMPLETE - VK_ERROR_FORMAT_NOT_SUPPORTED + 1), 14504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_RESULT_MAX_ENUM = 0x7FFFFFFF 14604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkResult; 14704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStructureType { 14904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_APPLICATION_INFO = 0, 150c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1, 151c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2, 152c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3, 153c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_SUBMIT_INFO = 4, 154f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5, 155c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6, 156c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7, 157c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8, 158c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9, 1595ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10, 160c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11, 161c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12, 162c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13, 163c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14, 164c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15, 165c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16, 1663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17, 1673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18, 1683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19, 1693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 20, 1703e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 21, 1713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 22, 1723e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO = 23, 1733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 24, 1743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 25, 1753e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 26, 1763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 27, 1773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 28, 1783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 29, 1793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 30, 1803e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 31, 1813e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 32, 1823e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33, 183f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO = 34, 1843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 35, 1853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 36, 1863e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 37, 1873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 38, 1883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO = 39, 189f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO = 40, 1903dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO = 41, 1913dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO = 42, 1923dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43, 1933dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44, 1943dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45, 1953dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46, 1963dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO = 47, 1973dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO = 48, 198bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 1000001000, 199bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 1000001001, 200bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 1000002000, 201bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 1000002001, 202bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 1000003000, 203f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000, 204f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000, 205f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000, 206f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000, 207f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000, 208f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000, 209543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = 1000011000, 21004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO, 211f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO, 212f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1), 21304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF 21404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStructureType; 21504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSystemAllocationScope { 2173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0, 2183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1, 2193fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2, 2203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3, 2213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4, 2223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND, 2233fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE, 2243e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE = (VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1), 2253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM = 0x7FFFFFFF 2263fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkSystemAllocationScope; 22703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 2283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkInternalAllocationType { 2293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0, 2303fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, 2313fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_END_RANGE = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE, 2323fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE = (VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1), 2333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM = 0x7FFFFFFF 2343fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkInternalAllocationType; 23504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2363e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFormat { 23704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_UNDEFINED = 0, 238f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R4G4_UNORM_PACK8 = 1, 239f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2, 240f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B4G4R4A4_UNORM_PACK16 = 3, 241f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R5G6B5_UNORM_PACK16 = 4, 242f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B5G6R5_UNORM_PACK16 = 5, 243f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R5G5B5A1_UNORM_PACK16 = 6, 244f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B5G5R5A1_UNORM_PACK16 = 7, 245f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A1R5G5B5_UNORM_PACK16 = 8, 24604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_UNORM = 9, 24704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SNORM = 10, 24804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_USCALED = 11, 24904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SSCALED = 12, 25004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_UINT = 13, 25104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SINT = 14, 25204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8_SRGB = 15, 25304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_UNORM = 16, 25404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SNORM = 17, 25504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_USCALED = 18, 25604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SSCALED = 19, 25704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_UINT = 20, 25804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SINT = 21, 25904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8_SRGB = 22, 26004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_UNORM = 23, 26104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SNORM = 24, 26204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_USCALED = 25, 26304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SSCALED = 26, 26404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_UINT = 27, 26504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SINT = 28, 26604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_R8G8B8_SRGB = 29, 267f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_UNORM = 30, 268f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SNORM = 31, 269f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_USCALED = 32, 270f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SSCALED = 33, 271f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_UINT = 34, 272f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SINT = 35, 273f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8_SRGB = 36, 274f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_UNORM = 37, 275f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SNORM = 38, 276f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_USCALED = 39, 277f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SSCALED = 40, 278f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_UINT = 41, 279f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SINT = 42, 280f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R8G8B8A8_SRGB = 43, 281f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_UNORM = 44, 282f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SNORM = 45, 283f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_USCALED = 46, 284f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SSCALED = 47, 285f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_UINT = 48, 286f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SINT = 49, 287f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B8G8R8A8_SRGB = 50, 288f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_UNORM_PACK32 = 51, 289f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SNORM_PACK32 = 52, 290f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_USCALED_PACK32 = 53, 291f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54, 292f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_UINT_PACK32 = 55, 293f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SINT_PACK32 = 56, 294f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A8B8G8R8_SRGB_PACK32 = 57, 295f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_UNORM_PACK32 = 58, 296f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SNORM_PACK32 = 59, 297f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_USCALED_PACK32 = 60, 298f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61, 299f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_UINT_PACK32 = 62, 300f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2R10G10B10_SINT_PACK32 = 63, 301f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_UNORM_PACK32 = 64, 302f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SNORM_PACK32 = 65, 303f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_USCALED_PACK32 = 66, 304f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67, 305f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_UINT_PACK32 = 68, 306f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_A2B10G10R10_SINT_PACK32 = 69, 307f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_UNORM = 70, 308f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SNORM = 71, 309f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_USCALED = 72, 310f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SSCALED = 73, 311f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_UINT = 74, 312f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SINT = 75, 313f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16_SFLOAT = 76, 314f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_UNORM = 77, 315f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SNORM = 78, 316f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_USCALED = 79, 317f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SSCALED = 80, 318f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_UINT = 81, 319f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SINT = 82, 320f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16_SFLOAT = 83, 321f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_UNORM = 84, 322f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SNORM = 85, 323f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_USCALED = 86, 324f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SSCALED = 87, 325f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_UINT = 88, 326f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SINT = 89, 327f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16_SFLOAT = 90, 328f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_UNORM = 91, 329f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SNORM = 92, 330f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_USCALED = 93, 331f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SSCALED = 94, 332f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_UINT = 95, 333f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SINT = 96, 334f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R16G16B16A16_SFLOAT = 97, 335f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_UINT = 98, 336f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_SINT = 99, 337f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32_SFLOAT = 100, 338f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_UINT = 101, 339f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_SINT = 102, 340f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32_SFLOAT = 103, 341f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_UINT = 104, 342f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_SINT = 105, 343f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32_SFLOAT = 106, 344f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_UINT = 107, 345f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_SINT = 108, 346f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R32G32B32A32_SFLOAT = 109, 347f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_UINT = 110, 348f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_SINT = 111, 349f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64_SFLOAT = 112, 350f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_UINT = 113, 351f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_SINT = 114, 352f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64_SFLOAT = 115, 353f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_UINT = 116, 354f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_SINT = 117, 355f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64_SFLOAT = 118, 356f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_UINT = 119, 357f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_SINT = 120, 358f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_R64G64B64A64_SFLOAT = 121, 359f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_B10G11R11_UFLOAT_PACK32 = 122, 360f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123, 361f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D16_UNORM = 124, 362f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_X8_D24_UNORM_PACK32 = 125, 363f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D32_SFLOAT = 126, 364f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_S8_UINT = 127, 365f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D16_UNORM_S8_UINT = 128, 366f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D24_UNORM_S8_UINT = 129, 367f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_D32_SFLOAT_S8_UINT = 130, 368f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGB_UNORM_BLOCK = 131, 369f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGB_SRGB_BLOCK = 132, 370f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGBA_UNORM_BLOCK = 133, 371f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC1_RGBA_SRGB_BLOCK = 134, 372f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC2_UNORM_BLOCK = 135, 373f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC2_SRGB_BLOCK = 136, 374f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC3_UNORM_BLOCK = 137, 375f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC3_SRGB_BLOCK = 138, 376f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC4_UNORM_BLOCK = 139, 377f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC4_SNORM_BLOCK = 140, 378f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC5_UNORM_BLOCK = 141, 379f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC5_SNORM_BLOCK = 142, 380f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC6H_UFLOAT_BLOCK = 143, 381f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC6H_SFLOAT_BLOCK = 144, 382f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC7_UNORM_BLOCK = 145, 383f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_BC7_SRGB_BLOCK = 146, 384f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147, 385f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148, 386f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149, 387f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150, 388f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151, 389f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152, 390f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11_UNORM_BLOCK = 153, 391f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11_SNORM_BLOCK = 154, 392f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11G11_UNORM_BLOCK = 155, 393f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_EAC_R11G11_SNORM_BLOCK = 156, 394f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_4x4_UNORM_BLOCK = 157, 395f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_4x4_SRGB_BLOCK = 158, 396f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x4_UNORM_BLOCK = 159, 397f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x4_SRGB_BLOCK = 160, 398f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x5_UNORM_BLOCK = 161, 399f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_5x5_SRGB_BLOCK = 162, 400f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x5_UNORM_BLOCK = 163, 401f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x5_SRGB_BLOCK = 164, 402f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x6_UNORM_BLOCK = 165, 403f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_6x6_SRGB_BLOCK = 166, 404f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x5_UNORM_BLOCK = 167, 405f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x5_SRGB_BLOCK = 168, 406f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x6_UNORM_BLOCK = 169, 407f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x6_SRGB_BLOCK = 170, 408f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x8_UNORM_BLOCK = 171, 409f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_8x8_SRGB_BLOCK = 172, 410f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x5_UNORM_BLOCK = 173, 411f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x5_SRGB_BLOCK = 174, 412f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x6_UNORM_BLOCK = 175, 413f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x6_SRGB_BLOCK = 176, 414f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x8_UNORM_BLOCK = 177, 415f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x8_SRGB_BLOCK = 178, 416f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x10_UNORM_BLOCK = 179, 417f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_10x10_SRGB_BLOCK = 180, 418f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x10_UNORM_BLOCK = 181, 419f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182, 420f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183, 421f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184, 42204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED, 423f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK, 424f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1), 42504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_MAX_ENUM = 0x7FFFFFFF 42604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormat; 42704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageType { 42904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_1D = 0, 43004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_2D = 1, 43104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_3D = 2, 43204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_BEGIN_RANGE = VK_IMAGE_TYPE_1D, 43304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_END_RANGE = VK_IMAGE_TYPE_3D, 4343fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_TYPE_RANGE_SIZE = (VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1), 43504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TYPE_MAX_ENUM = 0x7FFFFFFF 43604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageType; 43704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageTiling { 439c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_OPTIMAL = 0, 440c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_LINEAR = 1, 441c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL, 442c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR, 4433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1), 44404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF 44504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageTiling; 44604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPhysicalDeviceType { 44804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_OTHER = 0, 44904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1, 45004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2, 45104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3, 45204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_CPU = 4, 45304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE = VK_PHYSICAL_DEVICE_TYPE_OTHER, 45404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_END_RANGE = VK_PHYSICAL_DEVICE_TYPE_CPU, 4553fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE = (VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1), 45604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM = 0x7FFFFFFF 45704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceType; 45804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryType { 46004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_OCCLUSION = 0, 46104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_PIPELINE_STATISTICS = 1, 462a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VK_QUERY_TYPE_TIMESTAMP = 2, 46304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION, 464a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP, 4653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1), 46604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF 46704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryType; 46804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSharingMode { 47004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_EXCLUSIVE = 0, 47104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_CONCURRENT = 1, 47204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_BEGIN_RANGE = VK_SHARING_MODE_EXCLUSIVE, 47304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_END_RANGE = VK_SHARING_MODE_CONCURRENT, 4743fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SHARING_MODE_RANGE_SIZE = (VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1), 47504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_SHARING_MODE_MAX_ENUM = 0x7FFFFFFF 47604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSharingMode; 47704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageLayout { 4795ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_UNDEFINED = 0, 4805ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_GENERAL = 1, 4815ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2, 4825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3, 4835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4, 4845ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL = 5, 4853fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL = 6, 4863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7, 4875ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_PREINITIALIZED = 8, 488bd88884111a3ef38322741c15de9bd215f7a7eb9Jesse Hall VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002, 4895ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_BEGIN_RANGE = VK_IMAGE_LAYOUT_UNDEFINED, 4905ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_END_RANGE = VK_IMAGE_LAYOUT_PREINITIALIZED, 4913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_LAYOUT_RANGE_SIZE = (VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1), 4925ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_LAYOUT_MAX_ENUM = 0x7FFFFFFF 4935ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkImageLayout; 49404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 4953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageViewType { 49604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_1D = 0, 49704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_2D = 1, 49804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_3D = 2, 49904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_CUBE = 3, 50004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4, 50104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5, 50204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6, 50304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_BEGIN_RANGE = VK_IMAGE_VIEW_TYPE_1D, 50404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_END_RANGE = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY, 5053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_VIEW_TYPE_RANGE_SIZE = (VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1), 50604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_VIEW_TYPE_MAX_ENUM = 0x7FFFFFFF 50704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageViewType; 50804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkComponentSwizzle { 51065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_IDENTITY = 0, 51165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_ZERO = 1, 51265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_ONE = 2, 51365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_R = 3, 51465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_G = 4, 51565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_B = 5, 51665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_A = 6, 51765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_BEGIN_RANGE = VK_COMPONENT_SWIZZLE_IDENTITY, 51865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_END_RANGE = VK_COMPONENT_SWIZZLE_A, 51965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_RANGE_SIZE = (VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1), 52065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COMPONENT_SWIZZLE_MAX_ENUM = 0x7FFFFFFF 52165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkComponentSwizzle; 52204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5233e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkVertexInputRate { 52465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_VERTEX = 0, 52565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_INSTANCE = 1, 52665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_BEGIN_RANGE = VK_VERTEX_INPUT_RATE_VERTEX, 52765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_END_RANGE = VK_VERTEX_INPUT_RATE_INSTANCE, 52865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_RANGE_SIZE = (VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1), 52965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_VERTEX_INPUT_RATE_MAX_ENUM = 0x7FFFFFFF 53065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkVertexInputRate; 53104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPrimitiveTopology { 53304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0, 53404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1, 53504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2, 53604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST = 3, 53704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP = 4, 53804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN = 5, 5393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY = 6, 5403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY = 7, 5413fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8, 5423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9, 543091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10, 54404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE = VK_PRIMITIVE_TOPOLOGY_POINT_LIST, 545091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_END_RANGE = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST, 546091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE = (VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1), 54704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PRIMITIVE_TOPOLOGY_MAX_ENUM = 0x7FFFFFFF 54804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPrimitiveTopology; 54904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPolygonMode { 55165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_FILL = 0, 55265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_LINE = 1, 55365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_POINT = 2, 55465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_BEGIN_RANGE = VK_POLYGON_MODE_FILL, 55565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_END_RANGE = VK_POLYGON_MODE_POINT, 55665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_RANGE_SIZE = (VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1), 55765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_POLYGON_MODE_MAX_ENUM = 0x7FFFFFFF 55865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkPolygonMode; 55904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5603e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFrontFace { 5613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_COUNTER_CLOCKWISE = 0, 5623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_CLOCKWISE = 1, 5633fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_COUNTER_CLOCKWISE, 5643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_END_RANGE = VK_FRONT_FACE_CLOCKWISE, 5653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FRONT_FACE_RANGE_SIZE = (VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1), 56604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FRONT_FACE_MAX_ENUM = 0x7FFFFFFF 56704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFrontFace; 56804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCompareOp { 57004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_NEVER = 0, 57104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_LESS = 1, 57204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_EQUAL = 2, 5733fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_LESS_OR_EQUAL = 3, 57404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_GREATER = 4, 57504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_NOT_EQUAL = 5, 5763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_GREATER_OR_EQUAL = 6, 57704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_ALWAYS = 7, 57804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_BEGIN_RANGE = VK_COMPARE_OP_NEVER, 57904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_END_RANGE = VK_COMPARE_OP_ALWAYS, 5803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMPARE_OP_RANGE_SIZE = (VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1), 58104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_COMPARE_OP_MAX_ENUM = 0x7FFFFFFF 58204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkCompareOp; 58304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStencilOp { 58504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_KEEP = 0, 58604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_ZERO = 1, 58704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_REPLACE = 2, 5883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_INCREMENT_AND_CLAMP = 3, 5893fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_DECREMENT_AND_CLAMP = 4, 59004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_INVERT = 5, 5913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_INCREMENT_AND_WRAP = 6, 5923fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_DECREMENT_AND_WRAP = 7, 59304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_BEGIN_RANGE = VK_STENCIL_OP_KEEP, 5943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_END_RANGE = VK_STENCIL_OP_DECREMENT_AND_WRAP, 5953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_STENCIL_OP_RANGE_SIZE = (VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1), 59604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_STENCIL_OP_MAX_ENUM = 0x7FFFFFFF 59704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStencilOp; 59804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 5993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkLogicOp { 60004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_CLEAR = 0, 60104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND = 1, 60204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND_REVERSE = 2, 60304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_COPY = 3, 60404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_AND_INVERTED = 4, 6053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_NO_OP = 5, 60604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_XOR = 6, 60704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR = 7, 60804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_NOR = 8, 6093fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_EQUIVALENT = 9, 61004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_INVERT = 10, 61104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR_REVERSE = 11, 61204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_COPY_INVERTED = 12, 61304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_OR_INVERTED = 13, 61404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_NAND = 14, 61504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_SET = 15, 61604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_BEGIN_RANGE = VK_LOGIC_OP_CLEAR, 61704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_END_RANGE = VK_LOGIC_OP_SET, 6183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_LOGIC_OP_RANGE_SIZE = (VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1), 61904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_LOGIC_OP_MAX_ENUM = 0x7FFFFFFF 62004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkLogicOp; 62104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBlendFactor { 62365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ZERO = 0, 62465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE = 1, 62565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_COLOR = 2, 62665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3, 62765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_DST_COLOR = 4, 62865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5, 62965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_ALPHA = 6, 63065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7, 63165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_DST_ALPHA = 8, 63265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9, 63365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_CONSTANT_COLOR = 10, 63465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11, 63565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_CONSTANT_ALPHA = 12, 63665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13, 63765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC_ALPHA_SATURATE = 14, 63865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC1_COLOR = 15, 63965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16, 64065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_SRC1_ALPHA = 17, 64165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18, 64265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_BEGIN_RANGE = VK_BLEND_FACTOR_ZERO, 64365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_END_RANGE = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA, 64465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_RANGE_SIZE = (VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1), 64565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_BLEND_FACTOR_MAX_ENUM = 0x7FFFFFFF 64665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkBlendFactor; 64704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBlendOp { 64904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_ADD = 0, 65004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_SUBTRACT = 1, 65104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_REVERSE_SUBTRACT = 2, 65204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MIN = 3, 65304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MAX = 4, 65404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_BEGIN_RANGE = VK_BLEND_OP_ADD, 65504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_END_RANGE = VK_BLEND_OP_MAX, 6563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BLEND_OP_RANGE_SIZE = (VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1), 65704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BLEND_OP_MAX_ENUM = 0x7FFFFFFF 65804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBlendOp; 65904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6603e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDynamicState { 6615ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_VIEWPORT = 0, 6625ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_SCISSOR = 1, 6635ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_LINE_WIDTH = 2, 6645ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_DEPTH_BIAS = 3, 6655ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4, 6665ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5, 6675ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6, 6685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7, 6695ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8, 6705ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_BEGIN_RANGE = VK_DYNAMIC_STATE_VIEWPORT, 6715ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_END_RANGE = VK_DYNAMIC_STATE_STENCIL_REFERENCE, 6723fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_DYNAMIC_STATE_RANGE_SIZE = (VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1), 6735ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF 6745ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkDynamicState; 6755ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 6763e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFilter { 67723ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_NEAREST = 0, 67823ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_LINEAR = 1, 67923ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST, 68023ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_END_RANGE = VK_FILTER_LINEAR, 6813fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1), 68223ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_FILTER_MAX_ENUM = 0x7FFFFFFF 68323ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkFilter; 68404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSamplerMipmapMode { 6863dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_NEAREST = 0, 6873dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_LINEAR = 1, 6883dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE = VK_SAMPLER_MIPMAP_MODE_NEAREST, 68923ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_MIPMAP_MODE_END_RANGE = VK_SAMPLER_MIPMAP_MODE_LINEAR, 6903dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE = (VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1), 69123ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_MIPMAP_MODE_MAX_ENUM = 0x7FFFFFFF 69223ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkSamplerMipmapMode; 69304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSamplerAddressMode { 695c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_REPEAT = 0, 696c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1, 697c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2, 698c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3, 699c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4, 700c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT, 701c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE, 7023fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE = (VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1), 70323ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF 70423ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall} VkSamplerAddressMode; 70504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7063e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBorderColor { 70704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0, 70804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1, 70904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2, 71004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3, 71104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4, 71204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5, 71304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_BEGIN_RANGE = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK, 71404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_END_RANGE = VK_BORDER_COLOR_INT_OPAQUE_WHITE, 7153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BORDER_COLOR_RANGE_SIZE = (VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1), 71604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BORDER_COLOR_MAX_ENUM = 0x7FFFFFFF 71704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBorderColor; 71804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDescriptorType { 72004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_SAMPLER = 0, 72104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1, 72204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2, 72304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_IMAGE = 3, 72404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER = 4, 72504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER = 5, 72604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER = 6, 72704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_BUFFER = 7, 72804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8, 72904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9, 73004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10, 73104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER, 73204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, 7333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1), 73404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF 73504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorType; 73604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentLoadOp { 73804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_LOAD = 0, 73904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_CLEAR = 1, 74004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2, 74104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE = VK_ATTACHMENT_LOAD_OP_LOAD, 74204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_END_RANGE = VK_ATTACHMENT_LOAD_OP_DONT_CARE, 7433fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_ATTACHMENT_LOAD_OP_RANGE_SIZE = (VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1), 74404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_LOAD_OP_MAX_ENUM = 0x7FFFFFFF 74504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentLoadOp; 74604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentStoreOp { 74804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_STORE = 0, 74904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_DONT_CARE = 1, 75004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_BEGIN_RANGE = VK_ATTACHMENT_STORE_OP_STORE, 75104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_END_RANGE = VK_ATTACHMENT_STORE_OP_DONT_CARE, 7523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_ATTACHMENT_STORE_OP_RANGE_SIZE = (VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1), 75304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_ATTACHMENT_STORE_OP_MAX_ENUM = 0x7FFFFFFF 75404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentStoreOp; 75504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPipelineBindPoint { 757c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_GRAPHICS = 0, 758c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_COMPUTE = 1, 759c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS, 760c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE, 7613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1), 76204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF 76304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineBindPoint; 76404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferLevel { 7663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0, 7673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1, 7683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VK_COMMAND_BUFFER_LEVEL_PRIMARY, 7693fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_END_RANGE = VK_COMMAND_BUFFER_LEVEL_SECONDARY, 7703fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE = (VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1), 7713fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_LEVEL_MAX_ENUM = 0x7FFFFFFF 7723fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferLevel; 77304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkIndexType { 77504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_UINT16 = 0, 77604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_UINT32 = 1, 77704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16, 77804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32, 7793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1), 78004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_INDEX_TYPE_MAX_ENUM = 0x7FFFFFFF 78104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkIndexType; 78204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSubpassContents { 78465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_INLINE = 0, 78565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1, 78665ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_BEGIN_RANGE = VK_SUBPASS_CONTENTS_INLINE, 78765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_END_RANGE = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS, 78865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_RANGE_SIZE = (VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1), 78965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF 79065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkSubpassContents; 79104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 792a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkInstanceCreateFlags; 79304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 7943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFormatFeatureFlagBits { 79504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 0x00000001, 79604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 0x00000002, 79704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 0x00000004, 79804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000008, 79904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT = 0x00000010, 80004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT = 0x00000020, 80104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT = 0x00000040, 80204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT = 0x00000080, 80304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT = 0x00000100, 80404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000200, 8053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400, 8063fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800, 80704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormatFeatureFlagBits; 80804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkFormatFeatureFlags; 80904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageUsageFlagBits { 8113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 0x00000001, 8123fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_IMAGE_USAGE_TRANSFER_DST_BIT = 0x00000002, 81304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_SAMPLED_BIT = 0x00000004, 81404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_STORAGE_BIT = 0x00000008, 81504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT = 0x00000010, 8165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 0x00000020, 81704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 0x00000040, 81804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 0x00000080, 81904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageUsageFlagBits; 82004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkImageUsageFlags; 82104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageCreateFlagBits { 8235ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 0x00000001, 8245ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002, 8255ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 0x00000004, 8265ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 0x00000008, 8275ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 0x00000010, 8285ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkImageCreateFlagBits; 8295ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkImageCreateFlags; 8305ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 8313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSampleCountFlagBits { 8325ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_1_BIT = 0x00000001, 8335ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_2_BIT = 0x00000002, 8345ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_4_BIT = 0x00000004, 8355ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_8_BIT = 0x00000008, 8365ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_16_BIT = 0x00000010, 8375ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_32_BIT = 0x00000020, 8385ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_SAMPLE_COUNT_64_BIT = 0x00000040, 8395ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkSampleCountFlagBits; 8405ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkSampleCountFlags; 8415ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 8423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueueFlagBits { 84304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUEUE_GRAPHICS_BIT = 0x00000001, 84404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUEUE_COMPUTE_BIT = 0x00000002, 84565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_QUEUE_TRANSFER_BIT = 0x00000004, 846b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008, 84704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueueFlagBits; 84804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueueFlags; 84904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkMemoryPropertyFlagBits { 851d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001, 852d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002, 853d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004, 854d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008, 855d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010, 85604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryPropertyFlagBits; 85704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryPropertyFlags; 85804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkMemoryHeapFlagBits { 860d1af812f20e0793d94702817d441ab799bf46df7Jesse Hall VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 0x00000001, 86104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryHeapFlagBits; 86204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryHeapFlags; 863a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDeviceCreateFlags; 864a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDeviceQueueCreateFlags; 865543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall 866543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef enum VkPipelineStageFlagBits { 867543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 0x00000001, 868543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 0x00000002, 869543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 0x00000004, 870543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_VERTEX_SHADER_BIT = 0x00000008, 871543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT = 0x00000010, 872543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT = 0x00000020, 873543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT = 0x00000040, 874543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT = 0x00000080, 875543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT = 0x00000100, 876543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT = 0x00000200, 877543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT = 0x00000400, 878543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT = 0x00000800, 879543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_TRANSFER_BIT = 0x00001000, 880543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT = 0x00002000, 881543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_HOST_BIT = 0x00004000, 882543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000, 883543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000, 884543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall} VkPipelineStageFlagBits; 885543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Halltypedef VkFlags VkPipelineStageFlags; 88604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkMemoryMapFlags; 88704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 8883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkImageAspectFlagBits { 889a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_COLOR_BIT = 0x00000001, 890a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_DEPTH_BIT = 0x00000002, 891a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_STENCIL_BIT = 0x00000004, 892a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_IMAGE_ASPECT_METADATA_BIT = 0x00000008, 893a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkImageAspectFlagBits; 8943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkImageAspectFlags; 895a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 8963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSparseImageFormatFlagBits { 897b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 0x00000001, 898b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 0x00000002, 899b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 0x00000004, 90004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageFormatFlagBits; 90104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSparseImageFormatFlags; 902091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall 903091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Halltypedef enum VkSparseMemoryBindFlagBits { 904091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VK_SPARSE_MEMORY_BIND_METADATA_BIT = 0x00000001, 905091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall} VkSparseMemoryBindFlagBits; 90604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSparseMemoryBindFlags; 90704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9083e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkFenceCreateFlagBits { 90904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_FENCE_CREATE_SIGNALED_BIT = 0x00000001, 91004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFenceCreateFlagBits; 91104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkFenceCreateFlags; 91204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSemaphoreCreateFlags; 91304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkEventCreateFlags; 914a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkQueryPoolCreateFlags; 91504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryPipelineStatisticFlagBits { 917ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 0x00000001, 918ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 0x00000002, 919ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 0x00000004, 920ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT = 0x00000008, 921ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT = 0x00000010, 922ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT = 0x00000020, 923ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT = 0x00000040, 924ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT = 0x00000080, 925ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 0x00000100, 926ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 0x00000200, 927ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400, 92804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryPipelineStatisticFlagBits; 92904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueryPipelineStatisticFlags; 93004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkQueryResultFlagBits { 93204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_64_BIT = 0x00000001, 93304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_WAIT_BIT = 0x00000002, 93404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 0x00000004, 93504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_QUERY_RESULT_PARTIAL_BIT = 0x00000008, 93604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryResultFlagBits; 93704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkQueryResultFlags; 93804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBufferCreateFlagBits { 940a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 0x00000001, 941a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002, 942a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004, 943a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkBufferCreateFlagBits; 944a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkBufferCreateFlags; 945a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 9463e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkBufferUsageFlagBits { 9473fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 0x00000001, 9483fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_BUFFER_USAGE_TRANSFER_DST_BIT = 0x00000002, 94904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 0x00000004, 95004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT = 0x00000008, 95104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT = 0x00000010, 95204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_STORAGE_BUFFER_BIT = 0x00000020, 95304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040, 95404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080, 95504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100, 95604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferUsageFlagBits; 95704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkBufferUsageFlags; 958a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkBufferViewCreateFlags; 9595ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkImageViewCreateFlags; 96004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkShaderModuleCreateFlags; 9613e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineCacheCreateFlags; 96204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 9633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPipelineCreateFlagBits { 9643e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001, 9653e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002, 9663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004, 9673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall} VkPipelineCreateFlagBits; 9683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineCreateFlags; 9693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkPipelineShaderStageCreateFlags; 9703e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall 9713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkShaderStageFlagBits { 972a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_VERTEX_BIT = 0x00000001, 973a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 0x00000002, 974a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 0x00000004, 975a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008, 976a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010, 977a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020, 978c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_SHADER_STAGE_ALL_GRAPHICS = 0x1F, 979a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall VK_SHADER_STAGE_ALL = 0x7FFFFFFF, 980a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkShaderStageFlagBits; 981a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineVertexInputStateCreateFlags; 982a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineInputAssemblyStateCreateFlags; 9833dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef VkFlags VkPipelineTessellationStateCreateFlags; 984a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineViewportStateCreateFlags; 9853fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkPipelineRasterizationStateCreateFlags; 986c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall 9873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCullModeFlagBits { 988c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_NONE = 0, 989c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_FRONT_BIT = 0x00000001, 990c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_BACK_BIT = 0x00000002, 991c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_CULL_MODE_FRONT_AND_BACK = 0x3, 992c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall} VkCullModeFlagBits; 993c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Halltypedef VkFlags VkCullModeFlags; 994a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineMultisampleStateCreateFlags; 995a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineDepthStencilStateCreateFlags; 996a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineColorBlendStateCreateFlags; 997a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 9983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkColorComponentFlagBits { 99965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_R_BIT = 0x00000001, 100065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_G_BIT = 0x00000002, 100165ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_B_BIT = 0x00000004, 100265ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VK_COLOR_COMPONENT_A_BIT = 0x00000008, 100365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkColorComponentFlagBits; 100465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Halltypedef VkFlags VkColorComponentFlags; 1005a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineDynamicStateCreateFlags; 1006a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkPipelineLayoutCreateFlags; 100704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkShaderStageFlags; 1008a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkSamplerCreateFlags; 1009a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkDescriptorSetLayoutCreateFlags; 101004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDescriptorPoolCreateFlagBits { 1012fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001, 1013fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall} VkDescriptorPoolCreateFlagBits; 1014fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Halltypedef VkFlags VkDescriptorPoolCreateFlags; 1015fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Halltypedef VkFlags VkDescriptorPoolResetFlags; 1016a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkFramebufferCreateFlags; 1017a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkRenderPassCreateFlags; 1018fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall 10193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAttachmentDescriptionFlagBits { 10205ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 0x00000001, 10215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkAttachmentDescriptionFlagBits; 10225ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkAttachmentDescriptionFlags; 102304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltypedef VkFlags VkSubpassDescriptionFlags; 102404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkAccessFlagBits { 10263e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 0x00000001, 10273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INDEX_READ_BIT = 0x00000002, 10283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 0x00000004, 10293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_UNIFORM_READ_BIT = 0x00000008, 10303e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_INPUT_ATTACHMENT_READ_BIT = 0x00000010, 10313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_SHADER_READ_BIT = 0x00000020, 10323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_SHADER_WRITE_BIT = 0x00000040, 10333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_COLOR_ATTACHMENT_READ_BIT = 0x00000080, 10343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT = 0x00000100, 10353e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT = 0x00000200, 10363e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT = 0x00000400, 10373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_TRANSFER_READ_BIT = 0x00000800, 10383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_TRANSFER_WRITE_BIT = 0x00001000, 10393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_HOST_READ_BIT = 0x00002000, 10403e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_HOST_WRITE_BIT = 0x00004000, 10413e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_MEMORY_READ_BIT = 0x00008000, 10423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000, 10433e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall} VkAccessFlagBits; 10443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef VkFlags VkAccessFlags; 10453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall 10463e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDependencyFlagBits { 1047dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall VK_DEPENDENCY_BY_REGION_BIT = 0x00000001, 1048dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall} VkDependencyFlagBits; 1049dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Halltypedef VkFlags VkDependencyFlags; 1050dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall 10513e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandPoolCreateFlagBits { 10523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 0x00000001, 10533fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 0x00000002, 10543fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolCreateFlagBits; 10553fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandPoolCreateFlags; 105604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10573e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandPoolResetFlagBits { 10583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001, 10593fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolResetFlagBits; 10603fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandPoolResetFlags; 106104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferUsageFlagBits { 10633fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 0x00000001, 10643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 0x00000002, 10653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 0x00000004, 10663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferUsageFlagBits; 10673fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandBufferUsageFlags; 106804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1069f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef enum VkQueryControlFlagBits { 1070f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_QUERY_CONTROL_PRECISE_BIT = 0x00000001, 1071f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall} VkQueryControlFlagBits; 1072f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkQueryControlFlags; 1073f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 10743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCommandBufferResetFlagBits { 10753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 0x00000001, 10763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferResetFlagBits; 10773fbc856120217247c72fb5ed88500000f3881c45Jesse Halltypedef VkFlags VkCommandBufferResetFlags; 107804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 10793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkStencilFaceFlagBits { 10805ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STENCIL_FACE_FRONT_BIT = 0x00000001, 10815ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VK_STENCIL_FACE_BACK_BIT = 0x00000002, 1082c7467b74d3411eb7b9fde67368fad1052eb51c8dJesse Hall VK_STENCIL_FRONT_AND_BACK = 0x3, 10835ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkStencilFaceFlagBits; 10845ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Halltypedef VkFlags VkStencilFaceFlags; 108504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1086e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void* (VKAPI_PTR *PFN_vkAllocationFunction)( 10873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 10883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 10893e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t alignment, 10903e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 109103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1092e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void* (VKAPI_PTR *PFN_vkReallocationFunction)( 10933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 10943e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pOriginal, 10953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 10963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t alignment, 10973e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 109804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1099e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeFunction)( 11003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 11013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pMemory); 110204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1103e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkInternalAllocationNotification)( 11043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 11053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 11063e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkInternalAllocationType allocationType, 11073e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 110803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1109e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkInternalFreeNotification)( 11103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall void* pUserData, 11113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall size_t size, 11123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkInternalAllocationType allocationType, 11133e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall VkSystemAllocationScope allocationScope); 111403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 1115e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkVoidFunction)(void); 11165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 11173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkApplicationInfo { 1118563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1119563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1120563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pApplicationName; 1121563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t applicationVersion; 1122563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pEngineName; 1123563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t engineVersion; 1124563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t apiVersion; 11255ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkApplicationInfo; 11265ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 11273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkInstanceCreateInfo { 1128563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1129563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1130563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkInstanceCreateFlags flags; 1131563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkApplicationInfo* pApplicationInfo; 1132563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledLayerCount; 1133563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledLayerNames; 1134563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledExtensionCount; 1135563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledExtensionNames; 113604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkInstanceCreateInfo; 113704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 11383e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAllocationCallbacks { 1139563380d389732337a84e7455caa01ec955ebee30Jesse Hall void* pUserData; 1140563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkAllocationFunction pfnAllocation; 1141563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkReallocationFunction pfnReallocation; 1142563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkFreeFunction pfnFree; 1143563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkInternalAllocationNotification pfnInternalAllocation; 1144563380d389732337a84e7455caa01ec955ebee30Jesse Hall PFN_vkInternalFreeNotification pfnInternalFree; 11453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkAllocationCallbacks; 114603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall 11473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceFeatures { 1148563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 robustBufferAccess; 1149563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fullDrawIndexUint32; 1150563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 imageCubeArray; 1151563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 independentBlend; 1152563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 geometryShader; 1153563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 tessellationShader; 1154563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sampleRateShading; 1155563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 dualSrcBlend; 1156563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 logicOp; 1157563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 multiDrawIndirect; 1158563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 drawIndirectFirstInstance; 1159563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthClamp; 1160563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBiasClamp; 1161563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fillModeNonSolid; 1162563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBounds; 1163563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 wideLines; 1164563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 largePoints; 1165563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToOne; 1166563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 multiViewport; 1167563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 samplerAnisotropy; 1168563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionETC2; 1169563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionASTC_LDR; 1170563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 textureCompressionBC; 1171563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 occlusionQueryPrecise; 1172563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 pipelineStatisticsQuery; 1173563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 vertexPipelineStoresAndAtomics; 1174563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 fragmentStoresAndAtomics; 1175563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderTessellationAndGeometryPointSize; 1176563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderImageGatherExtended; 1177563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageExtendedFormats; 1178563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageMultisample; 1179563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageReadWithoutFormat; 1180563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageWriteWithoutFormat; 1181563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderUniformBufferArrayDynamicIndexing; 1182563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderSampledImageArrayDynamicIndexing; 1183563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageBufferArrayDynamicIndexing; 1184563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderStorageImageArrayDynamicIndexing; 1185563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderClipDistance; 1186563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderCullDistance; 1187563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderFloat64; 1188563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderInt64; 1189563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderInt16; 1190563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderResourceResidency; 1191563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 shaderResourceMinLod; 1192563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseBinding; 1193563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyBuffer; 1194563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyImage2D; 1195563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyImage3D; 1196563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency2Samples; 1197563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency4Samples; 1198563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency8Samples; 1199563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidency16Samples; 1200563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sparseResidencyAliased; 1201563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 variableMultisampleRate; 1202563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 inheritedQueries; 120304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceFeatures; 120404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFormatProperties { 1206563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags linearTilingFeatures; 1207563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags optimalTilingFeatures; 1208563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormatFeatureFlags bufferFeatures; 120904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFormatProperties; 121004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtent3D { 1212563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1213563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 1214563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t depth; 12155ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkExtent3D; 12165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 12173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageFormatProperties { 1218563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D maxExtent; 1219563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxMipLevels; 1220563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxArrayLayers; 1221563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampleCounts; 1222563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize maxResourceSize; 122304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageFormatProperties; 122404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 12253e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceLimits { 1226563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension1D; 1227563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension2D; 1228563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimension3D; 1229563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageDimensionCube; 1230563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageArrayLayers; 1231563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelBufferElements; 1232563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxUniformBufferRange; 1233563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxStorageBufferRange; 1234563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPushConstantsSize; 1235563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxMemoryAllocationCount; 1236563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSamplerAllocationCount; 1237563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize bufferImageGranularity; 1238563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize sparseAddressSpaceSize; 1239563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxBoundDescriptorSets; 1240563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorSamplers; 1241563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorUniformBuffers; 1242563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorStorageBuffers; 1243563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorSampledImages; 1244563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorStorageImages; 1245563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageDescriptorInputAttachments; 1246563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxPerStageResources; 1247563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetSamplers; 1248563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetUniformBuffers; 1249563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetUniformBuffersDynamic; 1250563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageBuffers; 1251563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageBuffersDynamic; 1252563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetSampledImages; 1253563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetStorageImages; 1254563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDescriptorSetInputAttachments; 1255563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputAttributes; 1256563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputBindings; 1257563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputAttributeOffset; 1258563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexInputBindingStride; 1259563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxVertexOutputComponents; 1260563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationGenerationLevel; 1261563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationPatchSize; 1262563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerVertexInputComponents; 1263563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerVertexOutputComponents; 1264563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlPerPatchOutputComponents; 1265563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationControlTotalOutputComponents; 1266563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationEvaluationInputComponents; 1267563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTessellationEvaluationOutputComponents; 1268563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryShaderInvocations; 1269563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryInputComponents; 1270563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryOutputComponents; 1271563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryOutputVertices; 1272563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxGeometryTotalOutputComponents; 1273563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentInputComponents; 1274563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentOutputAttachments; 1275563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentDualSrcAttachments; 1276563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFragmentCombinedOutputResources; 1277563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeSharedMemorySize; 1278563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupCount[3]; 1279563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupInvocations; 1280563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxComputeWorkGroupSize[3]; 1281563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subPixelPrecisionBits; 1282563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subTexelPrecisionBits; 1283563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipmapPrecisionBits; 1284563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDrawIndexedIndexValue; 1285563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxDrawIndirectCount; 1286563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxSamplerLodBias; 1287563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxSamplerAnisotropy; 1288563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxViewports; 1289563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxViewportDimensions[2]; 1290563380d389732337a84e7455caa01ec955ebee30Jesse Hall float viewportBoundsRange[2]; 1291563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t viewportSubPixelBits; 1292563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t minMemoryMapAlignment; 1293563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minTexelBufferOffsetAlignment; 1294563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minUniformBufferOffsetAlignment; 1295563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize minStorageBufferOffsetAlignment; 1296563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t minTexelOffset; 1297563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelOffset; 1298563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t minTexelGatherOffset; 1299563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxTexelGatherOffset; 1300563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minInterpolationOffset; 1301563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxInterpolationOffset; 1302563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subPixelInterpolationOffsetBits; 1303563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferWidth; 1304563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferHeight; 1305563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxFramebufferLayers; 1306563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferColorSampleCounts; 1307563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferDepthSampleCounts; 1308563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferStencilSampleCounts; 1309563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags framebufferNoAttachmentsSampleCounts; 1310563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxColorAttachments; 1311563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageColorSampleCounts; 1312563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageIntegerSampleCounts; 1313563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageDepthSampleCounts; 1314563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags sampledImageStencilSampleCounts; 1315563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlags storageImageSampleCounts; 1316563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSampleMaskWords; 1317563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 timestampComputeAndGraphics; 1318563380d389732337a84e7455caa01ec955ebee30Jesse Hall float timestampPeriod; 1319563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxClipDistances; 1320563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxCullDistances; 1321563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxCombinedClipAndCullDistances; 1322563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t discreteQueuePriorities; 1323563380d389732337a84e7455caa01ec955ebee30Jesse Hall float pointSizeRange[2]; 1324563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidthRange[2]; 1325563380d389732337a84e7455caa01ec955ebee30Jesse Hall float pointSizeGranularity; 1326563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidthGranularity; 1327563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 strictLines; 1328563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 standardSampleLocations; 1329563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize optimalBufferCopyOffsetAlignment; 1330563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize optimalBufferCopyRowPitchAlignment; 1331563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize nonCoherentAtomSize; 133204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceLimits; 133304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceSparseProperties { 1335563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard2DBlockShape; 1336563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard2DMultisampleBlockShape; 1337563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyStandard3DBlockShape; 1338563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyAlignedMipSize; 1339563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 residencyNonResidentStrict; 13405ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkPhysicalDeviceSparseProperties; 13415ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 13423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceProperties { 1343563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t apiVersion; 1344563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t driverVersion; 1345563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t vendorID; 1346563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t deviceID; 1347563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceType deviceType; 1348563380d389732337a84e7455caa01ec955ebee30Jesse Hall char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE]; 1349563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint8_t pipelineCacheUUID[VK_UUID_SIZE]; 1350563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceLimits limits; 1351563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPhysicalDeviceSparseProperties sparseProperties; 135204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceProperties; 135304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13543e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkQueueFamilyProperties { 1355563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueueFlags queueFlags; 1356563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCount; 1357563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t timestampValidBits; 1358563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D minImageTransferGranularity; 13595ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkQueueFamilyProperties; 136004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13613e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryType { 1362563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryPropertyFlags propertyFlags; 1363563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t heapIndex; 136404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryType; 136504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryHeap { 1367563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1368563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryHeapFlags flags; 136904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryHeap; 137004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPhysicalDeviceMemoryProperties { 1372563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeCount; 1373563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES]; 1374563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryHeapCount; 1375563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMemoryHeap memoryHeaps[VK_MAX_MEMORY_HEAPS]; 137604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPhysicalDeviceMemoryProperties; 137704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDeviceQueueCreateInfo { 1379563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1380563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1381563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceQueueCreateFlags flags; 1382563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndex; 1383563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCount; 1384563380d389732337a84e7455caa01ec955ebee30Jesse Hall const float* pQueuePriorities; 138504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDeviceQueueCreateInfo; 138604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 13873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDeviceCreateInfo { 1388563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1389563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1390563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceCreateFlags flags; 1391563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueCreateInfoCount; 1392563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDeviceQueueCreateInfo* pQueueCreateInfos; 1393563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledLayerCount; 1394563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledLayerNames; 1395563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t enabledExtensionCount; 1396563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* const* ppEnabledExtensionNames; 1397563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPhysicalDeviceFeatures* pEnabledFeatures; 139804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDeviceCreateInfo; 139904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtensionProperties { 1401563380d389732337a84e7455caa01ec955ebee30Jesse Hall char extensionName[VK_MAX_EXTENSION_NAME_SIZE]; 1402563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t specVersion; 140304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkExtensionProperties; 140404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkLayerProperties { 1406563380d389732337a84e7455caa01ec955ebee30Jesse Hall char layerName[VK_MAX_EXTENSION_NAME_SIZE]; 1407563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t specVersion; 1408563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t implementationVersion; 1409563380d389732337a84e7455caa01ec955ebee30Jesse Hall char description[VK_MAX_DESCRIPTION_SIZE]; 141004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkLayerProperties; 141104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubmitInfo { 1413563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1414563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1415563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t waitSemaphoreCount; 1416563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pWaitSemaphores; 1417563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineStageFlags* pWaitDstStageMask; 1418563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t commandBufferCount; 1419563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkCommandBuffer* pCommandBuffers; 1420563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t signalSemaphoreCount; 1421563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pSignalSemaphores; 1422a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall} VkSubmitInfo; 1423a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall 14243e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryAllocateInfo { 1425563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1426563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1427563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize allocationSize; 1428563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeIndex; 14293fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkMemoryAllocateInfo; 143004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14313e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMappedMemoryRange { 1432563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1433563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1434563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1435563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1436563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 143704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMappedMemoryRange; 143804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkMemoryRequirements { 1440563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1441563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize alignment; 1442563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t memoryTypeBits; 144304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkMemoryRequirements; 144404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageFormatProperties { 1446563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1447563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D imageGranularity; 1448563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseImageFormatFlags flags; 144904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageFormatProperties; 145004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14513e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryRequirements { 1452563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseImageFormatProperties formatProperties; 1453563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t imageMipTailFirstLod; 1454563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailSize; 1455563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailOffset; 1456563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize imageMipTailStride; 145704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageMemoryRequirements; 145804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseMemoryBind { 1460563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize resourceOffset; 1461563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1462563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1463563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize memoryOffset; 1464563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseMemoryBindFlags flags; 1465a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseMemoryBind; 1466a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 14673e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseBufferMemoryBindInfo { 1468563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1469563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1470563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseMemoryBind* pBinds; 1471a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseBufferMemoryBindInfo; 1472a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 14733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageOpaqueMemoryBindInfo { 1474563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1475563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1476563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseMemoryBind* pBinds; 1477a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseImageOpaqueMemoryBindInfo; 147804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14793e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresource { 1480563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1481563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevel; 1482563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t arrayLayer; 148304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageSubresource; 148404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkOffset3D { 1486563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t x; 1487563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t y; 1488563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t z; 148904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkOffset3D; 149004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 14913e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryBind { 1492563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresource subresource; 1493563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D offset; 1494563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 1495563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceMemory memory; 1496563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize memoryOffset; 1497563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSparseMemoryBindFlags flags; 1498a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkSparseImageMemoryBind; 1499a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 15003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSparseImageMemoryBindInfo { 1501563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1502563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindCount; 1503563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSparseImageMemoryBind* pBinds; 150404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSparseImageMemoryBindInfo; 150504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15063e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBindSparseInfo { 150704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkStructureType sType; 150804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const void* pNext; 1509a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t waitSemaphoreCount; 1510a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSemaphore* pWaitSemaphores; 1511a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t bufferBindCount; 1512a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseBufferMemoryBindInfo* pBufferBinds; 1513a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t imageOpaqueBindCount; 1514a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds; 1515a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t imageBindCount; 1516a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSparseImageMemoryBindInfo* pImageBinds; 1517a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t signalSemaphoreCount; 1518a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkSemaphore* pSignalSemaphores; 1519a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkBindSparseInfo; 1520a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 15213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFenceCreateInfo { 1522563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1523563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1524563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFenceCreateFlags flags; 152504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFenceCreateInfo; 152604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15273e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSemaphoreCreateInfo { 1528563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1529563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1530563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSemaphoreCreateFlags flags; 153104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSemaphoreCreateInfo; 153204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15333e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkEventCreateInfo { 1534563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1535563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1536563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkEventCreateFlags flags; 153704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkEventCreateInfo; 153804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkQueryPoolCreateInfo { 1540563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1541563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1542563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPoolCreateFlags flags; 1543563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryType queryType; 1544563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queryCount; 1545563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPipelineStatisticFlags pipelineStatistics; 154604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkQueryPoolCreateInfo; 154704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferCreateInfo { 1549563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1550563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1551563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferCreateFlags flags; 1552563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1553563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferUsageFlags usage; 1554563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode sharingMode; 1555563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 1556563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 155704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferCreateInfo; 155804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferViewCreateInfo { 1560563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1561563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1562563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBufferViewCreateFlags flags; 1563563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1564563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1565563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1566563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize range; 156704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferViewCreateInfo; 156804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageCreateInfo { 1570563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1571563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1572563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageCreateFlags flags; 1573563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageType imageType; 1574563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1575563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 1576563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevels; 1577563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t arrayLayers; 1578563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits samples; 1579563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageTiling tiling; 1580563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags usage; 1581563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode sharingMode; 1582563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 1583563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 1584563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout initialLayout; 158504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageCreateInfo; 158604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15873e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubresourceLayout { 1588563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1589563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 1590563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize rowPitch; 1591563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize arrayPitch; 1592563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize depthPitch; 159304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubresourceLayout; 159404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 15953e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkComponentMapping { 1596563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle r; 1597563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle g; 1598563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle b; 1599563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentSwizzle a; 160065ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkComponentMapping; 160104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16023e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresourceRange { 1603563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 1604563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseMipLevel; 1605563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t levelCount; 1606563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 1607563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 160804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageSubresourceRange; 160904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16103e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageViewCreateInfo { 1611563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1612563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1613563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageViewCreateFlags flags; 1614563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 1615563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageViewType viewType; 1616563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1617563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkComponentMapping components; 1618563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceRange subresourceRange; 161904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageViewCreateInfo; 162004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkShaderModuleCreateInfo { 1622563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1623563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1624563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderModuleCreateFlags flags; 1625563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t codeSize; 1626563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pCode; 162704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkShaderModuleCreateInfo; 162804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineCacheCreateInfo { 1630563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1631563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1632563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCacheCreateFlags flags; 1633563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t initialDataSize; 1634563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pInitialData; 163504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineCacheCreateInfo; 163604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSpecializationMapEntry { 1638563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t constantID; 1639563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 1640563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t size; 164104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSpecializationMapEntry; 164204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16433e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSpecializationInfo { 1644563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mapEntryCount; 1645563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSpecializationMapEntry* pMapEntries; 1646563380d389732337a84e7455caa01ec955ebee30Jesse Hall size_t dataSize; 1647563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pData; 164804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSpecializationInfo; 164904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16503e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineShaderStageCreateInfo { 1651563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1652563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1653563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineShaderStageCreateFlags flags; 1654563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlagBits stage; 1655563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderModule module; 1656563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* pName; 1657563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSpecializationInfo* pSpecializationInfo; 165804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineShaderStageCreateInfo; 165904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16603e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkVertexInputBindingDescription { 1661563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1662563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stride; 1663563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkVertexInputRate inputRate; 166404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkVertexInputBindingDescription; 166504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16663e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkVertexInputAttributeDescription { 1667563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t location; 1668563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1669563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1670563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 167104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkVertexInputAttributeDescription; 167204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineVertexInputStateCreateInfo { 167404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkStructureType sType; 167504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const void* pNext; 1676a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPipelineVertexInputStateCreateFlags flags; 167703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t vertexBindingDescriptionCount; 167804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkVertexInputBindingDescription* pVertexBindingDescriptions; 167903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t vertexAttributeDescriptionCount; 168004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkVertexInputAttributeDescription* pVertexAttributeDescriptions; 168104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineVertexInputStateCreateInfo; 168204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineInputAssemblyStateCreateInfo { 1684563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1685563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1686563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineInputAssemblyStateCreateFlags flags; 1687563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPrimitiveTopology topology; 1688563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 primitiveRestartEnable; 168904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineInputAssemblyStateCreateInfo; 169004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16913e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineTessellationStateCreateInfo { 1692563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1693563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1694563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineTessellationStateCreateFlags flags; 1695563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t patchControlPoints; 169604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineTessellationStateCreateInfo; 169704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 16983e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkViewport { 1699563380d389732337a84e7455caa01ec955ebee30Jesse Hall float x; 1700563380d389732337a84e7455caa01ec955ebee30Jesse Hall float y; 1701563380d389732337a84e7455caa01ec955ebee30Jesse Hall float width; 1702563380d389732337a84e7455caa01ec955ebee30Jesse Hall float height; 1703563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minDepth; 1704563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxDepth; 17055ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkViewport; 17065ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 17073e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkOffset2D { 1708563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t x; 1709563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t y; 17105ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkOffset2D; 17115ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 17123e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkExtent2D { 1713563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1714563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 17155ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkExtent2D; 17165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 17173e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkRect2D { 1718563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D offset; 1719563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D extent; 17205ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkRect2D; 17215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 17223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineViewportStateCreateInfo { 1723563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1724563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1725563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineViewportStateCreateFlags flags; 1726563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t viewportCount; 1727563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkViewport* pViewports; 1728563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t scissorCount; 1729563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkRect2D* pScissors; 173004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineViewportStateCreateInfo; 173104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17323e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineRasterizationStateCreateInfo { 1733563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1734563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1735563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineRasterizationStateCreateFlags flags; 1736563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthClampEnable; 1737563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 rasterizerDiscardEnable; 1738563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPolygonMode polygonMode; 1739563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCullModeFlags cullMode; 1740563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFrontFace frontFace; 1741563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBiasEnable; 1742563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasConstantFactor; 1743563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasClamp; 1744563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depthBiasSlopeFactor; 1745563380d389732337a84e7455caa01ec955ebee30Jesse Hall float lineWidth; 17463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkPipelineRasterizationStateCreateInfo; 174704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17483e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineMultisampleStateCreateInfo { 1749563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1750563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1751563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineMultisampleStateCreateFlags flags; 1752563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits rasterizationSamples; 1753563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 sampleShadingEnable; 1754563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minSampleShading; 1755563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSampleMask* pSampleMask; 1756563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToCoverageEnable; 1757563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 alphaToOneEnable; 175804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineMultisampleStateCreateInfo; 175904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17603e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkStencilOpState { 1761563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp failOp; 1762563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp passOp; 1763563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOp depthFailOp; 1764563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp compareOp; 1765563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t compareMask; 1766563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t writeMask; 1767563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t reference; 176804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkStencilOpState; 176904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17703e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineDepthStencilStateCreateInfo { 1771563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1772563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1773563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineDepthStencilStateCreateFlags flags; 1774563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthTestEnable; 1775563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthWriteEnable; 1776563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp depthCompareOp; 1777563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 depthBoundsTestEnable; 1778563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 stencilTestEnable; 1779563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOpState front; 1780563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStencilOpState back; 1781563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minDepthBounds; 1782563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxDepthBounds; 178304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineDepthStencilStateCreateInfo; 178404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineColorBlendAttachmentState { 1786563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 blendEnable; 1787563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor srcColorBlendFactor; 1788563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor dstColorBlendFactor; 1789563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendOp colorBlendOp; 1790563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor srcAlphaBlendFactor; 1791563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendFactor dstAlphaBlendFactor; 1792563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBlendOp alphaBlendOp; 1793563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorComponentFlags colorWriteMask; 179404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineColorBlendAttachmentState; 179504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 17963e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineColorBlendStateCreateInfo { 1797563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1798563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1799563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineColorBlendStateCreateFlags flags; 1800563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 logicOpEnable; 1801563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkLogicOp logicOp; 1802563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 1803563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineColorBlendAttachmentState* pAttachments; 1804563380d389732337a84e7455caa01ec955ebee30Jesse Hall float blendConstants[4]; 180504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineColorBlendStateCreateInfo; 180604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18073e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineDynamicStateCreateInfo { 1808563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1809563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1810563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineDynamicStateCreateFlags flags; 1811563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dynamicStateCount; 1812563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDynamicState* pDynamicStates; 18135ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkPipelineDynamicStateCreateInfo; 18145ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 18153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkGraphicsPipelineCreateInfo { 1816563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1817563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1818563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCreateFlags flags; 1819563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stageCount; 1820563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineShaderStageCreateInfo* pStages; 1821563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineVertexInputStateCreateInfo* pVertexInputState; 1822563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState; 1823563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineTessellationStateCreateInfo* pTessellationState; 1824563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineViewportStateCreateInfo* pViewportState; 1825563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineRasterizationStateCreateInfo* pRasterizationState; 1826563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineMultisampleStateCreateInfo* pMultisampleState; 1827563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState; 1828563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineColorBlendStateCreateInfo* pColorBlendState; 1829563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPipelineDynamicStateCreateInfo* pDynamicState; 1830563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayout layout; 1831563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 1832563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpass; 1833563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipeline basePipelineHandle; 1834563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t basePipelineIndex; 183504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkGraphicsPipelineCreateInfo; 183604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkComputePipelineCreateInfo { 1838563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1839563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1840563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineCreateFlags flags; 1841563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineShaderStageCreateInfo stage; 1842563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayout layout; 1843563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipeline basePipelineHandle; 1844563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t basePipelineIndex; 184504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkComputePipelineCreateInfo; 184604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPushConstantRange { 1848563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlags stageFlags; 1849563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t offset; 1850563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t size; 185104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPushConstantRange; 185204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18533e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPipelineLayoutCreateInfo { 1854563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1855563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1856563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineLayoutCreateFlags flags; 1857563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t setLayoutCount; 1858563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayout* pSetLayouts; 1859563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t pushConstantRangeCount; 1860563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkPushConstantRange* pPushConstantRanges; 186104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkPipelineLayoutCreateInfo; 186204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18633e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSamplerCreateInfo { 1864563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1865563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1866563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerCreateFlags flags; 1867563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFilter magFilter; 1868563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFilter minFilter; 1869563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerMipmapMode mipmapMode; 1870563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeU; 1871563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeV; 1872563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSamplerAddressMode addressModeW; 1873563380d389732337a84e7455caa01ec955ebee30Jesse Hall float mipLodBias; 1874563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 anisotropyEnable; 1875563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxAnisotropy; 1876563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 compareEnable; 1877563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompareOp compareOp; 1878563380d389732337a84e7455caa01ec955ebee30Jesse Hall float minLod; 1879563380d389732337a84e7455caa01ec955ebee30Jesse Hall float maxLod; 1880563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBorderColor borderColor; 1881563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 unnormalizedCoordinates; 188204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSamplerCreateInfo; 188304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetLayoutBinding { 1885563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t binding; 1886563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType descriptorType; 1887563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 1888563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkShaderStageFlags stageFlags; 1889563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSampler* pImmutableSamplers; 189004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorSetLayoutBinding; 189104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 18923e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetLayoutCreateInfo { 1893563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1894563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1895563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSetLayoutCreateFlags flags; 1896563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bindingCount; 1897563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayoutBinding* pBindings; 189804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorSetLayoutCreateInfo; 189904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19003e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorPoolSize { 1901563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType type; 1902563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 190365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkDescriptorPoolSize; 190404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19053e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorPoolCreateInfo { 1906563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1907563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1908563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorPoolCreateFlags flags; 1909563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxSets; 1910563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t poolSizeCount; 1911563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorPoolSize* pPoolSizes; 191204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkDescriptorPoolCreateInfo; 191304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19143e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorSetAllocateInfo { 1915563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1916563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1917563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorPool descriptorPool; 1918563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorSetCount; 1919563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorSetLayout* pSetLayouts; 19203fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDescriptorSetAllocateInfo; 1921fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall 19223e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorImageInfo { 1923563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampler sampler; 1924563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageView imageView; 1925563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout imageLayout; 1926a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkDescriptorImageInfo; 1927a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall 19283e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDescriptorBufferInfo { 1929563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 1930563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 1931563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize range; 19325ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkDescriptorBufferInfo; 19335ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 19343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkWriteDescriptorSet { 1935563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1936563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1937563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet dstSet; 1938563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstBinding; 1939563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstArrayElement; 1940563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 1941563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorType descriptorType; 1942563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorImageInfo* pImageInfo; 1943563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkDescriptorBufferInfo* pBufferInfo; 1944563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkBufferView* pTexelBufferView; 194504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkWriteDescriptorSet; 194604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19473e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCopyDescriptorSet { 1948563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1949563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1950563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet srcSet; 1951563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcBinding; 1952563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcArrayElement; 1953563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDescriptorSet dstSet; 1954563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstBinding; 1955563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstArrayElement; 1956563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t descriptorCount; 195704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkCopyDescriptorSet; 195804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19593e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkFramebufferCreateInfo { 1960563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 1961563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 1962563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebufferCreateFlags flags; 1963563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 1964563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 1965563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkImageView* pAttachments; 1966563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t width; 1967563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t height; 1968563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layers; 196904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkFramebufferCreateInfo; 197004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAttachmentDescription { 1972563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentDescriptionFlags flags; 1973563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 1974563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSampleCountFlagBits samples; 1975563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentLoadOp loadOp; 1976563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentStoreOp storeOp; 1977563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentLoadOp stencilLoadOp; 1978563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAttachmentStoreOp stencilStoreOp; 1979563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout initialLayout; 1980563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout finalLayout; 198104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentDescription; 198204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19833e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkAttachmentReference { 1984563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachment; 1985563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout layout; 198604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkAttachmentReference; 198704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 19883e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubpassDescription { 1989563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSubpassDescriptionFlags flags; 1990563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineBindPoint pipelineBindPoint; 1991563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t inputAttachmentCount; 1992563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pInputAttachments; 1993563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t colorAttachmentCount; 1994563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pColorAttachments; 1995563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pResolveAttachments; 1996563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentReference* pDepthStencilAttachment; 1997563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t preserveAttachmentCount; 1998563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pPreserveAttachments; 199904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubpassDescription; 200004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20013e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSubpassDependency { 2002563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcSubpass; 2003563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstSubpass; 2004563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineStageFlags srcStageMask; 2005563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPipelineStageFlags dstStageMask; 2006563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2007563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2008563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDependencyFlags dependencyFlags; 200904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkSubpassDependency; 201004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20113e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkRenderPassCreateInfo { 2012563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2013563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2014563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPassCreateFlags flags; 2015563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t attachmentCount; 2016563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkAttachmentDescription* pAttachments; 2017563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpassCount; 2018563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSubpassDescription* pSubpasses; 2019563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dependencyCount; 2020563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSubpassDependency* pDependencies; 202104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkRenderPassCreateInfo; 202204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20233e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCommandPoolCreateInfo { 2024563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2025563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2026563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandPoolCreateFlags flags; 2027563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndex; 20283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandPoolCreateInfo; 202904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20303e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkCommandBufferAllocateInfo { 2031563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2032563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2033563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandPool commandPool; 2034563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandBufferLevel level; 2035563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t commandBufferCount; 20363fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferAllocateInfo; 203704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20383dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkCommandBufferInheritanceInfo { 2039563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2040563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2041563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2042563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t subpass; 2043563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebuffer framebuffer; 2044563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 occlusionQueryEnable; 2045563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryControlFlags queryFlags; 2046563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkQueryPipelineStatisticFlags pipelineStatistics; 20473dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkCommandBufferInheritanceInfo; 20483dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 20493dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkCommandBufferBeginInfo { 2050563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2051563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2052563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCommandBufferUsageFlags flags; 2053563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkCommandBufferInheritanceInfo* pInheritanceInfo; 20543fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkCommandBufferBeginInfo; 205504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferCopy { 2057563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize srcOffset; 2058563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize dstOffset; 2059563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 206004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferCopy; 206104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageSubresourceLayers { 2063563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 2064563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t mipLevel; 2065563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 2066563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 206765ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall} VkImageSubresourceLayers; 20685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 20693e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageCopy { 2070563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2071563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffset; 2072563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2073563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffset; 2074563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 207504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageCopy; 207604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageBlit { 2078563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2079563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffsets[2]; 2080563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2081563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffsets[2]; 208204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageBlit; 208304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20843e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferImageCopy { 2085563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize bufferOffset; 2086563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bufferRowLength; 2087563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t bufferImageHeight; 2088563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers imageSubresource; 2089563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D imageOffset; 2090563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D imageExtent; 209104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferImageCopy; 209204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20933e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef union VkClearColorValue { 2094563380d389732337a84e7455caa01ec955ebee30Jesse Hall float float32[4]; 2095563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t int32[4]; 2096563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t uint32[4]; 209704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkClearColorValue; 209804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20993e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearDepthStencilValue { 2100563380d389732337a84e7455caa01ec955ebee30Jesse Hall float depth; 2101563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t stencil; 21025ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall} VkClearDepthStencilValue; 21035ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 21043e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef union VkClearValue { 2105563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearColorValue color; 2106563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearDepthStencilValue depthStencil; 2107ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall} VkClearValue; 2108ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall 21093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearAttachment { 2110563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageAspectFlags aspectMask; 2111563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t colorAttachment; 2112563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkClearValue clearValue; 2113ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall} VkClearAttachment; 2114ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall 21153e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkClearRect { 2116563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D rect; 2117563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t baseArrayLayer; 2118563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t layerCount; 2119a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall} VkClearRect; 212004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21213e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkImageResolve { 2122563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers srcSubresource; 2123563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D srcOffset; 2124563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceLayers dstSubresource; 2125563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset3D dstOffset; 2126563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent3D extent; 212704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkImageResolve; 212804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21293dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkMemoryBarrier { 2130563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2131563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2132563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2133563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 21343dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkMemoryBarrier; 213504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21363e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkBufferMemoryBarrier { 2137563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2138563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2139563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2140563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2141563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcQueueFamilyIndex; 2142563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstQueueFamilyIndex; 2143563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBuffer buffer; 2144563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize offset; 2145563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDeviceSize size; 214604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} VkBufferMemoryBarrier; 214704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21483dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkImageMemoryBarrier { 2149563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2150563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2151563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags srcAccessMask; 2152563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAccessFlags dstAccessMask; 2153563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout oldLayout; 2154563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageLayout newLayout; 2155563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t srcQueueFamilyIndex; 2156563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t dstQueueFamilyIndex; 2157563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImage image; 2158563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageSubresourceRange subresourceRange; 21593dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkImageMemoryBarrier; 21603dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 21613dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef struct VkRenderPassBeginInfo { 2162563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 2163563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 2164563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRenderPass renderPass; 2165563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFramebuffer framebuffer; 2166563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D renderArea; 2167563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t clearValueCount; 2168563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkClearValue* pClearValues; 21693dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall} VkRenderPassBeginInfo; 21703dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall 21713e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDispatchIndirectCommand { 2172563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t x; 2173563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t y; 2174563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t z; 21753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDispatchIndirectCommand; 217604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21773e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDrawIndexedIndirectCommand { 2178563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t indexCount; 2179563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t instanceCount; 2180563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstIndex; 2181563380d389732337a84e7455caa01ec955ebee30Jesse Hall int32_t vertexOffset; 2182563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstInstance; 21833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDrawIndexedIndirectCommand; 218404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21853e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDrawIndirectCommand { 2186563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t vertexCount; 2187563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t instanceCount; 2188563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstVertex; 2189563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t firstInstance; 21903fbc856120217247c72fb5ed88500000f3881c45Jesse Hall} VkDrawIndirectCommand; 219104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 219204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2193e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkInstance* pInstance); 2194e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyInstance)(VkInstance instance, const VkAllocationCallbacks* pAllocator); 2195e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices); 2196e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures* pFeatures); 2197e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties* pFormatProperties); 2198e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkImageFormatProperties* pImageFormatProperties); 2199e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties* pProperties); 2200e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties* pQueueFamilyProperties); 2201e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties* pMemoryProperties); 2202e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char* pName); 2203e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetDeviceProcAddr)(VkDevice device, const char* pName); 2204e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDevice* pDevice); 2205e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDevice)(VkDevice device, const VkAllocationCallbacks* pAllocator); 2206e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceExtensionProperties)(const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties); 2207e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice physicalDevice, const char* pLayerName, uint32_t* pPropertyCount, VkExtensionProperties* pProperties); 2208e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateInstanceLayerProperties)(uint32_t* pPropertyCount, VkLayerProperties* pProperties); 2209e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkLayerProperties* pProperties); 2210e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceQueue)(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue); 2211e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit)(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence); 2212e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueWaitIdle)(VkQueue queue); 2213e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkDeviceWaitIdle)(VkDevice device); 2214e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateMemory)(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory); 2215e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeMemory)(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator); 2216e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData); 2217e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory memory); 2218e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges); 2219e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges); 2220e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetDeviceMemoryCommitment)(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes); 2221e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindBufferMemory)(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset); 2222e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBindImageMemory)(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset); 2223e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetBufferMemoryRequirements)(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements); 2224e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageMemoryRequirements)(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements); 2225e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements)(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements); 2226e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties); 2227e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueueBindSparse)(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence); 2228e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateFence)(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence); 2229e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyFence)(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator); 2230e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences); 2231e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetFenceStatus)(VkDevice device, VkFence fence); 2232e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkWaitForFences)(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout); 2233e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore); 2234e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator); 2235e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateEvent)(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent); 2236e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyEvent)(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator); 2237e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetEventStatus)(VkDevice device, VkEvent event); 2238e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkSetEvent)(VkDevice device, VkEvent event); 2239e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetEvent)(VkDevice device, VkEvent event); 2240e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateQueryPool)(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool); 2241e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyQueryPool)(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator); 2242f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetQueryPoolResults)(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags); 2243e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateBuffer)(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer); 2244e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyBuffer)(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator); 2245e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateBufferView)(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView); 2246e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyBufferView)(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator); 2247e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateImage)(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage); 2248e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyImage)(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator); 2249e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout); 2250e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateImageView)(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView); 2251e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyImageView)(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator); 2252e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule); 2253e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator); 2254e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineCache)(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache); 2255e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipelineCache)(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator); 2256e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPipelineCacheData)(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData); 2257e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkMergePipelineCaches)(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches); 2258e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateGraphicsPipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); 2259e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateComputePipelines)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines); 2260e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipeline)(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator); 2261e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineLayout)(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout); 2262e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyPipelineLayout)(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator); 2263e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSampler)(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler); 2264e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator); 2265e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorSetLayout)(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout); 2266e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorSetLayout)(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator); 2267e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorPool)(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool); 2268e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator); 2269e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetDescriptorPool)(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags); 2270e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateDescriptorSets)(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets); 2271e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkFreeDescriptorSets)(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets); 2272e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSets)(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies); 2273e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateFramebuffer)(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer); 2274e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyFramebuffer)(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator); 2275e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateRenderPass)(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass); 2276e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyRenderPass)(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator); 2277e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity); 2278e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateCommandPool)(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool); 2279e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkDestroyCommandPool)(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator); 2280e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetCommandPool)(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags); 2281e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAllocateCommandBuffers)(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers); 2282e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkFreeCommandBuffers)(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers); 2283e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkBeginCommandBuffer)(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo); 2284e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkEndCommandBuffer)(VkCommandBuffer commandBuffer); 2285e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkResetCommandBuffer)(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags); 2286e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline); 2287f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetViewport)(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports); 2288f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetScissor)(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors); 2289e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetLineWidth)(VkCommandBuffer commandBuffer, float lineWidth); 2290e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDepthBias)(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor); 2291e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetBlendConstants)(VkCommandBuffer commandBuffer, const float blendConstants[4]); 2292e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetDepthBounds)(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds); 2293e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilCompareMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask); 2294e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilWriteMask)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask); 2295e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetStencilReference)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference); 2296e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindDescriptorSets)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets); 2297e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType); 2298f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets); 2299e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance); 2300e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance); 2301e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride); 2302e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride); 2303e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t x, uint32_t y, uint32_t z); 2304e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset); 2305e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions); 2306e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions); 2307e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBlitImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter); 2308e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyBufferToImage)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions); 2309e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyImageToBuffer)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions); 2310e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdUpdateBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const uint32_t* pData); 2311e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdFillBuffer)(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data); 2312e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearColorImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges); 2313e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearDepthStencilImage)(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges); 2314e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdClearAttachments)(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects); 2315e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResolveImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions); 2316e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdSetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask); 2317e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResetEvent)(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask); 23183dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdWaitEvents)(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers); 23193dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier)(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers); 23203dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBeginQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags); 23213dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdEndQuery)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query); 2322f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdResetQueryPool)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount); 23233dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp)(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query); 2324f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdCopyQueryPoolResults)(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags); 2325f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef void (VKAPI_PTR *PFN_vkCmdPushConstants)(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues); 2326e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdBeginRenderPass)(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents); 2327e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdNextSubpass)(VkCommandBuffer commandBuffer, VkSubpassContents contents); 2328e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdEndRenderPass)(VkCommandBuffer commandBuffer); 23293dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef void (VKAPI_PTR *PFN_vkCmdExecuteCommands)(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers); 233004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2331563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 2332e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance( 233304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkInstanceCreateInfo* pCreateInfo, 23343fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 233504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance* pInstance); 233604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2337e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyInstance( 233803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkInstance instance, 23393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 234004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2341e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDevices( 234204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance instance, 234304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t* pPhysicalDeviceCount, 234404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice* pPhysicalDevices); 234504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2346e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures( 234704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 234804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceFeatures* pFeatures); 234904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2350e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties( 235104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 235204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 235304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormatProperties* pFormatProperties); 235404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2355e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties( 235604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 235704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 235804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageType type, 235904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageTiling tiling, 236004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageUsageFlags usage, 23615ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkImageCreateFlags flags, 236204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageFormatProperties* pImageFormatProperties); 236304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2364e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties( 236504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 236604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceProperties* pProperties); 236704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2368e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties( 236904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 237003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pQueueFamilyPropertyCount, 23715ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkQueueFamilyProperties* pQueueFamilyProperties); 237204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2373e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties( 237404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 237504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDeviceMemoryProperties* pMemoryProperties); 237604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2377e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr( 237804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkInstance instance, 237904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pName); 238004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2381e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr( 238204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 238304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pName); 238404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2385e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDevice( 238604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 238704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDeviceCreateInfo* pCreateInfo, 23883fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 238904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice* pDevice); 239004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2391e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDevice( 239203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDevice device, 23933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 239404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2395e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties( 239604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pLayerName, 239703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 239804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtensionProperties* pProperties); 239904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2400e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties( 240104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 240204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* pLayerName, 240303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 240404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtensionProperties* pProperties); 240504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2406e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties( 240703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 240804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkLayerProperties* pProperties); 240904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2410e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties( 241104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 241203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 241304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkLayerProperties* pProperties); 241404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2415e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceQueue( 241604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 241704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queueFamilyIndex, 241804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queueIndex, 241904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue* pQueue); 242004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2421e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueSubmit( 242204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue, 2423a366a5186ea941c5653cbdb8df18dc19318912b6Jesse Hall uint32_t submitCount, 2424b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall const VkSubmitInfo* pSubmits, 242504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence fence); 242604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2427e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle( 242804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue); 242904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2430e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle( 243104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device); 243204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2433e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory( 243404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 24353fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMemoryAllocateInfo* pAllocateInfo, 24363fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 24373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory* pMemory); 243804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2439e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkFreeMemory( 244004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 24413fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 24423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 244304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2444e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkMapMemory( 244504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 24463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 244704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 244804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize size, 244904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryMapFlags flags, 245004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void** ppData); 245104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2452e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkUnmapMemory( 245304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 24543fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory); 245504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2456e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkFlushMappedMemoryRanges( 245704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 24583fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryRangeCount, 24593fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMappedMemoryRange* pMemoryRanges); 246004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2461e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkInvalidateMappedMemoryRanges( 246204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 24633fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryRangeCount, 24643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkMappedMemoryRange* pMemoryRanges); 246504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2466e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetDeviceMemoryCommitment( 246704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 246804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceMemory memory, 246904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize* pCommittedMemoryInBytes); 247004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2471e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory( 247204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 247304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 24743fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 24753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize memoryOffset); 247604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2477e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory( 247804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 247904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 24803fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceMemory memory, 24813fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize memoryOffset); 248204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2483e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements( 248404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 248504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 248604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryRequirements* pMemoryRequirements); 248704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2488e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements( 248904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 249004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 249104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkMemoryRequirements* pMemoryRequirements); 249204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2493e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements( 249404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 249504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 249603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pSparseMemoryRequirementCount, 249704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSparseImageMemoryRequirements* pSparseMemoryRequirements); 249804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2499e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties( 250004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPhysicalDevice physicalDevice, 250104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFormat format, 250204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageType type, 2503091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall VkSampleCountFlagBits samples, 250404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageUsageFlags usage, 250504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageTiling tiling, 250603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 250704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSparseImageFormatProperties* pProperties); 250804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2509e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueueBindSparse( 251004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueue queue, 251103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t bindInfoCount, 2512a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkBindSparseInfo* pBindInfo, 2513a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkFence fence); 251404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2515e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateFence( 251604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 251704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFenceCreateInfo* pCreateInfo, 25183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 251904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence* pFence); 252004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2521e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyFence( 252204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 252303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkFence fence, 25243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 252504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2526e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetFences( 252704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 252804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t fenceCount, 252904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFence* pFences); 253004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2531e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetFenceStatus( 253204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 253304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFence fence); 253404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2535e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkWaitForFences( 253604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 253704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t fenceCount, 253804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFence* pFences, 253904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBool32 waitAll, 254004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint64_t timeout); 254104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2542e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSemaphore( 254304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 254404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkSemaphoreCreateInfo* pCreateInfo, 25453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 254604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSemaphore* pSemaphore); 254704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2548e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySemaphore( 254904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 255003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkSemaphore semaphore, 25513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 255204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2553e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateEvent( 255404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 255504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkEventCreateInfo* pCreateInfo, 25563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 255704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent* pEvent); 255804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2559e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyEvent( 256004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 256103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkEvent event, 25623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 256304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2564e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetEventStatus( 256504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 256604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 256704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2568e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkSetEvent( 256904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 257004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 257104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2572e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetEvent( 257304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 257404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event); 257504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2576e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateQueryPool( 257704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 257804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkQueryPoolCreateInfo* pCreateInfo, 25793fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 258004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool* pQueryPool); 258104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2582e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyQueryPool( 258304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 258403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkQueryPool queryPool, 25853fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 258604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2587e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetQueryPoolResults( 258804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 258904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 2590f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 259104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount, 2592a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall size_t dataSize, 259304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void* pData, 2594a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall VkDeviceSize stride, 259504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryResultFlags flags); 259604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2597e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateBuffer( 259804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 259904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferCreateInfo* pCreateInfo, 26003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 260104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer* pBuffer); 260204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2603e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyBuffer( 260404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 260503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkBuffer buffer, 26063fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 260704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2608e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferView( 260904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 261004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferViewCreateInfo* pCreateInfo, 26113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 261204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBufferView* pView); 261304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2614e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyBufferView( 261504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 261603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkBufferView bufferView, 26173fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 261804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2619e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateImage( 262004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 262104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageCreateInfo* pCreateInfo, 26223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 262304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage* pImage); 262404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2625e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyImage( 262604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 262703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkImage image, 26283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 262904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2630e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout( 263104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 263204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 263304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresource* pSubresource, 263404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSubresourceLayout* pLayout); 263504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2636e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateImageView( 263704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 263804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageViewCreateInfo* pCreateInfo, 26393fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 264004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageView* pView); 264104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2642e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyImageView( 264304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 264403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkImageView imageView, 26453fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 264604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2647e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateShaderModule( 264804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 264904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkShaderModuleCreateInfo* pCreateInfo, 26503fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 265104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkShaderModule* pShaderModule); 265204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2653e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyShaderModule( 265404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 265503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkShaderModule shaderModule, 26563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 265704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2658e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineCache( 265904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 266004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineCacheCreateInfo* pCreateInfo, 26613fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 266204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache* pPipelineCache); 266304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2664e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipelineCache( 266504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 266603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipelineCache pipelineCache, 26673fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 266804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2669e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineCacheData( 267004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 267104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 2672a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall size_t* pDataSize, 267304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall void* pData); 267404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2675e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkMergePipelineCaches( 267604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 26773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineCache dstCache, 267804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t srcCacheCount, 267904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineCache* pSrcCaches); 268004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2681e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateGraphicsPipelines( 268204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 268304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 268403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t createInfoCount, 268504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkGraphicsPipelineCreateInfo* pCreateInfos, 26863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 268704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline* pPipelines); 268804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2689e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateComputePipelines( 269004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineCache pipelineCache, 269203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t createInfoCount, 269304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkComputePipelineCreateInfo* pCreateInfos, 26943fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 269504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline* pPipelines); 269604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2697e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipeline( 269804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 269903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipeline pipeline, 27003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 270104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2702e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineLayout( 270304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 270404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkPipelineLayoutCreateInfo* pCreateInfo, 27053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 270604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout* pPipelineLayout); 270704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2708e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyPipelineLayout( 270904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 271003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkPipelineLayout pipelineLayout, 27113fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 271204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2713e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSampler( 271404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 271504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkSamplerCreateInfo* pCreateInfo, 27163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 271704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkSampler* pSampler); 271804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2719e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySampler( 272004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 272103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkSampler sampler, 27223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 272304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2724e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorSetLayout( 272504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 272604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSetLayoutCreateInfo* pCreateInfo, 27273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 272804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorSetLayout* pSetLayout); 272904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2730e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorSetLayout( 273104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 273203b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDescriptorSetLayout descriptorSetLayout, 27333fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 273404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2735e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorPool( 273604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 273704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorPoolCreateInfo* pCreateInfo, 27383fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 273904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorPool* pDescriptorPool); 274004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2741e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorPool( 274204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 274303b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDescriptorPool descriptorPool, 27443fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 274504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2746e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetDescriptorPool( 274704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 2748fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VkDescriptorPool descriptorPool, 2749fbf97b0e5e25349b951dce1016b263ec3acbf376Jesse Hall VkDescriptorPoolResetFlags flags); 275004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2751e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateDescriptorSets( 275204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 27533fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkDescriptorSetAllocateInfo* pAllocateInfo, 27545ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkDescriptorSet* pDescriptorSets); 275504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2756e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkFreeDescriptorSets( 275704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 275804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDescriptorPool descriptorPool, 275903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t descriptorSetCount, 276004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSet* pDescriptorSets); 276104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2762e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSets( 276304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 2764b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t descriptorWriteCount, 276504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkWriteDescriptorSet* pDescriptorWrites, 2766b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t descriptorCopyCount, 276704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkCopyDescriptorSet* pDescriptorCopies); 276804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2769e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateFramebuffer( 277004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkFramebufferCreateInfo* pCreateInfo, 27723fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 277304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkFramebuffer* pFramebuffer); 277404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2775e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyFramebuffer( 277604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 277703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkFramebuffer framebuffer, 27783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 277904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2780e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateRenderPass( 278104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 278204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkRenderPassCreateInfo* pCreateInfo, 27833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 278404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkRenderPass* pRenderPass); 278504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2786e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass( 278704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 278803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkRenderPass renderPass, 27893fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 279004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2791e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity( 279204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 279304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkRenderPass renderPass, 279404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkExtent2D* pGranularity); 279504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2796e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool( 279704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 27983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandPoolCreateInfo* pCreateInfo, 27993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator, 28003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandPool* pCommandPool); 280104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2802e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroyCommandPool( 280304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 280465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 28053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkAllocationCallbacks* pAllocator); 280604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2807e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool( 280804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 280965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 28103fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandPoolResetFlags flags); 281104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2812e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAllocateCommandBuffers( 281304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 28143fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBufferAllocateInfo* pAllocateInfo, 28153fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer* pCommandBuffers); 281604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2817e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkFreeCommandBuffers( 281804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDevice device, 281965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkCommandPool commandPool, 282003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t commandBufferCount, 28213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBuffer* pCommandBuffers); 282204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2823e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkBeginCommandBuffer( 28243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBufferBeginInfo* pBeginInfo); 282604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2827e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer( 28283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer); 282904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2830e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkResetCommandBuffer( 28313fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28323fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBufferResetFlags flags); 283304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2834e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindPipeline( 28353fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 283604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineBindPoint pipelineBindPoint, 283704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipeline pipeline); 283804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2839e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetViewport( 28403fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 2841f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstViewport, 28425ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t viewportCount, 28435ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkViewport* pViewports); 28445ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 2845e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetScissor( 28463fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 2847f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstScissor, 28485ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t scissorCount, 28495ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkRect2D* pScissors); 28505ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 2851e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetLineWidth( 28523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28535ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float lineWidth); 28545ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 2855e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBias( 28563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 2857a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall float depthBiasConstantFactor, 28585ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float depthBiasClamp, 2859a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall float depthBiasSlopeFactor); 286004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2861e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetBlendConstants( 28623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 2863b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall const float blendConstants[4]); 286404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2865e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBounds( 28663fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28675ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float minDepthBounds, 28685ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall float maxDepthBounds); 286904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2870e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilCompareMask( 28713fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28725ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 287365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t compareMask); 28745ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 2875e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilWriteMask( 28763fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28775ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 287865ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t writeMask); 28795ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall 2880e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetStencilReference( 28813fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 28825ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall VkStencilFaceFlags faceMask, 288365ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall uint32_t reference); 288404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2885e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindDescriptorSets( 28863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 288704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineBindPoint pipelineBindPoint, 288804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout layout, 288904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t firstSet, 289003b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t descriptorSetCount, 289104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDescriptorSet* pDescriptorSets, 289204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t dynamicOffsetCount, 289304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const uint32_t* pDynamicOffsets); 289404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2895e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindIndexBuffer( 28963fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 289704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 289804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 289904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkIndexType indexType); 290004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2901e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers( 29023fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 2903f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstBinding, 290404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t bindingCount, 290504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBuffer* pBuffers, 290604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkDeviceSize* pOffsets); 290704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2908e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDraw( 29093fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 291004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t vertexCount, 29115ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t instanceCount, 29125ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstVertex, 29135ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstInstance); 291404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2915e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexed( 29163fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 291704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t indexCount, 29185ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t instanceCount, 29195ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstIndex, 292004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall int32_t vertexOffset, 29215ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall uint32_t firstInstance); 292204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2923e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirect( 29243fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 292504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 292604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 292703b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t drawCount, 292804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t stride); 292904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2930e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect( 29313fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 293204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 293304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset, 293403b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t drawCount, 293504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t stride); 293604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2937e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatch( 29383fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 293904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t x, 294004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t y, 294104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t z); 294204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2943e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect( 29443fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 294504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer buffer, 294604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize offset); 294704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2948e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyBuffer( 29493fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 295004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer srcBuffer, 29513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 295204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 295304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferCopy* pRegions); 295404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2955e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyImage( 29563fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 295704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 295804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 29593fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 29603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 296104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 296204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageCopy* pRegions); 296304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2964e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBlitImage( 29653fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 296604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 296704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 29683fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 29693fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 297004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 297104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageBlit* pRegions, 297223ff73fe377acb99b5ea1824d5a11320bdaee745Jesse Hall VkFilter filter); 297304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2974e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyBufferToImage( 29753fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 297604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkBuffer srcBuffer, 29773fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 29783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 297904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 298004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferImageCopy* pRegions); 298104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2982e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyImageToBuffer( 29833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 298404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 298504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 29863fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 298704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 298804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkBufferImageCopy* pRegions); 298904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2990e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdUpdateBuffer( 29913fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 29923fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 29933fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 299404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkDeviceSize dataSize, 299504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const uint32_t* pData); 299604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2997e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdFillBuffer( 29983fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 29993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 30003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 3001b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkDeviceSize size, 300204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t data); 300304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3004e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearColorImage( 30053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 300604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 300704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout imageLayout, 300804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkClearColorValue* pColor, 300904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rangeCount, 301004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresourceRange* pRanges); 301104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3012e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearDepthStencilImage( 30133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 301404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage image, 301504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout imageLayout, 30165ae3abb3ca6728de04935b0c81bcdbdfc37b0d47Jesse Hall const VkClearDepthStencilValue* pDepthStencil, 301704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rangeCount, 301804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageSubresourceRange* pRanges); 301904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3020e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdClearAttachments( 30213fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 3022ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall uint32_t attachmentCount, 3023ae38f7355fd03b777313e13586585a74e0dee05bJesse Hall const VkClearAttachment* pAttachments, 302404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t rectCount, 3025a15a4bf4bafd6114ae8f28c2df2fc622cb3baaceJesse Hall const VkClearRect* pRects); 302604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3027e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResolveImage( 30283fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 302904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImage srcImage, 303004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkImageLayout srcImageLayout, 30313fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImage dstImage, 30323fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkImageLayout dstImageLayout, 303304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t regionCount, 303404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkImageResolve* pRegions); 303504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3036e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdSetEvent( 30373fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 303804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event, 303904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags stageMask); 304004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3041e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResetEvent( 30423fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 304304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkEvent event, 304404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags stageMask); 304504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3046e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdWaitEvents( 30473fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 304804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t eventCount, 304904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkEvent* pEvents, 305004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags srcStageMask, 30513fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineStageFlags dstStageMask, 30523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryBarrierCount, 30533dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkMemoryBarrier* pMemoryBarriers, 30543dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t bufferMemoryBarrierCount, 30553dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkBufferMemoryBarrier* pBufferMemoryBarriers, 30563dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t imageMemoryBarrierCount, 30573dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkImageMemoryBarrier* pImageMemoryBarriers); 305804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3059e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPipelineBarrier( 30603fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 306104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineStageFlags srcStageMask, 30623fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkPipelineStageFlags dstStageMask, 3063dc6d36cb7f1d35059ae8153168e379fc925cb468Jesse Hall VkDependencyFlags dependencyFlags, 30643fbc856120217247c72fb5ed88500000f3881c45Jesse Hall uint32_t memoryBarrierCount, 30653dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkMemoryBarrier* pMemoryBarriers, 30663dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t bufferMemoryBarrierCount, 30673dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkBufferMemoryBarrier* pBufferMemoryBarriers, 30683dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t imageMemoryBarrierCount, 30693dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall const VkImageMemoryBarrier* pImageMemoryBarriers); 307004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3071e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBeginQuery( 30723fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 307304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 30743dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query, 307504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryControlFlags flags); 307604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3077e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdEndQuery( 30783fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 307904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 30803dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query); 308104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3082e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdResetQueryPool( 30833fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 308404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 3085f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 308604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount); 308704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3088e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdWriteTimestamp( 30893fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 30906f39a6d1c6202b5d1bb0aa0dc9b2e130e5b73666Jesse Hall VkPipelineStageFlagBits pipelineStage, 3091a3a7a1d37bdfad56245b75edac49f8aceded321dJesse Hall VkQueryPool queryPool, 30923dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t query); 309304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3094e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdCopyQueryPoolResults( 30953fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 309604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryPool queryPool, 3097f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t firstQuery, 309804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall uint32_t queryCount, 30993fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkBuffer dstBuffer, 31003fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkDeviceSize dstOffset, 3101a9bb62b44be381292b893055cd01cdc89ba55c97Jesse Hall VkDeviceSize stride, 310204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkQueryResultFlags flags); 310304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3104e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdPushConstants( 31053fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 310604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkPipelineLayout layout, 310704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall VkShaderStageFlags stageFlags, 310803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t offset, 310903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t size, 3110f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall const void* pValues); 311104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3112e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdBeginRenderPass( 31133fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 311404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const VkRenderPassBeginInfo* pRenderPassBegin, 311565ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkSubpassContents contents); 311604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3117e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdNextSubpass( 31183fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 311965ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VkSubpassContents contents); 312004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3121e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdEndRenderPass( 31223fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer); 312304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3124e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkCmdExecuteCommands( 31253fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VkCommandBuffer commandBuffer, 31263dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t commandBufferCount, 31273fbc856120217247c72fb5ed88500000f3881c45Jesse Hall const VkCommandBuffer* pCommandBuffers); 312804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 312904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3130091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_surface 1 31313fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR) 31321356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3133543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_SURFACE_SPEC_VERSION 24 31343e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_SURFACE_EXTENSION_NAME "VK_KHR_surface" 31351356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31361356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkColorSpaceKHR { 31381356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_COLORSPACE_SRGB_NONLINEAR_KHR = 0, 31391356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_COLORSPACE_BEGIN_RANGE = VK_COLORSPACE_SRGB_NONLINEAR_KHR, 31401356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_COLORSPACE_END_RANGE = VK_COLORSPACE_SRGB_NONLINEAR_KHR, 31413fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_COLORSPACE_RANGE_SIZE = (VK_COLORSPACE_SRGB_NONLINEAR_KHR - VK_COLORSPACE_SRGB_NONLINEAR_KHR + 1), 31421356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_COLORSPACE_MAX_ENUM = 0x7FFFFFFF 31431356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkColorSpaceKHR; 31441356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31453e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkPresentModeKHR { 31461356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_IMMEDIATE_KHR = 0, 31471356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_MAILBOX_KHR = 1, 31481356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_FIFO_KHR = 2, 314903b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3, 31501356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_BEGIN_RANGE = VK_PRESENT_MODE_IMMEDIATE_KHR, 315103b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VK_PRESENT_MODE_END_RANGE = VK_PRESENT_MODE_FIFO_RELAXED_KHR, 31523fbc856120217247c72fb5ed88500000f3881c45Jesse Hall VK_PRESENT_MODE_RANGE_SIZE = (VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1), 31531356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_PRESENT_MODE_MAX_ENUM = 0x7FFFFFFF 31541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkPresentModeKHR; 31551356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31561356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31573e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkSurfaceTransformFlagBitsKHR { 3158f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 0x00000001, 31599ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002, 31609ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004, 31619ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008, 31629ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010, 31639ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020, 31649ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040, 31659ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080, 31661356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100, 31671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSurfaceTransformFlagBitsKHR; 31681356b0d3179254a7a27e88abb2d2500385469f14Jesse Halltypedef VkFlags VkSurfaceTransformFlagsKHR; 31691356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31703e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkCompositeAlphaFlagBitsKHR { 3171a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 0x00000001, 3172a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 0x00000002, 3173a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 0x00000004, 3174a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 0x00000008, 3175a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkCompositeAlphaFlagBitsKHR; 3176a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Halltypedef VkFlags VkCompositeAlphaFlagsKHR; 3177a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 31783e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSurfaceCapabilitiesKHR { 3179563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t minImageCount; 3180563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageCount; 3181563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D currentExtent; 3182563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minImageExtent; 3183563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxImageExtent; 3184563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t maxImageArrayLayers; 3185563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 3186563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR currentTransform; 3187563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompositeAlphaFlagsKHR supportedCompositeAlpha; 3188563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags supportedUsageFlags; 3189b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall} VkSurfaceCapabilitiesKHR; 31901356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 31913e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSurfaceFormatKHR { 3192563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat format; 3193563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorSpaceKHR colorSpace; 31941356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSurfaceFormatKHR; 31951356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3196b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3197f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks* pAllocator); 3198e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, VkSurfaceKHR surface, VkBool32* pSupported); 3199e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); 3200e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pSurfaceFormatCount, VkSurfaceFormatKHR* pSurfaceFormats); 3201e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, uint32_t* pPresentModeCount, VkPresentModeKHR* pPresentModes); 3202b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3203563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3204e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySurfaceKHR( 3205f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkInstance instance, 3206f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSurfaceKHR surface, 32070e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator); 3208b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3209e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceSupportKHR( 3210b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3211b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t queueFamilyIndex, 3212b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3213b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkBool32* pSupported); 3214b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3215e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilitiesKHR( 3216b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3217b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3218b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceCapabilitiesKHR* pSurfaceCapabilities); 3219b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3220e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormatsKHR( 3221b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3222b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3223b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t* pSurfaceFormatCount, 3224b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceFormatKHR* pSurfaceFormats); 3225b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3226e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfacePresentModesKHR( 3227b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPhysicalDevice physicalDevice, 3228b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkSurfaceKHR surface, 3229b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall uint32_t* pPresentModeCount, 3230b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall VkPresentModeKHR* pPresentModes); 3231b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall#endif 3232b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3233091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_swapchain 1 32343fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR) 3235b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3236543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_SWAPCHAIN_SPEC_VERSION 67 32373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_SWAPCHAIN_EXTENSION_NAME "VK_KHR_swapchain" 3238b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 3239f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkSwapchainCreateFlagsKHR; 3240f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall 32413e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkSwapchainCreateInfoKHR { 3242563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3243563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3244563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSwapchainCreateFlagsKHR flags; 3245563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceKHR surface; 3246563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t minImageCount; 3247563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkFormat imageFormat; 3248563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkColorSpaceKHR imageColorSpace; 3249563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D imageExtent; 3250563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t imageArrayLayers; 3251563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkImageUsageFlags imageUsage; 3252563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSharingMode imageSharingMode; 3253563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t queueFamilyIndexCount; 3254563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pQueueFamilyIndices; 3255563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR preTransform; 3256563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkCompositeAlphaFlagBitsKHR compositeAlpha; 3257563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkPresentModeKHR presentMode; 3258563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 clipped; 3259563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSwapchainKHR oldSwapchain; 32601356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkSwapchainCreateInfoKHR; 32611356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 32623e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkPresentInfoKHR { 3263563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3264563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3265563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t waitSemaphoreCount; 3266563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSemaphore* pWaitSemaphores; 3267563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t swapchainCount; 3268563380d389732337a84e7455caa01ec955ebee30Jesse Hall const VkSwapchainKHR* pSwapchains; 3269563380d389732337a84e7455caa01ec955ebee30Jesse Hall const uint32_t* pImageIndices; 3270563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkResult* pResults; 32711356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkPresentInfoKHR; 32721356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 32731356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3274f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain); 3275f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator); 3276f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainImagesKHR)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages); 3277f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkAcquireNextImageKHR)(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex); 3278f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkQueuePresentKHR)(VkQueue queue, const VkPresentInfoKHR* pPresentInfo); 32791356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3280563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3281e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSwapchainKHR( 3282f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3283f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkSwapchainCreateInfoKHR* pCreateInfo, 32840e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 3285f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR* pSwapchain); 32861356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3287e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR void VKAPI_CALL vkDestroySwapchainKHR( 3288f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3289f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 32900e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator); 32911356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3292e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainImagesKHR( 3293f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3294f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 3295f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t* pSwapchainImageCount, 3296f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkImage* pSwapchainImages); 32971356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3298e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkAcquireNextImageKHR( 3299f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkDevice device, 3300f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSwapchainKHR swapchain, 3301f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint64_t timeout, 3302f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkSemaphore semaphore, 3303f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkFence fence, 3304f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall uint32_t* pImageIndex); 33051356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3306e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkQueuePresentKHR( 3307f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall VkQueue queue, 3308f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkPresentInfoKHR* pPresentInfo); 33091356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 33101356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3311091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_display 1 33123fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR) 33133fbc856120217247c72fb5ed88500000f3881c45Jesse HallVK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayModeKHR) 33141356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3315543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_DISPLAY_SPEC_VERSION 21 33163e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_DISPLAY_EXTENSION_NAME "VK_KHR_display" 33171356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33181356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33193e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef enum VkDisplayPlaneAlphaFlagBitsKHR { 3320f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 0x00000001, 3321f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 0x00000002, 3322f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004, 3323f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008, 33241356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPlaneAlphaFlagBitsKHR; 33259ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkFlags VkDisplayModeCreateFlagsKHR; 33261356b0d3179254a7a27e88abb2d2500385469f14Jesse Halltypedef VkFlags VkDisplayPlaneAlphaFlagsKHR; 3327f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Halltypedef VkFlags VkDisplaySurfaceCreateFlagsKHR; 33281356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33293e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPropertiesKHR { 3330563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayKHR display; 3331563380d389732337a84e7455caa01ec955ebee30Jesse Hall const char* displayName; 3332563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D physicalDimensions; 3333563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D physicalResolution; 3334563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagsKHR supportedTransforms; 3335563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 planeReorderPossible; 3336563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 persistentContent; 33371356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPropertiesKHR; 33381356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModeParametersKHR { 3340563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D visibleRegion; 3341563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t refreshRate; 3342a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplayModeParametersKHR; 33431356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33443e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModePropertiesKHR { 3345563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeKHR displayMode; 3346563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeParametersKHR parameters; 33471356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayModePropertiesKHR; 33481356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33493e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayModeCreateInfoKHR { 3350563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3351563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3352563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeCreateFlagsKHR flags; 3353563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeParametersKHR parameters; 33541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayModeCreateInfoKHR; 33551356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33563e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPlaneCapabilitiesKHR { 3357563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayPlaneAlphaFlagsKHR supportedAlpha; 3358563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D minSrcPosition; 3359563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D maxSrcPosition; 3360563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minSrcExtent; 3361563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxSrcExtent; 3362563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D minDstPosition; 3363563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkOffset2D maxDstPosition; 3364563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D minDstExtent; 3365563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D maxDstExtent; 3366a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplayPlaneCapabilitiesKHR; 33671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33683e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPlanePropertiesKHR { 3369563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayKHR currentDisplay; 3370563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t currentStackIndex; 3371b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall} VkDisplayPlanePropertiesKHR; 3372b00daadc165d4c3fad13b7cc4aeaa1e85e6df9a0Jesse Hall 33733e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplaySurfaceCreateInfoKHR { 3374563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3375563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3376563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplaySurfaceCreateFlagsKHR flags; 3377563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayModeKHR displayMode; 3378563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t planeIndex; 3379563380d389732337a84e7455caa01ec955ebee30Jesse Hall uint32_t planeStackIndex; 3380563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkSurfaceTransformFlagBitsKHR transform; 3381563380d389732337a84e7455caa01ec955ebee30Jesse Hall float globalAlpha; 3382563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkDisplayPlaneAlphaFlagBitsKHR alphaMode; 3383563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkExtent2D imageExtent; 3384a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall} VkDisplaySurfaceCreateInfoKHR; 33851356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 33861356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3387e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPropertiesKHR* pProperties); 3388e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(VkPhysicalDevice physicalDevice, uint32_t* pPropertyCount, VkDisplayPlanePropertiesKHR* pProperties); 33893dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t planeIndex, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays); 3390e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties); 33910e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR*pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode); 33929ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities); 33930e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 33941356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3395563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3396e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPropertiesKHR( 33971356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 339803b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 33991356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayPropertiesKHR* pProperties); 34001356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3401e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceDisplayPlanePropertiesKHR( 3402a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3403a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t* pPropertyCount, 3404a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkDisplayPlanePropertiesKHR* pProperties); 3405a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3406e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneSupportedDisplaysKHR( 3407a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 34083dd678a6a30e2d94bfd570ec43ffd379e9c5d409Jesse Hall uint32_t planeIndex, 3409f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall uint32_t* pDisplayCount, 3410f4ab2b18391ab5045b44af9ea1d5698af7c2a0cdJesse Hall VkDisplayKHR* pDisplays); 3411a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3412e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayModePropertiesKHR( 34131356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 34141356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayKHR display, 341503b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall uint32_t* pPropertyCount, 341603b6fe1b099764c6010c173c1416ea102cdfe5a4Jesse Hall VkDisplayModePropertiesKHR* pProperties); 34171356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3418e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR( 34191356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 34201356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayKHR display, 34211356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall const VkDisplayModeCreateInfoKHR* pCreateInfo, 34220e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 34231356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkDisplayModeKHR* pMode); 34241356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3425e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR( 34261356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkPhysicalDevice physicalDevice, 34279ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkDisplayModeKHR mode, 34281356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall uint32_t planeIndex, 3429a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkDisplayPlaneCapabilitiesKHR* pCapabilities); 3430a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3431e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR( 3432a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkInstance instance, 3433a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, 34340e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 3435a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkSurfaceKHR* pSurface); 34361356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 34371356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3438091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_display_swapchain 1 3439543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION 9 34403e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain" 34411356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34423e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Halltypedef struct VkDisplayPresentInfoKHR { 3443563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3444563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3445563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D srcRect; 3446563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkRect2D dstRect; 3447563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkBool32 persistent; 34481356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall} VkDisplayPresentInfoKHR; 34491356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34501356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34519ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains); 34529ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall 3453563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 34549ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR( 34559ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkDevice device, 34569ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall uint32_t swapchainCount, 34579ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall const VkSwapchainCreateInfoKHR* pCreateInfos, 34589ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall const VkAllocationCallbacks* pAllocator, 34599ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall VkSwapchainKHR* pSwapchains); 34609ba8bc8d8769cd4d7b56b44222323b7f06783b11Jesse Hall#endif 34611356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3462a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall#ifdef VK_USE_PLATFORM_XLIB_KHR 3463091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_xlib_surface 1 34641356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <X11/Xlib.h> 34651356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3466543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6 3467091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface" 34681356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3469f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkXlibSurfaceCreateFlagsKHR; 3470f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3471f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkXlibSurfaceCreateInfoKHR { 3472563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3473563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3474563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkXlibSurfaceCreateFlagsKHR flags; 3475563380d389732337a84e7455caa01ec955ebee30Jesse Hall Display* dpy; 3476563380d389732337a84e7455caa01ec955ebee30Jesse Hall Window window; 3477f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkXlibSurfaceCreateInfoKHR; 3478f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3479f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3480f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3481e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID); 34821356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3483563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3484e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR( 34851356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3486f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkXlibSurfaceCreateInfoKHR* pCreateInfo, 34870e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 34881356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3489a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3490e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR( 3491a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3492a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3493a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall Display* dpy, 349465ab552c18df3e94c5d275294a20dd4d20dda119Jesse Hall VisualID visualID); 34951356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 3496a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall#endif /* VK_USE_PLATFORM_XLIB_KHR */ 34971356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 34981356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_XCB_KHR 3499091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_xcb_surface 1 35001356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <xcb/xcb.h> 35011356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3502543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_XCB_SURFACE_SPEC_VERSION 6 35033e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface" 35041356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3505f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkXcbSurfaceCreateFlagsKHR; 3506f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3507f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkXcbSurfaceCreateInfoKHR { 3508563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3509563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3510563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkXcbSurfaceCreateFlagsKHR flags; 3511563380d389732337a84e7455caa01ec955ebee30Jesse Hall xcb_connection_t* connection; 3512563380d389732337a84e7455caa01ec955ebee30Jesse Hall xcb_window_t window; 3513f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkXcbSurfaceCreateInfoKHR; 3514f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3515f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3516f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3517e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id); 35181356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3519563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3520e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR( 35211356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3522f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkXcbSurfaceCreateInfoKHR* pCreateInfo, 35230e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 35241356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3525a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3526e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR( 3527a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3528a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3529a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall xcb_connection_t* connection, 3530a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall xcb_visualid_t visual_id); 35311356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 35321356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_XCB_KHR */ 35331356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_WAYLAND_KHR 3535091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_wayland_surface 1 35361356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <wayland-client.h> 35371356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3538543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 5 35393e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface" 35401356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3541f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkWaylandSurfaceCreateFlagsKHR; 3542f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3543f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkWaylandSurfaceCreateInfoKHR { 3544563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3545563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3546563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkWaylandSurfaceCreateFlagsKHR flags; 3547563380d389732337a84e7455caa01ec955ebee30Jesse Hall struct wl_display* display; 3548563380d389732337a84e7455caa01ec955ebee30Jesse Hall struct wl_surface* surface; 3549f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkWaylandSurfaceCreateInfoKHR; 3550f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3551f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3552f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3553e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display); 35541356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3555563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3556e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR( 35571356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3558f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, 35590e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 35601356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3561a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3562e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR( 3563a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3564a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3565a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall struct wl_display* display); 35661356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 35671356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_WAYLAND_KHR */ 35681356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 35691356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_MIR_KHR 3570091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_mir_surface 1 35711356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <mir_toolkit/client_types.h> 35721356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3573543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_MIR_SURFACE_SPEC_VERSION 4 35743e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_MIR_SURFACE_EXTENSION_NAME "VK_KHR_mir_surface" 35751356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3576f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkMirSurfaceCreateFlagsKHR; 3577f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3578f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkMirSurfaceCreateInfoKHR { 3579563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3580563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3581563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkMirSurfaceCreateFlagsKHR flags; 3582563380d389732337a84e7455caa01ec955ebee30Jesse Hall MirConnection* connection; 3583563380d389732337a84e7455caa01ec955ebee30Jesse Hall MirSurface* mirSurface; 3584f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkMirSurfaceCreateInfoKHR; 3585f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3586f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3587f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateMirSurfaceKHR)(VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3588e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceMirPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, MirConnection* connection); 35891356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3590563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3591e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateMirSurfaceKHR( 35921356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3593f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkMirSurfaceCreateInfoKHR* pCreateInfo, 35940e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 35951356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3596a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3597e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceMirPresentationSupportKHR( 3598a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3599a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex, 3600a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall MirConnection* connection); 36011356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 36021356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_MIR_KHR */ 36031356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36041356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_ANDROID_KHR 3605091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_android_surface 1 36061356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <android/native_window.h> 36071356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3608543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 5 36093e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface" 36101356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3611f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkAndroidSurfaceCreateFlagsKHR; 3612f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3613f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkAndroidSurfaceCreateInfoKHR { 3614563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3615563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3616563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkAndroidSurfaceCreateFlagsKHR flags; 3617563380d389732337a84e7455caa01ec955ebee30Jesse Hall ANativeWindow* window; 3618f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkAndroidSurfaceCreateInfoKHR; 3619f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3620f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3621f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 36221356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3623563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3624e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR( 36251356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3626f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, 36270e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 36281356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 36291356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 36301356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_ANDROID_KHR */ 36311356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 36321356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#ifdef VK_USE_PLATFORM_WIN32_KHR 3633091ed9e69400edcc549c9b11635d1a305d6b5a83Jesse Hall#define VK_KHR_win32_surface 1 36341356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#include <windows.h> 36351356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3636543a7ffb9845637b4dc0d40898bf5b1057dbc3eaJesse Hall#define VK_KHR_WIN32_SURFACE_SPEC_VERSION 5 36373e0dc8f0d9f4de86ac61c4d3c33c3958f35e0a25Jesse Hall#define VK_KHR_WIN32_SURFACE_EXTENSION_NAME "VK_KHR_win32_surface" 36381356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3639f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkFlags VkWin32SurfaceCreateFlagsKHR; 3640f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3641f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef struct VkWin32SurfaceCreateInfoKHR { 3642563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkStructureType sType; 3643563380d389732337a84e7455caa01ec955ebee30Jesse Hall const void* pNext; 3644563380d389732337a84e7455caa01ec955ebee30Jesse Hall VkWin32SurfaceCreateFlagsKHR flags; 3645563380d389732337a84e7455caa01ec955ebee30Jesse Hall HINSTANCE hinstance; 3646563380d389732337a84e7455caa01ec955ebee30Jesse Hall HWND hwnd; 3647f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall} VkWin32SurfaceCreateInfoKHR; 3648f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3649f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall 3650f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Halltypedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 3651e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse Halltypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex); 36521356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 3653563380d389732337a84e7455caa01ec955ebee30Jesse Hall#ifndef VK_NO_PROTOTYPES 3654e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkResult VKAPI_CALL vkCreateWin32SurfaceKHR( 36551356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkInstance instance, 3656f9fa9a50d5e87dacce36ef2a56b392fc053cf8ceJesse Hall const VkWin32SurfaceCreateInfoKHR* pCreateInfo, 36570e74f00af03b7e705774d0dcf69c2ba8ce7a15a8Jesse Hall const VkAllocationCallbacks* pAllocator, 36581356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall VkSurfaceKHR* pSurface); 3659a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall 3660e1b12783fff0b8e2defcc94c54fac8d737e6b996Jesse HallVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWin32PresentationSupportKHR( 3661a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall VkPhysicalDevice physicalDevice, 3662a64292517b1876c4bbe5d3e62c577812f40bd922Jesse Hall uint32_t queueFamilyIndex); 36631356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif 36641356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall#endif /* VK_USE_PLATFORM_WIN32_KHR */ 36651356b0d3179254a7a27e88abb2d2500385469f14Jesse Hall 366604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#ifdef __cplusplus 366704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} 366804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 366904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 367004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#endif 3671