Add test and documentation for resource aliasing (overlap).
diff --git a/README.md b/README.md
index 31928c3..3c778a2 100644
--- a/README.md
+++ b/README.md
@@ -42,6 +42,7 @@
 - Customization: Predefine appropriate macros to provide your own implementation of all external facilities used by the library, from assert, mutex, and atomic, to vector and linked list. 
 - Support for memory mapping, reference-counted internally. Support for persistently mapped memory: Just allocate with appropriate flag and you get access to mapped pointer.
 - Support for non-coherent memory. Functions that flush/invalidate memory. `nonCoherentAtomSize` is respected automatically.
+- Support for resource aliasing (overlap).
 - Support for sparse binding and sparse residency: Convenience functions that allocate or free multiple memory pages at once.
 - Custom memory pools: Create a pool with desired parameters (e.g. fixed or limited maximum size) and allocate memory out of it.
 - Linear allocator: Create a pool with linear algorithm and use it for much faster allocations and deallocations in free-at-once, stack, double stack, or ring buffer fashion.
diff --git a/docs/gfx/Aliasing.png b/docs/gfx/Aliasing.png
new file mode 100644
index 0000000..5f37edb
--- /dev/null
+++ b/docs/gfx/Aliasing.png
Binary files differ
diff --git a/docs/html/allocation_annotation.html b/docs/html/allocation_annotation.html
index ee85a63..b111945 100644
--- a/docs/html/allocation_annotation.html
+++ b/docs/html/allocation_annotation.html
@@ -116,18 +116,18 @@
 <dl class="section note"><dt>Note</dt><dd>Passing string name to VMA allocation doesn't automatically set it to the Vulkan buffer or image created with it. You must do it manually using an extension like VK_EXT_debug_utils, which is independent of this library. </dd></dl>
 </div></div><!-- contents -->
 </div><!-- PageDoc -->
-<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520">VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2681</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_a8259e85c272683434f4abb4ddddffe19"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">VmaAllocationCreateInfo::pUserData</a></div><div class="ttdeci">void * pUserData</div><div class="ttdoc">Custom general-purpose pointer that will be stored in VmaAllocation, can be read as VmaAllocationInfo...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2775</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520">VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2791</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_a8259e85c272683434f4abb4ddddffe19"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">VmaAllocationCreateInfo::pUserData</a></div><div class="ttdeci">void * pUserData</div><div class="ttdoc">Custom general-purpose pointer that will be stored in VmaAllocation, can be read as VmaAllocationInfo...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2885</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a86dd08aba8633bfa4ad0df2e76481d8b"><div class="ttname"><a href="vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b">vmaGetAllocationInfo</a></div><div class="ttdeci">void vmaGetAllocationInfo(VmaAllocator allocator, VmaAllocation allocation, VmaAllocationInfo *pAllocationInfo)</div><div class="ttdoc">Returns current information about specified allocation and atomically marks it as used in current fra...</div></div>
 <div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2578</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a02a94f25679275851a53e82eacbcfc73"><div class="ttname"><a href="vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73">vmaCreateImage</a></div><div class="ttdeci">VkResult vmaCreateImage(VmaAllocator allocator, const VkImageCreateInfo *pImageCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkImage *pImage, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div><div class="ttdoc">Function similar to vmaCreateBuffer().</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2744</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html_adc507656149c04de7ed95d0042ba2a13"><div class="ttname"><a href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">VmaAllocationInfo::pUserData</a></div><div class="ttdeci">void * pUserData</div><div class="ttdoc">Custom general-purpose pointer that was passed as VmaAllocationCreateInfo::pUserData or set using vma...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3117</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html_adc507656149c04de7ed95d0042ba2a13"><div class="ttname"><a href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">VmaAllocationInfo::pUserData</a></div><div class="ttdeci">void * pUserData</div><div class="ttdoc">Custom general-purpose pointer that was passed as VmaAllocationCreateInfo::pUserData or set using vma...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3227</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ac72ee55598617e8eecca384e746bab51"><div class="ttname"><a href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a></div><div class="ttdeci">VkResult vmaCreateBuffer(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2738</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2736</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3073</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2848</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3183</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/choosing_memory_type.html b/docs/html/choosing_memory_type.html
index 3ddcd1b..c813dcf 100644
--- a/docs/html/choosing_memory_type.html
+++ b/docs/html/choosing_memory_type.html
@@ -132,15 +132,15 @@
 </div></div><!-- contents -->
 </div><!-- PageDoc -->
 <div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2578</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_a9166390303ff42d783305bc31c2b6b90"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">VmaAllocationCreateInfo::requiredFlags</a></div><div class="ttdeci">VkMemoryPropertyFlags requiredFlags</div><div class="ttdoc">Flags that must be set in a Memory Type chosen for an allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2749</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2744</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_a9166390303ff42d783305bc31c2b6b90"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">VmaAllocationCreateInfo::requiredFlags</a></div><div class="ttdeci">VkMemoryPropertyFlags requiredFlags</div><div class="ttdoc">Flags that must be set in a Memory Type chosen for an allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2859</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ac72ee55598617e8eecca384e746bab51"><div class="ttname"><a href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a></div><div class="ttdeci">VkResult vmaCreateBuffer(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f">VMA_ALLOCATION_CREATE_MAPPED_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_MAPPED_BIT</div><div class="ttdoc">Set this flag to use a memory that will be persistently mapped and retrieve pointer to it.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2655</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2738</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2736</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_a7fe8d81a1ad10b2a2faacacee5b15d6d"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">VmaAllocationCreateInfo::preferredFlags</a></div><div class="ttdeci">VkMemoryPropertyFlags preferredFlags</div><div class="ttdoc">Flags that preferably should be set in a memory type chosen for an allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2754</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_a3bf940c0271d85d6ba32a4d820075055"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055">VmaAllocationCreateInfo::memoryTypeBits</a></div><div class="ttdeci">uint32_t memoryTypeBits</div><div class="ttdoc">Bitmask containing one bit set for every memory type acceptable for this allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2762</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f">VMA_ALLOCATION_CREATE_MAPPED_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_MAPPED_BIT</div><div class="ttdoc">Set this flag to use a memory that will be persistently mapped and retrieve pointer to it.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2765</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2848</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_a7fe8d81a1ad10b2a2faacacee5b15d6d"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">VmaAllocationCreateInfo::preferredFlags</a></div><div class="ttdeci">VkMemoryPropertyFlags preferredFlags</div><div class="ttdoc">Flags that preferably should be set in a memory type chosen for an allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2864</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_a3bf940c0271d85d6ba32a4d820075055"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055">VmaAllocationCreateInfo::memoryTypeBits</a></div><div class="ttdeci">uint32_t memoryTypeBits</div><div class="ttdoc">Bitmask containing one bit set for every memory type acceptable for this allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2872</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/custom_memory_pools.html b/docs/html/custom_memory_pools.html
index 439a48c..f3db031 100644
--- a/docs/html/custom_memory_pools.html
+++ b/docs/html/custom_memory_pools.html
@@ -180,21 +180,21 @@
 </ul>
 </div></div><!-- contents -->
 </div><!-- PageDoc -->
-<div class="ttc" id="astruct_vma_pool_create_info_html_a596fa76b685d3f1f688f84a709a5b319"><div class="ttname"><a href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">VmaPoolCreateInfo::memoryTypeIndex</a></div><div class="ttdeci">uint32_t memoryTypeIndex</div><div class="ttdoc">Vulkan memory type index to allocate this pool from.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2900</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_a6272c0555cfd1fe28bff1afeb6190150"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">VmaAllocationCreateInfo::pool</a></div><div class="ttdeci">VmaPool pool</div><div class="ttdoc">Pool that this allocation should be created in.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2768</div></div>
+<div class="ttc" id="astruct_vma_pool_create_info_html_a596fa76b685d3f1f688f84a709a5b319"><div class="ttname"><a href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">VmaPoolCreateInfo::memoryTypeIndex</a></div><div class="ttdeci">uint32_t memoryTypeIndex</div><div class="ttdoc">Vulkan memory type index to allocate this pool from.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3010</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_a6272c0555cfd1fe28bff1afeb6190150"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">VmaAllocationCreateInfo::pool</a></div><div class="ttdeci">VmaPool pool</div><div class="ttdoc">Pool that this allocation should be created in.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2878</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a5485779c8f1948238fc4e92232fa65e1"><div class="ttname"><a href="vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1">vmaDestroyPool</a></div><div class="ttdeci">void vmaDestroyPool(VmaAllocator allocator, VmaPool pool)</div><div class="ttdoc">Destroys VmaPool object and frees Vulkan device memory.</div></div>
 <div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2578</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a5c8770ded7c59c8caac6de0c2cb00b50"><div class="ttname"><a href="vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50">vmaCreatePool</a></div><div class="ttdeci">VkResult vmaCreatePool(VmaAllocator allocator, const VmaPoolCreateInfo *pCreateInfo, VmaPool *pPool)</div><div class="ttdoc">Allocates Vulkan device memory and creates VmaPool object.</div></div>
-<div class="ttc" id="astruct_vma_pool_create_info_html_ae41142f2834fcdc82baa4883c187b75c"><div class="ttname"><a href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">VmaPoolCreateInfo::maxBlockCount</a></div><div class="ttdeci">size_t maxBlockCount</div><div class="ttdoc">Maximum number of blocks that can be allocated in this pool. Optional.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2925</div></div>
-<div class="ttc" id="astruct_vma_pool_create_info_html"><div class="ttname"><a href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></div><div class="ttdoc">Describes parameter of created VmaPool.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2897</div></div>
+<div class="ttc" id="astruct_vma_pool_create_info_html_ae41142f2834fcdc82baa4883c187b75c"><div class="ttname"><a href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">VmaPoolCreateInfo::maxBlockCount</a></div><div class="ttdeci">size_t maxBlockCount</div><div class="ttdoc">Maximum number of blocks that can be allocated in this pool. Optional.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3035</div></div>
+<div class="ttc" id="astruct_vma_pool_create_info_html"><div class="ttname"><a href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></div><div class="ttdoc">Describes parameter of created VmaPool.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3007</div></div>
 <div class="ttc" id="astruct_vma_pool_html"><div class="ttname"><a href="struct_vma_pool.html">VmaPool</a></div><div class="ttdoc">Represents custom memory pool.</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ae790ab9ffaf7667fb8f62523e6897888"><div class="ttname"><a href="vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888">vmaFindMemoryTypeIndexForBufferInfo</a></div><div class="ttdeci">VkResult vmaFindMemoryTypeIndexForBufferInfo(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, uint32_t *pMemoryTypeIndex)</div><div class="ttdoc">Helps to find memoryTypeIndex, given VkBufferCreateInfo and VmaAllocationCreateInfo.</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2744</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ac72ee55598617e8eecca384e746bab51"><div class="ttname"><a href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a></div><div class="ttdeci">VkResult vmaCreateBuffer(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a0d9f4e4ba5bf9aab1f1c746387753d77"><div class="ttname"><a href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a></div><div class="ttdeci">void vmaDestroyBuffer(VmaAllocator allocator, VkBuffer buffer, VmaAllocation allocation)</div><div class="ttdoc">Destroys Vulkan buffer and frees allocated memory.</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2736</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3073</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3183</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/defragmentation.html b/docs/html/defragmentation.html
index b9cd780..0a69058 100644
--- a/docs/html/defragmentation.html
+++ b/docs/html/defragmentation.html
@@ -214,22 +214,22 @@
 </ol>
 </div></div><!-- contents -->
 </div><!-- PageDoc -->
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_a3cf86ab32c1da779b4923d301a3056ba"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba">VmaDefragmentationInfo2::allocationCount</a></div><div class="ttdeci">uint32_t allocationCount</div><div class="ttdoc">Number of allocations in pAllocations array.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3485</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_a3cf86ab32c1da779b4923d301a3056ba"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba">VmaDefragmentationInfo2::allocationCount</a></div><div class="ttdeci">uint32_t allocationCount</div><div class="ttdoc">Number of allocations in pAllocations array.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3595</div></div>
 <div class="ttc" id="astruct_vma_allocator_html"><div class="ttname"><a href="struct_vma_allocator.html">VmaAllocator</a></div><div class="ttdoc">Represents main object of this library initialized.</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a86dd08aba8633bfa4ad0df2e76481d8b"><div class="ttname"><a href="vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b">vmaGetAllocationInfo</a></div><div class="ttdeci">void vmaGetAllocationInfo(VmaAllocator allocator, VmaAllocation allocation, VmaAllocationInfo *pAllocationInfo)</div><div class="ttdoc">Returns current information about specified allocation and atomically marks it as used in current fra...</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a8774e20e91e245aae959ba63efa15dd2"><div class="ttname"><a href="vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2">vmaDefragmentationEnd</a></div><div class="ttdeci">VkResult vmaDefragmentationEnd(VmaAllocator allocator, VmaDefragmentationContext context)</div><div class="ttdoc">Ends defragmentation process.</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_a4ddbc898d0afe1518f863a3763628f08"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08">VmaDefragmentationInfo2::maxGpuBytesToMove</a></div><div class="ttdeci">VkDeviceSize maxGpuBytesToMove</div><div class="ttdoc">Maximum total numbers of bytes that can be copied while moving allocations to different places using ...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3534</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_a7f71f39590c5316771493d2333f9c1bd"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd">VmaDefragmentationInfo2::commandBuffer</a></div><div class="ttdeci">VkCommandBuffer commandBuffer</div><div class="ttdoc">Optional. Command buffer where GPU copy commands will be posted.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3548</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html"><div class="ttname"><a href="struct_vma_defragmentation_info2.html">VmaDefragmentationInfo2</a></div><div class="ttdoc">Parameters for defragmentation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3479</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_a4ddbc898d0afe1518f863a3763628f08"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08">VmaDefragmentationInfo2::maxGpuBytesToMove</a></div><div class="ttdeci">VkDeviceSize maxGpuBytesToMove</div><div class="ttdoc">Maximum total numbers of bytes that can be copied while moving allocations to different places using ...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3644</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_a7f71f39590c5316771493d2333f9c1bd"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd">VmaDefragmentationInfo2::commandBuffer</a></div><div class="ttdeci">VkCommandBuffer commandBuffer</div><div class="ttdoc">Optional. Command buffer where GPU copy commands will be posted.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3658</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html"><div class="ttname"><a href="struct_vma_defragmentation_info2.html">VmaDefragmentationInfo2</a></div><div class="ttdoc">Parameters for defragmentation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3589</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a6b0929b914b60cf2d45cac4bf3547470"><div class="ttname"><a href="vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470">vmaBindBufferMemory</a></div><div class="ttdeci">VkResult vmaBindBufferMemory(VmaAllocator allocator, VmaAllocation allocation, VkBuffer buffer)</div><div class="ttdoc">Binds buffer to allocation.</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_ab6d288f29d028156cf73542d630a2e32"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32">VmaDefragmentationInfo2::pAllocations</a></div><div class="ttdeci">const VmaAllocation * pAllocations</div><div class="ttdoc">Pointer to array of allocations that can be defragmented.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3494</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_a40d53d33e71ba0b66f844ed63c05a3f6"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6">VmaDefragmentationInfo2::maxGpuAllocationsToMove</a></div><div class="ttdeci">uint32_t maxGpuAllocationsToMove</div><div class="ttdoc">Maximum number of allocations that can be moved to a different place using transfers on GPU side,...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3539</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_af78e1ea40c22d85137b65f6b384a4d0a"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a">VmaDefragmentationInfo2::maxCpuBytesToMove</a></div><div class="ttdeci">VkDeviceSize maxCpuBytesToMove</div><div class="ttdoc">Maximum total numbers of bytes that can be copied while moving allocations to different places using ...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3524</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_ab6d288f29d028156cf73542d630a2e32"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32">VmaDefragmentationInfo2::pAllocations</a></div><div class="ttdeci">const VmaAllocation * pAllocations</div><div class="ttdoc">Pointer to array of allocations that can be defragmented.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3604</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_a40d53d33e71ba0b66f844ed63c05a3f6"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6">VmaDefragmentationInfo2::maxGpuAllocationsToMove</a></div><div class="ttdeci">uint32_t maxGpuAllocationsToMove</div><div class="ttdoc">Maximum number of allocations that can be moved to a different place using transfers on GPU side,...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3649</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_af78e1ea40c22d85137b65f6b384a4d0a"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a">VmaDefragmentationInfo2::maxCpuBytesToMove</a></div><div class="ttdeci">VkDeviceSize maxCpuBytesToMove</div><div class="ttdoc">Maximum total numbers of bytes that can be copied while moving allocations to different places using ...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3634</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a36ba776fd7fd5cb1e9359fdc0d8e6e8a"><div class="ttname"><a href="vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a">vmaDefragmentationBegin</a></div><div class="ttdeci">VkResult vmaDefragmentationBegin(VmaAllocator allocator, const VmaDefragmentationInfo2 *pInfo, VmaDefragmentationStats *pStats, VmaDefragmentationContext *pContext)</div><div class="ttdoc">Begins defragmentation process.</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_a76d51a644dc7f5405d0cdd0025ecd0cc"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc">VmaDefragmentationInfo2::pAllocationsChanged</a></div><div class="ttdeci">VkBool32 * pAllocationsChanged</div><div class="ttdoc">Optional, output. Pointer to array that will be filled with information whether the allocation at cer...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3500</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3073</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_a76d51a644dc7f5405d0cdd0025ecd0cc"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc">VmaDefragmentationInfo2::pAllocationsChanged</a></div><div class="ttdeci">VkBool32 * pAllocationsChanged</div><div class="ttdoc">Optional, output. Pointer to array that will be filled with information whether the allocation at cer...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3610</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3183</div></div>
 <div class="ttc" id="astruct_vma_defragmentation_context_html"><div class="ttname"><a href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a></div><div class="ttdoc">Represents Opaque object that represents started defragmentation process.</div></div>
-<div class="ttc" id="astruct_vma_defragmentation_info2_html_a94c2c7223d52878445a8cccce396b671"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671">VmaDefragmentationInfo2::maxCpuAllocationsToMove</a></div><div class="ttdeci">uint32_t maxCpuAllocationsToMove</div><div class="ttdoc">Maximum number of allocations that can be moved to a different place using transfers on CPU side,...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3529</div></div>
+<div class="ttc" id="astruct_vma_defragmentation_info2_html_a94c2c7223d52878445a8cccce396b671"><div class="ttname"><a href="struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671">VmaDefragmentationInfo2::maxCpuAllocationsToMove</a></div><div class="ttdeci">uint32_t maxCpuAllocationsToMove</div><div class="ttdoc">Maximum number of allocations that can be moved to a different place using transfers on CPU side,...</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3639</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/index.html b/docs/html/index.html
index 929bce2..07d8c31 100644
--- a/docs/html/index.html
+++ b/docs/html/index.html
@@ -99,6 +99,7 @@
 <li><a class="el" href="staying_within_budget.html#staying_within_budget_controlling_memory_usage">Controlling memory usage</a></li>
 </ul>
 </li>
+<li><a class="el" href="resource_aliasing.html">Resource aliasing (overlap)</a></li>
 <li><a class="el" href="custom_memory_pools.html">Custom memory pools</a><ul>
 <li><a class="el" href="custom_memory_pools.html#custom_memory_pools_MemTypeIndex">Choosing memory type index</a></li>
 <li><a class="el" href="custom_memory_pools.html#linear_algorithm">Linear allocation algorithm</a><ul>
diff --git a/docs/html/lost_allocations.html b/docs/html/lost_allocations.html
index a6c6900..0b62a47 100644
--- a/docs/html/lost_allocations.html
+++ b/docs/html/lost_allocations.html
@@ -125,15 +125,15 @@
 </div></div><!-- contents -->
 </div><!-- PageDoc -->
 <div class="ttc" id="avk__mem__alloc_8h_html_a43d8ba9673c846f049089a5029d5c73a"><div class="ttname"><a href="vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a">vmaTouchAllocation</a></div><div class="ttdeci">VkBool32 vmaTouchAllocation(VmaAllocator allocator, VmaAllocation allocation)</div><div class="ttdoc">Returns VK_TRUE if allocation is not lost and atomically marks it as used in current frame.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2668</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2778</div></div>
 <div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2578</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2675</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2744</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2785</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ac72ee55598617e8eecca384e746bab51"><div class="ttname"><a href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a></div><div class="ttdeci">VkResult vmaCreateBuffer(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a0d9f4e4ba5bf9aab1f1c746387753d77"><div class="ttname"><a href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a></div><div class="ttdeci">void vmaDestroyBuffer(VmaAllocator allocator, VkBuffer buffer, VmaAllocation allocation)</div><div class="ttdoc">Destroys Vulkan buffer and frees allocated memory.</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2738</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2736</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2848</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/memory_mapping.html b/docs/html/memory_mapping.html
index d5bfa77..8f938c5 100644
--- a/docs/html/memory_mapping.html
+++ b/docs/html/memory_mapping.html
@@ -186,19 +186,19 @@
 <div class="ttc" id="avk__mem__alloc_8h_html_a9bc268595cb33f6ec4d519cfce81ff45"><div class="ttname"><a href="vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45">vmaUnmapMemory</a></div><div class="ttdeci">void vmaUnmapMemory(VmaAllocator allocator, VmaAllocation allocation)</div><div class="ttdoc">Unmaps memory represented by given allocation, mapped previously using vmaMapMemory().</div></div>
 <div class="ttc" id="astruct_vma_allocator_html"><div class="ttname"><a href="struct_vma_allocator.html">VmaAllocator</a></div><div class="ttdoc">Represents main object of this library initialized.</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a8701444752eb5de4464adb5a2b514bca"><div class="ttname"><a href="vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca">vmaGetMemoryTypeProperties</a></div><div class="ttdeci">void vmaGetMemoryTypeProperties(VmaAllocator allocator, uint32_t memoryTypeIndex, VkMemoryPropertyFlags *pFlags)</div><div class="ttdoc">Given Memory Type Index, returns Property Flags of this memory type.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5">VMA_MEMORY_USAGE_CPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_CPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2588</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5">VMA_MEMORY_USAGE_CPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_CPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2698</div></div>
 <div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2578</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ad5bd1243512d099706de88168992f069"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069">vmaMapMemory</a></div><div class="ttdeci">VkResult vmaMapMemory(VmaAllocator allocator, VmaAllocation allocation, void **ppData)</div><div class="ttdoc">Maps memory represented by given allocation and returns pointer to it.</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html_a5eeffbe2d2f30f53370ff14aefbadbe2"><div class="ttname"><a href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2">VmaAllocationInfo::pMappedData</a></div><div class="ttdeci">void * pMappedData</div><div class="ttdoc">Pointer to the beginning of this allocation as mapped data.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3112</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2744</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html_a5eeffbe2d2f30f53370ff14aefbadbe2"><div class="ttname"><a href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2">VmaAllocationInfo::pMappedData</a></div><div class="ttdeci">void * pMappedData</div><div class="ttdoc">Pointer to the beginning of this allocation as mapped data.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3222</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ac72ee55598617e8eecca384e746bab51"><div class="ttname"><a href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a></div><div class="ttdeci">VkResult vmaCreateBuffer(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html_a7f6b0aa58c135e488e6b40a388dad9d5"><div class="ttname"><a href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5">VmaAllocationInfo::memoryType</a></div><div class="ttdeci">uint32_t memoryType</div><div class="ttdoc">Memory type index that this allocation was allocated from.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3078</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f">VMA_ALLOCATION_CREATE_MAPPED_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_MAPPED_BIT</div><div class="ttdoc">Set this flag to use a memory that will be persistently mapped and retrieve pointer to it.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2655</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2738</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2736</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_a7fe8d81a1ad10b2a2faacacee5b15d6d"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">VmaAllocationCreateInfo::preferredFlags</a></div><div class="ttdeci">VkMemoryPropertyFlags preferredFlags</div><div class="ttdoc">Flags that preferably should be set in a memory type chosen for an allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2754</div></div>
-<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3073</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html_a7f6b0aa58c135e488e6b40a388dad9d5"><div class="ttname"><a href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5">VmaAllocationInfo::memoryType</a></div><div class="ttdeci">uint32_t memoryType</div><div class="ttdoc">Memory type index that this allocation was allocated from.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3188</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f"><div class="ttname"><a href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f">VMA_ALLOCATION_CREATE_MAPPED_BIT</a></div><div class="ttdeci">@ VMA_ALLOCATION_CREATE_MAPPED_BIT</div><div class="ttdoc">Set this flag to use a memory that will be persistently mapped and retrieve pointer to it.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2765</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_add09658ac14fe290ace25470ddd6d41b"><div class="ttname"><a href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo::flags</a></div><div class="ttdeci">VmaAllocationCreateFlags flags</div><div class="ttdoc">Use VmaAllocationCreateFlagBits enum.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2848</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_a7fe8d81a1ad10b2a2faacacee5b15d6d"><div class="ttname"><a href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">VmaAllocationCreateInfo::preferredFlags</a></div><div class="ttdeci">VkMemoryPropertyFlags preferredFlags</div><div class="ttdoc">Flags that preferably should be set in a memory type chosen for an allocation.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2864</div></div>
+<div class="ttc" id="astruct_vma_allocation_info_html"><div class="ttname"><a href="struct_vma_allocation_info.html">VmaAllocationInfo</a></div><div class="ttdoc">Parameters of VmaAllocation objects, that can be retrieved using function vmaGetAllocationInfo().</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:3183</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/quick_start.html b/docs/html/quick_start.html
index 95f55c8..d5d3ae7 100644
--- a/docs/html/quick_start.html
+++ b/docs/html/quick_start.html
@@ -120,19 +120,19 @@
 <div class="line"><a class="code" href="vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d">vmaDestroyAllocator</a>(allocator);</div>
 </div><!-- fragment --> </div></div><!-- contents -->
 </div><!-- PageDoc -->
-<div class="ttc" id="astruct_vma_allocator_create_info_html_a08230f04ae6ccf8a78150a9e829a7156"><div class="ttname"><a href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">VmaAllocatorCreateInfo::physicalDevice</a></div><div class="ttdeci">VkPhysicalDevice physicalDevice</div><div class="ttdoc">Vulkan physical device.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2275</div></div>
+<div class="ttc" id="astruct_vma_allocator_create_info_html_a08230f04ae6ccf8a78150a9e829a7156"><div class="ttname"><a href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">VmaAllocatorCreateInfo::physicalDevice</a></div><div class="ttdeci">VkPhysicalDevice physicalDevice</div><div class="ttdoc">Vulkan physical device.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2385</div></div>
 <div class="ttc" id="astruct_vma_allocator_html"><div class="ttname"><a href="struct_vma_allocator.html">VmaAllocator</a></div><div class="ttdoc">Represents main object of this library initialized.</div></div>
-<div class="ttc" id="astruct_vma_allocator_create_info_html"><div class="ttname"><a href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></div><div class="ttdoc">Description of a Allocator to be created.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2270</div></div>
+<div class="ttc" id="astruct_vma_allocator_create_info_html"><div class="ttname"><a href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></div><div class="ttdoc">Description of a Allocator to be created.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2380</div></div>
 <div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
-<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2578</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_aa8d164061c88f22fb1fd3c8f3534bc1d"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d">vmaDestroyAllocator</a></div><div class="ttdeci">void vmaDestroyAllocator(VmaAllocator allocator)</div><div class="ttdoc">Destroys allocator object.</div></div>
-<div class="ttc" id="astruct_vma_allocator_create_info_html_ad924ddd77b04039c88d0c09b0ffcd500"><div class="ttname"><a href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500">VmaAllocatorCreateInfo::device</a></div><div class="ttdeci">VkDevice device</div><div class="ttdoc">Vulkan device.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2278</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2744</div></div>
+<div class="ttc" id="astruct_vma_allocator_create_info_html_ad924ddd77b04039c88d0c09b0ffcd500"><div class="ttname"><a href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500">VmaAllocatorCreateInfo::device</a></div><div class="ttdeci">VkDevice device</div><div class="ttdoc">Vulkan device.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2388</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_ac72ee55598617e8eecca384e746bab51"><div class="ttname"><a href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a></div><div class="ttdeci">VkResult vmaCreateBuffer(VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const VmaAllocationCreateInfo *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a200692051ddb34240248234f5f4c17bb"><div class="ttname"><a href="vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb">vmaCreateAllocator</a></div><div class="ttdeci">VkResult vmaCreateAllocator(const VmaAllocatorCreateInfo *pCreateInfo, VmaAllocator *pAllocator)</div><div class="ttdoc">Creates Allocator object.</div></div>
-<div class="ttc" id="astruct_vma_allocator_create_info_html_a70dd42e29b1df1d1b9b61532ae0b370b"><div class="ttname"><a href="struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b">VmaAllocatorCreateInfo::instance</a></div><div class="ttdeci">VkInstance instance</div><div class="ttdoc">Handle to Vulkan instance object.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2344</div></div>
+<div class="ttc" id="astruct_vma_allocator_create_info_html_a70dd42e29b1df1d1b9b61532ae0b370b"><div class="ttname"><a href="struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b">VmaAllocatorCreateInfo::instance</a></div><div class="ttdeci">VkInstance instance</div><div class="ttdoc">Handle to Vulkan instance object.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2454</div></div>
 <div class="ttc" id="avk__mem__alloc_8h_html_a0d9f4e4ba5bf9aab1f1c746387753d77"><div class="ttname"><a href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a></div><div class="ttdeci">void vmaDestroyBuffer(VmaAllocator allocator, VkBuffer buffer, VmaAllocation allocation)</div><div class="ttdoc">Destroys Vulkan buffer and frees allocated memory.</div></div>
-<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2736</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/docs/html/resource_aliasing.html b/docs/html/resource_aliasing.html
new file mode 100644
index 0000000..afc6225
--- /dev/null
+++ b/docs/html/resource_aliasing.html
@@ -0,0 +1,163 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.18"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Vulkan Memory Allocator: Resource aliasing (overlap)</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Vulkan Memory Allocator
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.18 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="index.html">Vulkan Memory Allocator</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="PageDoc"><div class="header">
+  <div class="headertitle">
+<div class="title">Resource aliasing (overlap) </div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>New explicit graphics APIs (Vulkan and Direct3D 12), thanks to manual memory management, give an opportunity to alias (overlap) multiple resources in the same region of memory - a feature not available in the old APIs (Direct3D 11, OpenGL). It can be useful to save video memory, but it must be used with caution.</p>
+<p>For example, if you know the flow of your whole render frame in advance, you are going to use some intermediate textures or buffers only during a small range of render passes, and you know these ranges don't overlap in time, you can bind these resources to the same place in memory, even if they have completely different parameters (width, height, format etc.).</p>
+<p><img src="../gfx/Aliasing.png" alt="Resource aliasing (overlap)" class="inline"/></p>
+<p>Such scenario is possible using VMA, but you need to create your images manually. Then you need to calculate parameters of an allocation to be made using formula:</p>
+<ul>
+<li>allocation size = max(size of each image)</li>
+<li>allocation alignment = max(alignment of each image)</li>
+<li>allocation memoryTypeBits = bitwise AND(memoryTypeBits of each image)</li>
+</ul>
+<p>Following example shows two different images bound to the same place in memory, allocated to fit largest of them.</p>
+<div class="fragment"><div class="line"><span class="comment">// A 512x512 texture to be sampled.</span></div>
+<div class="line">VkImageCreateInfo img1CreateInfo = { VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO };</div>
+<div class="line">img1CreateInfo.imageType = VK_IMAGE_TYPE_2D;</div>
+<div class="line">img1CreateInfo.extent.width = 512;</div>
+<div class="line">img1CreateInfo.extent.height = 512;</div>
+<div class="line">img1CreateInfo.extent.depth = 1;</div>
+<div class="line">img1CreateInfo.mipLevels = 10;</div>
+<div class="line">img1CreateInfo.arrayLayers = 1;</div>
+<div class="line">img1CreateInfo.format = VK_FORMAT_R8G8B8A8_SRGB;</div>
+<div class="line">img1CreateInfo.tiling = VK_IMAGE_TILING_OPTIMAL;</div>
+<div class="line">img1CreateInfo.initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;</div>
+<div class="line">img1CreateInfo.usage = VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_SAMPLED_BIT;</div>
+<div class="line">img1CreateInfo.samples = VK_SAMPLE_COUNT_1_BIT;</div>
+<div class="line"> </div>
+<div class="line"><span class="comment">// A full screen texture to be used as color attachment.</span></div>
+<div class="line">VkImageCreateInfo img2CreateInfo = { VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO };</div>
+<div class="line">img2CreateInfo.imageType = VK_IMAGE_TYPE_2D;</div>
+<div class="line">img2CreateInfo.extent.width = 1920;</div>
+<div class="line">img2CreateInfo.extent.height = 1080;</div>
+<div class="line">img2CreateInfo.extent.depth = 1;</div>
+<div class="line">img2CreateInfo.mipLevels = 1;</div>
+<div class="line">img2CreateInfo.arrayLayers = 1;</div>
+<div class="line">img2CreateInfo.format = VK_FORMAT_R8G8B8A8_UNORM;</div>
+<div class="line">img2CreateInfo.tiling = VK_IMAGE_TILING_OPTIMAL;</div>
+<div class="line">img2CreateInfo.initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;</div>
+<div class="line">img2CreateInfo.usage = VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT;</div>
+<div class="line">img2CreateInfo.samples = VK_SAMPLE_COUNT_1_BIT;</div>
+<div class="line"> </div>
+<div class="line">VkImage img1;</div>
+<div class="line">res = vkCreateImage(device, &amp;img1CreateInfo, <span class="keyword">nullptr</span>, &amp;img1);</div>
+<div class="line">VkImage img2;</div>
+<div class="line">res = vkCreateImage(device, &amp;img2CreateInfo, <span class="keyword">nullptr</span>, &amp;img2);</div>
+<div class="line"> </div>
+<div class="line">VkMemoryRequirements img1MemReq;</div>
+<div class="line">vkGetImageMemoryRequirements(device, img1, &amp;img1MemReq);</div>
+<div class="line">VkMemoryRequirements img2MemReq;</div>
+<div class="line">vkGetImageMemoryRequirements(device, img2, &amp;img2MemReq);</div>
+<div class="line"> </div>
+<div class="line">VkMemoryRequirements finalMemReq = {};</div>
+<div class="line">finalMemReq.size = std::max(img1MemReq.size, img2MemReq.size);</div>
+<div class="line">finalMemReq.alignment = std::max(img1MemReq.alignment, img2MemReq.alignment);</div>
+<div class="line">finalMemReq.memoryTypeBits = img1MemReq.memoryTypeBits &amp; img2MemReq.memoryTypeBits;</div>
+<div class="line"><span class="comment">// Validate if(finalMemReq.memoryTypeBits != 0)</span></div>
+<div class="line"> </div>
+<div class="line"><a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> allocCreateInfo = {};</div>
+<div class="line">allocCreateInfo.<a class="code" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">usage</a> = <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a>;</div>
+<div class="line"> </div>
+<div class="line"><a class="code" href="struct_vma_allocation.html">VmaAllocation</a> alloc;</div>
+<div class="line">res = <a class="code" href="vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8">vmaAllocateMemory</a>(allocator, &amp;finalMemReq, &amp;allocCreateInfo, &amp;alloc, <span class="keyword">nullptr</span>);</div>
+<div class="line"> </div>
+<div class="line">res = <a class="code" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5">vmaBindImageMemory</a>(allocator, alloc, img1);</div>
+<div class="line">res = <a class="code" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5">vmaBindImageMemory</a>(allocator, alloc, img2);</div>
+<div class="line"> </div>
+<div class="line"><span class="comment">// You can use img1, img2 here, but not at the same time!</span></div>
+<div class="line"> </div>
+<div class="line"><a class="code" href="vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f">vmaFreeMemory</a>(allocator, alloc);</div>
+<div class="line">vkDestroyImage(allocator, img2, <span class="keyword">nullptr</span>);</div>
+<div class="line">vkDestroyImage(allocator, img1, <span class="keyword">nullptr</span>);</div>
+</div><!-- fragment --><p>Remember that using resouces that alias in memory requires proper synchronization. You need to issue a memory barrier to make sure commands that use <code>img1</code> and <code>img2</code> don't overlap on GPU timeline. You also need to treat a resource after aliasing as uninitialized - containing garbage data. For example, if you use <code>img1</code> and then want to use <code>img2</code>, you need to issue an image memory barrier for <code>img2</code> with <code>oldLayout</code> = <code>VK_IMAGE_LAYOUT_UNDEFINED</code>.</p>
+<p>Additional considerations:</p>
+<ul>
+<li>Vulkan also allows to interpret contents of memory between aliasing resources consistently in some cases. See chapter 11.8. "Memory Aliasing" of Vulkan specification or <code>VK_IMAGE_CREATE_ALIAS_BIT</code> flag.</li>
+<li>You can create more complex layout where different images and buffers are bound at different offsets inside one large allocation. For example, one can imagine a big texture used in some render passes, aliasing with a set of many small buffers used between in some further passes. To bind a resource at non-zero offset of an allocation, use <a class="el" href="vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a" title="Binds buffer to allocation with additional parameters.">vmaBindBufferMemory2()</a> / <a class="el" href="vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc" title="Binds image to allocation with additional parameters.">vmaBindImageMemory2()</a>.</li>
+<li>Before allocating memory for the resources you want to alias, check <code>memoryTypeBits</code> returned in memory requirements of each resource to make sure the bits overlap. Some GPUs may expose multiple memory types suitable e.g. only for buffers or images with <code>COLOR_ATTACHMENT</code> usage, so the sets of memory types supported by your resources may be disjoint. Aliasing them is not possible in that case. </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- PageDoc -->
+<div class="ttc" id="astruct_vma_allocation_html"><div class="ttname"><a href="struct_vma_allocation.html">VmaAllocation</a></div><div class="ttdoc">Represents single memory allocation.</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"><div class="ttname"><a href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a></div><div class="ttdeci">@ VMA_MEMORY_USAGE_GPU_ONLY</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2688</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_abf28077dbf82d0908b8acbe8ee8dd9b8"><div class="ttname"><a href="vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8">vmaAllocateMemory</a></div><div class="ttdeci">VkResult vmaAllocateMemory(VmaAllocator allocator, const VkMemoryRequirements *pVkMemoryRequirements, const VmaAllocationCreateInfo *pCreateInfo, VmaAllocation *pAllocation, VmaAllocationInfo *pAllocationInfo)</div><div class="ttdoc">General purpose memory allocation.</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html_accb8b06b1f677d858cb9af20705fa910"><div class="ttname"><a href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo::usage</a></div><div class="ttdeci">VmaMemoryUsage usage</div><div class="ttdoc">Intended usage of memory.</div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2854</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_a3d3ca45799923aa5d138e9e5f9eb2da5"><div class="ttname"><a href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5">vmaBindImageMemory</a></div><div class="ttdeci">VkResult vmaBindImageMemory(VmaAllocator allocator, VmaAllocation allocation, VkImage image)</div><div class="ttdoc">Binds image to allocation.</div></div>
+<div class="ttc" id="astruct_vma_allocation_create_info_html"><div class="ttname"><a href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div><div class="ttdef"><b>Definition:</b> vk_mem_alloc.h:2846</div></div>
+<div class="ttc" id="avk__mem__alloc_8h_html_a5fea5518972ae9094b1526cbcb19b05f"><div class="ttname"><a href="vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f">vmaFreeMemory</a></div><div class="ttdeci">void vmaFreeMemory(VmaAllocator allocator, const VmaAllocation allocation)</div><div class="ttdoc">Frees memory previously allocated using vmaAllocateMemory(), vmaAllocateMemoryForBuffer(),...</div></div>
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.18
+</small></address>
+</body>
+</html>
diff --git a/docs/html/search/all_10.js b/docs/html/search/all_10.js
index 628d913..be734f5 100644
--- a/docs/html/search/all_10.js
+++ b/docs/html/search/all_10.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['total_75',['total',['../struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9',1,'VmaStats']]]
+  ['total_76',['total',['../struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9',1,'VmaStats']]]
 ];
diff --git a/docs/html/search/all_11.js b/docs/html/search/all_11.js
index c96bee2..730aac6 100644
--- a/docs/html/search/all_11.js
+++ b/docs/html/search/all_11.js
@@ -1,11 +1,11 @@
 var searchData=
 [
-  ['unusedbytes_76',['unusedBytes',['../struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669',1,'VmaStatInfo']]],
-  ['unusedrangecount_77',['unusedRangeCount',['../struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9',1,'VmaStatInfo::unusedRangeCount()'],['../struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4',1,'VmaPoolStats::unusedRangeCount()']]],
-  ['unusedrangesizeavg_78',['unusedRangeSizeAvg',['../struct_vma_stat_info.html#a2f9b3452af90c9768a30b7fb6ae194fc',1,'VmaStatInfo']]],
-  ['unusedrangesizemax_79',['unusedRangeSizeMax',['../struct_vma_stat_info.html#a5ba1a2476c4d39b10f7e2f7ebbb72ac4',1,'VmaStatInfo::unusedRangeSizeMax()'],['../struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b',1,'VmaPoolStats::unusedRangeSizeMax()']]],
-  ['unusedrangesizemin_80',['unusedRangeSizeMin',['../struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4',1,'VmaStatInfo']]],
-  ['unusedsize_81',['unusedSize',['../struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8',1,'VmaPoolStats']]],
-  ['usage_82',['usage',['../struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6',1,'VmaBudget::usage()'],['../struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910',1,'VmaAllocationCreateInfo::usage()']]],
-  ['usedbytes_83',['usedBytes',['../struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a',1,'VmaStatInfo']]]
+  ['unusedbytes_77',['unusedBytes',['../struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669',1,'VmaStatInfo']]],
+  ['unusedrangecount_78',['unusedRangeCount',['../struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9',1,'VmaStatInfo::unusedRangeCount()'],['../struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4',1,'VmaPoolStats::unusedRangeCount()']]],
+  ['unusedrangesizeavg_79',['unusedRangeSizeAvg',['../struct_vma_stat_info.html#a2f9b3452af90c9768a30b7fb6ae194fc',1,'VmaStatInfo']]],
+  ['unusedrangesizemax_80',['unusedRangeSizeMax',['../struct_vma_stat_info.html#a5ba1a2476c4d39b10f7e2f7ebbb72ac4',1,'VmaStatInfo::unusedRangeSizeMax()'],['../struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b',1,'VmaPoolStats::unusedRangeSizeMax()']]],
+  ['unusedrangesizemin_81',['unusedRangeSizeMin',['../struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4',1,'VmaStatInfo']]],
+  ['unusedsize_82',['unusedSize',['../struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8',1,'VmaPoolStats']]],
+  ['usage_83',['usage',['../struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6',1,'VmaBudget::usage()'],['../struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910',1,'VmaAllocationCreateInfo::usage()']]],
+  ['usedbytes_84',['usedBytes',['../struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a',1,'VmaStatInfo']]]
 ];
diff --git a/docs/html/search/all_12.js b/docs/html/search/all_12.js
index 1ca905f..6e390b6 100644
--- a/docs/html/search/all_12.js
+++ b/docs/html/search/all_12.js
@@ -1,157 +1,157 @@
 var searchData=
 [
-  ['vulkan_20memory_20allocator_84',['Vulkan Memory Allocator',['../index.html',1,'']]],
-  ['vk_5famd_5fdevice_5fcoherent_5fmemory_85',['VK_AMD_device_coherent_memory',['../vk_amd_device_coherent_memory.html',1,'index']]],
-  ['vk_5fkhr_5fdedicated_5fallocation_86',['VK_KHR_dedicated_allocation',['../vk_khr_dedicated_allocation.html',1,'index']]],
-  ['vk_5fmem_5falloc_2eh_87',['vk_mem_alloc.h',['../vk__mem__alloc_8h.html',1,'']]],
-  ['vkallocatememory_88',['vkAllocateMemory',['../struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c',1,'VmaVulkanFunctions']]],
-  ['vkbindbuffermemory_89',['vkBindBufferMemory',['../struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2',1,'VmaVulkanFunctions']]],
-  ['vkbindimagememory_90',['vkBindImageMemory',['../struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637',1,'VmaVulkanFunctions']]],
-  ['vkcmdcopybuffer_91',['vkCmdCopyBuffer',['../struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a',1,'VmaVulkanFunctions']]],
-  ['vkcreatebuffer_92',['vkCreateBuffer',['../struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f',1,'VmaVulkanFunctions']]],
-  ['vkcreateimage_93',['vkCreateImage',['../struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325',1,'VmaVulkanFunctions']]],
-  ['vkdestroybuffer_94',['vkDestroyBuffer',['../struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45',1,'VmaVulkanFunctions']]],
-  ['vkdestroyimage_95',['vkDestroyImage',['../struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa',1,'VmaVulkanFunctions']]],
-  ['vkflushmappedmemoryranges_96',['vkFlushMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9',1,'VmaVulkanFunctions']]],
-  ['vkfreememory_97',['vkFreeMemory',['../struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4',1,'VmaVulkanFunctions']]],
-  ['vkgetbuffermemoryrequirements_98',['vkGetBufferMemoryRequirements',['../struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143',1,'VmaVulkanFunctions']]],
-  ['vkgetimagememoryrequirements_99',['vkGetImageMemoryRequirements',['../struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4',1,'VmaVulkanFunctions']]],
-  ['vkgetphysicaldevicememoryproperties_100',['vkGetPhysicalDeviceMemoryProperties',['../struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830',1,'VmaVulkanFunctions']]],
-  ['vkgetphysicaldeviceproperties_101',['vkGetPhysicalDeviceProperties',['../struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96',1,'VmaVulkanFunctions']]],
-  ['vkinvalidatemappedmemoryranges_102',['vkInvalidateMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1',1,'VmaVulkanFunctions']]],
-  ['vkmapmemory_103',['vkMapMemory',['../struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49',1,'VmaVulkanFunctions']]],
-  ['vkunmapmemory_104',['vkUnmapMemory',['../struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9',1,'VmaVulkanFunctions']]],
-  ['vma_5fallocation_5fcreate_5fcan_5fbecome_5flost_5fbit_105',['VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fcan_5fmake_5fother_5flost_5fbit_106',['VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fdedicated_5fmemory_5fbit_107',['VMA_ALLOCATION_CREATE_DEDICATED_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fdont_5fbind_5fbit_108',['VMA_ALLOCATION_CREATE_DONT_BIND_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fflag_5fbits_5fmax_5fenum_109',['VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fmapped_5fbit_110',['VMA_ALLOCATION_CREATE_MAPPED_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fnever_5fallocate_5fbit_111',['VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fbest_5ffit_5fbit_112',['VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5ffirst_5ffit_5fbit_113',['VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmask_114',['VMA_ALLOCATION_CREATE_STRATEGY_MASK',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ffragmentation_5fbit_115',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_FRAGMENTATION_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5fmemory_5fbit_116',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ftime_5fbit_117',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_TIME_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fworst_5ffit_5fbit_118',['VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fupper_5faddress_5fbit_119',['VMA_ALLOCATION_CREATE_UPPER_ADDRESS_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fuser_5fdata_5fcopy_5fstring_5fbit_120',['VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fwithin_5fbudget_5fbit_121',['VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5famd_5fdevice_5fcoherent_5fmemory_5fbit_122',['VMA_ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fbuffer_5fdevice_5faddress_5fbit_123',['VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fext_5fmemory_5fbudget_5fbit_124',['VMA_ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fexternally_5fsynchronized_5fbit_125',['VMA_ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fflag_5fbits_5fmax_5fenum_126',['VMA_ALLOCATOR_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cae4d5ad929caba5f23eb502b13bd5286c',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fkhr_5fbind_5fmemory2_5fbit_127',['VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fkhr_5fdedicated_5fallocation_5fbit_128',['VMA_ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878',1,'vk_mem_alloc.h']]],
-  ['vma_5fbind_5fmemory2_129',['VMA_BIND_MEMORY2',['../vk__mem__alloc_8h.html#a88bef97f86d70a34a4c0746e09a2680d',1,'vk_mem_alloc.h']]],
-  ['vma_5fbuffer_5fdevice_5faddress_130',['VMA_BUFFER_DEVICE_ADDRESS',['../vk__mem__alloc_8h.html#a7f9d5e71b70dd1a137c303a8a8262c10',1,'vk_mem_alloc.h']]],
-  ['vma_5fdedicated_5fallocation_131',['VMA_DEDICATED_ALLOCATION',['../vk__mem__alloc_8h.html#af7b860e63b96d11e44ae8587ba06bbf4',1,'vk_mem_alloc.h']]],
-  ['vma_5fdefragmentation_5fflag_5fbits_5fmax_5fenum_132',['VMA_DEFRAGMENTATION_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50cab87ec33154803bfeb5ac2b379f1d6a97',1,'vk_mem_alloc.h']]],
-  ['vma_5fdefragmentation_5fflag_5fincremental_133',['VMA_DEFRAGMENTATION_FLAG_INCREMENTAL',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fbudget_134',['VMA_MEMORY_BUDGET',['../vk__mem__alloc_8h.html#a05decf1cf4ebf767beba7acca6c1ec3a',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fcpu_5fcopy_135',['VMA_MEMORY_USAGE_CPU_COPY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fcpu_5fonly_136',['VMA_MEMORY_USAGE_CPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fcpu_5fto_5fgpu_137',['VMA_MEMORY_USAGE_CPU_TO_GPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fgpu_5flazily_5fallocated_138',['VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fgpu_5fonly_139',['VMA_MEMORY_USAGE_GPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fgpu_5fto_5fcpu_140',['VMA_MEMORY_USAGE_GPU_TO_CPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fmax_5fenum_141',['VMA_MEMORY_USAGE_MAX_ENUM',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5funknown_142',['VMA_MEMORY_USAGE_UNKNOWN',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5falgorithm_5fmask_143',['VMA_POOL_CREATE_ALGORITHM_MASK',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5fbuddy_5falgorithm_5fbit_144',['VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5fflag_5fbits_5fmax_5fenum_145',['VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5fignore_5fbuffer_5fimage_5fgranularity_5fbit_146',['VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5flinear_5falgorithm_5fbit_147',['VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726',1,'vk_mem_alloc.h']]],
-  ['vma_5frecord_5fflag_5fbits_5fmax_5fenum_148',['VMA_RECORD_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a20dd17d69966dbffa054739d6090b85e',1,'vk_mem_alloc.h']]],
-  ['vma_5frecord_5fflush_5fafter_5fcall_5fbit_149',['VMA_RECORD_FLUSH_AFTER_CALL_BIT',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7',1,'vk_mem_alloc.h']]],
-  ['vma_5frecording_5fenabled_150',['VMA_RECORDING_ENABLED',['../vk__mem__alloc_8h.html#a1f0c126759fc96ccb6e2d23c101d770c',1,'vk_mem_alloc.h']]],
-  ['vma_5fstats_5fstring_5fenabled_151',['VMA_STATS_STRING_ENABLED',['../vk__mem__alloc_8h.html#ae25f0d55fd91cb166f002b63244800e1',1,'vk_mem_alloc.h']]],
-  ['vma_5fvulkan_5fversion_152',['VMA_VULKAN_VERSION',['../vk__mem__alloc_8h.html#a1a2407c283893638cc039bb31fcd74b6',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememory_153',['vmaAllocateMemory',['../vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememoryforbuffer_154',['vmaAllocateMemoryForBuffer',['../vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememoryforimage_155',['vmaAllocateMemoryForImage',['../vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememorypages_156',['vmaAllocateMemoryPages',['../vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1',1,'vk_mem_alloc.h']]],
-  ['vmaallocation_157',['VmaAllocation',['../struct_vma_allocation.html',1,'']]],
-  ['vmaallocationcreateflagbits_158',['VmaAllocationCreateFlagBits',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597',1,'VmaAllocationCreateFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a4fceecc301f4064dc808d3cd6c038941',1,'VmaAllocationCreateFlagBits():&#160;vk_mem_alloc.h']]],
-  ['vmaallocationcreateflags_159',['VmaAllocationCreateFlags',['../vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817',1,'vk_mem_alloc.h']]],
-  ['vmaallocationcreateinfo_160',['VmaAllocationCreateInfo',['../struct_vma_allocation_create_info.html',1,'VmaAllocationCreateInfo'],['../vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a',1,'VmaAllocationCreateInfo():&#160;vk_mem_alloc.h']]],
-  ['vmaallocationinfo_161',['VmaAllocationInfo',['../struct_vma_allocation_info.html',1,'VmaAllocationInfo'],['../vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50',1,'VmaAllocationInfo():&#160;vk_mem_alloc.h']]],
-  ['vmaallocator_162',['VmaAllocator',['../struct_vma_allocator.html',1,'']]],
-  ['vmaallocatorcreateflagbits_163',['VmaAllocatorCreateFlagBits',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c',1,'VmaAllocatorCreateFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#afd73b95e737ee7e76f827cb5472f559f',1,'VmaAllocatorCreateFlagBits():&#160;vk_mem_alloc.h']]],
-  ['vmaallocatorcreateflags_164',['VmaAllocatorCreateFlags',['../vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d',1,'vk_mem_alloc.h']]],
-  ['vmaallocatorcreateinfo_165',['VmaAllocatorCreateInfo',['../struct_vma_allocator_create_info.html',1,'VmaAllocatorCreateInfo'],['../vk__mem__alloc_8h.html#aad9652301d33759b83e52d4f3605a14a',1,'VmaAllocatorCreateInfo():&#160;vk_mem_alloc.h']]],
-  ['vmaallocatorinfo_166',['VmaAllocatorInfo',['../struct_vma_allocator_info.html',1,'VmaAllocatorInfo'],['../vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c',1,'VmaAllocatorInfo():&#160;vk_mem_alloc.h']]],
-  ['vmabegindefragmentationpass_167',['vmaBeginDefragmentationPass',['../vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b',1,'vk_mem_alloc.h']]],
-  ['vmabindbuffermemory_168',['vmaBindBufferMemory',['../vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470',1,'vk_mem_alloc.h']]],
-  ['vmabindbuffermemory2_169',['vmaBindBufferMemory2',['../vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a',1,'vk_mem_alloc.h']]],
-  ['vmabindimagememory_170',['vmaBindImageMemory',['../vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5',1,'vk_mem_alloc.h']]],
-  ['vmabindimagememory2_171',['vmaBindImageMemory2',['../vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc',1,'vk_mem_alloc.h']]],
-  ['vmabudget_172',['VmaBudget',['../struct_vma_budget.html',1,'VmaBudget'],['../vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d',1,'VmaBudget():&#160;vk_mem_alloc.h']]],
-  ['vmabuildstatsstring_173',['vmaBuildStatsString',['../vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0',1,'vk_mem_alloc.h']]],
-  ['vmacalculatestats_174',['vmaCalculateStats',['../vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3',1,'vk_mem_alloc.h']]],
-  ['vmacheckcorruption_175',['vmaCheckCorruption',['../vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98',1,'vk_mem_alloc.h']]],
-  ['vmacheckpoolcorruption_176',['vmaCheckPoolCorruption',['../vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89',1,'vk_mem_alloc.h']]],
-  ['vmacreateallocator_177',['vmaCreateAllocator',['../vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb',1,'vk_mem_alloc.h']]],
-  ['vmacreatebuffer_178',['vmaCreateBuffer',['../vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51',1,'vk_mem_alloc.h']]],
-  ['vmacreateimage_179',['vmaCreateImage',['../vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73',1,'vk_mem_alloc.h']]],
-  ['vmacreatelostallocation_180',['vmaCreateLostAllocation',['../vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1',1,'vk_mem_alloc.h']]],
-  ['vmacreatepool_181',['vmaCreatePool',['../vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50',1,'vk_mem_alloc.h']]],
-  ['vmadefragment_182',['vmaDefragment',['../vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationbegin_183',['vmaDefragmentationBegin',['../vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationcontext_184',['VmaDefragmentationContext',['../struct_vma_defragmentation_context.html',1,'']]],
-  ['vmadefragmentationend_185',['vmaDefragmentationEnd',['../vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationflagbits_186',['VmaDefragmentationFlagBits',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c',1,'VmaDefragmentationFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a13415cc0b443353a7b5abda300b833fc',1,'VmaDefragmentationFlagBits():&#160;vk_mem_alloc.h']]],
-  ['vmadefragmentationflags_187',['VmaDefragmentationFlags',['../vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationinfo_188',['VmaDefragmentationInfo',['../struct_vma_defragmentation_info.html',1,'VmaDefragmentationInfo'],['../vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa',1,'VmaDefragmentationInfo():&#160;vk_mem_alloc.h']]],
-  ['vmadefragmentationinfo2_189',['VmaDefragmentationInfo2',['../struct_vma_defragmentation_info2.html',1,'VmaDefragmentationInfo2'],['../vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937',1,'VmaDefragmentationInfo2():&#160;vk_mem_alloc.h']]],
-  ['vmadefragmentationpassinfo_190',['VmaDefragmentationPassInfo',['../struct_vma_defragmentation_pass_info.html',1,'VmaDefragmentationPassInfo'],['../vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e',1,'VmaDefragmentationPassInfo():&#160;vk_mem_alloc.h']]],
-  ['vmadefragmentationpassmoveinfo_191',['VmaDefragmentationPassMoveInfo',['../struct_vma_defragmentation_pass_move_info.html',1,'VmaDefragmentationPassMoveInfo'],['../vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5',1,'VmaDefragmentationPassMoveInfo():&#160;vk_mem_alloc.h']]],
-  ['vmadefragmentationstats_192',['VmaDefragmentationStats',['../struct_vma_defragmentation_stats.html',1,'VmaDefragmentationStats'],['../vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403',1,'VmaDefragmentationStats():&#160;vk_mem_alloc.h']]],
-  ['vmadestroyallocator_193',['vmaDestroyAllocator',['../vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d',1,'vk_mem_alloc.h']]],
-  ['vmadestroybuffer_194',['vmaDestroyBuffer',['../vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77',1,'vk_mem_alloc.h']]],
-  ['vmadestroyimage_195',['vmaDestroyImage',['../vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e',1,'vk_mem_alloc.h']]],
-  ['vmadestroypool_196',['vmaDestroyPool',['../vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1',1,'vk_mem_alloc.h']]],
-  ['vmadevicememorycallbacks_197',['VmaDeviceMemoryCallbacks',['../struct_vma_device_memory_callbacks.html',1,'VmaDeviceMemoryCallbacks'],['../vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b',1,'VmaDeviceMemoryCallbacks():&#160;vk_mem_alloc.h']]],
-  ['vmaenddefragmentationpass_198',['vmaEndDefragmentationPass',['../vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd',1,'vk_mem_alloc.h']]],
-  ['vmafindmemorytypeindex_199',['vmaFindMemoryTypeIndex',['../vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a',1,'vk_mem_alloc.h']]],
-  ['vmafindmemorytypeindexforbufferinfo_200',['vmaFindMemoryTypeIndexForBufferInfo',['../vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888',1,'vk_mem_alloc.h']]],
-  ['vmafindmemorytypeindexforimageinfo_201',['vmaFindMemoryTypeIndexForImageInfo',['../vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472',1,'vk_mem_alloc.h']]],
-  ['vmaflushallocation_202',['vmaFlushAllocation',['../vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f',1,'vk_mem_alloc.h']]],
-  ['vmaflushallocations_203',['vmaFlushAllocations',['../vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc',1,'vk_mem_alloc.h']]],
-  ['vmafreememory_204',['vmaFreeMemory',['../vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f',1,'vk_mem_alloc.h']]],
-  ['vmafreememorypages_205',['vmaFreeMemoryPages',['../vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e',1,'vk_mem_alloc.h']]],
-  ['vmafreestatsstring_206',['vmaFreeStatsString',['../vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288',1,'vk_mem_alloc.h']]],
-  ['vmagetallocationinfo_207',['vmaGetAllocationInfo',['../vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b',1,'vk_mem_alloc.h']]],
-  ['vmagetallocatorinfo_208',['vmaGetAllocatorInfo',['../vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7',1,'vk_mem_alloc.h']]],
-  ['vmagetbudget_209',['vmaGetBudget',['../vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba',1,'vk_mem_alloc.h']]],
-  ['vmagetmemoryproperties_210',['vmaGetMemoryProperties',['../vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19',1,'vk_mem_alloc.h']]],
-  ['vmagetmemorytypeproperties_211',['vmaGetMemoryTypeProperties',['../vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca',1,'vk_mem_alloc.h']]],
-  ['vmagetphysicaldeviceproperties_212',['vmaGetPhysicalDeviceProperties',['../vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0',1,'vk_mem_alloc.h']]],
-  ['vmagetpoolname_213',['vmaGetPoolName',['../vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030',1,'vk_mem_alloc.h']]],
-  ['vmagetpoolstats_214',['vmaGetPoolStats',['../vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153',1,'vk_mem_alloc.h']]],
-  ['vmainvalidateallocation_215',['vmaInvalidateAllocation',['../vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae',1,'vk_mem_alloc.h']]],
-  ['vmainvalidateallocations_216',['vmaInvalidateAllocations',['../vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5',1,'vk_mem_alloc.h']]],
-  ['vmamakepoolallocationslost_217',['vmaMakePoolAllocationsLost',['../vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024',1,'vk_mem_alloc.h']]],
-  ['vmamapmemory_218',['vmaMapMemory',['../vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069',1,'vk_mem_alloc.h']]],
-  ['vmamemoryusage_219',['VmaMemoryUsage',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc',1,'VmaMemoryUsage():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a806e8499dde802e59eb72a1dc811c35f',1,'VmaMemoryUsage():&#160;vk_mem_alloc.h']]],
-  ['vmapool_220',['VmaPool',['../struct_vma_pool.html',1,'']]],
-  ['vmapoolcreateflagbits_221',['VmaPoolCreateFlagBits',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7',1,'VmaPoolCreateFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a4d4f2efc2509157a9e4ecd4fd7942303',1,'VmaPoolCreateFlagBits():&#160;vk_mem_alloc.h']]],
-  ['vmapoolcreateflags_222',['VmaPoolCreateFlags',['../vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a',1,'vk_mem_alloc.h']]],
-  ['vmapoolcreateinfo_223',['VmaPoolCreateInfo',['../struct_vma_pool_create_info.html',1,'VmaPoolCreateInfo'],['../vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67',1,'VmaPoolCreateInfo():&#160;vk_mem_alloc.h']]],
-  ['vmapoolstats_224',['VmaPoolStats',['../struct_vma_pool_stats.html',1,'VmaPoolStats'],['../vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1',1,'VmaPoolStats():&#160;vk_mem_alloc.h']]],
-  ['vmarecordflagbits_225',['VmaRecordFlagBits',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2',1,'VmaRecordFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#acd24d5eb58abff7e1f43cb32a1ba1413',1,'VmaRecordFlagBits():&#160;vk_mem_alloc.h']]],
-  ['vmarecordflags_226',['VmaRecordFlags',['../vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828',1,'vk_mem_alloc.h']]],
-  ['vmarecordsettings_227',['VmaRecordSettings',['../struct_vma_record_settings.html',1,'VmaRecordSettings'],['../vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc',1,'VmaRecordSettings():&#160;vk_mem_alloc.h']]],
-  ['vmaresizeallocation_228',['vmaResizeAllocation',['../vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696',1,'vk_mem_alloc.h']]],
-  ['vmasetallocationuserdata_229',['vmaSetAllocationUserData',['../vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f',1,'vk_mem_alloc.h']]],
-  ['vmasetcurrentframeindex_230',['vmaSetCurrentFrameIndex',['../vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236',1,'vk_mem_alloc.h']]],
-  ['vmasetpoolname_231',['vmaSetPoolName',['../vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58',1,'vk_mem_alloc.h']]],
-  ['vmastatinfo_232',['VmaStatInfo',['../struct_vma_stat_info.html',1,'VmaStatInfo'],['../vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878',1,'VmaStatInfo():&#160;vk_mem_alloc.h']]],
-  ['vmastats_233',['VmaStats',['../struct_vma_stats.html',1,'VmaStats'],['../vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034',1,'VmaStats():&#160;vk_mem_alloc.h']]],
-  ['vmatouchallocation_234',['vmaTouchAllocation',['../vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a',1,'vk_mem_alloc.h']]],
-  ['vmaunmapmemory_235',['vmaUnmapMemory',['../vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45',1,'vk_mem_alloc.h']]],
-  ['vmavulkanfunctions_236',['VmaVulkanFunctions',['../struct_vma_vulkan_functions.html',1,'VmaVulkanFunctions'],['../vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074',1,'VmaVulkanFunctions():&#160;vk_mem_alloc.h']]],
-  ['vulkanapiversion_237',['vulkanApiVersion',['../struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285',1,'VmaAllocatorCreateInfo']]]
+  ['vulkan_20memory_20allocator_85',['Vulkan Memory Allocator',['../index.html',1,'']]],
+  ['vk_5famd_5fdevice_5fcoherent_5fmemory_86',['VK_AMD_device_coherent_memory',['../vk_amd_device_coherent_memory.html',1,'index']]],
+  ['vk_5fkhr_5fdedicated_5fallocation_87',['VK_KHR_dedicated_allocation',['../vk_khr_dedicated_allocation.html',1,'index']]],
+  ['vk_5fmem_5falloc_2eh_88',['vk_mem_alloc.h',['../vk__mem__alloc_8h.html',1,'']]],
+  ['vkallocatememory_89',['vkAllocateMemory',['../struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c',1,'VmaVulkanFunctions']]],
+  ['vkbindbuffermemory_90',['vkBindBufferMemory',['../struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2',1,'VmaVulkanFunctions']]],
+  ['vkbindimagememory_91',['vkBindImageMemory',['../struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637',1,'VmaVulkanFunctions']]],
+  ['vkcmdcopybuffer_92',['vkCmdCopyBuffer',['../struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a',1,'VmaVulkanFunctions']]],
+  ['vkcreatebuffer_93',['vkCreateBuffer',['../struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f',1,'VmaVulkanFunctions']]],
+  ['vkcreateimage_94',['vkCreateImage',['../struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325',1,'VmaVulkanFunctions']]],
+  ['vkdestroybuffer_95',['vkDestroyBuffer',['../struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45',1,'VmaVulkanFunctions']]],
+  ['vkdestroyimage_96',['vkDestroyImage',['../struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa',1,'VmaVulkanFunctions']]],
+  ['vkflushmappedmemoryranges_97',['vkFlushMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9',1,'VmaVulkanFunctions']]],
+  ['vkfreememory_98',['vkFreeMemory',['../struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4',1,'VmaVulkanFunctions']]],
+  ['vkgetbuffermemoryrequirements_99',['vkGetBufferMemoryRequirements',['../struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143',1,'VmaVulkanFunctions']]],
+  ['vkgetimagememoryrequirements_100',['vkGetImageMemoryRequirements',['../struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4',1,'VmaVulkanFunctions']]],
+  ['vkgetphysicaldevicememoryproperties_101',['vkGetPhysicalDeviceMemoryProperties',['../struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830',1,'VmaVulkanFunctions']]],
+  ['vkgetphysicaldeviceproperties_102',['vkGetPhysicalDeviceProperties',['../struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96',1,'VmaVulkanFunctions']]],
+  ['vkinvalidatemappedmemoryranges_103',['vkInvalidateMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1',1,'VmaVulkanFunctions']]],
+  ['vkmapmemory_104',['vkMapMemory',['../struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49',1,'VmaVulkanFunctions']]],
+  ['vkunmapmemory_105',['vkUnmapMemory',['../struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9',1,'VmaVulkanFunctions']]],
+  ['vma_5fallocation_5fcreate_5fcan_5fbecome_5flost_5fbit_106',['VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fcan_5fmake_5fother_5flost_5fbit_107',['VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fdedicated_5fmemory_5fbit_108',['VMA_ALLOCATION_CREATE_DEDICATED_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fdont_5fbind_5fbit_109',['VMA_ALLOCATION_CREATE_DONT_BIND_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fflag_5fbits_5fmax_5fenum_110',['VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fmapped_5fbit_111',['VMA_ALLOCATION_CREATE_MAPPED_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fnever_5fallocate_5fbit_112',['VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fbest_5ffit_5fbit_113',['VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5ffirst_5ffit_5fbit_114',['VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmask_115',['VMA_ALLOCATION_CREATE_STRATEGY_MASK',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ffragmentation_5fbit_116',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_FRAGMENTATION_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5fmemory_5fbit_117',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ftime_5fbit_118',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_TIME_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fworst_5ffit_5fbit_119',['VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fupper_5faddress_5fbit_120',['VMA_ALLOCATION_CREATE_UPPER_ADDRESS_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fuser_5fdata_5fcopy_5fstring_5fbit_121',['VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fwithin_5fbudget_5fbit_122',['VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5famd_5fdevice_5fcoherent_5fmemory_5fbit_123',['VMA_ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fbuffer_5fdevice_5faddress_5fbit_124',['VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fext_5fmemory_5fbudget_5fbit_125',['VMA_ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fexternally_5fsynchronized_5fbit_126',['VMA_ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fflag_5fbits_5fmax_5fenum_127',['VMA_ALLOCATOR_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cae4d5ad929caba5f23eb502b13bd5286c',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fkhr_5fbind_5fmemory2_5fbit_128',['VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fkhr_5fdedicated_5fallocation_5fbit_129',['VMA_ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878',1,'vk_mem_alloc.h']]],
+  ['vma_5fbind_5fmemory2_130',['VMA_BIND_MEMORY2',['../vk__mem__alloc_8h.html#a88bef97f86d70a34a4c0746e09a2680d',1,'vk_mem_alloc.h']]],
+  ['vma_5fbuffer_5fdevice_5faddress_131',['VMA_BUFFER_DEVICE_ADDRESS',['../vk__mem__alloc_8h.html#a7f9d5e71b70dd1a137c303a8a8262c10',1,'vk_mem_alloc.h']]],
+  ['vma_5fdedicated_5fallocation_132',['VMA_DEDICATED_ALLOCATION',['../vk__mem__alloc_8h.html#af7b860e63b96d11e44ae8587ba06bbf4',1,'vk_mem_alloc.h']]],
+  ['vma_5fdefragmentation_5fflag_5fbits_5fmax_5fenum_133',['VMA_DEFRAGMENTATION_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50cab87ec33154803bfeb5ac2b379f1d6a97',1,'vk_mem_alloc.h']]],
+  ['vma_5fdefragmentation_5fflag_5fincremental_134',['VMA_DEFRAGMENTATION_FLAG_INCREMENTAL',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fbudget_135',['VMA_MEMORY_BUDGET',['../vk__mem__alloc_8h.html#a05decf1cf4ebf767beba7acca6c1ec3a',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fcpu_5fcopy_136',['VMA_MEMORY_USAGE_CPU_COPY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fcpu_5fonly_137',['VMA_MEMORY_USAGE_CPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fcpu_5fto_5fgpu_138',['VMA_MEMORY_USAGE_CPU_TO_GPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fgpu_5flazily_5fallocated_139',['VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fgpu_5fonly_140',['VMA_MEMORY_USAGE_GPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fgpu_5fto_5fcpu_141',['VMA_MEMORY_USAGE_GPU_TO_CPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fmax_5fenum_142',['VMA_MEMORY_USAGE_MAX_ENUM',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5funknown_143',['VMA_MEMORY_USAGE_UNKNOWN',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5falgorithm_5fmask_144',['VMA_POOL_CREATE_ALGORITHM_MASK',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5fbuddy_5falgorithm_5fbit_145',['VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5fflag_5fbits_5fmax_5fenum_146',['VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5fignore_5fbuffer_5fimage_5fgranularity_5fbit_147',['VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5flinear_5falgorithm_5fbit_148',['VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726',1,'vk_mem_alloc.h']]],
+  ['vma_5frecord_5fflag_5fbits_5fmax_5fenum_149',['VMA_RECORD_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a20dd17d69966dbffa054739d6090b85e',1,'vk_mem_alloc.h']]],
+  ['vma_5frecord_5fflush_5fafter_5fcall_5fbit_150',['VMA_RECORD_FLUSH_AFTER_CALL_BIT',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7',1,'vk_mem_alloc.h']]],
+  ['vma_5frecording_5fenabled_151',['VMA_RECORDING_ENABLED',['../vk__mem__alloc_8h.html#a1f0c126759fc96ccb6e2d23c101d770c',1,'vk_mem_alloc.h']]],
+  ['vma_5fstats_5fstring_5fenabled_152',['VMA_STATS_STRING_ENABLED',['../vk__mem__alloc_8h.html#ae25f0d55fd91cb166f002b63244800e1',1,'vk_mem_alloc.h']]],
+  ['vma_5fvulkan_5fversion_153',['VMA_VULKAN_VERSION',['../vk__mem__alloc_8h.html#a1a2407c283893638cc039bb31fcd74b6',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememory_154',['vmaAllocateMemory',['../vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememoryforbuffer_155',['vmaAllocateMemoryForBuffer',['../vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememoryforimage_156',['vmaAllocateMemoryForImage',['../vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememorypages_157',['vmaAllocateMemoryPages',['../vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1',1,'vk_mem_alloc.h']]],
+  ['vmaallocation_158',['VmaAllocation',['../struct_vma_allocation.html',1,'']]],
+  ['vmaallocationcreateflagbits_159',['VmaAllocationCreateFlagBits',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597',1,'VmaAllocationCreateFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a4fceecc301f4064dc808d3cd6c038941',1,'VmaAllocationCreateFlagBits():&#160;vk_mem_alloc.h']]],
+  ['vmaallocationcreateflags_160',['VmaAllocationCreateFlags',['../vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817',1,'vk_mem_alloc.h']]],
+  ['vmaallocationcreateinfo_161',['VmaAllocationCreateInfo',['../struct_vma_allocation_create_info.html',1,'VmaAllocationCreateInfo'],['../vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a',1,'VmaAllocationCreateInfo():&#160;vk_mem_alloc.h']]],
+  ['vmaallocationinfo_162',['VmaAllocationInfo',['../struct_vma_allocation_info.html',1,'VmaAllocationInfo'],['../vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50',1,'VmaAllocationInfo():&#160;vk_mem_alloc.h']]],
+  ['vmaallocator_163',['VmaAllocator',['../struct_vma_allocator.html',1,'']]],
+  ['vmaallocatorcreateflagbits_164',['VmaAllocatorCreateFlagBits',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c',1,'VmaAllocatorCreateFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#afd73b95e737ee7e76f827cb5472f559f',1,'VmaAllocatorCreateFlagBits():&#160;vk_mem_alloc.h']]],
+  ['vmaallocatorcreateflags_165',['VmaAllocatorCreateFlags',['../vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d',1,'vk_mem_alloc.h']]],
+  ['vmaallocatorcreateinfo_166',['VmaAllocatorCreateInfo',['../struct_vma_allocator_create_info.html',1,'VmaAllocatorCreateInfo'],['../vk__mem__alloc_8h.html#aad9652301d33759b83e52d4f3605a14a',1,'VmaAllocatorCreateInfo():&#160;vk_mem_alloc.h']]],
+  ['vmaallocatorinfo_167',['VmaAllocatorInfo',['../struct_vma_allocator_info.html',1,'VmaAllocatorInfo'],['../vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c',1,'VmaAllocatorInfo():&#160;vk_mem_alloc.h']]],
+  ['vmabegindefragmentationpass_168',['vmaBeginDefragmentationPass',['../vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b',1,'vk_mem_alloc.h']]],
+  ['vmabindbuffermemory_169',['vmaBindBufferMemory',['../vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470',1,'vk_mem_alloc.h']]],
+  ['vmabindbuffermemory2_170',['vmaBindBufferMemory2',['../vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a',1,'vk_mem_alloc.h']]],
+  ['vmabindimagememory_171',['vmaBindImageMemory',['../vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5',1,'vk_mem_alloc.h']]],
+  ['vmabindimagememory2_172',['vmaBindImageMemory2',['../vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc',1,'vk_mem_alloc.h']]],
+  ['vmabudget_173',['VmaBudget',['../struct_vma_budget.html',1,'VmaBudget'],['../vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d',1,'VmaBudget():&#160;vk_mem_alloc.h']]],
+  ['vmabuildstatsstring_174',['vmaBuildStatsString',['../vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0',1,'vk_mem_alloc.h']]],
+  ['vmacalculatestats_175',['vmaCalculateStats',['../vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3',1,'vk_mem_alloc.h']]],
+  ['vmacheckcorruption_176',['vmaCheckCorruption',['../vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98',1,'vk_mem_alloc.h']]],
+  ['vmacheckpoolcorruption_177',['vmaCheckPoolCorruption',['../vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89',1,'vk_mem_alloc.h']]],
+  ['vmacreateallocator_178',['vmaCreateAllocator',['../vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb',1,'vk_mem_alloc.h']]],
+  ['vmacreatebuffer_179',['vmaCreateBuffer',['../vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51',1,'vk_mem_alloc.h']]],
+  ['vmacreateimage_180',['vmaCreateImage',['../vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73',1,'vk_mem_alloc.h']]],
+  ['vmacreatelostallocation_181',['vmaCreateLostAllocation',['../vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1',1,'vk_mem_alloc.h']]],
+  ['vmacreatepool_182',['vmaCreatePool',['../vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50',1,'vk_mem_alloc.h']]],
+  ['vmadefragment_183',['vmaDefragment',['../vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationbegin_184',['vmaDefragmentationBegin',['../vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationcontext_185',['VmaDefragmentationContext',['../struct_vma_defragmentation_context.html',1,'']]],
+  ['vmadefragmentationend_186',['vmaDefragmentationEnd',['../vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationflagbits_187',['VmaDefragmentationFlagBits',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c',1,'VmaDefragmentationFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a13415cc0b443353a7b5abda300b833fc',1,'VmaDefragmentationFlagBits():&#160;vk_mem_alloc.h']]],
+  ['vmadefragmentationflags_188',['VmaDefragmentationFlags',['../vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationinfo_189',['VmaDefragmentationInfo',['../struct_vma_defragmentation_info.html',1,'VmaDefragmentationInfo'],['../vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa',1,'VmaDefragmentationInfo():&#160;vk_mem_alloc.h']]],
+  ['vmadefragmentationinfo2_190',['VmaDefragmentationInfo2',['../struct_vma_defragmentation_info2.html',1,'VmaDefragmentationInfo2'],['../vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937',1,'VmaDefragmentationInfo2():&#160;vk_mem_alloc.h']]],
+  ['vmadefragmentationpassinfo_191',['VmaDefragmentationPassInfo',['../struct_vma_defragmentation_pass_info.html',1,'VmaDefragmentationPassInfo'],['../vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e',1,'VmaDefragmentationPassInfo():&#160;vk_mem_alloc.h']]],
+  ['vmadefragmentationpassmoveinfo_192',['VmaDefragmentationPassMoveInfo',['../struct_vma_defragmentation_pass_move_info.html',1,'VmaDefragmentationPassMoveInfo'],['../vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5',1,'VmaDefragmentationPassMoveInfo():&#160;vk_mem_alloc.h']]],
+  ['vmadefragmentationstats_193',['VmaDefragmentationStats',['../struct_vma_defragmentation_stats.html',1,'VmaDefragmentationStats'],['../vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403',1,'VmaDefragmentationStats():&#160;vk_mem_alloc.h']]],
+  ['vmadestroyallocator_194',['vmaDestroyAllocator',['../vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d',1,'vk_mem_alloc.h']]],
+  ['vmadestroybuffer_195',['vmaDestroyBuffer',['../vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77',1,'vk_mem_alloc.h']]],
+  ['vmadestroyimage_196',['vmaDestroyImage',['../vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e',1,'vk_mem_alloc.h']]],
+  ['vmadestroypool_197',['vmaDestroyPool',['../vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1',1,'vk_mem_alloc.h']]],
+  ['vmadevicememorycallbacks_198',['VmaDeviceMemoryCallbacks',['../struct_vma_device_memory_callbacks.html',1,'VmaDeviceMemoryCallbacks'],['../vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b',1,'VmaDeviceMemoryCallbacks():&#160;vk_mem_alloc.h']]],
+  ['vmaenddefragmentationpass_199',['vmaEndDefragmentationPass',['../vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd',1,'vk_mem_alloc.h']]],
+  ['vmafindmemorytypeindex_200',['vmaFindMemoryTypeIndex',['../vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a',1,'vk_mem_alloc.h']]],
+  ['vmafindmemorytypeindexforbufferinfo_201',['vmaFindMemoryTypeIndexForBufferInfo',['../vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888',1,'vk_mem_alloc.h']]],
+  ['vmafindmemorytypeindexforimageinfo_202',['vmaFindMemoryTypeIndexForImageInfo',['../vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472',1,'vk_mem_alloc.h']]],
+  ['vmaflushallocation_203',['vmaFlushAllocation',['../vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f',1,'vk_mem_alloc.h']]],
+  ['vmaflushallocations_204',['vmaFlushAllocations',['../vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc',1,'vk_mem_alloc.h']]],
+  ['vmafreememory_205',['vmaFreeMemory',['../vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f',1,'vk_mem_alloc.h']]],
+  ['vmafreememorypages_206',['vmaFreeMemoryPages',['../vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e',1,'vk_mem_alloc.h']]],
+  ['vmafreestatsstring_207',['vmaFreeStatsString',['../vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288',1,'vk_mem_alloc.h']]],
+  ['vmagetallocationinfo_208',['vmaGetAllocationInfo',['../vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b',1,'vk_mem_alloc.h']]],
+  ['vmagetallocatorinfo_209',['vmaGetAllocatorInfo',['../vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7',1,'vk_mem_alloc.h']]],
+  ['vmagetbudget_210',['vmaGetBudget',['../vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba',1,'vk_mem_alloc.h']]],
+  ['vmagetmemoryproperties_211',['vmaGetMemoryProperties',['../vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19',1,'vk_mem_alloc.h']]],
+  ['vmagetmemorytypeproperties_212',['vmaGetMemoryTypeProperties',['../vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca',1,'vk_mem_alloc.h']]],
+  ['vmagetphysicaldeviceproperties_213',['vmaGetPhysicalDeviceProperties',['../vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0',1,'vk_mem_alloc.h']]],
+  ['vmagetpoolname_214',['vmaGetPoolName',['../vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030',1,'vk_mem_alloc.h']]],
+  ['vmagetpoolstats_215',['vmaGetPoolStats',['../vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153',1,'vk_mem_alloc.h']]],
+  ['vmainvalidateallocation_216',['vmaInvalidateAllocation',['../vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae',1,'vk_mem_alloc.h']]],
+  ['vmainvalidateallocations_217',['vmaInvalidateAllocations',['../vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5',1,'vk_mem_alloc.h']]],
+  ['vmamakepoolallocationslost_218',['vmaMakePoolAllocationsLost',['../vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024',1,'vk_mem_alloc.h']]],
+  ['vmamapmemory_219',['vmaMapMemory',['../vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069',1,'vk_mem_alloc.h']]],
+  ['vmamemoryusage_220',['VmaMemoryUsage',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc',1,'VmaMemoryUsage():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a806e8499dde802e59eb72a1dc811c35f',1,'VmaMemoryUsage():&#160;vk_mem_alloc.h']]],
+  ['vmapool_221',['VmaPool',['../struct_vma_pool.html',1,'']]],
+  ['vmapoolcreateflagbits_222',['VmaPoolCreateFlagBits',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7',1,'VmaPoolCreateFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#a4d4f2efc2509157a9e4ecd4fd7942303',1,'VmaPoolCreateFlagBits():&#160;vk_mem_alloc.h']]],
+  ['vmapoolcreateflags_223',['VmaPoolCreateFlags',['../vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a',1,'vk_mem_alloc.h']]],
+  ['vmapoolcreateinfo_224',['VmaPoolCreateInfo',['../struct_vma_pool_create_info.html',1,'VmaPoolCreateInfo'],['../vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67',1,'VmaPoolCreateInfo():&#160;vk_mem_alloc.h']]],
+  ['vmapoolstats_225',['VmaPoolStats',['../struct_vma_pool_stats.html',1,'VmaPoolStats'],['../vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1',1,'VmaPoolStats():&#160;vk_mem_alloc.h']]],
+  ['vmarecordflagbits_226',['VmaRecordFlagBits',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2',1,'VmaRecordFlagBits():&#160;vk_mem_alloc.h'],['../vk__mem__alloc_8h.html#acd24d5eb58abff7e1f43cb32a1ba1413',1,'VmaRecordFlagBits():&#160;vk_mem_alloc.h']]],
+  ['vmarecordflags_227',['VmaRecordFlags',['../vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828',1,'vk_mem_alloc.h']]],
+  ['vmarecordsettings_228',['VmaRecordSettings',['../struct_vma_record_settings.html',1,'VmaRecordSettings'],['../vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc',1,'VmaRecordSettings():&#160;vk_mem_alloc.h']]],
+  ['vmaresizeallocation_229',['vmaResizeAllocation',['../vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696',1,'vk_mem_alloc.h']]],
+  ['vmasetallocationuserdata_230',['vmaSetAllocationUserData',['../vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f',1,'vk_mem_alloc.h']]],
+  ['vmasetcurrentframeindex_231',['vmaSetCurrentFrameIndex',['../vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236',1,'vk_mem_alloc.h']]],
+  ['vmasetpoolname_232',['vmaSetPoolName',['../vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58',1,'vk_mem_alloc.h']]],
+  ['vmastatinfo_233',['VmaStatInfo',['../struct_vma_stat_info.html',1,'VmaStatInfo'],['../vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878',1,'VmaStatInfo():&#160;vk_mem_alloc.h']]],
+  ['vmastats_234',['VmaStats',['../struct_vma_stats.html',1,'VmaStats'],['../vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034',1,'VmaStats():&#160;vk_mem_alloc.h']]],
+  ['vmatouchallocation_235',['vmaTouchAllocation',['../vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a',1,'vk_mem_alloc.h']]],
+  ['vmaunmapmemory_236',['vmaUnmapMemory',['../vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45',1,'vk_mem_alloc.h']]],
+  ['vmavulkanfunctions_237',['VmaVulkanFunctions',['../struct_vma_vulkan_functions.html',1,'VmaVulkanFunctions'],['../vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074',1,'VmaVulkanFunctions():&#160;vk_mem_alloc.h']]],
+  ['vulkanapiversion_238',['vulkanApiVersion',['../struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285',1,'VmaAllocatorCreateInfo']]]
 ];
diff --git a/docs/html/search/all_e.js b/docs/html/search/all_e.js
index 09d81d2..408aa9e 100644
--- a/docs/html/search/all_e.js
+++ b/docs/html/search/all_e.js
@@ -2,5 +2,6 @@
 [
   ['record_20and_20replay_69',['Record and replay',['../record_and_replay.html',1,'index']]],
   ['requiredflags_70',['requiredFlags',['../struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90',1,'VmaAllocationCreateInfo']]],
-  ['recommended_20usage_20patterns_71',['Recommended usage patterns',['../usage_patterns.html',1,'index']]]
+  ['resource_20aliasing_20_28overlap_29_71',['Resource aliasing (overlap)',['../resource_aliasing.html',1,'index']]],
+  ['recommended_20usage_20patterns_72',['Recommended usage patterns',['../usage_patterns.html',1,'index']]]
 ];
diff --git a/docs/html/search/all_f.js b/docs/html/search/all_f.js
index 20d416e..03fa2d8 100644
--- a/docs/html/search/all_f.js
+++ b/docs/html/search/all_f.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['size_72',['size',['../struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c',1,'VmaPoolStats::size()'],['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo::size()']]],
-  ['statistics_73',['Statistics',['../statistics.html',1,'index']]],
-  ['staying_20within_20budget_74',['Staying within budget',['../staying_within_budget.html',1,'index']]]
+  ['size_73',['size',['../struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c',1,'VmaPoolStats::size()'],['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo::size()']]],
+  ['statistics_74',['Statistics',['../statistics.html',1,'index']]],
+  ['staying_20within_20budget_75',['Staying within budget',['../staying_within_budget.html',1,'index']]]
 ];
diff --git a/docs/html/search/classes_0.js b/docs/html/search/classes_0.js
index 71d8cb1..56ea60f 100644
--- a/docs/html/search/classes_0.js
+++ b/docs/html/search/classes_0.js
@@ -1,24 +1,24 @@
 var searchData=
 [
-  ['vmaallocation_238',['VmaAllocation',['../struct_vma_allocation.html',1,'']]],
-  ['vmaallocationcreateinfo_239',['VmaAllocationCreateInfo',['../struct_vma_allocation_create_info.html',1,'']]],
-  ['vmaallocationinfo_240',['VmaAllocationInfo',['../struct_vma_allocation_info.html',1,'']]],
-  ['vmaallocator_241',['VmaAllocator',['../struct_vma_allocator.html',1,'']]],
-  ['vmaallocatorcreateinfo_242',['VmaAllocatorCreateInfo',['../struct_vma_allocator_create_info.html',1,'']]],
-  ['vmaallocatorinfo_243',['VmaAllocatorInfo',['../struct_vma_allocator_info.html',1,'']]],
-  ['vmabudget_244',['VmaBudget',['../struct_vma_budget.html',1,'']]],
-  ['vmadefragmentationcontext_245',['VmaDefragmentationContext',['../struct_vma_defragmentation_context.html',1,'']]],
-  ['vmadefragmentationinfo_246',['VmaDefragmentationInfo',['../struct_vma_defragmentation_info.html',1,'']]],
-  ['vmadefragmentationinfo2_247',['VmaDefragmentationInfo2',['../struct_vma_defragmentation_info2.html',1,'']]],
-  ['vmadefragmentationpassinfo_248',['VmaDefragmentationPassInfo',['../struct_vma_defragmentation_pass_info.html',1,'']]],
-  ['vmadefragmentationpassmoveinfo_249',['VmaDefragmentationPassMoveInfo',['../struct_vma_defragmentation_pass_move_info.html',1,'']]],
-  ['vmadefragmentationstats_250',['VmaDefragmentationStats',['../struct_vma_defragmentation_stats.html',1,'']]],
-  ['vmadevicememorycallbacks_251',['VmaDeviceMemoryCallbacks',['../struct_vma_device_memory_callbacks.html',1,'']]],
-  ['vmapool_252',['VmaPool',['../struct_vma_pool.html',1,'']]],
-  ['vmapoolcreateinfo_253',['VmaPoolCreateInfo',['../struct_vma_pool_create_info.html',1,'']]],
-  ['vmapoolstats_254',['VmaPoolStats',['../struct_vma_pool_stats.html',1,'']]],
-  ['vmarecordsettings_255',['VmaRecordSettings',['../struct_vma_record_settings.html',1,'']]],
-  ['vmastatinfo_256',['VmaStatInfo',['../struct_vma_stat_info.html',1,'']]],
-  ['vmastats_257',['VmaStats',['../struct_vma_stats.html',1,'']]],
-  ['vmavulkanfunctions_258',['VmaVulkanFunctions',['../struct_vma_vulkan_functions.html',1,'']]]
+  ['vmaallocation_239',['VmaAllocation',['../struct_vma_allocation.html',1,'']]],
+  ['vmaallocationcreateinfo_240',['VmaAllocationCreateInfo',['../struct_vma_allocation_create_info.html',1,'']]],
+  ['vmaallocationinfo_241',['VmaAllocationInfo',['../struct_vma_allocation_info.html',1,'']]],
+  ['vmaallocator_242',['VmaAllocator',['../struct_vma_allocator.html',1,'']]],
+  ['vmaallocatorcreateinfo_243',['VmaAllocatorCreateInfo',['../struct_vma_allocator_create_info.html',1,'']]],
+  ['vmaallocatorinfo_244',['VmaAllocatorInfo',['../struct_vma_allocator_info.html',1,'']]],
+  ['vmabudget_245',['VmaBudget',['../struct_vma_budget.html',1,'']]],
+  ['vmadefragmentationcontext_246',['VmaDefragmentationContext',['../struct_vma_defragmentation_context.html',1,'']]],
+  ['vmadefragmentationinfo_247',['VmaDefragmentationInfo',['../struct_vma_defragmentation_info.html',1,'']]],
+  ['vmadefragmentationinfo2_248',['VmaDefragmentationInfo2',['../struct_vma_defragmentation_info2.html',1,'']]],
+  ['vmadefragmentationpassinfo_249',['VmaDefragmentationPassInfo',['../struct_vma_defragmentation_pass_info.html',1,'']]],
+  ['vmadefragmentationpassmoveinfo_250',['VmaDefragmentationPassMoveInfo',['../struct_vma_defragmentation_pass_move_info.html',1,'']]],
+  ['vmadefragmentationstats_251',['VmaDefragmentationStats',['../struct_vma_defragmentation_stats.html',1,'']]],
+  ['vmadevicememorycallbacks_252',['VmaDeviceMemoryCallbacks',['../struct_vma_device_memory_callbacks.html',1,'']]],
+  ['vmapool_253',['VmaPool',['../struct_vma_pool.html',1,'']]],
+  ['vmapoolcreateinfo_254',['VmaPoolCreateInfo',['../struct_vma_pool_create_info.html',1,'']]],
+  ['vmapoolstats_255',['VmaPoolStats',['../struct_vma_pool_stats.html',1,'']]],
+  ['vmarecordsettings_256',['VmaRecordSettings',['../struct_vma_record_settings.html',1,'']]],
+  ['vmastatinfo_257',['VmaStatInfo',['../struct_vma_stat_info.html',1,'']]],
+  ['vmastats_258',['VmaStats',['../struct_vma_stats.html',1,'']]],
+  ['vmavulkanfunctions_259',['VmaVulkanFunctions',['../struct_vma_vulkan_functions.html',1,'']]]
 ];
diff --git a/docs/html/search/defines_0.js b/docs/html/search/defines_0.js
index 615c3c4..7bd3fc3 100644
--- a/docs/html/search/defines_0.js
+++ b/docs/html/search/defines_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['nominmax_472',['NOMINMAX',['../vk__mem__alloc_8h.html#a9f918755b601cf4bffca775992e6fb90',1,'vk_mem_alloc.h']]]
+  ['nominmax_473',['NOMINMAX',['../vk__mem__alloc_8h.html#a9f918755b601cf4bffca775992e6fb90',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/defines_1.js b/docs/html/search/defines_1.js
index 997e6ba..bc30cca 100644
--- a/docs/html/search/defines_1.js
+++ b/docs/html/search/defines_1.js
@@ -1,10 +1,10 @@
 var searchData=
 [
-  ['vma_5fbind_5fmemory2_473',['VMA_BIND_MEMORY2',['../vk__mem__alloc_8h.html#a88bef97f86d70a34a4c0746e09a2680d',1,'vk_mem_alloc.h']]],
-  ['vma_5fbuffer_5fdevice_5faddress_474',['VMA_BUFFER_DEVICE_ADDRESS',['../vk__mem__alloc_8h.html#a7f9d5e71b70dd1a137c303a8a8262c10',1,'vk_mem_alloc.h']]],
-  ['vma_5fdedicated_5fallocation_475',['VMA_DEDICATED_ALLOCATION',['../vk__mem__alloc_8h.html#af7b860e63b96d11e44ae8587ba06bbf4',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fbudget_476',['VMA_MEMORY_BUDGET',['../vk__mem__alloc_8h.html#a05decf1cf4ebf767beba7acca6c1ec3a',1,'vk_mem_alloc.h']]],
-  ['vma_5frecording_5fenabled_477',['VMA_RECORDING_ENABLED',['../vk__mem__alloc_8h.html#a1f0c126759fc96ccb6e2d23c101d770c',1,'vk_mem_alloc.h']]],
-  ['vma_5fstats_5fstring_5fenabled_478',['VMA_STATS_STRING_ENABLED',['../vk__mem__alloc_8h.html#ae25f0d55fd91cb166f002b63244800e1',1,'vk_mem_alloc.h']]],
-  ['vma_5fvulkan_5fversion_479',['VMA_VULKAN_VERSION',['../vk__mem__alloc_8h.html#a1a2407c283893638cc039bb31fcd74b6',1,'vk_mem_alloc.h']]]
+  ['vma_5fbind_5fmemory2_474',['VMA_BIND_MEMORY2',['../vk__mem__alloc_8h.html#a88bef97f86d70a34a4c0746e09a2680d',1,'vk_mem_alloc.h']]],
+  ['vma_5fbuffer_5fdevice_5faddress_475',['VMA_BUFFER_DEVICE_ADDRESS',['../vk__mem__alloc_8h.html#a7f9d5e71b70dd1a137c303a8a8262c10',1,'vk_mem_alloc.h']]],
+  ['vma_5fdedicated_5fallocation_476',['VMA_DEDICATED_ALLOCATION',['../vk__mem__alloc_8h.html#af7b860e63b96d11e44ae8587ba06bbf4',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fbudget_477',['VMA_MEMORY_BUDGET',['../vk__mem__alloc_8h.html#a05decf1cf4ebf767beba7acca6c1ec3a',1,'vk_mem_alloc.h']]],
+  ['vma_5frecording_5fenabled_478',['VMA_RECORDING_ENABLED',['../vk__mem__alloc_8h.html#a1f0c126759fc96ccb6e2d23c101d770c',1,'vk_mem_alloc.h']]],
+  ['vma_5fstats_5fstring_5fenabled_479',['VMA_STATS_STRING_ENABLED',['../vk__mem__alloc_8h.html#ae25f0d55fd91cb166f002b63244800e1',1,'vk_mem_alloc.h']]],
+  ['vma_5fvulkan_5fversion_480',['VMA_VULKAN_VERSION',['../vk__mem__alloc_8h.html#a1a2407c283893638cc039bb31fcd74b6',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/enums_0.js b/docs/html/search/enums_0.js
index a65c89d..9e222f1 100644
--- a/docs/html/search/enums_0.js
+++ b/docs/html/search/enums_0.js
@@ -1,9 +1,9 @@
 var searchData=
 [
-  ['vmaallocationcreateflagbits_425',['VmaAllocationCreateFlagBits',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597',1,'vk_mem_alloc.h']]],
-  ['vmaallocatorcreateflagbits_426',['VmaAllocatorCreateFlagBits',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationflagbits_427',['VmaDefragmentationFlagBits',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c',1,'vk_mem_alloc.h']]],
-  ['vmamemoryusage_428',['VmaMemoryUsage',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc',1,'vk_mem_alloc.h']]],
-  ['vmapoolcreateflagbits_429',['VmaPoolCreateFlagBits',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7',1,'vk_mem_alloc.h']]],
-  ['vmarecordflagbits_430',['VmaRecordFlagBits',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2',1,'vk_mem_alloc.h']]]
+  ['vmaallocationcreateflagbits_426',['VmaAllocationCreateFlagBits',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597',1,'vk_mem_alloc.h']]],
+  ['vmaallocatorcreateflagbits_427',['VmaAllocatorCreateFlagBits',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationflagbits_428',['VmaDefragmentationFlagBits',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c',1,'vk_mem_alloc.h']]],
+  ['vmamemoryusage_429',['VmaMemoryUsage',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc',1,'vk_mem_alloc.h']]],
+  ['vmapoolcreateflagbits_430',['VmaPoolCreateFlagBits',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7',1,'vk_mem_alloc.h']]],
+  ['vmarecordflagbits_431',['VmaRecordFlagBits',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/enumvalues_0.js b/docs/html/search/enumvalues_0.js
index 82bd66b..c782937 100644
--- a/docs/html/search/enumvalues_0.js
+++ b/docs/html/search/enumvalues_0.js
@@ -1,44 +1,44 @@
 var searchData=
 [
-  ['vma_5fallocation_5fcreate_5fcan_5fbecome_5flost_5fbit_431',['VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fcan_5fmake_5fother_5flost_5fbit_432',['VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fdedicated_5fmemory_5fbit_433',['VMA_ALLOCATION_CREATE_DEDICATED_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fdont_5fbind_5fbit_434',['VMA_ALLOCATION_CREATE_DONT_BIND_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fflag_5fbits_5fmax_5fenum_435',['VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fmapped_5fbit_436',['VMA_ALLOCATION_CREATE_MAPPED_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fnever_5fallocate_5fbit_437',['VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fbest_5ffit_5fbit_438',['VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5ffirst_5ffit_5fbit_439',['VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmask_440',['VMA_ALLOCATION_CREATE_STRATEGY_MASK',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ffragmentation_5fbit_441',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_FRAGMENTATION_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5fmemory_5fbit_442',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ftime_5fbit_443',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_TIME_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fstrategy_5fworst_5ffit_5fbit_444',['VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fupper_5faddress_5fbit_445',['VMA_ALLOCATION_CREATE_UPPER_ADDRESS_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fuser_5fdata_5fcopy_5fstring_5fbit_446',['VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocation_5fcreate_5fwithin_5fbudget_5fbit_447',['VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5famd_5fdevice_5fcoherent_5fmemory_5fbit_448',['VMA_ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fbuffer_5fdevice_5faddress_5fbit_449',['VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fext_5fmemory_5fbudget_5fbit_450',['VMA_ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fexternally_5fsynchronized_5fbit_451',['VMA_ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fflag_5fbits_5fmax_5fenum_452',['VMA_ALLOCATOR_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cae4d5ad929caba5f23eb502b13bd5286c',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fkhr_5fbind_5fmemory2_5fbit_453',['VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee',1,'vk_mem_alloc.h']]],
-  ['vma_5fallocator_5fcreate_5fkhr_5fdedicated_5fallocation_5fbit_454',['VMA_ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878',1,'vk_mem_alloc.h']]],
-  ['vma_5fdefragmentation_5fflag_5fbits_5fmax_5fenum_455',['VMA_DEFRAGMENTATION_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50cab87ec33154803bfeb5ac2b379f1d6a97',1,'vk_mem_alloc.h']]],
-  ['vma_5fdefragmentation_5fflag_5fincremental_456',['VMA_DEFRAGMENTATION_FLAG_INCREMENTAL',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fcpu_5fcopy_457',['VMA_MEMORY_USAGE_CPU_COPY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fcpu_5fonly_458',['VMA_MEMORY_USAGE_CPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fcpu_5fto_5fgpu_459',['VMA_MEMORY_USAGE_CPU_TO_GPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fgpu_5flazily_5fallocated_460',['VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fgpu_5fonly_461',['VMA_MEMORY_USAGE_GPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fgpu_5fto_5fcpu_462',['VMA_MEMORY_USAGE_GPU_TO_CPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5fmax_5fenum_463',['VMA_MEMORY_USAGE_MAX_ENUM',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e',1,'vk_mem_alloc.h']]],
-  ['vma_5fmemory_5fusage_5funknown_464',['VMA_MEMORY_USAGE_UNKNOWN',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5falgorithm_5fmask_465',['VMA_POOL_CREATE_ALGORITHM_MASK',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5fbuddy_5falgorithm_5fbit_466',['VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5fflag_5fbits_5fmax_5fenum_467',['VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5fignore_5fbuffer_5fimage_5fgranularity_5fbit_468',['VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2',1,'vk_mem_alloc.h']]],
-  ['vma_5fpool_5fcreate_5flinear_5falgorithm_5fbit_469',['VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726',1,'vk_mem_alloc.h']]],
-  ['vma_5frecord_5fflag_5fbits_5fmax_5fenum_470',['VMA_RECORD_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a20dd17d69966dbffa054739d6090b85e',1,'vk_mem_alloc.h']]],
-  ['vma_5frecord_5fflush_5fafter_5fcall_5fbit_471',['VMA_RECORD_FLUSH_AFTER_CALL_BIT',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7',1,'vk_mem_alloc.h']]]
+  ['vma_5fallocation_5fcreate_5fcan_5fbecome_5flost_5fbit_432',['VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fcan_5fmake_5fother_5flost_5fbit_433',['VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fdedicated_5fmemory_5fbit_434',['VMA_ALLOCATION_CREATE_DEDICATED_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fdont_5fbind_5fbit_435',['VMA_ALLOCATION_CREATE_DONT_BIND_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fflag_5fbits_5fmax_5fenum_436',['VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fmapped_5fbit_437',['VMA_ALLOCATION_CREATE_MAPPED_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fnever_5fallocate_5fbit_438',['VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fbest_5ffit_5fbit_439',['VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5ffirst_5ffit_5fbit_440',['VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmask_441',['VMA_ALLOCATION_CREATE_STRATEGY_MASK',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ffragmentation_5fbit_442',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_FRAGMENTATION_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5fmemory_5fbit_443',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_MEMORY_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fmin_5ftime_5fbit_444',['VMA_ALLOCATION_CREATE_STRATEGY_MIN_TIME_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fstrategy_5fworst_5ffit_5fbit_445',['VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fupper_5faddress_5fbit_446',['VMA_ALLOCATION_CREATE_UPPER_ADDRESS_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fuser_5fdata_5fcopy_5fstring_5fbit_447',['VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocation_5fcreate_5fwithin_5fbudget_5fbit_448',['VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT',['../vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5famd_5fdevice_5fcoherent_5fmemory_5fbit_449',['VMA_ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fbuffer_5fdevice_5faddress_5fbit_450',['VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fext_5fmemory_5fbudget_5fbit_451',['VMA_ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fexternally_5fsynchronized_5fbit_452',['VMA_ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fflag_5fbits_5fmax_5fenum_453',['VMA_ALLOCATOR_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cae4d5ad929caba5f23eb502b13bd5286c',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fkhr_5fbind_5fmemory2_5fbit_454',['VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee',1,'vk_mem_alloc.h']]],
+  ['vma_5fallocator_5fcreate_5fkhr_5fdedicated_5fallocation_5fbit_455',['VMA_ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT',['../vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878',1,'vk_mem_alloc.h']]],
+  ['vma_5fdefragmentation_5fflag_5fbits_5fmax_5fenum_456',['VMA_DEFRAGMENTATION_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50cab87ec33154803bfeb5ac2b379f1d6a97',1,'vk_mem_alloc.h']]],
+  ['vma_5fdefragmentation_5fflag_5fincremental_457',['VMA_DEFRAGMENTATION_FLAG_INCREMENTAL',['../vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fcpu_5fcopy_458',['VMA_MEMORY_USAGE_CPU_COPY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fcpu_5fonly_459',['VMA_MEMORY_USAGE_CPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fcpu_5fto_5fgpu_460',['VMA_MEMORY_USAGE_CPU_TO_GPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fgpu_5flazily_5fallocated_461',['VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fgpu_5fonly_462',['VMA_MEMORY_USAGE_GPU_ONLY',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fgpu_5fto_5fcpu_463',['VMA_MEMORY_USAGE_GPU_TO_CPU',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5fmax_5fenum_464',['VMA_MEMORY_USAGE_MAX_ENUM',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e',1,'vk_mem_alloc.h']]],
+  ['vma_5fmemory_5fusage_5funknown_465',['VMA_MEMORY_USAGE_UNKNOWN',['../vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5falgorithm_5fmask_466',['VMA_POOL_CREATE_ALGORITHM_MASK',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5fbuddy_5falgorithm_5fbit_467',['VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5fflag_5fbits_5fmax_5fenum_468',['VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5fignore_5fbuffer_5fimage_5fgranularity_5fbit_469',['VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2',1,'vk_mem_alloc.h']]],
+  ['vma_5fpool_5fcreate_5flinear_5falgorithm_5fbit_470',['VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT',['../vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726',1,'vk_mem_alloc.h']]],
+  ['vma_5frecord_5fflag_5fbits_5fmax_5fenum_471',['VMA_RECORD_FLAG_BITS_MAX_ENUM',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a20dd17d69966dbffa054739d6090b85e',1,'vk_mem_alloc.h']]],
+  ['vma_5frecord_5fflush_5fafter_5fcall_5fbit_472',['VMA_RECORD_FLUSH_AFTER_CALL_BIT',['../vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/files_0.js b/docs/html/search/files_0.js
index 4c467ee..b028bbd 100644
--- a/docs/html/search/files_0.js
+++ b/docs/html/search/files_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['vk_5fmem_5falloc_2eh_259',['vk_mem_alloc.h',['../vk__mem__alloc_8h.html',1,'']]]
+  ['vk_5fmem_5falloc_2eh_260',['vk_mem_alloc.h',['../vk__mem__alloc_8h.html',1,'']]]
 ];
diff --git a/docs/html/search/functions_0.js b/docs/html/search/functions_0.js
index ed18dfa..d033621 100644
--- a/docs/html/search/functions_0.js
+++ b/docs/html/search/functions_0.js
@@ -1,55 +1,55 @@
 var searchData=
 [
-  ['vmaallocatememory_260',['vmaAllocateMemory',['../vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememoryforbuffer_261',['vmaAllocateMemoryForBuffer',['../vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememoryforimage_262',['vmaAllocateMemoryForImage',['../vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb',1,'vk_mem_alloc.h']]],
-  ['vmaallocatememorypages_263',['vmaAllocateMemoryPages',['../vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1',1,'vk_mem_alloc.h']]],
-  ['vmabegindefragmentationpass_264',['vmaBeginDefragmentationPass',['../vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b',1,'vk_mem_alloc.h']]],
-  ['vmabindbuffermemory_265',['vmaBindBufferMemory',['../vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470',1,'vk_mem_alloc.h']]],
-  ['vmabindbuffermemory2_266',['vmaBindBufferMemory2',['../vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a',1,'vk_mem_alloc.h']]],
-  ['vmabindimagememory_267',['vmaBindImageMemory',['../vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5',1,'vk_mem_alloc.h']]],
-  ['vmabindimagememory2_268',['vmaBindImageMemory2',['../vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc',1,'vk_mem_alloc.h']]],
-  ['vmabuildstatsstring_269',['vmaBuildStatsString',['../vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0',1,'vk_mem_alloc.h']]],
-  ['vmacalculatestats_270',['vmaCalculateStats',['../vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3',1,'vk_mem_alloc.h']]],
-  ['vmacheckcorruption_271',['vmaCheckCorruption',['../vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98',1,'vk_mem_alloc.h']]],
-  ['vmacheckpoolcorruption_272',['vmaCheckPoolCorruption',['../vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89',1,'vk_mem_alloc.h']]],
-  ['vmacreateallocator_273',['vmaCreateAllocator',['../vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb',1,'vk_mem_alloc.h']]],
-  ['vmacreatebuffer_274',['vmaCreateBuffer',['../vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51',1,'vk_mem_alloc.h']]],
-  ['vmacreateimage_275',['vmaCreateImage',['../vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73',1,'vk_mem_alloc.h']]],
-  ['vmacreatelostallocation_276',['vmaCreateLostAllocation',['../vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1',1,'vk_mem_alloc.h']]],
-  ['vmacreatepool_277',['vmaCreatePool',['../vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50',1,'vk_mem_alloc.h']]],
-  ['vmadefragment_278',['vmaDefragment',['../vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationbegin_279',['vmaDefragmentationBegin',['../vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationend_280',['vmaDefragmentationEnd',['../vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2',1,'vk_mem_alloc.h']]],
-  ['vmadestroyallocator_281',['vmaDestroyAllocator',['../vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d',1,'vk_mem_alloc.h']]],
-  ['vmadestroybuffer_282',['vmaDestroyBuffer',['../vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77',1,'vk_mem_alloc.h']]],
-  ['vmadestroyimage_283',['vmaDestroyImage',['../vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e',1,'vk_mem_alloc.h']]],
-  ['vmadestroypool_284',['vmaDestroyPool',['../vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1',1,'vk_mem_alloc.h']]],
-  ['vmaenddefragmentationpass_285',['vmaEndDefragmentationPass',['../vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd',1,'vk_mem_alloc.h']]],
-  ['vmafindmemorytypeindex_286',['vmaFindMemoryTypeIndex',['../vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a',1,'vk_mem_alloc.h']]],
-  ['vmafindmemorytypeindexforbufferinfo_287',['vmaFindMemoryTypeIndexForBufferInfo',['../vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888',1,'vk_mem_alloc.h']]],
-  ['vmafindmemorytypeindexforimageinfo_288',['vmaFindMemoryTypeIndexForImageInfo',['../vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472',1,'vk_mem_alloc.h']]],
-  ['vmaflushallocation_289',['vmaFlushAllocation',['../vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f',1,'vk_mem_alloc.h']]],
-  ['vmaflushallocations_290',['vmaFlushAllocations',['../vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc',1,'vk_mem_alloc.h']]],
-  ['vmafreememory_291',['vmaFreeMemory',['../vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f',1,'vk_mem_alloc.h']]],
-  ['vmafreememorypages_292',['vmaFreeMemoryPages',['../vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e',1,'vk_mem_alloc.h']]],
-  ['vmafreestatsstring_293',['vmaFreeStatsString',['../vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288',1,'vk_mem_alloc.h']]],
-  ['vmagetallocationinfo_294',['vmaGetAllocationInfo',['../vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b',1,'vk_mem_alloc.h']]],
-  ['vmagetallocatorinfo_295',['vmaGetAllocatorInfo',['../vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7',1,'vk_mem_alloc.h']]],
-  ['vmagetbudget_296',['vmaGetBudget',['../vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba',1,'vk_mem_alloc.h']]],
-  ['vmagetmemoryproperties_297',['vmaGetMemoryProperties',['../vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19',1,'vk_mem_alloc.h']]],
-  ['vmagetmemorytypeproperties_298',['vmaGetMemoryTypeProperties',['../vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca',1,'vk_mem_alloc.h']]],
-  ['vmagetphysicaldeviceproperties_299',['vmaGetPhysicalDeviceProperties',['../vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0',1,'vk_mem_alloc.h']]],
-  ['vmagetpoolname_300',['vmaGetPoolName',['../vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030',1,'vk_mem_alloc.h']]],
-  ['vmagetpoolstats_301',['vmaGetPoolStats',['../vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153',1,'vk_mem_alloc.h']]],
-  ['vmainvalidateallocation_302',['vmaInvalidateAllocation',['../vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae',1,'vk_mem_alloc.h']]],
-  ['vmainvalidateallocations_303',['vmaInvalidateAllocations',['../vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5',1,'vk_mem_alloc.h']]],
-  ['vmamakepoolallocationslost_304',['vmaMakePoolAllocationsLost',['../vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024',1,'vk_mem_alloc.h']]],
-  ['vmamapmemory_305',['vmaMapMemory',['../vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069',1,'vk_mem_alloc.h']]],
-  ['vmaresizeallocation_306',['vmaResizeAllocation',['../vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696',1,'vk_mem_alloc.h']]],
-  ['vmasetallocationuserdata_307',['vmaSetAllocationUserData',['../vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f',1,'vk_mem_alloc.h']]],
-  ['vmasetcurrentframeindex_308',['vmaSetCurrentFrameIndex',['../vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236',1,'vk_mem_alloc.h']]],
-  ['vmasetpoolname_309',['vmaSetPoolName',['../vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58',1,'vk_mem_alloc.h']]],
-  ['vmatouchallocation_310',['vmaTouchAllocation',['../vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a',1,'vk_mem_alloc.h']]],
-  ['vmaunmapmemory_311',['vmaUnmapMemory',['../vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45',1,'vk_mem_alloc.h']]]
+  ['vmaallocatememory_261',['vmaAllocateMemory',['../vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememoryforbuffer_262',['vmaAllocateMemoryForBuffer',['../vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememoryforimage_263',['vmaAllocateMemoryForImage',['../vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb',1,'vk_mem_alloc.h']]],
+  ['vmaallocatememorypages_264',['vmaAllocateMemoryPages',['../vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1',1,'vk_mem_alloc.h']]],
+  ['vmabegindefragmentationpass_265',['vmaBeginDefragmentationPass',['../vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b',1,'vk_mem_alloc.h']]],
+  ['vmabindbuffermemory_266',['vmaBindBufferMemory',['../vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470',1,'vk_mem_alloc.h']]],
+  ['vmabindbuffermemory2_267',['vmaBindBufferMemory2',['../vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a',1,'vk_mem_alloc.h']]],
+  ['vmabindimagememory_268',['vmaBindImageMemory',['../vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5',1,'vk_mem_alloc.h']]],
+  ['vmabindimagememory2_269',['vmaBindImageMemory2',['../vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc',1,'vk_mem_alloc.h']]],
+  ['vmabuildstatsstring_270',['vmaBuildStatsString',['../vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0',1,'vk_mem_alloc.h']]],
+  ['vmacalculatestats_271',['vmaCalculateStats',['../vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3',1,'vk_mem_alloc.h']]],
+  ['vmacheckcorruption_272',['vmaCheckCorruption',['../vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98',1,'vk_mem_alloc.h']]],
+  ['vmacheckpoolcorruption_273',['vmaCheckPoolCorruption',['../vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89',1,'vk_mem_alloc.h']]],
+  ['vmacreateallocator_274',['vmaCreateAllocator',['../vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb',1,'vk_mem_alloc.h']]],
+  ['vmacreatebuffer_275',['vmaCreateBuffer',['../vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51',1,'vk_mem_alloc.h']]],
+  ['vmacreateimage_276',['vmaCreateImage',['../vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73',1,'vk_mem_alloc.h']]],
+  ['vmacreatelostallocation_277',['vmaCreateLostAllocation',['../vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1',1,'vk_mem_alloc.h']]],
+  ['vmacreatepool_278',['vmaCreatePool',['../vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50',1,'vk_mem_alloc.h']]],
+  ['vmadefragment_279',['vmaDefragment',['../vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationbegin_280',['vmaDefragmentationBegin',['../vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationend_281',['vmaDefragmentationEnd',['../vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2',1,'vk_mem_alloc.h']]],
+  ['vmadestroyallocator_282',['vmaDestroyAllocator',['../vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d',1,'vk_mem_alloc.h']]],
+  ['vmadestroybuffer_283',['vmaDestroyBuffer',['../vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77',1,'vk_mem_alloc.h']]],
+  ['vmadestroyimage_284',['vmaDestroyImage',['../vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e',1,'vk_mem_alloc.h']]],
+  ['vmadestroypool_285',['vmaDestroyPool',['../vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1',1,'vk_mem_alloc.h']]],
+  ['vmaenddefragmentationpass_286',['vmaEndDefragmentationPass',['../vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd',1,'vk_mem_alloc.h']]],
+  ['vmafindmemorytypeindex_287',['vmaFindMemoryTypeIndex',['../vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a',1,'vk_mem_alloc.h']]],
+  ['vmafindmemorytypeindexforbufferinfo_288',['vmaFindMemoryTypeIndexForBufferInfo',['../vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888',1,'vk_mem_alloc.h']]],
+  ['vmafindmemorytypeindexforimageinfo_289',['vmaFindMemoryTypeIndexForImageInfo',['../vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472',1,'vk_mem_alloc.h']]],
+  ['vmaflushallocation_290',['vmaFlushAllocation',['../vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f',1,'vk_mem_alloc.h']]],
+  ['vmaflushallocations_291',['vmaFlushAllocations',['../vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc',1,'vk_mem_alloc.h']]],
+  ['vmafreememory_292',['vmaFreeMemory',['../vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f',1,'vk_mem_alloc.h']]],
+  ['vmafreememorypages_293',['vmaFreeMemoryPages',['../vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e',1,'vk_mem_alloc.h']]],
+  ['vmafreestatsstring_294',['vmaFreeStatsString',['../vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288',1,'vk_mem_alloc.h']]],
+  ['vmagetallocationinfo_295',['vmaGetAllocationInfo',['../vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b',1,'vk_mem_alloc.h']]],
+  ['vmagetallocatorinfo_296',['vmaGetAllocatorInfo',['../vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7',1,'vk_mem_alloc.h']]],
+  ['vmagetbudget_297',['vmaGetBudget',['../vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba',1,'vk_mem_alloc.h']]],
+  ['vmagetmemoryproperties_298',['vmaGetMemoryProperties',['../vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19',1,'vk_mem_alloc.h']]],
+  ['vmagetmemorytypeproperties_299',['vmaGetMemoryTypeProperties',['../vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca',1,'vk_mem_alloc.h']]],
+  ['vmagetphysicaldeviceproperties_300',['vmaGetPhysicalDeviceProperties',['../vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0',1,'vk_mem_alloc.h']]],
+  ['vmagetpoolname_301',['vmaGetPoolName',['../vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030',1,'vk_mem_alloc.h']]],
+  ['vmagetpoolstats_302',['vmaGetPoolStats',['../vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153',1,'vk_mem_alloc.h']]],
+  ['vmainvalidateallocation_303',['vmaInvalidateAllocation',['../vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae',1,'vk_mem_alloc.h']]],
+  ['vmainvalidateallocations_304',['vmaInvalidateAllocations',['../vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5',1,'vk_mem_alloc.h']]],
+  ['vmamakepoolallocationslost_305',['vmaMakePoolAllocationsLost',['../vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024',1,'vk_mem_alloc.h']]],
+  ['vmamapmemory_306',['vmaMapMemory',['../vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069',1,'vk_mem_alloc.h']]],
+  ['vmaresizeallocation_307',['vmaResizeAllocation',['../vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696',1,'vk_mem_alloc.h']]],
+  ['vmasetallocationuserdata_308',['vmaSetAllocationUserData',['../vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f',1,'vk_mem_alloc.h']]],
+  ['vmasetcurrentframeindex_309',['vmaSetCurrentFrameIndex',['../vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236',1,'vk_mem_alloc.h']]],
+  ['vmasetpoolname_310',['vmaSetPoolName',['../vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58',1,'vk_mem_alloc.h']]],
+  ['vmatouchallocation_311',['vmaTouchAllocation',['../vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a',1,'vk_mem_alloc.h']]],
+  ['vmaunmapmemory_312',['vmaUnmapMemory',['../vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/pages_0.js b/docs/html/search/pages_0.js
index 3b385d3..34b2dd6 100644
--- a/docs/html/search/pages_0.js
+++ b/docs/html/search/pages_0.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['allocation_20names_20and_20user_20data_480',['Allocation names and user data',['../allocation_annotation.html',1,'index']]]
+  ['allocation_20names_20and_20user_20data_481',['Allocation names and user data',['../allocation_annotation.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_1.js b/docs/html/search/pages_1.js
index 23ebec4..9fed9ce 100644
--- a/docs/html/search/pages_1.js
+++ b/docs/html/search/pages_1.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['choosing_20memory_20type_481',['Choosing memory type',['../choosing_memory_type.html',1,'index']]],
-  ['configuration_482',['Configuration',['../configuration.html',1,'index']]],
-  ['custom_20memory_20pools_483',['Custom memory pools',['../custom_memory_pools.html',1,'index']]]
+  ['choosing_20memory_20type_482',['Choosing memory type',['../choosing_memory_type.html',1,'index']]],
+  ['configuration_483',['Configuration',['../configuration.html',1,'index']]],
+  ['custom_20memory_20pools_484',['Custom memory pools',['../custom_memory_pools.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_2.js b/docs/html/search/pages_2.js
index 687395c..755218b 100644
--- a/docs/html/search/pages_2.js
+++ b/docs/html/search/pages_2.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['debugging_20incorrect_20memory_20usage_484',['Debugging incorrect memory usage',['../debugging_memory_usage.html',1,'index']]],
-  ['defragmentation_485',['Defragmentation',['../defragmentation.html',1,'index']]],
-  ['deprecated_20list_486',['Deprecated List',['../deprecated.html',1,'']]]
+  ['debugging_20incorrect_20memory_20usage_485',['Debugging incorrect memory usage',['../debugging_memory_usage.html',1,'index']]],
+  ['defragmentation_486',['Defragmentation',['../defragmentation.html',1,'index']]],
+  ['deprecated_20list_487',['Deprecated List',['../deprecated.html',1,'']]]
 ];
diff --git a/docs/html/search/pages_3.js b/docs/html/search/pages_3.js
index 1491c8e..17d9d39 100644
--- a/docs/html/search/pages_3.js
+++ b/docs/html/search/pages_3.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['enabling_20buffer_20device_20address_487',['Enabling buffer device address',['../enabling_buffer_device_address.html',1,'index']]]
+  ['enabling_20buffer_20device_20address_488',['Enabling buffer device address',['../enabling_buffer_device_address.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_4.js b/docs/html/search/pages_4.js
index d9b7b32..d85716c 100644
--- a/docs/html/search/pages_4.js
+++ b/docs/html/search/pages_4.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['general_20considerations_488',['General considerations',['../general_considerations.html',1,'index']]]
+  ['general_20considerations_489',['General considerations',['../general_considerations.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_5.js b/docs/html/search/pages_5.js
index caa7a41..8892c5d 100644
--- a/docs/html/search/pages_5.js
+++ b/docs/html/search/pages_5.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['lost_20allocations_489',['Lost allocations',['../lost_allocations.html',1,'index']]]
+  ['lost_20allocations_490',['Lost allocations',['../lost_allocations.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_6.js b/docs/html/search/pages_6.js
index 733175b..72436b8 100644
--- a/docs/html/search/pages_6.js
+++ b/docs/html/search/pages_6.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['memory_20mapping_490',['Memory mapping',['../memory_mapping.html',1,'index']]]
+  ['memory_20mapping_491',['Memory mapping',['../memory_mapping.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_7.js b/docs/html/search/pages_7.js
index 2a1dc52..10f49ee 100644
--- a/docs/html/search/pages_7.js
+++ b/docs/html/search/pages_7.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['quick_20start_491',['Quick start',['../quick_start.html',1,'index']]]
+  ['quick_20start_492',['Quick start',['../quick_start.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_8.js b/docs/html/search/pages_8.js
index f0b034c..b943aa0 100644
--- a/docs/html/search/pages_8.js
+++ b/docs/html/search/pages_8.js
@@ -1,5 +1,6 @@
 var searchData=
 [
-  ['record_20and_20replay_492',['Record and replay',['../record_and_replay.html',1,'index']]],
-  ['recommended_20usage_20patterns_493',['Recommended usage patterns',['../usage_patterns.html',1,'index']]]
+  ['record_20and_20replay_493',['Record and replay',['../record_and_replay.html',1,'index']]],
+  ['resource_20aliasing_20_28overlap_29_494',['Resource aliasing (overlap)',['../resource_aliasing.html',1,'index']]],
+  ['recommended_20usage_20patterns_495',['Recommended usage patterns',['../usage_patterns.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_9.js b/docs/html/search/pages_9.js
index eacae9b..7b0f8d1 100644
--- a/docs/html/search/pages_9.js
+++ b/docs/html/search/pages_9.js
@@ -1,5 +1,5 @@
 var searchData=
 [
-  ['statistics_494',['Statistics',['../statistics.html',1,'index']]],
-  ['staying_20within_20budget_495',['Staying within budget',['../staying_within_budget.html',1,'index']]]
+  ['statistics_496',['Statistics',['../statistics.html',1,'index']]],
+  ['staying_20within_20budget_497',['Staying within budget',['../staying_within_budget.html',1,'index']]]
 ];
diff --git a/docs/html/search/pages_a.js b/docs/html/search/pages_a.js
index b8e1a18..2c54468 100644
--- a/docs/html/search/pages_a.js
+++ b/docs/html/search/pages_a.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['vulkan_20memory_20allocator_496',['Vulkan Memory Allocator',['../index.html',1,'']]],
-  ['vk_5famd_5fdevice_5fcoherent_5fmemory_497',['VK_AMD_device_coherent_memory',['../vk_amd_device_coherent_memory.html',1,'index']]],
-  ['vk_5fkhr_5fdedicated_5fallocation_498',['VK_KHR_dedicated_allocation',['../vk_khr_dedicated_allocation.html',1,'index']]]
+  ['vulkan_20memory_20allocator_498',['Vulkan Memory Allocator',['../index.html',1,'']]],
+  ['vk_5famd_5fdevice_5fcoherent_5fmemory_499',['VK_AMD_device_coherent_memory',['../vk_amd_device_coherent_memory.html',1,'index']]],
+  ['vk_5fkhr_5fdedicated_5fallocation_500',['VK_KHR_dedicated_allocation',['../vk_khr_dedicated_allocation.html',1,'index']]]
 ];
diff --git a/docs/html/search/typedefs_0.js b/docs/html/search/typedefs_0.js
index 6475b90..cd8531f 100644
--- a/docs/html/search/typedefs_0.js
+++ b/docs/html/search/typedefs_0.js
@@ -1,5 +1,5 @@
 var searchData=
 [
-  ['pfn_5fvmaallocatedevicememoryfunction_395',['PFN_vmaAllocateDeviceMemoryFunction',['../vk__mem__alloc_8h.html#a7e1ed85f7799600b03ad51a77acc21f3',1,'vk_mem_alloc.h']]],
-  ['pfn_5fvmafreedevicememoryfunction_396',['PFN_vmaFreeDeviceMemoryFunction',['../vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b',1,'vk_mem_alloc.h']]]
+  ['pfn_5fvmaallocatedevicememoryfunction_396',['PFN_vmaAllocateDeviceMemoryFunction',['../vk__mem__alloc_8h.html#a7e1ed85f7799600b03ad51a77acc21f3',1,'vk_mem_alloc.h']]],
+  ['pfn_5fvmafreedevicememoryfunction_397',['PFN_vmaFreeDeviceMemoryFunction',['../vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/typedefs_1.js b/docs/html/search/typedefs_1.js
index cd8fdb1..479ef4d 100644
--- a/docs/html/search/typedefs_1.js
+++ b/docs/html/search/typedefs_1.js
@@ -1,31 +1,31 @@
 var searchData=
 [
-  ['vmaallocationcreateflagbits_397',['VmaAllocationCreateFlagBits',['../vk__mem__alloc_8h.html#a4fceecc301f4064dc808d3cd6c038941',1,'vk_mem_alloc.h']]],
-  ['vmaallocationcreateflags_398',['VmaAllocationCreateFlags',['../vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817',1,'vk_mem_alloc.h']]],
-  ['vmaallocationcreateinfo_399',['VmaAllocationCreateInfo',['../vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a',1,'vk_mem_alloc.h']]],
-  ['vmaallocationinfo_400',['VmaAllocationInfo',['../vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50',1,'vk_mem_alloc.h']]],
-  ['vmaallocatorcreateflagbits_401',['VmaAllocatorCreateFlagBits',['../vk__mem__alloc_8h.html#afd73b95e737ee7e76f827cb5472f559f',1,'vk_mem_alloc.h']]],
-  ['vmaallocatorcreateflags_402',['VmaAllocatorCreateFlags',['../vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d',1,'vk_mem_alloc.h']]],
-  ['vmaallocatorcreateinfo_403',['VmaAllocatorCreateInfo',['../vk__mem__alloc_8h.html#aad9652301d33759b83e52d4f3605a14a',1,'vk_mem_alloc.h']]],
-  ['vmaallocatorinfo_404',['VmaAllocatorInfo',['../vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c',1,'vk_mem_alloc.h']]],
-  ['vmabudget_405',['VmaBudget',['../vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationflagbits_406',['VmaDefragmentationFlagBits',['../vk__mem__alloc_8h.html#a13415cc0b443353a7b5abda300b833fc',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationflags_407',['VmaDefragmentationFlags',['../vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationinfo_408',['VmaDefragmentationInfo',['../vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationinfo2_409',['VmaDefragmentationInfo2',['../vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationpassinfo_410',['VmaDefragmentationPassInfo',['../vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationpassmoveinfo_411',['VmaDefragmentationPassMoveInfo',['../vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5',1,'vk_mem_alloc.h']]],
-  ['vmadefragmentationstats_412',['VmaDefragmentationStats',['../vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403',1,'vk_mem_alloc.h']]],
-  ['vmadevicememorycallbacks_413',['VmaDeviceMemoryCallbacks',['../vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b',1,'vk_mem_alloc.h']]],
-  ['vmamemoryusage_414',['VmaMemoryUsage',['../vk__mem__alloc_8h.html#a806e8499dde802e59eb72a1dc811c35f',1,'vk_mem_alloc.h']]],
-  ['vmapoolcreateflagbits_415',['VmaPoolCreateFlagBits',['../vk__mem__alloc_8h.html#a4d4f2efc2509157a9e4ecd4fd7942303',1,'vk_mem_alloc.h']]],
-  ['vmapoolcreateflags_416',['VmaPoolCreateFlags',['../vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a',1,'vk_mem_alloc.h']]],
-  ['vmapoolcreateinfo_417',['VmaPoolCreateInfo',['../vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67',1,'vk_mem_alloc.h']]],
-  ['vmapoolstats_418',['VmaPoolStats',['../vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1',1,'vk_mem_alloc.h']]],
-  ['vmarecordflagbits_419',['VmaRecordFlagBits',['../vk__mem__alloc_8h.html#acd24d5eb58abff7e1f43cb32a1ba1413',1,'vk_mem_alloc.h']]],
-  ['vmarecordflags_420',['VmaRecordFlags',['../vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828',1,'vk_mem_alloc.h']]],
-  ['vmarecordsettings_421',['VmaRecordSettings',['../vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc',1,'vk_mem_alloc.h']]],
-  ['vmastatinfo_422',['VmaStatInfo',['../vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878',1,'vk_mem_alloc.h']]],
-  ['vmastats_423',['VmaStats',['../vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034',1,'vk_mem_alloc.h']]],
-  ['vmavulkanfunctions_424',['VmaVulkanFunctions',['../vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074',1,'vk_mem_alloc.h']]]
+  ['vmaallocationcreateflagbits_398',['VmaAllocationCreateFlagBits',['../vk__mem__alloc_8h.html#a4fceecc301f4064dc808d3cd6c038941',1,'vk_mem_alloc.h']]],
+  ['vmaallocationcreateflags_399',['VmaAllocationCreateFlags',['../vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817',1,'vk_mem_alloc.h']]],
+  ['vmaallocationcreateinfo_400',['VmaAllocationCreateInfo',['../vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a',1,'vk_mem_alloc.h']]],
+  ['vmaallocationinfo_401',['VmaAllocationInfo',['../vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50',1,'vk_mem_alloc.h']]],
+  ['vmaallocatorcreateflagbits_402',['VmaAllocatorCreateFlagBits',['../vk__mem__alloc_8h.html#afd73b95e737ee7e76f827cb5472f559f',1,'vk_mem_alloc.h']]],
+  ['vmaallocatorcreateflags_403',['VmaAllocatorCreateFlags',['../vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d',1,'vk_mem_alloc.h']]],
+  ['vmaallocatorcreateinfo_404',['VmaAllocatorCreateInfo',['../vk__mem__alloc_8h.html#aad9652301d33759b83e52d4f3605a14a',1,'vk_mem_alloc.h']]],
+  ['vmaallocatorinfo_405',['VmaAllocatorInfo',['../vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c',1,'vk_mem_alloc.h']]],
+  ['vmabudget_406',['VmaBudget',['../vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationflagbits_407',['VmaDefragmentationFlagBits',['../vk__mem__alloc_8h.html#a13415cc0b443353a7b5abda300b833fc',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationflags_408',['VmaDefragmentationFlags',['../vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationinfo_409',['VmaDefragmentationInfo',['../vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationinfo2_410',['VmaDefragmentationInfo2',['../vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationpassinfo_411',['VmaDefragmentationPassInfo',['../vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationpassmoveinfo_412',['VmaDefragmentationPassMoveInfo',['../vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5',1,'vk_mem_alloc.h']]],
+  ['vmadefragmentationstats_413',['VmaDefragmentationStats',['../vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403',1,'vk_mem_alloc.h']]],
+  ['vmadevicememorycallbacks_414',['VmaDeviceMemoryCallbacks',['../vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b',1,'vk_mem_alloc.h']]],
+  ['vmamemoryusage_415',['VmaMemoryUsage',['../vk__mem__alloc_8h.html#a806e8499dde802e59eb72a1dc811c35f',1,'vk_mem_alloc.h']]],
+  ['vmapoolcreateflagbits_416',['VmaPoolCreateFlagBits',['../vk__mem__alloc_8h.html#a4d4f2efc2509157a9e4ecd4fd7942303',1,'vk_mem_alloc.h']]],
+  ['vmapoolcreateflags_417',['VmaPoolCreateFlags',['../vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a',1,'vk_mem_alloc.h']]],
+  ['vmapoolcreateinfo_418',['VmaPoolCreateInfo',['../vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67',1,'vk_mem_alloc.h']]],
+  ['vmapoolstats_419',['VmaPoolStats',['../vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1',1,'vk_mem_alloc.h']]],
+  ['vmarecordflagbits_420',['VmaRecordFlagBits',['../vk__mem__alloc_8h.html#acd24d5eb58abff7e1f43cb32a1ba1413',1,'vk_mem_alloc.h']]],
+  ['vmarecordflags_421',['VmaRecordFlags',['../vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828',1,'vk_mem_alloc.h']]],
+  ['vmarecordsettings_422',['VmaRecordSettings',['../vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc',1,'vk_mem_alloc.h']]],
+  ['vmastatinfo_423',['VmaStatInfo',['../vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878',1,'vk_mem_alloc.h']]],
+  ['vmastats_424',['VmaStats',['../vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034',1,'vk_mem_alloc.h']]],
+  ['vmavulkanfunctions_425',['VmaVulkanFunctions',['../vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074',1,'vk_mem_alloc.h']]]
 ];
diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js
index c301aa7..b736596 100644
--- a/docs/html/search/variables_0.js
+++ b/docs/html/search/variables_0.js
@@ -1,10 +1,10 @@
 var searchData=
 [
-  ['allocation_312',['allocation',['../struct_vma_defragmentation_pass_move_info.html#ae885c861c2dd8d622e6c19e281d035cc',1,'VmaDefragmentationPassMoveInfo']]],
-  ['allocationbytes_313',['allocationBytes',['../struct_vma_budget.html#a7e2a6583ebd63e194951c542563804d8',1,'VmaBudget']]],
-  ['allocationcount_314',['allocationCount',['../struct_vma_stat_info.html#a537741e4d5cdddc1c0ab95ec650afaff',1,'VmaStatInfo::allocationCount()'],['../struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb',1,'VmaPoolStats::allocationCount()'],['../struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba',1,'VmaDefragmentationInfo2::allocationCount()']]],
-  ['allocationsizeavg_315',['allocationSizeAvg',['../struct_vma_stat_info.html#a1081a039964e566c672e7a2347f9e599',1,'VmaStatInfo']]],
-  ['allocationsizemax_316',['allocationSizeMax',['../struct_vma_stat_info.html#a17e9733a5ecd76287d4db6e66f71f50c',1,'VmaStatInfo']]],
-  ['allocationsizemin_317',['allocationSizeMin',['../struct_vma_stat_info.html#ade8b40bd3139c04aabd2fc538a356fea',1,'VmaStatInfo']]],
-  ['allocationsmoved_318',['allocationsMoved',['../struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9',1,'VmaDefragmentationStats']]]
+  ['allocation_313',['allocation',['../struct_vma_defragmentation_pass_move_info.html#ae885c861c2dd8d622e6c19e281d035cc',1,'VmaDefragmentationPassMoveInfo']]],
+  ['allocationbytes_314',['allocationBytes',['../struct_vma_budget.html#a7e2a6583ebd63e194951c542563804d8',1,'VmaBudget']]],
+  ['allocationcount_315',['allocationCount',['../struct_vma_stat_info.html#a537741e4d5cdddc1c0ab95ec650afaff',1,'VmaStatInfo::allocationCount()'],['../struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb',1,'VmaPoolStats::allocationCount()'],['../struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba',1,'VmaDefragmentationInfo2::allocationCount()']]],
+  ['allocationsizeavg_316',['allocationSizeAvg',['../struct_vma_stat_info.html#a1081a039964e566c672e7a2347f9e599',1,'VmaStatInfo']]],
+  ['allocationsizemax_317',['allocationSizeMax',['../struct_vma_stat_info.html#a17e9733a5ecd76287d4db6e66f71f50c',1,'VmaStatInfo']]],
+  ['allocationsizemin_318',['allocationSizeMin',['../struct_vma_stat_info.html#ade8b40bd3139c04aabd2fc538a356fea',1,'VmaStatInfo']]],
+  ['allocationsmoved_319',['allocationsMoved',['../struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9',1,'VmaDefragmentationStats']]]
 ];
diff --git a/docs/html/search/variables_1.js b/docs/html/search/variables_1.js
index 8b6acfe..71f3c5d 100644
--- a/docs/html/search/variables_1.js
+++ b/docs/html/search/variables_1.js
@@ -1,9 +1,9 @@
 var searchData=
 [
-  ['blockbytes_319',['blockBytes',['../struct_vma_budget.html#a58b492901baab685f466199124e514a0',1,'VmaBudget']]],
-  ['blockcount_320',['blockCount',['../struct_vma_stat_info.html#abc4bb7cd611900778464c56e50c970a4',1,'VmaStatInfo::blockCount()'],['../struct_vma_pool_stats.html#aa0b5cb45cef6f18571cefb03b9a230e7',1,'VmaPoolStats::blockCount()']]],
-  ['blocksize_321',['blockSize',['../struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676',1,'VmaPoolCreateInfo']]],
-  ['budget_322',['budget',['../struct_vma_budget.html#ab82e1d1754c2d210d0bdf90220bc6cdd',1,'VmaBudget']]],
-  ['bytesfreed_323',['bytesFreed',['../struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28',1,'VmaDefragmentationStats']]],
-  ['bytesmoved_324',['bytesMoved',['../struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d',1,'VmaDefragmentationStats']]]
+  ['blockbytes_320',['blockBytes',['../struct_vma_budget.html#a58b492901baab685f466199124e514a0',1,'VmaBudget']]],
+  ['blockcount_321',['blockCount',['../struct_vma_stat_info.html#abc4bb7cd611900778464c56e50c970a4',1,'VmaStatInfo::blockCount()'],['../struct_vma_pool_stats.html#aa0b5cb45cef6f18571cefb03b9a230e7',1,'VmaPoolStats::blockCount()']]],
+  ['blocksize_322',['blockSize',['../struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676',1,'VmaPoolCreateInfo']]],
+  ['budget_323',['budget',['../struct_vma_budget.html#ab82e1d1754c2d210d0bdf90220bc6cdd',1,'VmaBudget']]],
+  ['bytesfreed_324',['bytesFreed',['../struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28',1,'VmaDefragmentationStats']]],
+  ['bytesmoved_325',['bytesMoved',['../struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d',1,'VmaDefragmentationStats']]]
 ];
diff --git a/docs/html/search/variables_2.js b/docs/html/search/variables_2.js
index 3754879..edcfe09 100644
--- a/docs/html/search/variables_2.js
+++ b/docs/html/search/variables_2.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['commandbuffer_325',['commandBuffer',['../struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd',1,'VmaDefragmentationInfo2']]]
+  ['commandbuffer_326',['commandBuffer',['../struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd',1,'VmaDefragmentationInfo2']]]
 ];
diff --git a/docs/html/search/variables_3.js b/docs/html/search/variables_3.js
index 3335fa9..65200bb 100644
--- a/docs/html/search/variables_3.js
+++ b/docs/html/search/variables_3.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['device_326',['device',['../struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500',1,'VmaAllocatorCreateInfo::device()'],['../struct_vma_allocator_info.html#a012b4c485bf3b0ea8921352c5ee0c357',1,'VmaAllocatorInfo::device()']]],
-  ['devicememory_327',['deviceMemory',['../struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67',1,'VmaAllocationInfo']]],
-  ['devicememoryblocksfreed_328',['deviceMemoryBlocksFreed',['../struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b',1,'VmaDefragmentationStats']]]
+  ['device_327',['device',['../struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500',1,'VmaAllocatorCreateInfo::device()'],['../struct_vma_allocator_info.html#a012b4c485bf3b0ea8921352c5ee0c357',1,'VmaAllocatorInfo::device()']]],
+  ['devicememory_328',['deviceMemory',['../struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67',1,'VmaAllocationInfo']]],
+  ['devicememoryblocksfreed_329',['deviceMemoryBlocksFreed',['../struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b',1,'VmaDefragmentationStats']]]
 ];
diff --git a/docs/html/search/variables_4.js b/docs/html/search/variables_4.js
index 332a035..31b9769 100644
--- a/docs/html/search/variables_4.js
+++ b/docs/html/search/variables_4.js
@@ -1,5 +1,5 @@
 var searchData=
 [
-  ['flags_329',['flags',['../struct_vma_record_settings.html#ad8fdcc92119ae7a8c08c1a564c01d63a',1,'VmaRecordSettings::flags()'],['../struct_vma_allocator_create_info.html#a392ea2ecbaff93f91a7c49f735ad4346',1,'VmaAllocatorCreateInfo::flags()'],['../struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b',1,'VmaAllocationCreateInfo::flags()'],['../struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446',1,'VmaPoolCreateInfo::flags()'],['../struct_vma_defragmentation_info2.html#a53e844ee5633e229cf6daf14b2d9fff9',1,'VmaDefragmentationInfo2::flags()']]],
-  ['frameinusecount_330',['frameInUseCount',['../struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7',1,'VmaAllocatorCreateInfo::frameInUseCount()'],['../struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa',1,'VmaPoolCreateInfo::frameInUseCount()']]]
+  ['flags_330',['flags',['../struct_vma_record_settings.html#ad8fdcc92119ae7a8c08c1a564c01d63a',1,'VmaRecordSettings::flags()'],['../struct_vma_allocator_create_info.html#a392ea2ecbaff93f91a7c49f735ad4346',1,'VmaAllocatorCreateInfo::flags()'],['../struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b',1,'VmaAllocationCreateInfo::flags()'],['../struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446',1,'VmaPoolCreateInfo::flags()'],['../struct_vma_defragmentation_info2.html#a53e844ee5633e229cf6daf14b2d9fff9',1,'VmaDefragmentationInfo2::flags()']]],
+  ['frameinusecount_331',['frameInUseCount',['../struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7',1,'VmaAllocatorCreateInfo::frameInUseCount()'],['../struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa',1,'VmaPoolCreateInfo::frameInUseCount()']]]
 ];
diff --git a/docs/html/search/variables_5.js b/docs/html/search/variables_5.js
index 7327328..0aad120 100644
--- a/docs/html/search/variables_5.js
+++ b/docs/html/search/variables_5.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['instance_331',['instance',['../struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b',1,'VmaAllocatorCreateInfo::instance()'],['../struct_vma_allocator_info.html#a2ed6a4d2d3fea039d66a13f15d0ce5fe',1,'VmaAllocatorInfo::instance()']]]
+  ['instance_332',['instance',['../struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b',1,'VmaAllocatorCreateInfo::instance()'],['../struct_vma_allocator_info.html#a2ed6a4d2d3fea039d66a13f15d0ce5fe',1,'VmaAllocatorInfo::instance()']]]
 ];
diff --git a/docs/html/search/variables_6.js b/docs/html/search/variables_6.js
index 6f721c4..168f828 100644
--- a/docs/html/search/variables_6.js
+++ b/docs/html/search/variables_6.js
@@ -1,17 +1,17 @@
 var searchData=
 [
-  ['maxallocationstomove_332',['maxAllocationsToMove',['../struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc',1,'VmaDefragmentationInfo']]],
-  ['maxblockcount_333',['maxBlockCount',['../struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c',1,'VmaPoolCreateInfo']]],
-  ['maxbytestomove_334',['maxBytesToMove',['../struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d',1,'VmaDefragmentationInfo']]],
-  ['maxcpuallocationstomove_335',['maxCpuAllocationsToMove',['../struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671',1,'VmaDefragmentationInfo2']]],
-  ['maxcpubytestomove_336',['maxCpuBytesToMove',['../struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a',1,'VmaDefragmentationInfo2']]],
-  ['maxgpuallocationstomove_337',['maxGpuAllocationsToMove',['../struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6',1,'VmaDefragmentationInfo2']]],
-  ['maxgpubytestomove_338',['maxGpuBytesToMove',['../struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08',1,'VmaDefragmentationInfo2']]],
-  ['memory_339',['memory',['../struct_vma_defragmentation_pass_move_info.html#a06eb0c8690aa0d3478a036753492e769',1,'VmaDefragmentationPassMoveInfo']]],
-  ['memoryheap_340',['memoryHeap',['../struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0',1,'VmaStats']]],
-  ['memorytype_341',['memoryType',['../struct_vma_stats.html#a13e3caf754be79352c42408756309331',1,'VmaStats::memoryType()'],['../struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5',1,'VmaAllocationInfo::memoryType()']]],
-  ['memorytypebits_342',['memoryTypeBits',['../struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055',1,'VmaAllocationCreateInfo']]],
-  ['memorytypeindex_343',['memoryTypeIndex',['../struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319',1,'VmaPoolCreateInfo']]],
-  ['minblockcount_344',['minBlockCount',['../struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae',1,'VmaPoolCreateInfo']]],
-  ['movecount_345',['moveCount',['../struct_vma_defragmentation_pass_info.html#ac1086e657ba995f8d1f4e49b83dcfb6c',1,'VmaDefragmentationPassInfo']]]
+  ['maxallocationstomove_333',['maxAllocationsToMove',['../struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc',1,'VmaDefragmentationInfo']]],
+  ['maxblockcount_334',['maxBlockCount',['../struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c',1,'VmaPoolCreateInfo']]],
+  ['maxbytestomove_335',['maxBytesToMove',['../struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d',1,'VmaDefragmentationInfo']]],
+  ['maxcpuallocationstomove_336',['maxCpuAllocationsToMove',['../struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671',1,'VmaDefragmentationInfo2']]],
+  ['maxcpubytestomove_337',['maxCpuBytesToMove',['../struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a',1,'VmaDefragmentationInfo2']]],
+  ['maxgpuallocationstomove_338',['maxGpuAllocationsToMove',['../struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6',1,'VmaDefragmentationInfo2']]],
+  ['maxgpubytestomove_339',['maxGpuBytesToMove',['../struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08',1,'VmaDefragmentationInfo2']]],
+  ['memory_340',['memory',['../struct_vma_defragmentation_pass_move_info.html#a06eb0c8690aa0d3478a036753492e769',1,'VmaDefragmentationPassMoveInfo']]],
+  ['memoryheap_341',['memoryHeap',['../struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0',1,'VmaStats']]],
+  ['memorytype_342',['memoryType',['../struct_vma_stats.html#a13e3caf754be79352c42408756309331',1,'VmaStats::memoryType()'],['../struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5',1,'VmaAllocationInfo::memoryType()']]],
+  ['memorytypebits_343',['memoryTypeBits',['../struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055',1,'VmaAllocationCreateInfo']]],
+  ['memorytypeindex_344',['memoryTypeIndex',['../struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319',1,'VmaPoolCreateInfo']]],
+  ['minblockcount_345',['minBlockCount',['../struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae',1,'VmaPoolCreateInfo']]],
+  ['movecount_346',['moveCount',['../struct_vma_defragmentation_pass_info.html#ac1086e657ba995f8d1f4e49b83dcfb6c',1,'VmaDefragmentationPassInfo']]]
 ];
diff --git a/docs/html/search/variables_7.js b/docs/html/search/variables_7.js
index 13aadd0..e68edf1 100644
--- a/docs/html/search/variables_7.js
+++ b/docs/html/search/variables_7.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['offset_346',['offset',['../struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268',1,'VmaAllocationInfo::offset()'],['../struct_vma_defragmentation_pass_move_info.html#a8ab4508bc03625b0653c880576be96c6',1,'VmaDefragmentationPassMoveInfo::offset()']]]
+  ['offset_347',['offset',['../struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268',1,'VmaAllocationInfo::offset()'],['../struct_vma_defragmentation_pass_move_info.html#a8ab4508bc03625b0653c880576be96c6',1,'VmaDefragmentationPassMoveInfo::offset()']]]
 ];
diff --git a/docs/html/search/variables_8.js b/docs/html/search/variables_8.js
index 408b163..c05d7f5 100644
--- a/docs/html/search/variables_8.js
+++ b/docs/html/search/variables_8.js
@@ -1,22 +1,22 @@
 var searchData=
 [
-  ['pallocationcallbacks_347',['pAllocationCallbacks',['../struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d',1,'VmaAllocatorCreateInfo']]],
-  ['pallocations_348',['pAllocations',['../struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32',1,'VmaDefragmentationInfo2']]],
-  ['pallocationschanged_349',['pAllocationsChanged',['../struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc',1,'VmaDefragmentationInfo2']]],
-  ['pdevicememorycallbacks_350',['pDeviceMemoryCallbacks',['../struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e',1,'VmaAllocatorCreateInfo']]],
-  ['pfilepath_351',['pFilePath',['../struct_vma_record_settings.html#a6cb1fdbf6bcb610b68f2010dd629e89d',1,'VmaRecordSettings']]],
-  ['pfnallocate_352',['pfnAllocate',['../struct_vma_device_memory_callbacks.html#a4f17f7b255101e733b44d5633aceabfb',1,'VmaDeviceMemoryCallbacks']]],
-  ['pfnfree_353',['pfnFree',['../struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c',1,'VmaDeviceMemoryCallbacks']]],
-  ['pheapsizelimit_354',['pHeapSizeLimit',['../struct_vma_allocator_create_info.html#a31c192aa6cbffa33279f6d9f0c47c44b',1,'VmaAllocatorCreateInfo']]],
-  ['physicaldevice_355',['physicalDevice',['../struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156',1,'VmaAllocatorCreateInfo::physicalDevice()'],['../struct_vma_allocator_info.html#aba2b703f96e51d567717e1fb2935b47a',1,'VmaAllocatorInfo::physicalDevice()']]],
-  ['pmappeddata_356',['pMappedData',['../struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2',1,'VmaAllocationInfo']]],
-  ['pmoves_357',['pMoves',['../struct_vma_defragmentation_pass_info.html#acbd42d4a3357999da130a95cd99a3792',1,'VmaDefragmentationPassInfo']]],
-  ['pool_358',['pool',['../struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150',1,'VmaAllocationCreateInfo']]],
-  ['poolcount_359',['poolCount',['../struct_vma_defragmentation_info2.html#a7e70aa2a1081d849dcc7829b19d3ec9d',1,'VmaDefragmentationInfo2']]],
-  ['ppools_360',['pPools',['../struct_vma_defragmentation_info2.html#a3c9c6aa5c97d5670f8e362b3a6f3029b',1,'VmaDefragmentationInfo2']]],
-  ['precordsettings_361',['pRecordSettings',['../struct_vma_allocator_create_info.html#ace2aa4877b16a42b0b7673d4e26000ee',1,'VmaAllocatorCreateInfo']]],
-  ['preferredflags_362',['preferredFlags',['../struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d',1,'VmaAllocationCreateInfo']]],
-  ['preferredlargeheapblocksize_363',['preferredLargeHeapBlockSize',['../struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a',1,'VmaAllocatorCreateInfo']]],
-  ['puserdata_364',['pUserData',['../struct_vma_device_memory_callbacks.html#a24052de0937ddd54015a2df0363903c6',1,'VmaDeviceMemoryCallbacks::pUserData()'],['../struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19',1,'VmaAllocationCreateInfo::pUserData()'],['../struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13',1,'VmaAllocationInfo::pUserData()']]],
-  ['pvulkanfunctions_365',['pVulkanFunctions',['../struct_vma_allocator_create_info.html#a3dc197be3227da7338b1643f70db36bd',1,'VmaAllocatorCreateInfo']]]
+  ['pallocationcallbacks_348',['pAllocationCallbacks',['../struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d',1,'VmaAllocatorCreateInfo']]],
+  ['pallocations_349',['pAllocations',['../struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32',1,'VmaDefragmentationInfo2']]],
+  ['pallocationschanged_350',['pAllocationsChanged',['../struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc',1,'VmaDefragmentationInfo2']]],
+  ['pdevicememorycallbacks_351',['pDeviceMemoryCallbacks',['../struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e',1,'VmaAllocatorCreateInfo']]],
+  ['pfilepath_352',['pFilePath',['../struct_vma_record_settings.html#a6cb1fdbf6bcb610b68f2010dd629e89d',1,'VmaRecordSettings']]],
+  ['pfnallocate_353',['pfnAllocate',['../struct_vma_device_memory_callbacks.html#a4f17f7b255101e733b44d5633aceabfb',1,'VmaDeviceMemoryCallbacks']]],
+  ['pfnfree_354',['pfnFree',['../struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c',1,'VmaDeviceMemoryCallbacks']]],
+  ['pheapsizelimit_355',['pHeapSizeLimit',['../struct_vma_allocator_create_info.html#a31c192aa6cbffa33279f6d9f0c47c44b',1,'VmaAllocatorCreateInfo']]],
+  ['physicaldevice_356',['physicalDevice',['../struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156',1,'VmaAllocatorCreateInfo::physicalDevice()'],['../struct_vma_allocator_info.html#aba2b703f96e51d567717e1fb2935b47a',1,'VmaAllocatorInfo::physicalDevice()']]],
+  ['pmappeddata_357',['pMappedData',['../struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2',1,'VmaAllocationInfo']]],
+  ['pmoves_358',['pMoves',['../struct_vma_defragmentation_pass_info.html#acbd42d4a3357999da130a95cd99a3792',1,'VmaDefragmentationPassInfo']]],
+  ['pool_359',['pool',['../struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150',1,'VmaAllocationCreateInfo']]],
+  ['poolcount_360',['poolCount',['../struct_vma_defragmentation_info2.html#a7e70aa2a1081d849dcc7829b19d3ec9d',1,'VmaDefragmentationInfo2']]],
+  ['ppools_361',['pPools',['../struct_vma_defragmentation_info2.html#a3c9c6aa5c97d5670f8e362b3a6f3029b',1,'VmaDefragmentationInfo2']]],
+  ['precordsettings_362',['pRecordSettings',['../struct_vma_allocator_create_info.html#ace2aa4877b16a42b0b7673d4e26000ee',1,'VmaAllocatorCreateInfo']]],
+  ['preferredflags_363',['preferredFlags',['../struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d',1,'VmaAllocationCreateInfo']]],
+  ['preferredlargeheapblocksize_364',['preferredLargeHeapBlockSize',['../struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a',1,'VmaAllocatorCreateInfo']]],
+  ['puserdata_365',['pUserData',['../struct_vma_device_memory_callbacks.html#a24052de0937ddd54015a2df0363903c6',1,'VmaDeviceMemoryCallbacks::pUserData()'],['../struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19',1,'VmaAllocationCreateInfo::pUserData()'],['../struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13',1,'VmaAllocationInfo::pUserData()']]],
+  ['pvulkanfunctions_366',['pVulkanFunctions',['../struct_vma_allocator_create_info.html#a3dc197be3227da7338b1643f70db36bd',1,'VmaAllocatorCreateInfo']]]
 ];
diff --git a/docs/html/search/variables_9.js b/docs/html/search/variables_9.js
index 464801a..43007f1 100644
--- a/docs/html/search/variables_9.js
+++ b/docs/html/search/variables_9.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['requiredflags_366',['requiredFlags',['../struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90',1,'VmaAllocationCreateInfo']]]
+  ['requiredflags_367',['requiredFlags',['../struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90',1,'VmaAllocationCreateInfo']]]
 ];
diff --git a/docs/html/search/variables_a.js b/docs/html/search/variables_a.js
index 096c052..3cd5c9f 100644
--- a/docs/html/search/variables_a.js
+++ b/docs/html/search/variables_a.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['size_367',['size',['../struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c',1,'VmaPoolStats::size()'],['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo::size()']]]
+  ['size_368',['size',['../struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c',1,'VmaPoolStats::size()'],['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo::size()']]]
 ];
diff --git a/docs/html/search/variables_b.js b/docs/html/search/variables_b.js
index 8ba1d7d..d892680 100644
--- a/docs/html/search/variables_b.js
+++ b/docs/html/search/variables_b.js
@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['total_368',['total',['../struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9',1,'VmaStats']]]
+  ['total_369',['total',['../struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9',1,'VmaStats']]]
 ];
diff --git a/docs/html/search/variables_c.js b/docs/html/search/variables_c.js
index a6b01a4..f0c6b1d 100644
--- a/docs/html/search/variables_c.js
+++ b/docs/html/search/variables_c.js
@@ -1,11 +1,11 @@
 var searchData=
 [
-  ['unusedbytes_369',['unusedBytes',['../struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669',1,'VmaStatInfo']]],
-  ['unusedrangecount_370',['unusedRangeCount',['../struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9',1,'VmaStatInfo::unusedRangeCount()'],['../struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4',1,'VmaPoolStats::unusedRangeCount()']]],
-  ['unusedrangesizeavg_371',['unusedRangeSizeAvg',['../struct_vma_stat_info.html#a2f9b3452af90c9768a30b7fb6ae194fc',1,'VmaStatInfo']]],
-  ['unusedrangesizemax_372',['unusedRangeSizeMax',['../struct_vma_stat_info.html#a5ba1a2476c4d39b10f7e2f7ebbb72ac4',1,'VmaStatInfo::unusedRangeSizeMax()'],['../struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b',1,'VmaPoolStats::unusedRangeSizeMax()']]],
-  ['unusedrangesizemin_373',['unusedRangeSizeMin',['../struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4',1,'VmaStatInfo']]],
-  ['unusedsize_374',['unusedSize',['../struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8',1,'VmaPoolStats']]],
-  ['usage_375',['usage',['../struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6',1,'VmaBudget::usage()'],['../struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910',1,'VmaAllocationCreateInfo::usage()']]],
-  ['usedbytes_376',['usedBytes',['../struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a',1,'VmaStatInfo']]]
+  ['unusedbytes_370',['unusedBytes',['../struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669',1,'VmaStatInfo']]],
+  ['unusedrangecount_371',['unusedRangeCount',['../struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9',1,'VmaStatInfo::unusedRangeCount()'],['../struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4',1,'VmaPoolStats::unusedRangeCount()']]],
+  ['unusedrangesizeavg_372',['unusedRangeSizeAvg',['../struct_vma_stat_info.html#a2f9b3452af90c9768a30b7fb6ae194fc',1,'VmaStatInfo']]],
+  ['unusedrangesizemax_373',['unusedRangeSizeMax',['../struct_vma_stat_info.html#a5ba1a2476c4d39b10f7e2f7ebbb72ac4',1,'VmaStatInfo::unusedRangeSizeMax()'],['../struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b',1,'VmaPoolStats::unusedRangeSizeMax()']]],
+  ['unusedrangesizemin_374',['unusedRangeSizeMin',['../struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4',1,'VmaStatInfo']]],
+  ['unusedsize_375',['unusedSize',['../struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8',1,'VmaPoolStats']]],
+  ['usage_376',['usage',['../struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6',1,'VmaBudget::usage()'],['../struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910',1,'VmaAllocationCreateInfo::usage()']]],
+  ['usedbytes_377',['usedBytes',['../struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a',1,'VmaStatInfo']]]
 ];
diff --git a/docs/html/search/variables_d.js b/docs/html/search/variables_d.js
index 108e48a..5c4d0c3 100644
--- a/docs/html/search/variables_d.js
+++ b/docs/html/search/variables_d.js
@@ -1,21 +1,21 @@
 var searchData=
 [
-  ['vkallocatememory_377',['vkAllocateMemory',['../struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c',1,'VmaVulkanFunctions']]],
-  ['vkbindbuffermemory_378',['vkBindBufferMemory',['../struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2',1,'VmaVulkanFunctions']]],
-  ['vkbindimagememory_379',['vkBindImageMemory',['../struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637',1,'VmaVulkanFunctions']]],
-  ['vkcmdcopybuffer_380',['vkCmdCopyBuffer',['../struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a',1,'VmaVulkanFunctions']]],
-  ['vkcreatebuffer_381',['vkCreateBuffer',['../struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f',1,'VmaVulkanFunctions']]],
-  ['vkcreateimage_382',['vkCreateImage',['../struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325',1,'VmaVulkanFunctions']]],
-  ['vkdestroybuffer_383',['vkDestroyBuffer',['../struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45',1,'VmaVulkanFunctions']]],
-  ['vkdestroyimage_384',['vkDestroyImage',['../struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa',1,'VmaVulkanFunctions']]],
-  ['vkflushmappedmemoryranges_385',['vkFlushMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9',1,'VmaVulkanFunctions']]],
-  ['vkfreememory_386',['vkFreeMemory',['../struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4',1,'VmaVulkanFunctions']]],
-  ['vkgetbuffermemoryrequirements_387',['vkGetBufferMemoryRequirements',['../struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143',1,'VmaVulkanFunctions']]],
-  ['vkgetimagememoryrequirements_388',['vkGetImageMemoryRequirements',['../struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4',1,'VmaVulkanFunctions']]],
-  ['vkgetphysicaldevicememoryproperties_389',['vkGetPhysicalDeviceMemoryProperties',['../struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830',1,'VmaVulkanFunctions']]],
-  ['vkgetphysicaldeviceproperties_390',['vkGetPhysicalDeviceProperties',['../struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96',1,'VmaVulkanFunctions']]],
-  ['vkinvalidatemappedmemoryranges_391',['vkInvalidateMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1',1,'VmaVulkanFunctions']]],
-  ['vkmapmemory_392',['vkMapMemory',['../struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49',1,'VmaVulkanFunctions']]],
-  ['vkunmapmemory_393',['vkUnmapMemory',['../struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9',1,'VmaVulkanFunctions']]],
-  ['vulkanapiversion_394',['vulkanApiVersion',['../struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285',1,'VmaAllocatorCreateInfo']]]
+  ['vkallocatememory_378',['vkAllocateMemory',['../struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c',1,'VmaVulkanFunctions']]],
+  ['vkbindbuffermemory_379',['vkBindBufferMemory',['../struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2',1,'VmaVulkanFunctions']]],
+  ['vkbindimagememory_380',['vkBindImageMemory',['../struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637',1,'VmaVulkanFunctions']]],
+  ['vkcmdcopybuffer_381',['vkCmdCopyBuffer',['../struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a',1,'VmaVulkanFunctions']]],
+  ['vkcreatebuffer_382',['vkCreateBuffer',['../struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f',1,'VmaVulkanFunctions']]],
+  ['vkcreateimage_383',['vkCreateImage',['../struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325',1,'VmaVulkanFunctions']]],
+  ['vkdestroybuffer_384',['vkDestroyBuffer',['../struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45',1,'VmaVulkanFunctions']]],
+  ['vkdestroyimage_385',['vkDestroyImage',['../struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa',1,'VmaVulkanFunctions']]],
+  ['vkflushmappedmemoryranges_386',['vkFlushMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9',1,'VmaVulkanFunctions']]],
+  ['vkfreememory_387',['vkFreeMemory',['../struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4',1,'VmaVulkanFunctions']]],
+  ['vkgetbuffermemoryrequirements_388',['vkGetBufferMemoryRequirements',['../struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143',1,'VmaVulkanFunctions']]],
+  ['vkgetimagememoryrequirements_389',['vkGetImageMemoryRequirements',['../struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4',1,'VmaVulkanFunctions']]],
+  ['vkgetphysicaldevicememoryproperties_390',['vkGetPhysicalDeviceMemoryProperties',['../struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830',1,'VmaVulkanFunctions']]],
+  ['vkgetphysicaldeviceproperties_391',['vkGetPhysicalDeviceProperties',['../struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96',1,'VmaVulkanFunctions']]],
+  ['vkinvalidatemappedmemoryranges_392',['vkInvalidateMappedMemoryRanges',['../struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1',1,'VmaVulkanFunctions']]],
+  ['vkmapmemory_393',['vkMapMemory',['../struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49',1,'VmaVulkanFunctions']]],
+  ['vkunmapmemory_394',['vkUnmapMemory',['../struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9',1,'VmaVulkanFunctions']]],
+  ['vulkanapiversion_395',['vulkanApiVersion',['../struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285',1,'VmaAllocatorCreateInfo']]]
 ];
diff --git a/docs/html/vk__mem__alloc_8h.html b/docs/html/vk__mem__alloc_8h.html
index ef09f0f..4e1b2c4 100644
--- a/docs/html/vk__mem__alloc_8h.html
+++ b/docs/html/vk__mem__alloc_8h.html
@@ -1650,7 +1650,7 @@
   </dd>
 </dl>
 <p>This function is similar to <a class="el" href="vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470" title="Binds buffer to allocation.">vmaBindBufferMemory()</a>, but it provides additional parameters.</p>
-<p>If <code>pNext</code> is not null, <a class="el" href="struct_vma_allocator.html" title="Represents main object of this library initialized.">VmaAllocator</a> object must have been created with <a class="el" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee">VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT</a> flag or with <a class="el" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285" title="Optional. The highest version of Vulkan that the application is designed to use.">VmaAllocatorCreateInfo::vulkanApiVersion</a> <code>== VK_API_VERSION_1_1</code>. Otherwise the call fails. </p>
+<p>If <code>pNext</code> is not null, <a class="el" href="struct_vma_allocator.html" title="Represents main object of this library initialized.">VmaAllocator</a> object must have been created with <a class="el" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee">VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT</a> flag or with <a class="el" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285" title="Optional. The highest version of Vulkan that the application is designed to use.">VmaAllocatorCreateInfo::vulkanApiVersion</a> <code>&gt;= VK_API_VERSION_1_1</code>. Otherwise the call fails. </p>
 
 </div>
 </div>
@@ -1745,7 +1745,7 @@
   </dd>
 </dl>
 <p>This function is similar to <a class="el" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5" title="Binds image to allocation.">vmaBindImageMemory()</a>, but it provides additional parameters.</p>
-<p>If <code>pNext</code> is not null, <a class="el" href="struct_vma_allocator.html" title="Represents main object of this library initialized.">VmaAllocator</a> object must have been created with <a class="el" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee">VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT</a> flag or with <a class="el" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285" title="Optional. The highest version of Vulkan that the application is designed to use.">VmaAllocatorCreateInfo::vulkanApiVersion</a> <code>== VK_API_VERSION_1_1</code>. Otherwise the call fails. </p>
+<p>If <code>pNext</code> is not null, <a class="el" href="struct_vma_allocator.html" title="Represents main object of this library initialized.">VmaAllocator</a> object must have been created with <a class="el" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee">VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT</a> flag or with <a class="el" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285" title="Optional. The highest version of Vulkan that the application is designed to use.">VmaAllocatorCreateInfo::vulkanApiVersion</a> <code>&gt;= VK_API_VERSION_1_1</code>. Otherwise the call fails. </p>
 
 </div>
 </div>
diff --git a/docs/html/vk__mem__alloc_8h_source.html b/docs/html/vk__mem__alloc_8h_source.html
index 7def349..acdbe19 100644
--- a/docs/html/vk__mem__alloc_8h_source.html
+++ b/docs/html/vk__mem__alloc_8h_source.html
@@ -90,16165 +90,16165 @@
 <div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#ifndef AMD_VULKAN_MEMORY_ALLOCATOR_H</span></div>
 <div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#define AMD_VULKAN_MEMORY_ALLOCATOR_H</span></div>
 <div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160; </div>
-<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160;<span class="preprocessor">#if VMA_RECORDING_ENABLED</span></div>
-<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160;<span class="preprocessor">    #include &lt;chrono&gt;</span></div>
-<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>&#160;<span class="preprocessor">    #if defined(_WIN32)</span></div>
-<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160;<span class="preprocessor">        #include &lt;windows.h&gt;</span></div>
-<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160;<span class="preprocessor">        #include &lt;sstream&gt;</span></div>
-<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160;<span class="preprocessor">        #include &lt;thread&gt;</span></div>
-<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160; </div>
-<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160; </div>
-<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160;<span class="comment">Define this macro to 0/1 to disable/enable support for recording functionality,</span></div>
-<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160;<span class="comment">available through VmaAllocatorCreateInfo::pRecordSettings.</span></div>
-<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;<span class="preprocessor">#ifndef VMA_RECORDING_ENABLED</span></div>
-<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160;<span class="preprocessor">    #define VMA_RECORDING_ENABLED 0</span></div>
-<div class="line"><a name="l01913"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1f0c126759fc96ccb6e2d23c101d770c"> 1913</a></span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160; </div>
-<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160;<span class="preprocessor">#ifndef NOMINMAX</span></div>
-<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160;<span class="preprocessor">    #define NOMINMAX // For windows.h</span></div>
-<div class="line"><a name="l01917"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9f918755b601cf4bffca775992e6fb90"> 1917</a></span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160; </div>
-<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160;<span class="preprocessor">#if defined(__ANDROID__) &amp;&amp; defined(VK_NO_PROTOTYPES) &amp;&amp; VMA_STATIC_VULKAN_FUNCTIONS</span></div>
-<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160;    <span class="keyword">extern</span> PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;</div>
-<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160;    <span class="keyword">extern</span> PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;</div>
-<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160;    <span class="keyword">extern</span> PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;</div>
-<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;    <span class="keyword">extern</span> PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;</div>
-<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160;    <span class="keyword">extern</span> PFN_vkAllocateMemory vkAllocateMemory;</div>
-<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;    <span class="keyword">extern</span> PFN_vkFreeMemory vkFreeMemory;</div>
-<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160;    <span class="keyword">extern</span> PFN_vkMapMemory vkMapMemory;</div>
-<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160;    <span class="keyword">extern</span> PFN_vkUnmapMemory vkUnmapMemory;</div>
-<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160;    <span class="keyword">extern</span> PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;</div>
-<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160;    <span class="keyword">extern</span> PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;</div>
-<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160;    <span class="keyword">extern</span> PFN_vkBindBufferMemory vkBindBufferMemory;</div>
-<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160;    <span class="keyword">extern</span> PFN_vkBindImageMemory vkBindImageMemory;</div>
-<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160;    <span class="keyword">extern</span> PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;</div>
-<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160;    <span class="keyword">extern</span> PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;</div>
-<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;    <span class="keyword">extern</span> PFN_vkCreateBuffer vkCreateBuffer;</div>
-<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160;    <span class="keyword">extern</span> PFN_vkDestroyBuffer vkDestroyBuffer;</div>
-<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160;    <span class="keyword">extern</span> PFN_vkCreateImage vkCreateImage;</div>
-<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160;    <span class="keyword">extern</span> PFN_vkDestroyImage vkDestroyImage;</div>
-<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160;    <span class="keyword">extern</span> PFN_vkCmdCopyBuffer vkCmdCopyBuffer;</div>
-<div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160;<span class="preprocessor">    #if VMA_VULKAN_VERSION &gt;= 1001000</span></div>
-<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160;        <span class="keyword">extern</span> PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;</div>
-<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160;        <span class="keyword">extern</span> PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;</div>
-<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160;        <span class="keyword">extern</span> PFN_vkBindBufferMemory2 vkBindBufferMemory2;</div>
-<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160;        <span class="keyword">extern</span> PFN_vkBindImageMemory2 vkBindImageMemory2;</div>
-<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160;        <span class="keyword">extern</span> PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;</div>
-<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160;<span class="preprocessor">    #endif // #if VMA_VULKAN_VERSION &gt;= 1001000</span></div>
-<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160;<span class="preprocessor">#endif // #if defined(__ANDROID__) &amp;&amp; VMA_STATIC_VULKAN_FUNCTIONS &amp;&amp; VK_NO_PROTOTYPES</span></div>
-<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160; </div>
-<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160;<span class="preprocessor">#ifndef VULKAN_H_</span></div>
-<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160;<span class="preprocessor">    #include &lt;vulkan/vulkan.h&gt;</span></div>
-<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160; </div>
-<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160;<span class="comment">// Define this macro to declare maximum supported Vulkan version in format AAABBBCCC,</span></div>
-<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160;<span class="comment">// where AAA = major, BBB = minor, CCC = patch.</span></div>
-<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160;<span class="comment">// If you want to use version &gt; 1.0, it still needs to be enabled via VmaAllocatorCreateInfo::vulkanApiVersion.</span></div>
-<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160;<span class="preprocessor">#if !defined(VMA_VULKAN_VERSION)</span></div>
-<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160;<span class="preprocessor">    #if defined(VK_VERSION_1_2)</span></div>
-<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160;<span class="preprocessor">        #define VMA_VULKAN_VERSION 1002000</span></div>
-<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160;<span class="preprocessor">    #elif defined(VK_VERSION_1_1)</span></div>
-<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160;<span class="preprocessor">        #define VMA_VULKAN_VERSION 1001000</span></div>
-<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>&#160;<span class="preprocessor">        #define VMA_VULKAN_VERSION 1000000</span></div>
-<div class="line"><a name="l01962"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1a2407c283893638cc039bb31fcd74b6"> 1962</a></span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160; </div>
-<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160;<span class="preprocessor">#if !defined(VMA_DEDICATED_ALLOCATION)</span></div>
-<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;<span class="preprocessor">    #if VK_KHR_get_memory_requirements2 &amp;&amp; VK_KHR_dedicated_allocation</span></div>
-<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160;<span class="preprocessor">        #define VMA_DEDICATED_ALLOCATION 1</span></div>
-<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160;<span class="preprocessor">        #define VMA_DEDICATED_ALLOCATION 0</span></div>
-<div class="line"><a name="l01970"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af7b860e63b96d11e44ae8587ba06bbf4"> 1970</a></span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160; </div>
-<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160;<span class="preprocessor">#if !defined(VMA_BIND_MEMORY2)</span></div>
-<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>&#160;<span class="preprocessor">    #if VK_KHR_bind_memory2</span></div>
-<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>&#160;<span class="preprocessor">        #define VMA_BIND_MEMORY2 1</span></div>
-<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>&#160;<span class="preprocessor">        #define VMA_BIND_MEMORY2 0</span></div>
-<div class="line"><a name="l01978"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a88bef97f86d70a34a4c0746e09a2680d"> 1978</a></span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160; </div>
-<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;<span class="preprocessor">#if !defined(VMA_MEMORY_BUDGET)</span></div>
-<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160;<span class="preprocessor">    #if VK_EXT_memory_budget &amp;&amp; (VK_KHR_get_physical_device_properties2 || VMA_VULKAN_VERSION &gt;= 1001000)</span></div>
-<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>&#160;<span class="preprocessor">        #define VMA_MEMORY_BUDGET 1</span></div>
-<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>&#160;<span class="preprocessor">        #define VMA_MEMORY_BUDGET 0</span></div>
-<div class="line"><a name="l01986"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a05decf1cf4ebf767beba7acca6c1ec3a"> 1986</a></span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>&#160; </div>
-<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160;<span class="comment">// Defined to 1 when VK_KHR_buffer_device_address device extension or equivalent core Vulkan 1.2 feature is defined in its headers.</span></div>
-<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>&#160;<span class="preprocessor">#if !defined(VMA_BUFFER_DEVICE_ADDRESS)</span></div>
-<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>&#160;<span class="preprocessor">    #if VK_KHR_buffer_device_address || VMA_VULKAN_VERSION &gt;= 1002000</span></div>
-<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>&#160;<span class="preprocessor">        #define VMA_BUFFER_DEVICE_ADDRESS 1</span></div>
-<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160;<span class="preprocessor">        #define VMA_BUFFER_DEVICE_ADDRESS 0</span></div>
-<div class="line"><a name="l01995"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a7f9d5e71b70dd1a137c303a8a8262c10"> 1995</a></span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160; </div>
-<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>&#160;<span class="comment">// Define these macros to decorate all public functions with additional code,</span></div>
-<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>&#160;<span class="comment">// before and after returned type, appropriately. This may be useful for</span></div>
-<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>&#160;<span class="comment">// exporing the functions when compiling VMA as a separate library. Example:</span></div>
-<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160;<span class="comment">// #define VMA_CALL_PRE  __declspec(dllexport)</span></div>
-<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;<span class="comment">// #define VMA_CALL_POST __cdecl</span></div>
-<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160;<span class="preprocessor">#ifndef VMA_CALL_PRE</span></div>
-<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160;<span class="preprocessor">    #define VMA_CALL_PRE</span></div>
-<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160;<span class="preprocessor">#ifndef VMA_CALL_POST</span></div>
-<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160;<span class="preprocessor">    #define VMA_CALL_POST</span></div>
-<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160; </div>
-<div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;<span class="comment">// Define this macro to decorate pointers with an attribute specifying the</span></div>
-<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160;<span class="comment">// length of the array they point to if they are not null.</span></div>
-<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160;<span class="comment">// The length may be one of</span></div>
-<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160;<span class="comment">// - The name of another parameter in the argument list where the pointer is declared</span></div>
-<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160;<span class="comment">// - The name of another member in the struct where the pointer is declared</span></div>
-<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160;<span class="comment">// - The name of a member of a struct type, meaning the value of that member in</span></div>
-<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160;<span class="comment">//   the context of the call. For example</span></div>
-<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160;<span class="comment">//   VMA_LEN_IF_NOT_NULL(&quot;VkPhysicalDeviceMemoryProperties::memoryHeapCount&quot;),</span></div>
-<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;<span class="comment">//   this means the number of memory heaps available in the device associated</span></div>
-<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;<span class="comment">//   with the VmaAllocator being dealt with.</span></div>
-<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160;<span class="preprocessor">#ifndef VMA_LEN_IF_NOT_NULL</span></div>
-<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;<span class="preprocessor">    #define VMA_LEN_IF_NOT_NULL(len)</span></div>
-<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160;<span class="preprocessor">#if VMA_RECORDING_ENABLED</span></div>
+<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160;<span class="preprocessor">    #include &lt;chrono&gt;</span></div>
+<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160;<span class="preprocessor">    #if defined(_WIN32)</span></div>
+<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160;<span class="preprocessor">        #include &lt;windows.h&gt;</span></div>
+<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160;<span class="preprocessor">        #include &lt;sstream&gt;</span></div>
+<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160;<span class="preprocessor">        #include &lt;thread&gt;</span></div>
+<div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160; </div>
+<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160; </div>
+<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160;<span class="comment">Define this macro to 0/1 to disable/enable support for recording functionality,</span></div>
+<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;<span class="comment">available through VmaAllocatorCreateInfo::pRecordSettings.</span></div>
+<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160;<span class="preprocessor">#ifndef VMA_RECORDING_ENABLED</span></div>
+<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;<span class="preprocessor">    #define VMA_RECORDING_ENABLED 0</span></div>
+<div class="line"><a name="l02023"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1f0c126759fc96ccb6e2d23c101d770c"> 2023</a></span>&#160;<span class="preprocessor">#endif</span></div>
 <div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160; </div>
-<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;<span class="comment">// The VMA_NULLABLE macro is defined to be _Nullable when compiling with Clang.</span></div>
-<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;<span class="comment">// see: https://clang.llvm.org/docs/AttributeReference.html#nullable</span></div>
-<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160;<span class="preprocessor">#ifndef VMA_NULLABLE</span></div>
-<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;<span class="preprocessor">    #ifdef __clang__</span></div>
-<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE _Nullable</span></div>
-<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE</span></div>
-<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160; </div>
-<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160;<span class="comment">// The VMA_NOT_NULL macro is defined to be _Nonnull when compiling with Clang.</span></div>
-<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160;<span class="comment">// see: https://clang.llvm.org/docs/AttributeReference.html#nonnull</span></div>
-<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160;<span class="preprocessor">#ifndef VMA_NOT_NULL</span></div>
-<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160;<span class="preprocessor">    #ifdef __clang__</span></div>
-<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL _Nonnull</span></div>
-<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL</span></div>
-<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160; </div>
-<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160;<span class="comment">// If non-dispatchable handles are represented as pointers then we can give</span></div>
-<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160;<span class="comment">// then nullability annotations</span></div>
-<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160;<span class="preprocessor">#ifndef VMA_NOT_NULL_NON_DISPATCHABLE</span></div>
-<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160;<span class="preprocessor">    #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) &amp;&amp; !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)</span></div>
-<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL_NON_DISPATCHABLE VMA_NOT_NULL</span></div>
-<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL_NON_DISPATCHABLE</span></div>
-<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160; </div>
-<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160;<span class="preprocessor">#ifndef VMA_NULLABLE_NON_DISPATCHABLE</span></div>
-<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160;<span class="preprocessor">    #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) &amp;&amp; !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)</span></div>
-<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE_NON_DISPATCHABLE VMA_NULLABLE</span></div>
-<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE_NON_DISPATCHABLE</span></div>
-<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160; </div>
-<div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a>)</div>
-<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160; </div>
-<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;<span class="keyword">typedef</span> void (VKAPI_PTR *<a class="code" href="vk__mem__alloc_8h.html#a7e1ed85f7799600b03ad51a77acc21f3">PFN_vmaAllocateDeviceMemoryFunction</a>)(</div>
-<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL                    allocator,</div>
-<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;    uint32_t                                     memoryType,</div>
-<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160;    VkDeviceMemory VMA_NOT_NULL_NON_DISPATCHABLE memory,</div>
-<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>&#160;    VkDeviceSize                                 size,</div>
-<div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE                           pUserData);</div>
-<div class="line"><a name="l02082"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b"> 2082</a></span>&#160;<span class="keyword">typedef</span> void (VKAPI_PTR *<a class="code" href="vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b">PFN_vmaFreeDeviceMemoryFunction</a>)(</div>
-<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL                    allocator,</div>
-<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160;    uint32_t                                     memoryType,</div>
-<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;    VkDeviceMemory VMA_NOT_NULL_NON_DISPATCHABLE memory,</div>
-<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;    VkDeviceSize                                 size,</div>
-<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE                           pUserData);</div>
-<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160; </div>
-<div class="line"><a name="l02096"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html"> 2096</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a> {</div>
-<div class="line"><a name="l02098"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html#a4f17f7b255101e733b44d5633aceabfb"> 2098</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a7e1ed85f7799600b03ad51a77acc21f3">PFN_vmaAllocateDeviceMemoryFunction</a> VMA_NULLABLE <a class="code" href="struct_vma_device_memory_callbacks.html#a4f17f7b255101e733b44d5633aceabfb">pfnAllocate</a>;</div>
-<div class="line"><a name="l02100"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c"> 2100</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b">PFN_vmaFreeDeviceMemoryFunction</a> VMA_NULLABLE <a class="code" href="struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c">pfnFree</a>;</div>
-<div class="line"><a name="l02102"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html#a24052de0937ddd54015a2df0363903c6"> 2102</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_device_memory_callbacks.html#a24052de0937ddd54015a2df0363903c6">pUserData</a>;</div>
-<div class="line"><a name="l02103"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b"> 2103</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b">VmaDeviceMemoryCallbacks</a>;</div>
-<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160; </div>
-<div class="line"><a name="l02106"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c"> 2106</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c">VmaAllocatorCreateFlagBits</a> {</div>
-<div class="line"><a name="l02111"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d"> 2111</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d">VMA_ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT</a> = 0x00000001,</div>
-<div class="line"><a name="l02136"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878"> 2136</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878">VMA_ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT</a> = 0x00000002,</div>
-<div class="line"><a name="l02151"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee"> 2151</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee">VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT</a> = 0x00000004,</div>
-<div class="line"><a name="l02163"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0"> 2163</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0">VMA_ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT</a> = 0x00000008,</div>
-<div class="line"><a name="l02181"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f"> 2181</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f">VMA_ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT</a> = 0x00000010,</div>
-<div class="line"><a name="l02199"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089"> 2199</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089">VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT</a> = 0x00000020,</div>
-<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>&#160; </div>
-<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cae4d5ad929caba5f23eb502b13bd5286c">VMA_ALLOCATOR_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
-<div class="line"><a name="l02202"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#afd73b95e737ee7e76f827cb5472f559f"> 2202</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c">VmaAllocatorCreateFlagBits</a>;</div>
-<div class="line"><a name="l02203"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d"> 2203</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d">VmaAllocatorCreateFlags</a>;</div>
-<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>&#160; </div>
-<div class="line"><a name="l02209"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html"> 2209</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_vulkan_functions.html">VmaVulkanFunctions</a> {</div>
-<div class="line"><a name="l02210"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96"> 2210</a></span>&#160;    PFN_vkGetPhysicalDeviceProperties VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96">vkGetPhysicalDeviceProperties</a>;</div>
-<div class="line"><a name="l02211"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830"> 2211</a></span>&#160;    PFN_vkGetPhysicalDeviceMemoryProperties VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830">vkGetPhysicalDeviceMemoryProperties</a>;</div>
-<div class="line"><a name="l02212"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c"> 2212</a></span>&#160;    PFN_vkAllocateMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c">vkAllocateMemory</a>;</div>
-<div class="line"><a name="l02213"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4"> 2213</a></span>&#160;    PFN_vkFreeMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4">vkFreeMemory</a>;</div>
-<div class="line"><a name="l02214"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49"> 2214</a></span>&#160;    PFN_vkMapMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49">vkMapMemory</a>;</div>
-<div class="line"><a name="l02215"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9"> 2215</a></span>&#160;    PFN_vkUnmapMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9">vkUnmapMemory</a>;</div>
-<div class="line"><a name="l02216"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9"> 2216</a></span>&#160;    PFN_vkFlushMappedMemoryRanges VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9">vkFlushMappedMemoryRanges</a>;</div>
-<div class="line"><a name="l02217"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1"> 2217</a></span>&#160;    PFN_vkInvalidateMappedMemoryRanges VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1">vkInvalidateMappedMemoryRanges</a>;</div>
-<div class="line"><a name="l02218"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2"> 2218</a></span>&#160;    PFN_vkBindBufferMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2">vkBindBufferMemory</a>;</div>
-<div class="line"><a name="l02219"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637"> 2219</a></span>&#160;    PFN_vkBindImageMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637">vkBindImageMemory</a>;</div>
-<div class="line"><a name="l02220"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143"> 2220</a></span>&#160;    PFN_vkGetBufferMemoryRequirements VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143">vkGetBufferMemoryRequirements</a>;</div>
-<div class="line"><a name="l02221"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4"> 2221</a></span>&#160;    PFN_vkGetImageMemoryRequirements VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4">vkGetImageMemoryRequirements</a>;</div>
-<div class="line"><a name="l02222"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f"> 2222</a></span>&#160;    PFN_vkCreateBuffer VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f">vkCreateBuffer</a>;</div>
-<div class="line"><a name="l02223"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45"> 2223</a></span>&#160;    PFN_vkDestroyBuffer VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45">vkDestroyBuffer</a>;</div>
-<div class="line"><a name="l02224"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325"> 2224</a></span>&#160;    PFN_vkCreateImage VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325">vkCreateImage</a>;</div>
-<div class="line"><a name="l02225"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa"> 2225</a></span>&#160;    PFN_vkDestroyImage VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa">vkDestroyImage</a>;</div>
-<div class="line"><a name="l02226"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a"> 2226</a></span>&#160;    PFN_vkCmdCopyBuffer VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a">vkCmdCopyBuffer</a>;</div>
-<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>&#160;<span class="preprocessor">#if VMA_DEDICATED_ALLOCATION || VMA_VULKAN_VERSION &gt;= 1001000</span></div>
-<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>&#160;    PFN_vkGetBufferMemoryRequirements2KHR VMA_NULLABLE vkGetBufferMemoryRequirements2KHR;</div>
-<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>&#160;    PFN_vkGetImageMemoryRequirements2KHR VMA_NULLABLE vkGetImageMemoryRequirements2KHR;</div>
-<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>&#160;<span class="preprocessor">#if VMA_BIND_MEMORY2 || VMA_VULKAN_VERSION &gt;= 1001000</span></div>
-<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>&#160;    PFN_vkBindBufferMemory2KHR VMA_NULLABLE vkBindBufferMemory2KHR;</div>
-<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span>&#160;    PFN_vkBindImageMemory2KHR VMA_NULLABLE vkBindImageMemory2KHR;</div>
-<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>&#160;<span class="preprocessor">#if VMA_MEMORY_BUDGET || VMA_VULKAN_VERSION &gt;= 1001000</span></div>
-<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160;    PFN_vkGetPhysicalDeviceMemoryProperties2KHR VMA_NULLABLE vkGetPhysicalDeviceMemoryProperties2KHR;</div>
-<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02238"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074"> 2238</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074">VmaVulkanFunctions</a>;</div>
-<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>&#160; </div>
-<div class="line"><a name="l02241"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2"> 2241</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2">VmaRecordFlagBits</a> {</div>
-<div class="line"><a name="l02247"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7"> 2247</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7">VMA_RECORD_FLUSH_AFTER_CALL_BIT</a> = 0x00000001,</div>
-<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160;    </div>
-<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a20dd17d69966dbffa054739d6090b85e">VMA_RECORD_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
-<div class="line"><a name="l02250"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#acd24d5eb58abff7e1f43cb32a1ba1413"> 2250</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2">VmaRecordFlagBits</a>;</div>
-<div class="line"><a name="l02251"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828"> 2251</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828">VmaRecordFlags</a>;</div>
-<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>&#160; </div>
-<div class="line"><a name="l02254"></a><span class="lineno"><a class="line" href="struct_vma_record_settings.html"> 2254</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_record_settings.html">VmaRecordSettings</a></div>
-<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>&#160;{</div>
-<div class="line"><a name="l02257"></a><span class="lineno"><a class="line" href="struct_vma_record_settings.html#ad8fdcc92119ae7a8c08c1a564c01d63a"> 2257</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828">VmaRecordFlags</a> <a class="code" href="struct_vma_record_settings.html#ad8fdcc92119ae7a8c08c1a564c01d63a">flags</a>;</div>
-<div class="line"><a name="l02265"></a><span class="lineno"><a class="line" href="struct_vma_record_settings.html#a6cb1fdbf6bcb610b68f2010dd629e89d"> 2265</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* VMA_NOT_NULL <a class="code" href="struct_vma_record_settings.html#a6cb1fdbf6bcb610b68f2010dd629e89d">pFilePath</a>;</div>
-<div class="line"><a name="l02266"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc"> 2266</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc">VmaRecordSettings</a>;</div>
-<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160; </div>
-<div class="line"><a name="l02269"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html"> 2269</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></div>
-<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160;{</div>
-<div class="line"><a name="l02272"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a392ea2ecbaff93f91a7c49f735ad4346"> 2272</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d">VmaAllocatorCreateFlags</a> <a class="code" href="struct_vma_allocator_create_info.html#a392ea2ecbaff93f91a7c49f735ad4346">flags</a>;</div>
-<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160; </div>
-<div class="line"><a name="l02275"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156"> 2275</a></span>&#160;    VkPhysicalDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">physicalDevice</a>;</div>
-<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>&#160; </div>
-<div class="line"><a name="l02278"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500"> 2278</a></span>&#160;    VkDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500">device</a>;</div>
-<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160; </div>
-<div class="line"><a name="l02281"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a"> 2281</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">preferredLargeHeapBlockSize</a>;</div>
-<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160; </div>
-<div class="line"><a name="l02284"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d"> 2284</a></span>&#160;    <span class="keyword">const</span> VkAllocationCallbacks* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d">pAllocationCallbacks</a>;</div>
-<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>&#160; </div>
-<div class="line"><a name="l02287"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e"> 2287</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a>* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e">pDeviceMemoryCallbacks</a>;</div>
-<div class="line"><a name="l02301"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7"> 2301</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7">frameInUseCount</a>;</div>
-<div class="line"><a name="l02326"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a31c192aa6cbffa33279f6d9f0c47c44b"> 2326</a></span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(<span class="stringliteral">&quot;VkPhysicalDeviceMemoryProperties::memoryHeapCount&quot;</span>) <a class="code" href="struct_vma_allocator_create_info.html#a31c192aa6cbffa33279f6d9f0c47c44b">pHeapSizeLimit</a>;</div>
-<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>&#160; </div>
-<div class="line"><a name="l02332"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a3dc197be3227da7338b1643f70db36bd"> 2332</a></span>&#160;    const <a class="code" href="struct_vma_vulkan_functions.html">VmaVulkanFunctions</a>* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#a3dc197be3227da7338b1643f70db36bd">pVulkanFunctions</a>;</div>
-<div class="line"><a name="l02339"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#ace2aa4877b16a42b0b7673d4e26000ee"> 2339</a></span>&#160;    const <a class="code" href="struct_vma_record_settings.html">VmaRecordSettings</a>* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#ace2aa4877b16a42b0b7673d4e26000ee">pRecordSettings</a>;</div>
-<div class="line"><a name="l02344"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b"> 2344</a></span>&#160;    VkInstance VMA_NOT_NULL <a class="code" href="struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b">instance</a>;</div>
-<div class="line"><a name="l02353"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285"> 2353</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285">vulkanApiVersion</a>;</div>
-<div class="line"><a name="l02354"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aad9652301d33759b83e52d4f3605a14a"> 2354</a></span>&#160;} <a class="code" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a>;</div>
-<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>&#160; </div>
-<div class="line"><a name="l02357"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb"> 2357</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb">vmaCreateAllocator</a>(</div>
-<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>&#160;    const <a class="code" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
-<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NULLABLE * VMA_NOT_NULL pAllocator);</div>
-<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>&#160; </div>
-<div class="line"><a name="l02362"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d"> 2362</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d">vmaDestroyAllocator</a>(</div>
-<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NULLABLE allocator);</div>
-<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>&#160; </div>
-<div class="line"><a name="l02367"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html"> 2367</a></span>&#160;typedef struct <a class="code" href="struct_vma_allocator_info.html">VmaAllocatorInfo</a></div>
-<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>&#160;{</div>
-<div class="line"><a name="l02373"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html#a2ed6a4d2d3fea039d66a13f15d0ce5fe"> 2373</a></span>&#160;    VkInstance VMA_NOT_NULL <a class="code" href="struct_vma_allocator_info.html#a2ed6a4d2d3fea039d66a13f15d0ce5fe">instance</a>;</div>
-<div class="line"><a name="l02378"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html#aba2b703f96e51d567717e1fb2935b47a"> 2378</a></span>&#160;    VkPhysicalDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_info.html#aba2b703f96e51d567717e1fb2935b47a">physicalDevice</a>;</div>
-<div class="line"><a name="l02383"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html#a012b4c485bf3b0ea8921352c5ee0c357"> 2383</a></span>&#160;    VkDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_info.html#a012b4c485bf3b0ea8921352c5ee0c357">device</a>;</div>
-<div class="line"><a name="l02384"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c"> 2384</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c">VmaAllocatorInfo</a>;</div>
-<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>&#160; </div>
-<div class="line"><a name="l02391"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7"> 2391</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7">vmaGetAllocatorInfo</a>(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator, <a class="code" href="struct_vma_allocator_info.html">VmaAllocatorInfo</a>* VMA_NOT_NULL pAllocatorInfo);</div>
-<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>&#160; </div>
-<div class="line"><a name="l02397"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0"> 2397</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0">vmaGetPhysicalDeviceProperties</a>(</div>
-<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160;    <span class="keyword">const</span> VkPhysicalDeviceProperties* VMA_NULLABLE * VMA_NOT_NULL ppPhysicalDeviceProperties);</div>
-<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160; </div>
-<div class="line"><a name="l02405"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19"> 2405</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19">vmaGetMemoryProperties</a>(</div>
-<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>&#160;    <span class="keyword">const</span> VkPhysicalDeviceMemoryProperties* VMA_NULLABLE * VMA_NOT_NULL ppPhysicalDeviceMemoryProperties);</div>
-<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>&#160; </div>
-<div class="line"><a name="l02415"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca"> 2415</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca">vmaGetMemoryTypeProperties</a>(</div>
-<div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>&#160;    uint32_t memoryTypeIndex,</div>
-<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>&#160;    VkMemoryPropertyFlags* VMA_NOT_NULL pFlags);</div>
-<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>&#160; </div>
-<div class="line"><a name="l02428"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236"> 2428</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236">vmaSetCurrentFrameIndex</a>(</div>
-<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>&#160;    uint32_t frameIndex);</div>
-<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span>&#160; </div>
-<div class="line"><a name="l02434"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html"> 2434</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a></div>
-<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>&#160;{</div>
-<div class="line"><a name="l02437"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#abc4bb7cd611900778464c56e50c970a4"> 2437</a></span>&#160;    uint32_t <a class="code" href="struct_vma_stat_info.html#abc4bb7cd611900778464c56e50c970a4">blockCount</a>;</div>
-<div class="line"><a name="l02439"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#a537741e4d5cdddc1c0ab95ec650afaff"> 2439</a></span>&#160;    uint32_t <a class="code" href="struct_vma_stat_info.html#a537741e4d5cdddc1c0ab95ec650afaff">allocationCount</a>;</div>
-<div class="line"><a name="l02441"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9"> 2441</a></span>&#160;    uint32_t <a class="code" href="struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9">unusedRangeCount</a>;</div>
-<div class="line"><a name="l02443"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a"> 2443</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a">usedBytes</a>;</div>
-<div class="line"><a name="l02445"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669"> 2445</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669">unusedBytes</a>;</div>
-<div class="line"><a name="l02446"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#ade8b40bd3139c04aabd2fc538a356fea"> 2446</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#ade8b40bd3139c04aabd2fc538a356fea">allocationSizeMin</a>, allocationSizeAvg, allocationSizeMax;</div>
-<div class="line"><a name="l02447"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4"> 2447</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4">unusedRangeSizeMin</a>, unusedRangeSizeAvg, unusedRangeSizeMax;</div>
-<div class="line"><a name="l02448"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878"> 2448</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878">VmaStatInfo</a>;</div>
-<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span>&#160; </div>
-<div class="line"><a name="l02451"></a><span class="lineno"><a class="line" href="struct_vma_stats.html"> 2451</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_stats.html">VmaStats</a></div>
-<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>&#160;{</div>
-<div class="line"><a name="l02453"></a><span class="lineno"><a class="line" href="struct_vma_stats.html#a13e3caf754be79352c42408756309331"> 2453</a></span>&#160;    <a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a> memoryType[VK_MAX_MEMORY_TYPES];</div>
-<div class="line"><a name="l02454"></a><span class="lineno"><a class="line" href="struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0"> 2454</a></span>&#160;    <a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a> memoryHeap[VK_MAX_MEMORY_HEAPS];</div>
-<div class="line"><a name="l02455"></a><span class="lineno"><a class="line" href="struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9"> 2455</a></span>&#160;    <a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a> <a class="code" href="struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9">total</a>;</div>
-<div class="line"><a name="l02456"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034"> 2456</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034">VmaStats</a>;</div>
-<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>&#160; </div>
-<div class="line"><a name="l02467"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3"> 2467</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3">vmaCalculateStats</a>(</div>
-<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span>&#160;    <a class="code" href="struct_vma_stats.html">VmaStats</a>* VMA_NOT_NULL pStats);</div>
+<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;<span class="preprocessor">#ifndef NOMINMAX</span></div>
+<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;<span class="preprocessor">    #define NOMINMAX // For windows.h</span></div>
+<div class="line"><a name="l02027"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9f918755b601cf4bffca775992e6fb90"> 2027</a></span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160; </div>
+<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;<span class="preprocessor">#if defined(__ANDROID__) &amp;&amp; defined(VK_NO_PROTOTYPES) &amp;&amp; VMA_STATIC_VULKAN_FUNCTIONS</span></div>
+<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>&#160;    <span class="keyword">extern</span> PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;</div>
+<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;    <span class="keyword">extern</span> PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;</div>
+<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160;    <span class="keyword">extern</span> PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;</div>
+<div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160;    <span class="keyword">extern</span> PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;</div>
+<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160;    <span class="keyword">extern</span> PFN_vkAllocateMemory vkAllocateMemory;</div>
+<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160;    <span class="keyword">extern</span> PFN_vkFreeMemory vkFreeMemory;</div>
+<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160;    <span class="keyword">extern</span> PFN_vkMapMemory vkMapMemory;</div>
+<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160;    <span class="keyword">extern</span> PFN_vkUnmapMemory vkUnmapMemory;</div>
+<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160;    <span class="keyword">extern</span> PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;</div>
+<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160;    <span class="keyword">extern</span> PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;</div>
+<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160;    <span class="keyword">extern</span> PFN_vkBindBufferMemory vkBindBufferMemory;</div>
+<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160;    <span class="keyword">extern</span> PFN_vkBindImageMemory vkBindImageMemory;</div>
+<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160;    <span class="keyword">extern</span> PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;</div>
+<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160;    <span class="keyword">extern</span> PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;</div>
+<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160;    <span class="keyword">extern</span> PFN_vkCreateBuffer vkCreateBuffer;</div>
+<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160;    <span class="keyword">extern</span> PFN_vkDestroyBuffer vkDestroyBuffer;</div>
+<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160;    <span class="keyword">extern</span> PFN_vkCreateImage vkCreateImage;</div>
+<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160;    <span class="keyword">extern</span> PFN_vkDestroyImage vkDestroyImage;</div>
+<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160;    <span class="keyword">extern</span> PFN_vkCmdCopyBuffer vkCmdCopyBuffer;</div>
+<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160;<span class="preprocessor">    #if VMA_VULKAN_VERSION &gt;= 1001000</span></div>
+<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160;        <span class="keyword">extern</span> PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;</div>
+<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160;        <span class="keyword">extern</span> PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;</div>
+<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160;        <span class="keyword">extern</span> PFN_vkBindBufferMemory2 vkBindBufferMemory2;</div>
+<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160;        <span class="keyword">extern</span> PFN_vkBindImageMemory2 vkBindImageMemory2;</div>
+<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160;        <span class="keyword">extern</span> PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;</div>
+<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160;<span class="preprocessor">    #endif // #if VMA_VULKAN_VERSION &gt;= 1001000</span></div>
+<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160;<span class="preprocessor">#endif // #if defined(__ANDROID__) &amp;&amp; VMA_STATIC_VULKAN_FUNCTIONS &amp;&amp; VK_NO_PROTOTYPES</span></div>
+<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160; </div>
+<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160;<span class="preprocessor">#ifndef VULKAN_H_</span></div>
+<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160;<span class="preprocessor">    #include &lt;vulkan/vulkan.h&gt;</span></div>
+<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160; </div>
+<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160;<span class="comment">// Define this macro to declare maximum supported Vulkan version in format AAABBBCCC,</span></div>
+<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>&#160;<span class="comment">// where AAA = major, BBB = minor, CCC = patch.</span></div>
+<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>&#160;<span class="comment">// If you want to use version &gt; 1.0, it still needs to be enabled via VmaAllocatorCreateInfo::vulkanApiVersion.</span></div>
+<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>&#160;<span class="preprocessor">#if !defined(VMA_VULKAN_VERSION)</span></div>
+<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160;<span class="preprocessor">    #if defined(VK_VERSION_1_2)</span></div>
+<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>&#160;<span class="preprocessor">        #define VMA_VULKAN_VERSION 1002000</span></div>
+<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160;<span class="preprocessor">    #elif defined(VK_VERSION_1_1)</span></div>
+<div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>&#160;<span class="preprocessor">        #define VMA_VULKAN_VERSION 1001000</span></div>
+<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>&#160;<span class="preprocessor">        #define VMA_VULKAN_VERSION 1000000</span></div>
+<div class="line"><a name="l02072"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1a2407c283893638cc039bb31fcd74b6"> 2072</a></span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160; </div>
+<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;<span class="preprocessor">#if !defined(VMA_DEDICATED_ALLOCATION)</span></div>
+<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;<span class="preprocessor">    #if VK_KHR_get_memory_requirements2 &amp;&amp; VK_KHR_dedicated_allocation</span></div>
+<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;<span class="preprocessor">        #define VMA_DEDICATED_ALLOCATION 1</span></div>
+<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>&#160;<span class="preprocessor">        #define VMA_DEDICATED_ALLOCATION 0</span></div>
+<div class="line"><a name="l02080"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af7b860e63b96d11e44ae8587ba06bbf4"> 2080</a></span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160; </div>
+<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160;<span class="preprocessor">#if !defined(VMA_BIND_MEMORY2)</span></div>
+<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160;<span class="preprocessor">    #if VK_KHR_bind_memory2</span></div>
+<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;<span class="preprocessor">        #define VMA_BIND_MEMORY2 1</span></div>
+<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160;<span class="preprocessor">        #define VMA_BIND_MEMORY2 0</span></div>
+<div class="line"><a name="l02088"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a88bef97f86d70a34a4c0746e09a2680d"> 2088</a></span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>&#160; </div>
+<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>&#160;<span class="preprocessor">#if !defined(VMA_MEMORY_BUDGET)</span></div>
+<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>&#160;<span class="preprocessor">    #if VK_EXT_memory_budget &amp;&amp; (VK_KHR_get_physical_device_properties2 || VMA_VULKAN_VERSION &gt;= 1001000)</span></div>
+<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>&#160;<span class="preprocessor">        #define VMA_MEMORY_BUDGET 1</span></div>
+<div class="line"><a name="l02094"></a><span class="lineno"> 2094</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span>&#160;<span class="preprocessor">        #define VMA_MEMORY_BUDGET 0</span></div>
+<div class="line"><a name="l02096"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a05decf1cf4ebf767beba7acca6c1ec3a"> 2096</a></span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160; </div>
+<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160;<span class="comment">// Defined to 1 when VK_KHR_buffer_device_address device extension or equivalent core Vulkan 1.2 feature is defined in its headers.</span></div>
+<div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160;<span class="preprocessor">#if !defined(VMA_BUFFER_DEVICE_ADDRESS)</span></div>
+<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160;<span class="preprocessor">    #if VK_KHR_buffer_device_address || VMA_VULKAN_VERSION &gt;= 1002000</span></div>
+<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160;<span class="preprocessor">        #define VMA_BUFFER_DEVICE_ADDRESS 1</span></div>
+<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160;<span class="preprocessor">        #define VMA_BUFFER_DEVICE_ADDRESS 0</span></div>
+<div class="line"><a name="l02105"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a7f9d5e71b70dd1a137c303a8a8262c10"> 2105</a></span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160; </div>
+<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160;<span class="comment">// Define these macros to decorate all public functions with additional code,</span></div>
+<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160;<span class="comment">// before and after returned type, appropriately. This may be useful for</span></div>
+<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160;<span class="comment">// exporing the functions when compiling VMA as a separate library. Example:</span></div>
+<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160;<span class="comment">// #define VMA_CALL_PRE  __declspec(dllexport)</span></div>
+<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>&#160;<span class="comment">// #define VMA_CALL_POST __cdecl</span></div>
+<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>&#160;<span class="preprocessor">#ifndef VMA_CALL_PRE</span></div>
+<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160;<span class="preprocessor">    #define VMA_CALL_PRE</span></div>
+<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>&#160;<span class="preprocessor">#ifndef VMA_CALL_POST</span></div>
+<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>&#160;<span class="preprocessor">    #define VMA_CALL_POST</span></div>
+<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>&#160; </div>
+<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>&#160;<span class="comment">// Define this macro to decorate pointers with an attribute specifying the</span></div>
+<div class="line"><a name="l02121"></a><span class="lineno"> 2121</span>&#160;<span class="comment">// length of the array they point to if they are not null.</span></div>
+<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>&#160;<span class="comment">// The length may be one of</span></div>
+<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>&#160;<span class="comment">// - The name of another parameter in the argument list where the pointer is declared</span></div>
+<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>&#160;<span class="comment">// - The name of another member in the struct where the pointer is declared</span></div>
+<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>&#160;<span class="comment">// - The name of a member of a struct type, meaning the value of that member in</span></div>
+<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160;<span class="comment">//   the context of the call. For example</span></div>
+<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;<span class="comment">//   VMA_LEN_IF_NOT_NULL(&quot;VkPhysicalDeviceMemoryProperties::memoryHeapCount&quot;),</span></div>
+<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160;<span class="comment">//   this means the number of memory heaps available in the device associated</span></div>
+<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>&#160;<span class="comment">//   with the VmaAllocator being dealt with.</span></div>
+<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160;<span class="preprocessor">#ifndef VMA_LEN_IF_NOT_NULL</span></div>
+<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160;<span class="preprocessor">    #define VMA_LEN_IF_NOT_NULL(len)</span></div>
+<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>&#160; </div>
+<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>&#160;<span class="comment">// The VMA_NULLABLE macro is defined to be _Nullable when compiling with Clang.</span></div>
+<div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>&#160;<span class="comment">// see: https://clang.llvm.org/docs/AttributeReference.html#nullable</span></div>
+<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>&#160;<span class="preprocessor">#ifndef VMA_NULLABLE</span></div>
+<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>&#160;<span class="preprocessor">    #ifdef __clang__</span></div>
+<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE _Nullable</span></div>
+<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE</span></div>
+<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>&#160; </div>
+<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>&#160;<span class="comment">// The VMA_NOT_NULL macro is defined to be _Nonnull when compiling with Clang.</span></div>
+<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>&#160;<span class="comment">// see: https://clang.llvm.org/docs/AttributeReference.html#nonnull</span></div>
+<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>&#160;<span class="preprocessor">#ifndef VMA_NOT_NULL</span></div>
+<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>&#160;<span class="preprocessor">    #ifdef __clang__</span></div>
+<div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL _Nonnull</span></div>
+<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL</span></div>
+<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160; </div>
+<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160;<span class="comment">// If non-dispatchable handles are represented as pointers then we can give</span></div>
+<div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160;<span class="comment">// then nullability annotations</span></div>
+<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160;<span class="preprocessor">#ifndef VMA_NOT_NULL_NON_DISPATCHABLE</span></div>
+<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160;<span class="preprocessor">    #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) &amp;&amp; !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)</span></div>
+<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL_NON_DISPATCHABLE VMA_NOT_NULL</span></div>
+<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>&#160;<span class="preprocessor">        #define VMA_NOT_NULL_NON_DISPATCHABLE</span></div>
+<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160; </div>
+<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160;<span class="preprocessor">#ifndef VMA_NULLABLE_NON_DISPATCHABLE</span></div>
+<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160;<span class="preprocessor">    #if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) &amp;&amp; !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__)</span></div>
+<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE_NON_DISPATCHABLE VMA_NULLABLE</span></div>
+<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160;<span class="preprocessor">        #define VMA_NULLABLE_NON_DISPATCHABLE</span></div>
+<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>&#160; </div>
+<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a>)</div>
+<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160; </div>
+<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>&#160;<span class="keyword">typedef</span> void (VKAPI_PTR *<a class="code" href="vk__mem__alloc_8h.html#a7e1ed85f7799600b03ad51a77acc21f3">PFN_vmaAllocateDeviceMemoryFunction</a>)(</div>
+<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL                    allocator,</div>
+<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160;    uint32_t                                     memoryType,</div>
+<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>&#160;    VkDeviceMemory VMA_NOT_NULL_NON_DISPATCHABLE memory,</div>
+<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160;    VkDeviceSize                                 size,</div>
+<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE                           pUserData);</div>
+<div class="line"><a name="l02192"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b"> 2192</a></span>&#160;<span class="keyword">typedef</span> void (VKAPI_PTR *<a class="code" href="vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b">PFN_vmaFreeDeviceMemoryFunction</a>)(</div>
+<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL                    allocator,</div>
+<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>&#160;    uint32_t                                     memoryType,</div>
+<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>&#160;    VkDeviceMemory VMA_NOT_NULL_NON_DISPATCHABLE memory,</div>
+<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>&#160;    VkDeviceSize                                 size,</div>
+<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE                           pUserData);</div>
+<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>&#160; </div>
+<div class="line"><a name="l02206"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html"> 2206</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a> {</div>
+<div class="line"><a name="l02208"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html#a4f17f7b255101e733b44d5633aceabfb"> 2208</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a7e1ed85f7799600b03ad51a77acc21f3">PFN_vmaAllocateDeviceMemoryFunction</a> VMA_NULLABLE <a class="code" href="struct_vma_device_memory_callbacks.html#a4f17f7b255101e733b44d5633aceabfb">pfnAllocate</a>;</div>
+<div class="line"><a name="l02210"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c"> 2210</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a154ccaaf53dc2c36378f80f0c4f3679b">PFN_vmaFreeDeviceMemoryFunction</a> VMA_NULLABLE <a class="code" href="struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c">pfnFree</a>;</div>
+<div class="line"><a name="l02212"></a><span class="lineno"><a class="line" href="struct_vma_device_memory_callbacks.html#a24052de0937ddd54015a2df0363903c6"> 2212</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_device_memory_callbacks.html#a24052de0937ddd54015a2df0363903c6">pUserData</a>;</div>
+<div class="line"><a name="l02213"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b"> 2213</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a77692d3c8770ea8882d573206bd27b2b">VmaDeviceMemoryCallbacks</a>;</div>
+<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160; </div>
+<div class="line"><a name="l02216"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c"> 2216</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c">VmaAllocatorCreateFlagBits</a> {</div>
+<div class="line"><a name="l02221"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d"> 2221</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4816ddaed324ba110172ca608a20f29d">VMA_ALLOCATOR_CREATE_EXTERNALLY_SYNCHRONIZED_BIT</a> = 0x00000001,</div>
+<div class="line"><a name="l02246"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878"> 2246</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cace7da7cc6e71a625dfa763c55a597878">VMA_ALLOCATOR_CREATE_KHR_DEDICATED_ALLOCATION_BIT</a> = 0x00000002,</div>
+<div class="line"><a name="l02261"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee"> 2261</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca8fb75bf07cd184ab903596295e863dee">VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT</a> = 0x00000004,</div>
+<div class="line"><a name="l02273"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0"> 2273</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca4d4687863f7bd4b418c6006dc04400b0">VMA_ALLOCATOR_CREATE_EXT_MEMORY_BUDGET_BIT</a> = 0x00000008,</div>
+<div class="line"><a name="l02291"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f"> 2291</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca2acce4886d8078552efa38878413970f">VMA_ALLOCATOR_CREATE_AMD_DEVICE_COHERENT_MEMORY_BIT</a> = 0x00000010,</div>
+<div class="line"><a name="l02309"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089"> 2309</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7ca5f1b28b0414319d1687e1f2b30ab0089">VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT</a> = 0x00000020,</div>
+<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160; </div>
+<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7cae4d5ad929caba5f23eb502b13bd5286c">VMA_ALLOCATOR_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
+<div class="line"><a name="l02312"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#afd73b95e737ee7e76f827cb5472f559f"> 2312</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a4f87c9100d154a65a4ad495f7763cf7c">VmaAllocatorCreateFlagBits</a>;</div>
+<div class="line"><a name="l02313"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d"> 2313</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d">VmaAllocatorCreateFlags</a>;</div>
+<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>&#160; </div>
+<div class="line"><a name="l02319"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html"> 2319</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_vulkan_functions.html">VmaVulkanFunctions</a> {</div>
+<div class="line"><a name="l02320"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96"> 2320</a></span>&#160;    PFN_vkGetPhysicalDeviceProperties VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a77b7a74082823e865dd6546623468f96">vkGetPhysicalDeviceProperties</a>;</div>
+<div class="line"><a name="l02321"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830"> 2321</a></span>&#160;    PFN_vkGetPhysicalDeviceMemoryProperties VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a60d25c33bba06bb8592e6875cbaa9830">vkGetPhysicalDeviceMemoryProperties</a>;</div>
+<div class="line"><a name="l02322"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c"> 2322</a></span>&#160;    PFN_vkAllocateMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a2943bf99dfd784a0e8f599d987e22e6c">vkAllocateMemory</a>;</div>
+<div class="line"><a name="l02323"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4"> 2323</a></span>&#160;    PFN_vkFreeMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a4c658701778564d62034255b5dda91b4">vkFreeMemory</a>;</div>
+<div class="line"><a name="l02324"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49"> 2324</a></span>&#160;    PFN_vkMapMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#ab5c1f38dea3a2cf00dc9eb4f57218c49">vkMapMemory</a>;</div>
+<div class="line"><a name="l02325"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9"> 2325</a></span>&#160;    PFN_vkUnmapMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#acc798589736f0becb317fc2196c1d8b9">vkUnmapMemory</a>;</div>
+<div class="line"><a name="l02326"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9"> 2326</a></span>&#160;    PFN_vkFlushMappedMemoryRanges VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a33c322f4c4ad2810f8a9c97a277572f9">vkFlushMappedMemoryRanges</a>;</div>
+<div class="line"><a name="l02327"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1"> 2327</a></span>&#160;    PFN_vkInvalidateMappedMemoryRanges VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a5c1093bc32386a8060c37c9f282078a1">vkInvalidateMappedMemoryRanges</a>;</div>
+<div class="line"><a name="l02328"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2"> 2328</a></span>&#160;    PFN_vkBindBufferMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a94fc4f3a605d9880bb3c0ba2c2fc80b2">vkBindBufferMemory</a>;</div>
+<div class="line"><a name="l02329"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637"> 2329</a></span>&#160;    PFN_vkBindImageMemory VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a1338d96a128a5ade648b8d934907c637">vkBindImageMemory</a>;</div>
+<div class="line"><a name="l02330"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143"> 2330</a></span>&#160;    PFN_vkGetBufferMemoryRequirements VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a5b92901df89a4194b0d12f6071d4d143">vkGetBufferMemoryRequirements</a>;</div>
+<div class="line"><a name="l02331"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4"> 2331</a></span>&#160;    PFN_vkGetImageMemoryRequirements VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a475f6f49f8debe4d10800592606d53f4">vkGetImageMemoryRequirements</a>;</div>
+<div class="line"><a name="l02332"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f"> 2332</a></span>&#160;    PFN_vkCreateBuffer VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#ae8084315a25006271a2edfc3a447519f">vkCreateBuffer</a>;</div>
+<div class="line"><a name="l02333"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45"> 2333</a></span>&#160;    PFN_vkDestroyBuffer VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a7e054606faddb07f0e8556f3ed317d45">vkDestroyBuffer</a>;</div>
+<div class="line"><a name="l02334"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325"> 2334</a></span>&#160;    PFN_vkCreateImage VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a23ebe70be515b9b5010a1d691200e325">vkCreateImage</a>;</div>
+<div class="line"><a name="l02335"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa"> 2335</a></span>&#160;    PFN_vkDestroyImage VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#a90b898227039b1dcb3520f6e91f09ffa">vkDestroyImage</a>;</div>
+<div class="line"><a name="l02336"></a><span class="lineno"><a class="line" href="struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a"> 2336</a></span>&#160;    PFN_vkCmdCopyBuffer VMA_NULLABLE <a class="code" href="struct_vma_vulkan_functions.html#ae5c0db8c89a3b82593dc16aa6a49fa3a">vkCmdCopyBuffer</a>;</div>
+<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>&#160;<span class="preprocessor">#if VMA_DEDICATED_ALLOCATION || VMA_VULKAN_VERSION &gt;= 1001000</span></div>
+<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span>&#160;    PFN_vkGetBufferMemoryRequirements2KHR VMA_NULLABLE vkGetBufferMemoryRequirements2KHR;</div>
+<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span>&#160;    PFN_vkGetImageMemoryRequirements2KHR VMA_NULLABLE vkGetImageMemoryRequirements2KHR;</div>
+<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>&#160;<span class="preprocessor">#if VMA_BIND_MEMORY2 || VMA_VULKAN_VERSION &gt;= 1001000</span></div>
+<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160;    PFN_vkBindBufferMemory2KHR VMA_NULLABLE vkBindBufferMemory2KHR;</div>
+<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160;    PFN_vkBindImageMemory2KHR VMA_NULLABLE vkBindImageMemory2KHR;</div>
+<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>&#160;<span class="preprocessor">#if VMA_MEMORY_BUDGET || VMA_VULKAN_VERSION &gt;= 1001000</span></div>
+<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160;    PFN_vkGetPhysicalDeviceMemoryProperties2KHR VMA_NULLABLE vkGetPhysicalDeviceMemoryProperties2KHR;</div>
+<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02348"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074"> 2348</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#abb0a8e3b5040d847571cca6c7f9a8074">VmaVulkanFunctions</a>;</div>
+<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160; </div>
+<div class="line"><a name="l02351"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2"> 2351</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2">VmaRecordFlagBits</a> {</div>
+<div class="line"><a name="l02357"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7"> 2357</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a8e7ab322e8732654be627c4ea8f36cc7">VMA_RECORD_FLUSH_AFTER_CALL_BIT</a> = 0x00000001,</div>
+<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>&#160;    </div>
+<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2a20dd17d69966dbffa054739d6090b85e">VMA_RECORD_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
+<div class="line"><a name="l02360"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#acd24d5eb58abff7e1f43cb32a1ba1413"> 2360</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a4dd2c44642312a147a4e93373a6e64d2">VmaRecordFlagBits</a>;</div>
+<div class="line"><a name="l02361"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828"> 2361</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828">VmaRecordFlags</a>;</div>
+<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span>&#160; </div>
+<div class="line"><a name="l02364"></a><span class="lineno"><a class="line" href="struct_vma_record_settings.html"> 2364</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_record_settings.html">VmaRecordSettings</a></div>
+<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>&#160;{</div>
+<div class="line"><a name="l02367"></a><span class="lineno"><a class="line" href="struct_vma_record_settings.html#ad8fdcc92119ae7a8c08c1a564c01d63a"> 2367</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#af3929a1a4547c592fc0b0e55ef452828">VmaRecordFlags</a> <a class="code" href="struct_vma_record_settings.html#ad8fdcc92119ae7a8c08c1a564c01d63a">flags</a>;</div>
+<div class="line"><a name="l02375"></a><span class="lineno"><a class="line" href="struct_vma_record_settings.html#a6cb1fdbf6bcb610b68f2010dd629e89d"> 2375</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* VMA_NOT_NULL <a class="code" href="struct_vma_record_settings.html#a6cb1fdbf6bcb610b68f2010dd629e89d">pFilePath</a>;</div>
+<div class="line"><a name="l02376"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc"> 2376</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a16e21c877101493fce582664cd8754fc">VmaRecordSettings</a>;</div>
+<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>&#160; </div>
+<div class="line"><a name="l02379"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html"> 2379</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></div>
+<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>&#160;{</div>
+<div class="line"><a name="l02382"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a392ea2ecbaff93f91a7c49f735ad4346"> 2382</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#acfe6863e160722c2c1bbcf7573fddc4d">VmaAllocatorCreateFlags</a> <a class="code" href="struct_vma_allocator_create_info.html#a392ea2ecbaff93f91a7c49f735ad4346">flags</a>;</div>
+<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>&#160; </div>
+<div class="line"><a name="l02385"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156"> 2385</a></span>&#160;    VkPhysicalDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">physicalDevice</a>;</div>
+<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>&#160; </div>
+<div class="line"><a name="l02388"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500"> 2388</a></span>&#160;    VkDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500">device</a>;</div>
+<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>&#160; </div>
+<div class="line"><a name="l02391"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a"> 2391</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">preferredLargeHeapBlockSize</a>;</div>
+<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>&#160; </div>
+<div class="line"><a name="l02394"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d"> 2394</a></span>&#160;    <span class="keyword">const</span> VkAllocationCallbacks* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d">pAllocationCallbacks</a>;</div>
+<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160; </div>
+<div class="line"><a name="l02397"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e"> 2397</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a>* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e">pDeviceMemoryCallbacks</a>;</div>
+<div class="line"><a name="l02411"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7"> 2411</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7">frameInUseCount</a>;</div>
+<div class="line"><a name="l02436"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a31c192aa6cbffa33279f6d9f0c47c44b"> 2436</a></span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(<span class="stringliteral">&quot;VkPhysicalDeviceMemoryProperties::memoryHeapCount&quot;</span>) <a class="code" href="struct_vma_allocator_create_info.html#a31c192aa6cbffa33279f6d9f0c47c44b">pHeapSizeLimit</a>;</div>
+<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>&#160; </div>
+<div class="line"><a name="l02442"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a3dc197be3227da7338b1643f70db36bd"> 2442</a></span>&#160;    const <a class="code" href="struct_vma_vulkan_functions.html">VmaVulkanFunctions</a>* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#a3dc197be3227da7338b1643f70db36bd">pVulkanFunctions</a>;</div>
+<div class="line"><a name="l02449"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#ace2aa4877b16a42b0b7673d4e26000ee"> 2449</a></span>&#160;    const <a class="code" href="struct_vma_record_settings.html">VmaRecordSettings</a>* VMA_NULLABLE <a class="code" href="struct_vma_allocator_create_info.html#ace2aa4877b16a42b0b7673d4e26000ee">pRecordSettings</a>;</div>
+<div class="line"><a name="l02454"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b"> 2454</a></span>&#160;    VkInstance VMA_NOT_NULL <a class="code" href="struct_vma_allocator_create_info.html#a70dd42e29b1df1d1b9b61532ae0b370b">instance</a>;</div>
+<div class="line"><a name="l02463"></a><span class="lineno"><a class="line" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285"> 2463</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocator_create_info.html#ae0ffc55139b54520a6bb704b29ffc285">vulkanApiVersion</a>;</div>
+<div class="line"><a name="l02464"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aad9652301d33759b83e52d4f3605a14a"> 2464</a></span>&#160;} <a class="code" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a>;</div>
+<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>&#160; </div>
+<div class="line"><a name="l02467"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb"> 2467</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a200692051ddb34240248234f5f4c17bb">vmaCreateAllocator</a>(</div>
+<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>&#160;    const <a class="code" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
+<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NULLABLE * VMA_NOT_NULL pAllocator);</div>
 <div class="line"><a name="l02470"></a><span class="lineno"> 2470</span>&#160; </div>
-<div class="line"><a name="l02473"></a><span class="lineno"><a class="line" href="struct_vma_budget.html"> 2473</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_budget.html">VmaBudget</a></div>
-<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160;{</div>
-<div class="line"><a name="l02477"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#a58b492901baab685f466199124e514a0"> 2477</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#a58b492901baab685f466199124e514a0">blockBytes</a>;</div>
-<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span>&#160;    </div>
-<div class="line"><a name="l02488"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#a7e2a6583ebd63e194951c542563804d8"> 2488</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#a7e2a6583ebd63e194951c542563804d8">allocationBytes</a>;</div>
-<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span>&#160;    </div>
-<div class="line"><a name="l02498"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6"> 2498</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6">usage</a>;</div>
-<div class="line"><a name="l02499"></a><span class="lineno"> 2499</span>&#160;    </div>
-<div class="line"><a name="l02509"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#ab82e1d1754c2d210d0bdf90220bc6cdd"> 2509</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#ab82e1d1754c2d210d0bdf90220bc6cdd">budget</a>;</div>
-<div class="line"><a name="l02510"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d"> 2510</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d">VmaBudget</a>;</div>
-<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>&#160; </div>
-<div class="line"><a name="l02522"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba"> 2522</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba">vmaGetBudget</a>(</div>
-<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>&#160;    <a class="code" href="struct_vma_budget.html">VmaBudget</a>* VMA_NOT_NULL pBudget);</div>
-<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>&#160; </div>
-<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>&#160;<span class="preprocessor">#ifndef VMA_STATS_STRING_ENABLED</span></div>
-<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>&#160;<span class="preprocessor">#define VMA_STATS_STRING_ENABLED 1</span></div>
-<div class="line"><a name="l02528"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae25f0d55fd91cb166f002b63244800e1"> 2528</a></span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02472"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d"> 2472</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aa8d164061c88f22fb1fd3c8f3534bc1d">vmaDestroyAllocator</a>(</div>
+<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NULLABLE allocator);</div>
+<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160; </div>
+<div class="line"><a name="l02477"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html"> 2477</a></span>&#160;typedef struct <a class="code" href="struct_vma_allocator_info.html">VmaAllocatorInfo</a></div>
+<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span>&#160;{</div>
+<div class="line"><a name="l02483"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html#a2ed6a4d2d3fea039d66a13f15d0ce5fe"> 2483</a></span>&#160;    VkInstance VMA_NOT_NULL <a class="code" href="struct_vma_allocator_info.html#a2ed6a4d2d3fea039d66a13f15d0ce5fe">instance</a>;</div>
+<div class="line"><a name="l02488"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html#aba2b703f96e51d567717e1fb2935b47a"> 2488</a></span>&#160;    VkPhysicalDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_info.html#aba2b703f96e51d567717e1fb2935b47a">physicalDevice</a>;</div>
+<div class="line"><a name="l02493"></a><span class="lineno"><a class="line" href="struct_vma_allocator_info.html#a012b4c485bf3b0ea8921352c5ee0c357"> 2493</a></span>&#160;    VkDevice VMA_NOT_NULL <a class="code" href="struct_vma_allocator_info.html#a012b4c485bf3b0ea8921352c5ee0c357">device</a>;</div>
+<div class="line"><a name="l02494"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c"> 2494</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a1988031b0223fdbd564250fa1edd942c">VmaAllocatorInfo</a>;</div>
+<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span>&#160; </div>
+<div class="line"><a name="l02501"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7"> 2501</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#afa02231a791b37255720d566a52683e7">vmaGetAllocatorInfo</a>(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator, <a class="code" href="struct_vma_allocator_info.html">VmaAllocatorInfo</a>* VMA_NOT_NULL pAllocatorInfo);</div>
+<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>&#160; </div>
+<div class="line"><a name="l02507"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0"> 2507</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aecabf7b6e91ea87d0316fa0a9e014fe0">vmaGetPhysicalDeviceProperties</a>(</div>
+<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span>&#160;    <span class="keyword">const</span> VkPhysicalDeviceProperties* VMA_NULLABLE * VMA_NOT_NULL ppPhysicalDeviceProperties);</div>
+<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>&#160; </div>
+<div class="line"><a name="l02515"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19"> 2515</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ab88db292a17974f911182543fda52d19">vmaGetMemoryProperties</a>(</div>
+<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>&#160;    <span class="keyword">const</span> VkPhysicalDeviceMemoryProperties* VMA_NULLABLE * VMA_NOT_NULL ppPhysicalDeviceMemoryProperties);</div>
+<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>&#160; </div>
+<div class="line"><a name="l02525"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca"> 2525</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a8701444752eb5de4464adb5a2b514bca">vmaGetMemoryTypeProperties</a>(</div>
+<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>&#160;    uint32_t memoryTypeIndex,</div>
+<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>&#160;    VkMemoryPropertyFlags* VMA_NOT_NULL pFlags);</div>
 <div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>&#160; </div>
-<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>&#160;<span class="preprocessor">#if VMA_STATS_STRING_ENABLED</span></div>
-<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>&#160; </div>
-<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>&#160; </div>
-<div class="line"><a name="l02535"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0"> 2535</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0">vmaBuildStatsString</a>(</div>
-<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>&#160;    <span class="keywordtype">char</span>* VMA_NULLABLE * VMA_NOT_NULL ppStatsString,</div>
-<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>&#160;    VkBool32 detailedMap);</div>
-<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>&#160; </div>
-<div class="line"><a name="l02540"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288"> 2540</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288">vmaFreeStatsString</a>(</div>
-<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>&#160;    <span class="keywordtype">char</span>* VMA_NULLABLE pStatsString);</div>
-<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>&#160; </div>
-<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>&#160;<span class="preprocessor">#endif // #if VMA_STATS_STRING_ENABLED</span></div>
-<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160; </div>
-<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_pool.html">VmaPool</a>)</div>
-<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>&#160; </div>
-<div class="line"><a name="l02556"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc"> 2556</a></span>&#160;typedef enum <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a></div>
-<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>&#160;{</div>
-<div class="line"><a name="l02561"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd"> 2561</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd">VMA_MEMORY_USAGE_UNKNOWN</a> = 0,</div>
-<div class="line"><a name="l02578"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"> 2578</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a> = 1,</div>
-<div class="line"><a name="l02588"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5"> 2588</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5">VMA_MEMORY_USAGE_CPU_ONLY</a> = 2,</div>
-<div class="line"><a name="l02595"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67"> 2595</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67">VMA_MEMORY_USAGE_CPU_TO_GPU</a> = 3,</div>
-<div class="line"><a name="l02604"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27"> 2604</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27">VMA_MEMORY_USAGE_GPU_TO_CPU</a> = 4,</div>
-<div class="line"><a name="l02610"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500"> 2610</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500">VMA_MEMORY_USAGE_CPU_COPY</a> = 5,</div>
-<div class="line"><a name="l02618"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d"> 2618</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d">VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED</a> = 6,</div>
-<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>&#160; </div>
-<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e">VMA_MEMORY_USAGE_MAX_ENUM</a> = 0x7FFFFFFF</div>
-<div class="line"><a name="l02621"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a806e8499dde802e59eb72a1dc811c35f"> 2621</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a>;</div>
-<div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>&#160; </div>
-<div class="line"><a name="l02624"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597"> 2624</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> {</div>
-<div class="line"><a name="l02631"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f"> 2631</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f">VMA_ALLOCATION_CREATE_DEDICATED_MEMORY_BIT</a> = 0x00000001,</div>
-<div class="line"><a name="l02632"></a><span class="lineno"> 2632</span>&#160; </div>
-<div class="line"><a name="l02642"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff"> 2642</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff">VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT</a> = 0x00000002,</div>
-<div class="line"><a name="l02655"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f"> 2655</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f">VMA_ALLOCATION_CREATE_MAPPED_BIT</a> = 0x00000004,</div>
-<div class="line"><a name="l02668"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2"> 2668</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</a> = 0x00000008,</div>
-<div class="line"><a name="l02675"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e"> 2675</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</a> = 0x00000010,</div>
-<div class="line"><a name="l02681"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520"> 2681</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520">VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT</a> = 0x00000020,</div>
-<div class="line"><a name="l02686"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df"> 2686</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df">VMA_ALLOCATION_CREATE_UPPER_ADDRESS_BIT</a> = 0x00000040,</div>
-<div class="line"><a name="l02692"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea"> 2692</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea">VMA_ALLOCATION_CREATE_DONT_BIND_BIT</a> = 0x00000080,</div>
-<div class="line"><a name="l02696"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d"> 2696</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d">VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT</a> = 0x00000100,</div>
-<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span>&#160; </div>
-<div class="line"><a name="l02701"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d"> 2701</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d">VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT</a>  = 0x00010000,</div>
-<div class="line"><a name="l02705"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62"> 2705</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62">VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT</a> = 0x00020000,</div>
-<div class="line"><a name="l02712"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777"> 2712</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777">VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT</a> = 0x00040000,</div>
-<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>&#160; </div>
-<div class="line"><a name="l02716"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d"> 2716</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d">VMA_ALLOCATION_CREATE_STRATEGY_MIN_MEMORY_BIT</a> = <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d">VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT</a>,</div>
-<div class="line"><a name="l02719"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d"> 2719</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d">VMA_ALLOCATION_CREATE_STRATEGY_MIN_TIME_BIT</a> = <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777">VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT</a>,</div>
-<div class="line"><a name="l02722"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706"> 2722</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706">VMA_ALLOCATION_CREATE_STRATEGY_MIN_FRAGMENTATION_BIT</a> = <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62">VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT</a>,</div>
-<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>&#160; </div>
-<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e">VMA_ALLOCATION_CREATE_STRATEGY_MASK</a> =</div>
-<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d">VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT</a> |</div>
-<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62">VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT</a> |</div>
-<div class="line"><a name="l02729"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e"> 2729</a></span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777">VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT</a>,</div>
-<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span>&#160; </div>
-<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882">VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
-<div class="line"><a name="l02732"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4fceecc301f4064dc808d3cd6c038941"> 2732</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a>;</div>
-<div class="line"><a name="l02733"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817"> 2733</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a>;</div>
-<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>&#160; </div>
-<div class="line"><a name="l02735"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html"> 2735</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div>
-<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span>&#160;{</div>
-<div class="line"><a name="l02738"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b"> 2738</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a> <a class="code" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">flags</a>;</div>
-<div class="line"><a name="l02744"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910"> 2744</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a> <a class="code" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">usage</a>;</div>
-<div class="line"><a name="l02749"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90"> 2749</a></span>&#160;    VkMemoryPropertyFlags <a class="code" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">requiredFlags</a>;</div>
-<div class="line"><a name="l02754"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d"> 2754</a></span>&#160;    VkMemoryPropertyFlags <a class="code" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">preferredFlags</a>;</div>
-<div class="line"><a name="l02762"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055"> 2762</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055">memoryTypeBits</a>;</div>
-<div class="line"><a name="l02768"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150"> 2768</a></span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NULLABLE <a class="code" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">pool</a>;</div>
-<div class="line"><a name="l02775"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19"> 2775</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">pUserData</a>;</div>
-<div class="line"><a name="l02776"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a"> 2776</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a">VmaAllocationCreateInfo</a>;</div>
-<div class="line"><a name="l02777"></a><span class="lineno"> 2777</span>&#160; </div>
-<div class="line"><a name="l02794"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a"> 2794</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a">vmaFindMemoryTypeIndex</a>(</div>
-<div class="line"><a name="l02795"></a><span class="lineno"> 2795</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02796"></a><span class="lineno"> 2796</span>&#160;    uint32_t memoryTypeBits,</div>
-<div class="line"><a name="l02797"></a><span class="lineno"> 2797</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
-<div class="line"><a name="l02798"></a><span class="lineno"> 2798</span>&#160;    uint32_t* VMA_NOT_NULL pMemoryTypeIndex);</div>
-<div class="line"><a name="l02799"></a><span class="lineno"> 2799</span>&#160; </div>
-<div class="line"><a name="l02812"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888"> 2812</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888">vmaFindMemoryTypeIndexForBufferInfo</a>(</div>
-<div class="line"><a name="l02813"></a><span class="lineno"> 2813</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02814"></a><span class="lineno"> 2814</span>&#160;    <span class="keyword">const</span> VkBufferCreateInfo* VMA_NOT_NULL pBufferCreateInfo,</div>
-<div class="line"><a name="l02815"></a><span class="lineno"> 2815</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
-<div class="line"><a name="l02816"></a><span class="lineno"> 2816</span>&#160;    uint32_t* VMA_NOT_NULL pMemoryTypeIndex);</div>
-<div class="line"><a name="l02817"></a><span class="lineno"> 2817</span>&#160; </div>
-<div class="line"><a name="l02830"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472"> 2830</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472">vmaFindMemoryTypeIndexForImageInfo</a>(</div>
-<div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>&#160;    <span class="keyword">const</span> VkImageCreateInfo* VMA_NOT_NULL pImageCreateInfo,</div>
-<div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
-<div class="line"><a name="l02834"></a><span class="lineno"> 2834</span>&#160;    uint32_t* VMA_NOT_NULL pMemoryTypeIndex);</div>
-<div class="line"><a name="l02835"></a><span class="lineno"> 2835</span>&#160; </div>
-<div class="line"><a name="l02837"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7"> 2837</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> {</div>
-<div class="line"><a name="l02855"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2"> 2855</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2">VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT</a> = 0x00000002,</div>
-<div class="line"><a name="l02856"></a><span class="lineno"> 2856</span>&#160; </div>
-<div class="line"><a name="l02872"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726"> 2872</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726">VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT</a> = 0x00000004,</div>
-<div class="line"><a name="l02873"></a><span class="lineno"> 2873</span>&#160; </div>
-<div class="line"><a name="l02883"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e"> 2883</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e">VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT</a> = 0x00000008,</div>
-<div class="line"><a name="l02884"></a><span class="lineno"> 2884</span>&#160; </div>
-<div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c">VMA_POOL_CREATE_ALGORITHM_MASK</a> =</div>
-<div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726">VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT</a> |</div>
-<div class="line"><a name="l02889"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c"> 2889</a></span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e">VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT</a>,</div>
-<div class="line"><a name="l02890"></a><span class="lineno"> 2890</span>&#160; </div>
-<div class="line"><a name="l02891"></a><span class="lineno"> 2891</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec">VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
-<div class="line"><a name="l02892"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4d4f2efc2509157a9e4ecd4fd7942303"> 2892</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a>;</div>
-<div class="line"><a name="l02893"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a"> 2893</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a>;</div>
-<div class="line"><a name="l02894"></a><span class="lineno"> 2894</span>&#160; </div>
-<div class="line"><a name="l02897"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html"> 2897</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> {</div>
-<div class="line"><a name="l02900"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319"> 2900</a></span>&#160;    uint32_t <a class="code" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">memoryTypeIndex</a>;</div>
-<div class="line"><a name="l02903"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446"> 2903</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a> <a class="code" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446">flags</a>;</div>
-<div class="line"><a name="l02912"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676"> 2912</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676">blockSize</a>;</div>
-<div class="line"><a name="l02917"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae"> 2917</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae">minBlockCount</a>;</div>
-<div class="line"><a name="l02925"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c"> 2925</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">maxBlockCount</a>;</div>
-<div class="line"><a name="l02939"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa"> 2939</a></span>&#160;    uint32_t <a class="code" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa">frameInUseCount</a>;</div>
-<div class="line"><a name="l02940"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67"> 2940</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67">VmaPoolCreateInfo</a>;</div>
-<div class="line"><a name="l02941"></a><span class="lineno"> 2941</span>&#160; </div>
-<div class="line"><a name="l02944"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html"> 2944</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_pool_stats.html">VmaPoolStats</a> {</div>
-<div class="line"><a name="l02947"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c"> 2947</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c">size</a>;</div>
-<div class="line"><a name="l02950"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8"> 2950</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8">unusedSize</a>;</div>
-<div class="line"><a name="l02953"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb"> 2953</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb">allocationCount</a>;</div>
-<div class="line"><a name="l02956"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4"> 2956</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4">unusedRangeCount</a>;</div>
-<div class="line"><a name="l02963"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b"> 2963</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b">unusedRangeSizeMax</a>;</div>
-<div class="line"><a name="l02966"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#aa0b5cb45cef6f18571cefb03b9a230e7"> 2966</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_stats.html#aa0b5cb45cef6f18571cefb03b9a230e7">blockCount</a>;</div>
-<div class="line"><a name="l02967"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1"> 2967</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1">VmaPoolStats</a>;</div>
-<div class="line"><a name="l02968"></a><span class="lineno"> 2968</span>&#160; </div>
-<div class="line"><a name="l02975"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50"> 2975</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50">vmaCreatePool</a>(</div>
-<div class="line"><a name="l02976"></a><span class="lineno"> 2976</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02977"></a><span class="lineno"> 2977</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
-<div class="line"><a name="l02978"></a><span class="lineno"> 2978</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NULLABLE * VMA_NOT_NULL pPool);</div>
-<div class="line"><a name="l02979"></a><span class="lineno"> 2979</span>&#160; </div>
-<div class="line"><a name="l02982"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1"> 2982</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1">vmaDestroyPool</a>(</div>
-<div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02984"></a><span class="lineno"> 2984</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NULLABLE pool);</div>
-<div class="line"><a name="l02985"></a><span class="lineno"> 2985</span>&#160; </div>
-<div class="line"><a name="l02992"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153"> 2992</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153">vmaGetPoolStats</a>(</div>
-<div class="line"><a name="l02993"></a><span class="lineno"> 2993</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l02994"></a><span class="lineno"> 2994</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
-<div class="line"><a name="l02995"></a><span class="lineno"> 2995</span>&#160;    <a class="code" href="struct_vma_pool_stats.html">VmaPoolStats</a>* VMA_NOT_NULL pPoolStats);</div>
-<div class="line"><a name="l02996"></a><span class="lineno"> 2996</span>&#160; </div>
-<div class="line"><a name="l03003"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024"> 3003</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024">vmaMakePoolAllocationsLost</a>(</div>
-<div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03005"></a><span class="lineno"> 3005</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
-<div class="line"><a name="l03006"></a><span class="lineno"> 3006</span>&#160;    <span class="keywordtype">size_t</span>* VMA_NULLABLE pLostAllocationCount);</div>
-<div class="line"><a name="l03007"></a><span class="lineno"> 3007</span>&#160; </div>
-<div class="line"><a name="l03022"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89"> 3022</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89">vmaCheckPoolCorruption</a>(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator, <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool);</div>
-<div class="line"><a name="l03023"></a><span class="lineno"> 3023</span>&#160; </div>
-<div class="line"><a name="l03030"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030"> 3030</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030">vmaGetPoolName</a>(</div>
-<div class="line"><a name="l03031"></a><span class="lineno"> 3031</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03032"></a><span class="lineno"> 3032</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
-<div class="line"><a name="l03033"></a><span class="lineno"> 3033</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* VMA_NULLABLE * VMA_NOT_NULL ppName);</div>
-<div class="line"><a name="l03034"></a><span class="lineno"> 3034</span>&#160; </div>
-<div class="line"><a name="l03040"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58"> 3040</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58">vmaSetPoolName</a>(</div>
-<div class="line"><a name="l03041"></a><span class="lineno"> 3041</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03042"></a><span class="lineno"> 3042</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
-<div class="line"><a name="l03043"></a><span class="lineno"> 3043</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* VMA_NULLABLE pName);</div>
-<div class="line"><a name="l03044"></a><span class="lineno"> 3044</span>&#160; </div>
-<div class="line"><a name="l03069"></a><span class="lineno"> 3069</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_allocation.html">VmaAllocation</a>)</div>
-<div class="line"><a name="l03070"></a><span class="lineno"> 3070</span>&#160; </div>
-<div class="line"><a name="l03071"></a><span class="lineno"> 3071</span>&#160; </div>
-<div class="line"><a name="l03073"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html"> 3073</a></span>&#160;typedef struct <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> {</div>
-<div class="line"><a name="l03078"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5"> 3078</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5">memoryType</a>;</div>
-<div class="line"><a name="l03087"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67"> 3087</a></span>&#160;    VkDeviceMemory VMA_NULLABLE_NON_DISPATCHABLE <a class="code" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67">deviceMemory</a>;</div>
-<div class="line"><a name="l03092"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268"> 3092</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268">offset</a>;</div>
-<div class="line"><a name="l03103"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f"> 3103</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f">size</a>;</div>
-<div class="line"><a name="l03112"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2"> 3112</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2">pMappedData</a>;</div>
-<div class="line"><a name="l03117"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13"> 3117</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">pUserData</a>;</div>
-<div class="line"><a name="l03118"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50"> 3118</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50">VmaAllocationInfo</a>;</div>
-<div class="line"><a name="l03119"></a><span class="lineno"> 3119</span>&#160; </div>
-<div class="line"><a name="l03130"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8"> 3130</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8">vmaAllocateMemory</a>(</div>
-<div class="line"><a name="l03131"></a><span class="lineno"> 3131</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03132"></a><span class="lineno"> 3132</span>&#160;    <span class="keyword">const</span> VkMemoryRequirements* VMA_NOT_NULL pVkMemoryRequirements,</div>
-<div class="line"><a name="l03133"></a><span class="lineno"> 3133</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
-<div class="line"><a name="l03134"></a><span class="lineno"> 3134</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
-<div class="line"><a name="l03135"></a><span class="lineno"> 3135</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
-<div class="line"><a name="l03136"></a><span class="lineno"> 3136</span>&#160; </div>
-<div class="line"><a name="l03156"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1"> 3156</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1">vmaAllocateMemoryPages</a>(</div>
-<div class="line"><a name="l03157"></a><span class="lineno"> 3157</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03158"></a><span class="lineno"> 3158</span>&#160;    <span class="keyword">const</span> VkMemoryRequirements* VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pVkMemoryRequirements,</div>
-<div class="line"><a name="l03159"></a><span class="lineno"> 3159</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pCreateInfo,</div>
-<div class="line"><a name="l03160"></a><span class="lineno"> 3160</span>&#160;    <span class="keywordtype">size_t</span> allocationCount,</div>
-<div class="line"><a name="l03161"></a><span class="lineno"> 3161</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pAllocations,</div>
-<div class="line"><a name="l03162"></a><span class="lineno"> 3162</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) pAllocationInfo);</div>
-<div class="line"><a name="l03163"></a><span class="lineno"> 3163</span>&#160; </div>
-<div class="line"><a name="l03170"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b"> 3170</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer</a>(</div>
-<div class="line"><a name="l03171"></a><span class="lineno"> 3171</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03172"></a><span class="lineno"> 3172</span>&#160;    VkBuffer VMA_NOT_NULL_NON_DISPATCHABLE buffer,</div>
-<div class="line"><a name="l03173"></a><span class="lineno"> 3173</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
-<div class="line"><a name="l03174"></a><span class="lineno"> 3174</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
-<div class="line"><a name="l03175"></a><span class="lineno"> 3175</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
-<div class="line"><a name="l03176"></a><span class="lineno"> 3176</span>&#160; </div>
-<div class="line"><a name="l03178"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb"> 3178</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb">vmaAllocateMemoryForImage</a>(</div>
-<div class="line"><a name="l03179"></a><span class="lineno"> 3179</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03180"></a><span class="lineno"> 3180</span>&#160;    VkImage VMA_NOT_NULL_NON_DISPATCHABLE image,</div>
-<div class="line"><a name="l03181"></a><span class="lineno"> 3181</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
-<div class="line"><a name="l03182"></a><span class="lineno"> 3182</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
-<div class="line"><a name="l03183"></a><span class="lineno"> 3183</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
-<div class="line"><a name="l03184"></a><span class="lineno"> 3184</span>&#160; </div>
-<div class="line"><a name="l03189"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f"> 3189</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f">vmaFreeMemory</a>(</div>
-<div class="line"><a name="l03190"></a><span class="lineno"> 3190</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03191"></a><span class="lineno"> 3191</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE allocation);</div>
-<div class="line"><a name="l03192"></a><span class="lineno"> 3192</span>&#160; </div>
-<div class="line"><a name="l03203"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e"> 3203</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e">vmaFreeMemoryPages</a>(</div>
-<div class="line"><a name="l03204"></a><span class="lineno"> 3204</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03205"></a><span class="lineno"> 3205</span>&#160;    <span class="keywordtype">size_t</span> allocationCount,</div>
-<div class="line"><a name="l03206"></a><span class="lineno"> 3206</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pAllocations);</div>
-<div class="line"><a name="l03207"></a><span class="lineno"> 3207</span>&#160; </div>
-<div class="line"><a name="l03215"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696"> 3215</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696">vmaResizeAllocation</a>(</div>
-<div class="line"><a name="l03216"></a><span class="lineno"> 3216</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03217"></a><span class="lineno"> 3217</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03218"></a><span class="lineno"> 3218</span>&#160;    VkDeviceSize newSize);</div>
-<div class="line"><a name="l03219"></a><span class="lineno"> 3219</span>&#160; </div>
-<div class="line"><a name="l03236"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b"> 3236</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b">vmaGetAllocationInfo</a>(</div>
-<div class="line"><a name="l03237"></a><span class="lineno"> 3237</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03238"></a><span class="lineno"> 3238</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03239"></a><span class="lineno"> 3239</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NOT_NULL pAllocationInfo);</div>
-<div class="line"><a name="l03240"></a><span class="lineno"> 3240</span>&#160; </div>
-<div class="line"><a name="l03255"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a"> 3255</a></span>&#160;VMA_CALL_PRE VkBool32 VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a">vmaTouchAllocation</a>(</div>
-<div class="line"><a name="l03256"></a><span class="lineno"> 3256</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03257"></a><span class="lineno"> 3257</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation);</div>
-<div class="line"><a name="l03258"></a><span class="lineno"> 3258</span>&#160; </div>
-<div class="line"><a name="l03272"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f"> 3272</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f">vmaSetAllocationUserData</a>(</div>
-<div class="line"><a name="l03273"></a><span class="lineno"> 3273</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03274"></a><span class="lineno"> 3274</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03275"></a><span class="lineno"> 3275</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE pUserData);</div>
-<div class="line"><a name="l03276"></a><span class="lineno"> 3276</span>&#160; </div>
-<div class="line"><a name="l03287"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1"> 3287</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1">vmaCreateLostAllocation</a>(</div>
-<div class="line"><a name="l03288"></a><span class="lineno"> 3288</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03289"></a><span class="lineno"> 3289</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation);</div>
-<div class="line"><a name="l03290"></a><span class="lineno"> 3290</span>&#160; </div>
-<div class="line"><a name="l03329"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069"> 3329</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069">vmaMapMemory</a>(</div>
-<div class="line"><a name="l03330"></a><span class="lineno"> 3330</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03331"></a><span class="lineno"> 3331</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03332"></a><span class="lineno"> 3332</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE * VMA_NOT_NULL ppData);</div>
-<div class="line"><a name="l03333"></a><span class="lineno"> 3333</span>&#160; </div>
-<div class="line"><a name="l03342"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45"> 3342</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45">vmaUnmapMemory</a>(</div>
-<div class="line"><a name="l03343"></a><span class="lineno"> 3343</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03344"></a><span class="lineno"> 3344</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation);</div>
-<div class="line"><a name="l03345"></a><span class="lineno"> 3345</span>&#160; </div>
-<div class="line"><a name="l03367"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f"> 3367</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f">vmaFlushAllocation</a>(</div>
-<div class="line"><a name="l03368"></a><span class="lineno"> 3368</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03369"></a><span class="lineno"> 3369</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03370"></a><span class="lineno"> 3370</span>&#160;    VkDeviceSize offset,</div>
-<div class="line"><a name="l03371"></a><span class="lineno"> 3371</span>&#160;    VkDeviceSize size);</div>
-<div class="line"><a name="l03372"></a><span class="lineno"> 3372</span>&#160; </div>
-<div class="line"><a name="l03394"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae"> 3394</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae">vmaInvalidateAllocation</a>(</div>
-<div class="line"><a name="l03395"></a><span class="lineno"> 3395</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03396"></a><span class="lineno"> 3396</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03397"></a><span class="lineno"> 3397</span>&#160;    VkDeviceSize offset,</div>
-<div class="line"><a name="l03398"></a><span class="lineno"> 3398</span>&#160;    VkDeviceSize size);</div>
-<div class="line"><a name="l03399"></a><span class="lineno"> 3399</span>&#160; </div>
-<div class="line"><a name="l03414"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc"> 3414</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc">vmaFlushAllocations</a>(</div>
-<div class="line"><a name="l03415"></a><span class="lineno"> 3415</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03416"></a><span class="lineno"> 3416</span>&#160;    uint32_t allocationCount,</div>
-<div class="line"><a name="l03417"></a><span class="lineno"> 3417</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) allocations,</div>
-<div class="line"><a name="l03418"></a><span class="lineno"> 3418</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) offsets,</div>
-<div class="line"><a name="l03419"></a><span class="lineno"> 3419</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) sizes);</div>
-<div class="line"><a name="l03420"></a><span class="lineno"> 3420</span>&#160; </div>
-<div class="line"><a name="l03435"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5"> 3435</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5">vmaInvalidateAllocations</a>(</div>
-<div class="line"><a name="l03436"></a><span class="lineno"> 3436</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03437"></a><span class="lineno"> 3437</span>&#160;    uint32_t allocationCount,</div>
-<div class="line"><a name="l03438"></a><span class="lineno"> 3438</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) allocations,</div>
-<div class="line"><a name="l03439"></a><span class="lineno"> 3439</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) offsets,</div>
-<div class="line"><a name="l03440"></a><span class="lineno"> 3440</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) sizes);</div>
-<div class="line"><a name="l03441"></a><span class="lineno"> 3441</span>&#160; </div>
-<div class="line"><a name="l03458"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98"> 3458</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98">vmaCheckCorruption</a>(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator, uint32_t memoryTypeBits);</div>
-<div class="line"><a name="l03459"></a><span class="lineno"> 3459</span>&#160; </div>
-<div class="line"><a name="l03466"></a><span class="lineno"> 3466</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a>)</div>
-<div class="line"><a name="l03467"></a><span class="lineno"> 3467</span>&#160; </div>
-<div class="line"><a name="l03468"></a><span class="lineno"> 3468</span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c">VmaDefragmentationFlagBits</a> {</div>
-<div class="line"><a name="l03470"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33"> 3470</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33">VMA_DEFRAGMENTATION_FLAG_INCREMENTAL</a> = 0x1,</div>
-<div class="line"><a name="l03471"></a><span class="lineno"> 3471</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50cab87ec33154803bfeb5ac2b379f1d6a97">VMA_DEFRAGMENTATION_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
-<div class="line"><a name="l03472"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a13415cc0b443353a7b5abda300b833fc"> 3472</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c">VmaDefragmentationFlagBits</a>;</div>
-<div class="line"><a name="l03473"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d"> 3473</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d">VmaDefragmentationFlags</a>;</div>
-<div class="line"><a name="l03474"></a><span class="lineno"> 3474</span>&#160; </div>
-<div class="line"><a name="l03479"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html"> 3479</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_info2.html">VmaDefragmentationInfo2</a> {</div>
-<div class="line"><a name="l03482"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a53e844ee5633e229cf6daf14b2d9fff9"> 3482</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d">VmaDefragmentationFlags</a> <a class="code" href="struct_vma_defragmentation_info2.html#a53e844ee5633e229cf6daf14b2d9fff9">flags</a>;</div>
-<div class="line"><a name="l03485"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba"> 3485</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba">allocationCount</a>;</div>
-<div class="line"><a name="l03494"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32"> 3494</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) <a class="code" href="struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32">pAllocations</a>;</div>
-<div class="line"><a name="l03500"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc"> 3500</a></span>&#160;    VkBool32* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) <a class="code" href="struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc">pAllocationsChanged</a>;</div>
-<div class="line"><a name="l03503"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a7e70aa2a1081d849dcc7829b19d3ec9d"> 3503</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a7e70aa2a1081d849dcc7829b19d3ec9d">poolCount</a>;</div>
-<div class="line"><a name="l03519"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a3c9c6aa5c97d5670f8e362b3a6f3029b"> 3519</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(poolCount) <a class="code" href="struct_vma_defragmentation_info2.html#a3c9c6aa5c97d5670f8e362b3a6f3029b">pPools</a>;</div>
-<div class="line"><a name="l03524"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a"> 3524</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a">maxCpuBytesToMove</a>;</div>
-<div class="line"><a name="l03529"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671"> 3529</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671">maxCpuAllocationsToMove</a>;</div>
-<div class="line"><a name="l03534"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08"> 3534</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08">maxGpuBytesToMove</a>;</div>
-<div class="line"><a name="l03539"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6"> 3539</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6">maxGpuAllocationsToMove</a>;</div>
-<div class="line"><a name="l03548"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd"> 3548</a></span>&#160;    VkCommandBuffer VMA_NULLABLE <a class="code" href="struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd">commandBuffer</a>;</div>
-<div class="line"><a name="l03549"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937"> 3549</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937">VmaDefragmentationInfo2</a>;</div>
-<div class="line"><a name="l03550"></a><span class="lineno"> 3550</span>&#160; </div>
-<div class="line"><a name="l03551"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html"> 3551</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_pass_move_info.html">VmaDefragmentationPassMoveInfo</a> {</div>
-<div class="line"><a name="l03552"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html#ae885c861c2dd8d622e6c19e281d035cc"> 3552</a></span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL <a class="code" href="struct_vma_defragmentation_pass_move_info.html#ae885c861c2dd8d622e6c19e281d035cc">allocation</a>;</div>
-<div class="line"><a name="l03553"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html#a06eb0c8690aa0d3478a036753492e769"> 3553</a></span>&#160;    VkDeviceMemory VMA_NOT_NULL_NON_DISPATCHABLE <a class="code" href="struct_vma_defragmentation_pass_move_info.html#a06eb0c8690aa0d3478a036753492e769">memory</a>;</div>
-<div class="line"><a name="l03554"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html#a8ab4508bc03625b0653c880576be96c6"> 3554</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_pass_move_info.html#a8ab4508bc03625b0653c880576be96c6">offset</a>;</div>
-<div class="line"><a name="l03555"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5"> 3555</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5">VmaDefragmentationPassMoveInfo</a>;</div>
-<div class="line"><a name="l03556"></a><span class="lineno"> 3556</span>&#160; </div>
-<div class="line"><a name="l03561"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_info.html"> 3561</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_pass_info.html">VmaDefragmentationPassInfo</a> {</div>
-<div class="line"><a name="l03562"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_info.html#ac1086e657ba995f8d1f4e49b83dcfb6c"> 3562</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_pass_info.html#ac1086e657ba995f8d1f4e49b83dcfb6c">moveCount</a>;</div>
-<div class="line"><a name="l03563"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_info.html#acbd42d4a3357999da130a95cd99a3792"> 3563</a></span>&#160;    <a class="code" href="struct_vma_defragmentation_pass_move_info.html">VmaDefragmentationPassMoveInfo</a>* VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(moveCount) <a class="code" href="struct_vma_defragmentation_pass_info.html#acbd42d4a3357999da130a95cd99a3792">pMoves</a>;</div>
-<div class="line"><a name="l03564"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e"> 3564</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e">VmaDefragmentationPassInfo</a>;</div>
-<div class="line"><a name="l03565"></a><span class="lineno"> 3565</span>&#160; </div>
-<div class="line"><a name="l03570"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info.html"> 3570</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a> {</div>
-<div class="line"><a name="l03575"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d"> 3575</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d">maxBytesToMove</a>;</div>
-<div class="line"><a name="l03580"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc"> 3580</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc">maxAllocationsToMove</a>;</div>
-<div class="line"><a name="l03581"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa"> 3581</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa">VmaDefragmentationInfo</a>;</div>
-<div class="line"><a name="l03582"></a><span class="lineno"> 3582</span>&#160; </div>
-<div class="line"><a name="l03584"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html"> 3584</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a> {</div>
-<div class="line"><a name="l03586"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d"> 3586</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d">bytesMoved</a>;</div>
-<div class="line"><a name="l03588"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28"> 3588</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28">bytesFreed</a>;</div>
-<div class="line"><a name="l03590"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9"> 3590</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9">allocationsMoved</a>;</div>
-<div class="line"><a name="l03592"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b"> 3592</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b">deviceMemoryBlocksFreed</a>;</div>
-<div class="line"><a name="l03593"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403"> 3593</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403">VmaDefragmentationStats</a>;</div>
-<div class="line"><a name="l03594"></a><span class="lineno"> 3594</span>&#160; </div>
-<div class="line"><a name="l03624"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a"> 3624</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a">vmaDefragmentationBegin</a>(</div>
-<div class="line"><a name="l03625"></a><span class="lineno"> 3625</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03626"></a><span class="lineno"> 3626</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_defragmentation_info2.html">VmaDefragmentationInfo2</a>* VMA_NOT_NULL pInfo,</div>
-<div class="line"><a name="l03627"></a><span class="lineno"> 3627</span>&#160;    <a class="code" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a>* VMA_NULLABLE pStats,</div>
-<div class="line"><a name="l03628"></a><span class="lineno"> 3628</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE * VMA_NOT_NULL pContext);</div>
-<div class="line"><a name="l03629"></a><span class="lineno"> 3629</span>&#160; </div>
-<div class="line"><a name="l03635"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2"> 3635</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2">vmaDefragmentationEnd</a>(</div>
-<div class="line"><a name="l03636"></a><span class="lineno"> 3636</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03637"></a><span class="lineno"> 3637</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE context);</div>
-<div class="line"><a name="l03638"></a><span class="lineno"> 3638</span>&#160; </div>
-<div class="line"><a name="l03639"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b"> 3639</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b">vmaBeginDefragmentationPass</a>(</div>
-<div class="line"><a name="l03640"></a><span class="lineno"> 3640</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03641"></a><span class="lineno"> 3641</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE context,</div>
-<div class="line"><a name="l03642"></a><span class="lineno"> 3642</span>&#160;    <a class="code" href="struct_vma_defragmentation_pass_info.html">VmaDefragmentationPassInfo</a>* VMA_NOT_NULL pInfo</div>
-<div class="line"><a name="l03643"></a><span class="lineno"> 3643</span>&#160;);</div>
-<div class="line"><a name="l03644"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd"> 3644</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd">vmaEndDefragmentationPass</a>(</div>
-<div class="line"><a name="l03645"></a><span class="lineno"> 3645</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03646"></a><span class="lineno"> 3646</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE context</div>
-<div class="line"><a name="l03647"></a><span class="lineno"> 3647</span>&#160;);</div>
-<div class="line"><a name="l03648"></a><span class="lineno"> 3648</span>&#160; </div>
-<div class="line"><a name="l03689"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac"> 3689</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac">vmaDefragment</a>(</div>
-<div class="line"><a name="l03690"></a><span class="lineno"> 3690</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03691"></a><span class="lineno"> 3691</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pAllocations,</div>
-<div class="line"><a name="l03692"></a><span class="lineno"> 3692</span>&#160;    <span class="keywordtype">size_t</span> allocationCount,</div>
-<div class="line"><a name="l03693"></a><span class="lineno"> 3693</span>&#160;    VkBool32* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) pAllocationsChanged,</div>
-<div class="line"><a name="l03694"></a><span class="lineno"> 3694</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a>* VMA_NULLABLE pDefragmentationInfo,</div>
-<div class="line"><a name="l03695"></a><span class="lineno"> 3695</span>&#160;    <a class="code" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a>* VMA_NULLABLE pDefragmentationStats);</div>
-<div class="line"><a name="l03696"></a><span class="lineno"> 3696</span>&#160; </div>
-<div class="line"><a name="l03709"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470"> 3709</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470">vmaBindBufferMemory</a>(</div>
-<div class="line"><a name="l03710"></a><span class="lineno"> 3710</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03711"></a><span class="lineno"> 3711</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03712"></a><span class="lineno"> 3712</span>&#160;    VkBuffer VMA_NOT_NULL_NON_DISPATCHABLE buffer);</div>
-<div class="line"><a name="l03713"></a><span class="lineno"> 3713</span>&#160; </div>
-<div class="line"><a name="l03724"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a"> 3724</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a">vmaBindBufferMemory2</a>(</div>
-<div class="line"><a name="l03725"></a><span class="lineno"> 3725</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03726"></a><span class="lineno"> 3726</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03727"></a><span class="lineno"> 3727</span>&#160;    VkDeviceSize allocationLocalOffset,</div>
-<div class="line"><a name="l03728"></a><span class="lineno"> 3728</span>&#160;    VkBuffer VMA_NOT_NULL_NON_DISPATCHABLE buffer,</div>
-<div class="line"><a name="l03729"></a><span class="lineno"> 3729</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">void</span>* VMA_NULLABLE pNext);</div>
-<div class="line"><a name="l03730"></a><span class="lineno"> 3730</span>&#160; </div>
-<div class="line"><a name="l03743"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5"> 3743</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5">vmaBindImageMemory</a>(</div>
-<div class="line"><a name="l03744"></a><span class="lineno"> 3744</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03745"></a><span class="lineno"> 3745</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03746"></a><span class="lineno"> 3746</span>&#160;    VkImage VMA_NOT_NULL_NON_DISPATCHABLE image);</div>
-<div class="line"><a name="l03747"></a><span class="lineno"> 3747</span>&#160; </div>
-<div class="line"><a name="l03758"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc"> 3758</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc">vmaBindImageMemory2</a>(</div>
-<div class="line"><a name="l03759"></a><span class="lineno"> 3759</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03760"></a><span class="lineno"> 3760</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
-<div class="line"><a name="l03761"></a><span class="lineno"> 3761</span>&#160;    VkDeviceSize allocationLocalOffset,</div>
-<div class="line"><a name="l03762"></a><span class="lineno"> 3762</span>&#160;    VkImage VMA_NOT_NULL_NON_DISPATCHABLE image,</div>
-<div class="line"><a name="l03763"></a><span class="lineno"> 3763</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">void</span>* VMA_NULLABLE pNext);</div>
-<div class="line"><a name="l03764"></a><span class="lineno"> 3764</span>&#160; </div>
-<div class="line"><a name="l03791"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51"> 3791</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a>(</div>
-<div class="line"><a name="l03792"></a><span class="lineno"> 3792</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03793"></a><span class="lineno"> 3793</span>&#160;    <span class="keyword">const</span> VkBufferCreateInfo* VMA_NOT_NULL pBufferCreateInfo,</div>
-<div class="line"><a name="l03794"></a><span class="lineno"> 3794</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
-<div class="line"><a name="l03795"></a><span class="lineno"> 3795</span>&#160;    VkBuffer VMA_NULLABLE_NON_DISPATCHABLE * VMA_NOT_NULL pBuffer,</div>
-<div class="line"><a name="l03796"></a><span class="lineno"> 3796</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
-<div class="line"><a name="l03797"></a><span class="lineno"> 3797</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
-<div class="line"><a name="l03798"></a><span class="lineno"> 3798</span>&#160; </div>
-<div class="line"><a name="l03810"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77"> 3810</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a>(</div>
-<div class="line"><a name="l03811"></a><span class="lineno"> 3811</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03812"></a><span class="lineno"> 3812</span>&#160;    VkBuffer VMA_NULLABLE_NON_DISPATCHABLE buffer,</div>
-<div class="line"><a name="l03813"></a><span class="lineno"> 3813</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE allocation);</div>
-<div class="line"><a name="l03814"></a><span class="lineno"> 3814</span>&#160; </div>
-<div class="line"><a name="l03816"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73"> 3816</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73">vmaCreateImage</a>(</div>
-<div class="line"><a name="l03817"></a><span class="lineno"> 3817</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03818"></a><span class="lineno"> 3818</span>&#160;    <span class="keyword">const</span> VkImageCreateInfo* VMA_NOT_NULL pImageCreateInfo,</div>
-<div class="line"><a name="l03819"></a><span class="lineno"> 3819</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
-<div class="line"><a name="l03820"></a><span class="lineno"> 3820</span>&#160;    VkImage VMA_NULLABLE_NON_DISPATCHABLE * VMA_NOT_NULL pImage,</div>
-<div class="line"><a name="l03821"></a><span class="lineno"> 3821</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
-<div class="line"><a name="l03822"></a><span class="lineno"> 3822</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
+<div class="line"><a name="l02538"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236"> 2538</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ade56bf8dc9f5a5eaddf5f119ed525236">vmaSetCurrentFrameIndex</a>(</div>
+<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>&#160;    uint32_t frameIndex);</div>
+<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>&#160; </div>
+<div class="line"><a name="l02544"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html"> 2544</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a></div>
+<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160;{</div>
+<div class="line"><a name="l02547"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#abc4bb7cd611900778464c56e50c970a4"> 2547</a></span>&#160;    uint32_t <a class="code" href="struct_vma_stat_info.html#abc4bb7cd611900778464c56e50c970a4">blockCount</a>;</div>
+<div class="line"><a name="l02549"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#a537741e4d5cdddc1c0ab95ec650afaff"> 2549</a></span>&#160;    uint32_t <a class="code" href="struct_vma_stat_info.html#a537741e4d5cdddc1c0ab95ec650afaff">allocationCount</a>;</div>
+<div class="line"><a name="l02551"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9"> 2551</a></span>&#160;    uint32_t <a class="code" href="struct_vma_stat_info.html#ae06129c771bfebfd6468a7f4276502a9">unusedRangeCount</a>;</div>
+<div class="line"><a name="l02553"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a"> 2553</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#ab0c6c73837e5a70c749fbd4f6064895a">usedBytes</a>;</div>
+<div class="line"><a name="l02555"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669"> 2555</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#a1859d290aca2cd582d8dc25922092669">unusedBytes</a>;</div>
+<div class="line"><a name="l02556"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#ade8b40bd3139c04aabd2fc538a356fea"> 2556</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#ade8b40bd3139c04aabd2fc538a356fea">allocationSizeMin</a>, allocationSizeAvg, allocationSizeMax;</div>
+<div class="line"><a name="l02557"></a><span class="lineno"><a class="line" href="struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4"> 2557</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_stat_info.html#aedeba931324f16589cd2416c0d2dd0d4">unusedRangeSizeMin</a>, unusedRangeSizeAvg, unusedRangeSizeMax;</div>
+<div class="line"><a name="l02558"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878"> 2558</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#aec5b57e29c97b5d69c6d5654d60df878">VmaStatInfo</a>;</div>
+<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span>&#160; </div>
+<div class="line"><a name="l02561"></a><span class="lineno"><a class="line" href="struct_vma_stats.html"> 2561</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_stats.html">VmaStats</a></div>
+<div class="line"><a name="l02562"></a><span class="lineno"> 2562</span>&#160;{</div>
+<div class="line"><a name="l02563"></a><span class="lineno"><a class="line" href="struct_vma_stats.html#a13e3caf754be79352c42408756309331"> 2563</a></span>&#160;    <a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a> memoryType[VK_MAX_MEMORY_TYPES];</div>
+<div class="line"><a name="l02564"></a><span class="lineno"><a class="line" href="struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0"> 2564</a></span>&#160;    <a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a> memoryHeap[VK_MAX_MEMORY_HEAPS];</div>
+<div class="line"><a name="l02565"></a><span class="lineno"><a class="line" href="struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9"> 2565</a></span>&#160;    <a class="code" href="struct_vma_stat_info.html">VmaStatInfo</a> <a class="code" href="struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9">total</a>;</div>
+<div class="line"><a name="l02566"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034"> 2566</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a21813b2efdf3836767a9058cd8a94034">VmaStats</a>;</div>
+<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>&#160; </div>
+<div class="line"><a name="l02577"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3"> 2577</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a333b61c1788cb23559177531e6a93ca3">vmaCalculateStats</a>(</div>
+<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>&#160;    <a class="code" href="struct_vma_stats.html">VmaStats</a>* VMA_NOT_NULL pStats);</div>
+<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>&#160; </div>
+<div class="line"><a name="l02583"></a><span class="lineno"><a class="line" href="struct_vma_budget.html"> 2583</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_budget.html">VmaBudget</a></div>
+<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span>&#160;{</div>
+<div class="line"><a name="l02587"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#a58b492901baab685f466199124e514a0"> 2587</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#a58b492901baab685f466199124e514a0">blockBytes</a>;</div>
+<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span>&#160;    </div>
+<div class="line"><a name="l02598"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#a7e2a6583ebd63e194951c542563804d8"> 2598</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#a7e2a6583ebd63e194951c542563804d8">allocationBytes</a>;</div>
+<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span>&#160;    </div>
+<div class="line"><a name="l02608"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6"> 2608</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#a84dd1ecca8b0110259eb206dbadb11f6">usage</a>;</div>
+<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span>&#160;    </div>
+<div class="line"><a name="l02619"></a><span class="lineno"><a class="line" href="struct_vma_budget.html#ab82e1d1754c2d210d0bdf90220bc6cdd"> 2619</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_budget.html#ab82e1d1754c2d210d0bdf90220bc6cdd">budget</a>;</div>
+<div class="line"><a name="l02620"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d"> 2620</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#aa078667e71b1ef24e87a6a30d128381d">VmaBudget</a>;</div>
+<div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>&#160; </div>
+<div class="line"><a name="l02632"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba"> 2632</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aec0ed24ebea2d0099eed5f801daaefba">vmaGetBudget</a>(</div>
+<div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02634"></a><span class="lineno"> 2634</span>&#160;    <a class="code" href="struct_vma_budget.html">VmaBudget</a>* VMA_NOT_NULL pBudget);</div>
+<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>&#160; </div>
+<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>&#160;<span class="preprocessor">#ifndef VMA_STATS_STRING_ENABLED</span></div>
+<div class="line"><a name="l02637"></a><span class="lineno"> 2637</span>&#160;<span class="preprocessor">#define VMA_STATS_STRING_ENABLED 1</span></div>
+<div class="line"><a name="l02638"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae25f0d55fd91cb166f002b63244800e1"> 2638</a></span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span>&#160; </div>
+<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span>&#160;<span class="preprocessor">#if VMA_STATS_STRING_ENABLED</span></div>
+<div class="line"><a name="l02641"></a><span class="lineno"> 2641</span>&#160; </div>
+<div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>&#160; </div>
+<div class="line"><a name="l02645"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0"> 2645</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aa4fee7eb5253377599ef4fd38c93c2a0">vmaBuildStatsString</a>(</div>
+<div class="line"><a name="l02646"></a><span class="lineno"> 2646</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span>&#160;    <span class="keywordtype">char</span>* VMA_NULLABLE * VMA_NOT_NULL ppStatsString,</div>
+<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span>&#160;    VkBool32 detailedMap);</div>
+<div class="line"><a name="l02649"></a><span class="lineno"> 2649</span>&#160; </div>
+<div class="line"><a name="l02650"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288"> 2650</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a3104eb30d8122c84dd8541063f145288">vmaFreeStatsString</a>(</div>
+<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02652"></a><span class="lineno"> 2652</span>&#160;    <span class="keywordtype">char</span>* VMA_NULLABLE pStatsString);</div>
+<div class="line"><a name="l02653"></a><span class="lineno"> 2653</span>&#160; </div>
+<div class="line"><a name="l02654"></a><span class="lineno"> 2654</span>&#160;<span class="preprocessor">#endif // #if VMA_STATS_STRING_ENABLED</span></div>
+<div class="line"><a name="l02655"></a><span class="lineno"> 2655</span>&#160; </div>
+<div class="line"><a name="l02664"></a><span class="lineno"> 2664</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_pool.html">VmaPool</a>)</div>
+<div class="line"><a name="l02665"></a><span class="lineno"> 2665</span>&#160; </div>
+<div class="line"><a name="l02666"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc"> 2666</a></span>&#160;typedef enum <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a></div>
+<div class="line"><a name="l02667"></a><span class="lineno"> 2667</span>&#160;{</div>
+<div class="line"><a name="l02671"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd"> 2671</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd">VMA_MEMORY_USAGE_UNKNOWN</a> = 0,</div>
+<div class="line"><a name="l02688"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"> 2688</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7">VMA_MEMORY_USAGE_GPU_ONLY</a> = 1,</div>
+<div class="line"><a name="l02698"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5"> 2698</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5">VMA_MEMORY_USAGE_CPU_ONLY</a> = 2,</div>
+<div class="line"><a name="l02705"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67"> 2705</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67">VMA_MEMORY_USAGE_CPU_TO_GPU</a> = 3,</div>
+<div class="line"><a name="l02714"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27"> 2714</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27">VMA_MEMORY_USAGE_GPU_TO_CPU</a> = 4,</div>
+<div class="line"><a name="l02720"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500"> 2720</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca416a444d4d0fc20067c3f76f32ff2500">VMA_MEMORY_USAGE_CPU_COPY</a> = 5,</div>
+<div class="line"><a name="l02728"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d"> 2728</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca835333d9072db63a653818030e17614d">VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED</a> = 6,</div>
+<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>&#160; </div>
+<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e">VMA_MEMORY_USAGE_MAX_ENUM</a> = 0x7FFFFFFF</div>
+<div class="line"><a name="l02731"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a806e8499dde802e59eb72a1dc811c35f"> 2731</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a>;</div>
+<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>&#160; </div>
+<div class="line"><a name="l02734"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597"> 2734</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> {</div>
+<div class="line"><a name="l02741"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f"> 2741</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a3fc311d855c2ff53f1090ef5c722b38f">VMA_ALLOCATION_CREATE_DEDICATED_MEMORY_BIT</a> = 0x00000001,</div>
+<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span>&#160; </div>
+<div class="line"><a name="l02752"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff"> 2752</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff">VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT</a> = 0x00000002,</div>
+<div class="line"><a name="l02765"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f"> 2765</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a11da372cc3a82931c5e5d6146cd9dd1f">VMA_ALLOCATION_CREATE_MAPPED_BIT</a> = 0x00000004,</div>
+<div class="line"><a name="l02778"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2"> 2778</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</a> = 0x00000008,</div>
+<div class="line"><a name="l02785"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e"> 2785</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</a> = 0x00000010,</div>
+<div class="line"><a name="l02791"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520"> 2791</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597aa6f24f821cd6a7c5e4a443f7bf59c520">VMA_ALLOCATION_CREATE_USER_DATA_COPY_STRING_BIT</a> = 0x00000020,</div>
+<div class="line"><a name="l02796"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df"> 2796</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a42ba3a2d2c7117953210b7c3ef8da0df">VMA_ALLOCATION_CREATE_UPPER_ADDRESS_BIT</a> = 0x00000040,</div>
+<div class="line"><a name="l02802"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea"> 2802</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a2310568c62208af432724305fe29ccea">VMA_ALLOCATION_CREATE_DONT_BIND_BIT</a> = 0x00000080,</div>
+<div class="line"><a name="l02806"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d"> 2806</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ab8b1764f3e9022368e440c057783b92d">VMA_ALLOCATION_CREATE_WITHIN_BUDGET_BIT</a> = 0x00000100,</div>
+<div class="line"><a name="l02807"></a><span class="lineno"> 2807</span>&#160; </div>
+<div class="line"><a name="l02811"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d"> 2811</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d">VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT</a>  = 0x00010000,</div>
+<div class="line"><a name="l02815"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62"> 2815</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62">VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT</a> = 0x00020000,</div>
+<div class="line"><a name="l02822"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777"> 2822</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777">VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT</a> = 0x00040000,</div>
+<div class="line"><a name="l02823"></a><span class="lineno"> 2823</span>&#160; </div>
+<div class="line"><a name="l02826"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d"> 2826</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8af1210cf591784afa026d94998f735d">VMA_ALLOCATION_CREATE_STRATEGY_MIN_MEMORY_BIT</a> = <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d">VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT</a>,</div>
+<div class="line"><a name="l02829"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d"> 2829</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a0729e932b7ea170e3a128cad96c5cf6d">VMA_ALLOCATION_CREATE_STRATEGY_MIN_TIME_BIT</a> = <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777">VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT</a>,</div>
+<div class="line"><a name="l02832"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706"> 2832</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a621b704103eb3360230c860acf36e706">VMA_ALLOCATION_CREATE_STRATEGY_MIN_FRAGMENTATION_BIT</a> = <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62">VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT</a>,</div>
+<div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>&#160; </div>
+<div class="line"><a name="l02836"></a><span class="lineno"> 2836</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e">VMA_ALLOCATION_CREATE_STRATEGY_MASK</a> =</div>
+<div class="line"><a name="l02837"></a><span class="lineno"> 2837</span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a839826775c62319466441f86496f036d">VMA_ALLOCATION_CREATE_STRATEGY_BEST_FIT_BIT</a> |</div>
+<div class="line"><a name="l02838"></a><span class="lineno"> 2838</span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ad242a04f802e25fef0b880afe8bb0a62">VMA_ALLOCATION_CREATE_STRATEGY_WORST_FIT_BIT</a> |</div>
+<div class="line"><a name="l02839"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a8e16845d81ae3d27c47106d4770d5c7e"> 2839</a></span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597a33eb2052674f3ad92386c714a65fb777">VMA_ALLOCATION_CREATE_STRATEGY_FIRST_FIT_BIT</a>,</div>
+<div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>&#160; </div>
+<div class="line"><a name="l02841"></a><span class="lineno"> 2841</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882">VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
+<div class="line"><a name="l02842"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4fceecc301f4064dc808d3cd6c038941"> 2842</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a>;</div>
+<div class="line"><a name="l02843"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817"> 2843</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a>;</div>
+<div class="line"><a name="l02844"></a><span class="lineno"> 2844</span>&#160; </div>
+<div class="line"><a name="l02845"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html"> 2845</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></div>
+<div class="line"><a name="l02846"></a><span class="lineno"> 2846</span>&#160;{</div>
+<div class="line"><a name="l02848"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b"> 2848</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a> <a class="code" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">flags</a>;</div>
+<div class="line"><a name="l02854"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910"> 2854</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#aa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a> <a class="code" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">usage</a>;</div>
+<div class="line"><a name="l02859"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90"> 2859</a></span>&#160;    VkMemoryPropertyFlags <a class="code" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">requiredFlags</a>;</div>
+<div class="line"><a name="l02864"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d"> 2864</a></span>&#160;    VkMemoryPropertyFlags <a class="code" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">preferredFlags</a>;</div>
+<div class="line"><a name="l02872"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055"> 2872</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocation_create_info.html#a3bf940c0271d85d6ba32a4d820075055">memoryTypeBits</a>;</div>
+<div class="line"><a name="l02878"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150"> 2878</a></span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NULLABLE <a class="code" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">pool</a>;</div>
+<div class="line"><a name="l02885"></a><span class="lineno"><a class="line" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19"> 2885</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">pUserData</a>;</div>
+<div class="line"><a name="l02886"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a"> 2886</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a3bf110892ea2fb4649fedb68488d026a">VmaAllocationCreateInfo</a>;</div>
+<div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>&#160; </div>
+<div class="line"><a name="l02904"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a"> 2904</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aef15a94b58fbcb0fe706d5720e84a74a">vmaFindMemoryTypeIndex</a>(</div>
+<div class="line"><a name="l02905"></a><span class="lineno"> 2905</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02906"></a><span class="lineno"> 2906</span>&#160;    uint32_t memoryTypeBits,</div>
+<div class="line"><a name="l02907"></a><span class="lineno"> 2907</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
+<div class="line"><a name="l02908"></a><span class="lineno"> 2908</span>&#160;    uint32_t* VMA_NOT_NULL pMemoryTypeIndex);</div>
+<div class="line"><a name="l02909"></a><span class="lineno"> 2909</span>&#160; </div>
+<div class="line"><a name="l02922"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888"> 2922</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae790ab9ffaf7667fb8f62523e6897888">vmaFindMemoryTypeIndexForBufferInfo</a>(</div>
+<div class="line"><a name="l02923"></a><span class="lineno"> 2923</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02924"></a><span class="lineno"> 2924</span>&#160;    <span class="keyword">const</span> VkBufferCreateInfo* VMA_NOT_NULL pBufferCreateInfo,</div>
+<div class="line"><a name="l02925"></a><span class="lineno"> 2925</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
+<div class="line"><a name="l02926"></a><span class="lineno"> 2926</span>&#160;    uint32_t* VMA_NOT_NULL pMemoryTypeIndex);</div>
+<div class="line"><a name="l02927"></a><span class="lineno"> 2927</span>&#160; </div>
+<div class="line"><a name="l02940"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472"> 2940</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a088da83d8eaf3ce9056d9ea0b981d472">vmaFindMemoryTypeIndexForImageInfo</a>(</div>
+<div class="line"><a name="l02941"></a><span class="lineno"> 2941</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l02942"></a><span class="lineno"> 2942</span>&#160;    <span class="keyword">const</span> VkImageCreateInfo* VMA_NOT_NULL pImageCreateInfo,</div>
+<div class="line"><a name="l02943"></a><span class="lineno"> 2943</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
+<div class="line"><a name="l02944"></a><span class="lineno"> 2944</span>&#160;    uint32_t* VMA_NOT_NULL pMemoryTypeIndex);</div>
+<div class="line"><a name="l02945"></a><span class="lineno"> 2945</span>&#160; </div>
+<div class="line"><a name="l02947"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7"> 2947</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> {</div>
+<div class="line"><a name="l02965"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2"> 2965</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2">VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT</a> = 0x00000002,</div>
+<div class="line"><a name="l02966"></a><span class="lineno"> 2966</span>&#160; </div>
+<div class="line"><a name="l02982"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726"> 2982</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726">VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT</a> = 0x00000004,</div>
+<div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>&#160; </div>
+<div class="line"><a name="l02993"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e"> 2993</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e">VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT</a> = 0x00000008,</div>
+<div class="line"><a name="l02994"></a><span class="lineno"> 2994</span>&#160; </div>
+<div class="line"><a name="l02997"></a><span class="lineno"> 2997</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c">VMA_POOL_CREATE_ALGORITHM_MASK</a> =</div>
+<div class="line"><a name="l02998"></a><span class="lineno"> 2998</span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a13c8a444197c67866be9cb05599fc726">VMA_POOL_CREATE_LINEAR_ALGORITHM_BIT</a> |</div>
+<div class="line"><a name="l02999"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7af4d270f8f42517a0f70037ceb6ac1d9c"> 2999</a></span>&#160;        <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a97a0dc38e5161b780594d998d313d35e">VMA_POOL_CREATE_BUDDY_ALGORITHM_BIT</a>,</div>
+<div class="line"><a name="l03000"></a><span class="lineno"> 3000</span>&#160; </div>
+<div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec">VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
+<div class="line"><a name="l03002"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4d4f2efc2509157a9e4ecd4fd7942303"> 3002</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a>;</div>
+<div class="line"><a name="l03003"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a"> 3003</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a>;</div>
+<div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>&#160; </div>
+<div class="line"><a name="l03007"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html"> 3007</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> {</div>
+<div class="line"><a name="l03010"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319"> 3010</a></span>&#160;    uint32_t <a class="code" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">memoryTypeIndex</a>;</div>
+<div class="line"><a name="l03013"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446"> 3013</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a> <a class="code" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446">flags</a>;</div>
+<div class="line"><a name="l03022"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676"> 3022</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676">blockSize</a>;</div>
+<div class="line"><a name="l03027"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae"> 3027</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae">minBlockCount</a>;</div>
+<div class="line"><a name="l03035"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c"> 3035</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">maxBlockCount</a>;</div>
+<div class="line"><a name="l03049"></a><span class="lineno"><a class="line" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa"> 3049</a></span>&#160;    uint32_t <a class="code" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa">frameInUseCount</a>;</div>
+<div class="line"><a name="l03050"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67"> 3050</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a1017aa83489c0eee8d2163d2bf253f67">VmaPoolCreateInfo</a>;</div>
+<div class="line"><a name="l03051"></a><span class="lineno"> 3051</span>&#160; </div>
+<div class="line"><a name="l03054"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html"> 3054</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_pool_stats.html">VmaPoolStats</a> {</div>
+<div class="line"><a name="l03057"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c"> 3057</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c">size</a>;</div>
+<div class="line"><a name="l03060"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8"> 3060</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8">unusedSize</a>;</div>
+<div class="line"><a name="l03063"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb"> 3063</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb">allocationCount</a>;</div>
+<div class="line"><a name="l03066"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4"> 3066</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4">unusedRangeCount</a>;</div>
+<div class="line"><a name="l03073"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b"> 3073</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_pool_stats.html#ab4c8f52dd42ab01998f60f0b6acc722b">unusedRangeSizeMax</a>;</div>
+<div class="line"><a name="l03076"></a><span class="lineno"><a class="line" href="struct_vma_pool_stats.html#aa0b5cb45cef6f18571cefb03b9a230e7"> 3076</a></span>&#160;    <span class="keywordtype">size_t</span> <a class="code" href="struct_vma_pool_stats.html#aa0b5cb45cef6f18571cefb03b9a230e7">blockCount</a>;</div>
+<div class="line"><a name="l03077"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1"> 3077</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a4759a2d9f99c19ba7627553c847132f1">VmaPoolStats</a>;</div>
+<div class="line"><a name="l03078"></a><span class="lineno"> 3078</span>&#160; </div>
+<div class="line"><a name="l03085"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50"> 3085</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a5c8770ded7c59c8caac6de0c2cb00b50">vmaCreatePool</a>(</div>
+<div class="line"><a name="l03086"></a><span class="lineno"> 3086</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03087"></a><span class="lineno"> 3087</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
+<div class="line"><a name="l03088"></a><span class="lineno"> 3088</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NULLABLE * VMA_NOT_NULL pPool);</div>
+<div class="line"><a name="l03089"></a><span class="lineno"> 3089</span>&#160; </div>
+<div class="line"><a name="l03092"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1"> 3092</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a5485779c8f1948238fc4e92232fa65e1">vmaDestroyPool</a>(</div>
+<div class="line"><a name="l03093"></a><span class="lineno"> 3093</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03094"></a><span class="lineno"> 3094</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NULLABLE pool);</div>
+<div class="line"><a name="l03095"></a><span class="lineno"> 3095</span>&#160; </div>
+<div class="line"><a name="l03102"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153"> 3102</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae8bf76997b234ef68aad922616df4153">vmaGetPoolStats</a>(</div>
+<div class="line"><a name="l03103"></a><span class="lineno"> 3103</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03104"></a><span class="lineno"> 3104</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
+<div class="line"><a name="l03105"></a><span class="lineno"> 3105</span>&#160;    <a class="code" href="struct_vma_pool_stats.html">VmaPoolStats</a>* VMA_NOT_NULL pPoolStats);</div>
+<div class="line"><a name="l03106"></a><span class="lineno"> 3106</span>&#160; </div>
+<div class="line"><a name="l03113"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024"> 3113</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a736bd6cbda886f36c891727e73bd4024">vmaMakePoolAllocationsLost</a>(</div>
+<div class="line"><a name="l03114"></a><span class="lineno"> 3114</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03115"></a><span class="lineno"> 3115</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
+<div class="line"><a name="l03116"></a><span class="lineno"> 3116</span>&#160;    <span class="keywordtype">size_t</span>* VMA_NULLABLE pLostAllocationCount);</div>
+<div class="line"><a name="l03117"></a><span class="lineno"> 3117</span>&#160; </div>
+<div class="line"><a name="l03132"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89"> 3132</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ad535935619c7a549bf837e1bb0068f89">vmaCheckPoolCorruption</a>(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator, <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool);</div>
+<div class="line"><a name="l03133"></a><span class="lineno"> 3133</span>&#160; </div>
+<div class="line"><a name="l03140"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030"> 3140</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#af09b4e4eafdbee812e8d73ddf960f030">vmaGetPoolName</a>(</div>
+<div class="line"><a name="l03141"></a><span class="lineno"> 3141</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03142"></a><span class="lineno"> 3142</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
+<div class="line"><a name="l03143"></a><span class="lineno"> 3143</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* VMA_NULLABLE * VMA_NOT_NULL ppName);</div>
+<div class="line"><a name="l03144"></a><span class="lineno"> 3144</span>&#160; </div>
+<div class="line"><a name="l03150"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58"> 3150</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#adbae3a0b4ab078024462fc85c37f3b58">vmaSetPoolName</a>(</div>
+<div class="line"><a name="l03151"></a><span class="lineno"> 3151</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03152"></a><span class="lineno"> 3152</span>&#160;    <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL pool,</div>
+<div class="line"><a name="l03153"></a><span class="lineno"> 3153</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* VMA_NULLABLE pName);</div>
+<div class="line"><a name="l03154"></a><span class="lineno"> 3154</span>&#160; </div>
+<div class="line"><a name="l03179"></a><span class="lineno"> 3179</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_allocation.html">VmaAllocation</a>)</div>
+<div class="line"><a name="l03180"></a><span class="lineno"> 3180</span>&#160; </div>
+<div class="line"><a name="l03181"></a><span class="lineno"> 3181</span>&#160; </div>
+<div class="line"><a name="l03183"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html"> 3183</a></span>&#160;typedef struct <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> {</div>
+<div class="line"><a name="l03188"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5"> 3188</a></span>&#160;    uint32_t <a class="code" href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5">memoryType</a>;</div>
+<div class="line"><a name="l03197"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67"> 3197</a></span>&#160;    VkDeviceMemory VMA_NULLABLE_NON_DISPATCHABLE <a class="code" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67">deviceMemory</a>;</div>
+<div class="line"><a name="l03202"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268"> 3202</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268">offset</a>;</div>
+<div class="line"><a name="l03213"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f"> 3213</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f">size</a>;</div>
+<div class="line"><a name="l03222"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2"> 3222</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2">pMappedData</a>;</div>
+<div class="line"><a name="l03227"></a><span class="lineno"><a class="line" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13"> 3227</a></span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE <a class="code" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">pUserData</a>;</div>
+<div class="line"><a name="l03228"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50"> 3228</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a1cf7774606721026a68aabe3af2e5b50">VmaAllocationInfo</a>;</div>
+<div class="line"><a name="l03229"></a><span class="lineno"> 3229</span>&#160; </div>
+<div class="line"><a name="l03240"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8"> 3240</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#abf28077dbf82d0908b8acbe8ee8dd9b8">vmaAllocateMemory</a>(</div>
+<div class="line"><a name="l03241"></a><span class="lineno"> 3241</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03242"></a><span class="lineno"> 3242</span>&#160;    <span class="keyword">const</span> VkMemoryRequirements* VMA_NOT_NULL pVkMemoryRequirements,</div>
+<div class="line"><a name="l03243"></a><span class="lineno"> 3243</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
+<div class="line"><a name="l03244"></a><span class="lineno"> 3244</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
+<div class="line"><a name="l03245"></a><span class="lineno"> 3245</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
+<div class="line"><a name="l03246"></a><span class="lineno"> 3246</span>&#160; </div>
+<div class="line"><a name="l03266"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1"> 3266</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ad37e82e492b3de38fc3f4cffd9ad0ae1">vmaAllocateMemoryPages</a>(</div>
+<div class="line"><a name="l03267"></a><span class="lineno"> 3267</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03268"></a><span class="lineno"> 3268</span>&#160;    <span class="keyword">const</span> VkMemoryRequirements* VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pVkMemoryRequirements,</div>
+<div class="line"><a name="l03269"></a><span class="lineno"> 3269</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pCreateInfo,</div>
+<div class="line"><a name="l03270"></a><span class="lineno"> 3270</span>&#160;    <span class="keywordtype">size_t</span> allocationCount,</div>
+<div class="line"><a name="l03271"></a><span class="lineno"> 3271</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pAllocations,</div>
+<div class="line"><a name="l03272"></a><span class="lineno"> 3272</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) pAllocationInfo);</div>
+<div class="line"><a name="l03273"></a><span class="lineno"> 3273</span>&#160; </div>
+<div class="line"><a name="l03280"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b"> 3280</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer</a>(</div>
+<div class="line"><a name="l03281"></a><span class="lineno"> 3281</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03282"></a><span class="lineno"> 3282</span>&#160;    VkBuffer VMA_NOT_NULL_NON_DISPATCHABLE buffer,</div>
+<div class="line"><a name="l03283"></a><span class="lineno"> 3283</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
+<div class="line"><a name="l03284"></a><span class="lineno"> 3284</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
+<div class="line"><a name="l03285"></a><span class="lineno"> 3285</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
+<div class="line"><a name="l03286"></a><span class="lineno"> 3286</span>&#160; </div>
+<div class="line"><a name="l03288"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb"> 3288</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a0faa3f9e5fb233d29d1e00390650febb">vmaAllocateMemoryForImage</a>(</div>
+<div class="line"><a name="l03289"></a><span class="lineno"> 3289</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03290"></a><span class="lineno"> 3290</span>&#160;    VkImage VMA_NOT_NULL_NON_DISPATCHABLE image,</div>
+<div class="line"><a name="l03291"></a><span class="lineno"> 3291</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pCreateInfo,</div>
+<div class="line"><a name="l03292"></a><span class="lineno"> 3292</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
+<div class="line"><a name="l03293"></a><span class="lineno"> 3293</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
+<div class="line"><a name="l03294"></a><span class="lineno"> 3294</span>&#160; </div>
+<div class="line"><a name="l03299"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f"> 3299</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a5fea5518972ae9094b1526cbcb19b05f">vmaFreeMemory</a>(</div>
+<div class="line"><a name="l03300"></a><span class="lineno"> 3300</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03301"></a><span class="lineno"> 3301</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE allocation);</div>
+<div class="line"><a name="l03302"></a><span class="lineno"> 3302</span>&#160; </div>
+<div class="line"><a name="l03313"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e"> 3313</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a834b1e4aef395c0a1d56a28e69a4a17e">vmaFreeMemoryPages</a>(</div>
+<div class="line"><a name="l03314"></a><span class="lineno"> 3314</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03315"></a><span class="lineno"> 3315</span>&#160;    <span class="keywordtype">size_t</span> allocationCount,</div>
+<div class="line"><a name="l03316"></a><span class="lineno"> 3316</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pAllocations);</div>
+<div class="line"><a name="l03317"></a><span class="lineno"> 3317</span>&#160; </div>
+<div class="line"><a name="l03325"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696"> 3325</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a0ff488958ca72b28e545880463cb8696">vmaResizeAllocation</a>(</div>
+<div class="line"><a name="l03326"></a><span class="lineno"> 3326</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03327"></a><span class="lineno"> 3327</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03328"></a><span class="lineno"> 3328</span>&#160;    VkDeviceSize newSize);</div>
+<div class="line"><a name="l03329"></a><span class="lineno"> 3329</span>&#160; </div>
+<div class="line"><a name="l03346"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b"> 3346</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a86dd08aba8633bfa4ad0df2e76481d8b">vmaGetAllocationInfo</a>(</div>
+<div class="line"><a name="l03347"></a><span class="lineno"> 3347</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03348"></a><span class="lineno"> 3348</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03349"></a><span class="lineno"> 3349</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NOT_NULL pAllocationInfo);</div>
+<div class="line"><a name="l03350"></a><span class="lineno"> 3350</span>&#160; </div>
+<div class="line"><a name="l03365"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a"> 3365</a></span>&#160;VMA_CALL_PRE VkBool32 VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a43d8ba9673c846f049089a5029d5c73a">vmaTouchAllocation</a>(</div>
+<div class="line"><a name="l03366"></a><span class="lineno"> 3366</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03367"></a><span class="lineno"> 3367</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation);</div>
+<div class="line"><a name="l03368"></a><span class="lineno"> 3368</span>&#160; </div>
+<div class="line"><a name="l03382"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f"> 3382</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#af9147d31ffc11d62fc187bde283ed14f">vmaSetAllocationUserData</a>(</div>
+<div class="line"><a name="l03383"></a><span class="lineno"> 3383</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03384"></a><span class="lineno"> 3384</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03385"></a><span class="lineno"> 3385</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE pUserData);</div>
+<div class="line"><a name="l03386"></a><span class="lineno"> 3386</span>&#160; </div>
+<div class="line"><a name="l03397"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1"> 3397</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae5c9657d9e94756269145b01c05d16f1">vmaCreateLostAllocation</a>(</div>
+<div class="line"><a name="l03398"></a><span class="lineno"> 3398</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03399"></a><span class="lineno"> 3399</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation);</div>
+<div class="line"><a name="l03400"></a><span class="lineno"> 3400</span>&#160; </div>
+<div class="line"><a name="l03439"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069"> 3439</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ad5bd1243512d099706de88168992f069">vmaMapMemory</a>(</div>
+<div class="line"><a name="l03440"></a><span class="lineno"> 3440</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03441"></a><span class="lineno"> 3441</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03442"></a><span class="lineno"> 3442</span>&#160;    <span class="keywordtype">void</span>* VMA_NULLABLE * VMA_NOT_NULL ppData);</div>
+<div class="line"><a name="l03443"></a><span class="lineno"> 3443</span>&#160; </div>
+<div class="line"><a name="l03452"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45"> 3452</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a9bc268595cb33f6ec4d519cfce81ff45">vmaUnmapMemory</a>(</div>
+<div class="line"><a name="l03453"></a><span class="lineno"> 3453</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03454"></a><span class="lineno"> 3454</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation);</div>
+<div class="line"><a name="l03455"></a><span class="lineno"> 3455</span>&#160; </div>
+<div class="line"><a name="l03477"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f"> 3477</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a30c37c1eec6025f397be41644f48490f">vmaFlushAllocation</a>(</div>
+<div class="line"><a name="l03478"></a><span class="lineno"> 3478</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03479"></a><span class="lineno"> 3479</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03480"></a><span class="lineno"> 3480</span>&#160;    VkDeviceSize offset,</div>
+<div class="line"><a name="l03481"></a><span class="lineno"> 3481</span>&#160;    VkDeviceSize size);</div>
+<div class="line"><a name="l03482"></a><span class="lineno"> 3482</span>&#160; </div>
+<div class="line"><a name="l03504"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae"> 3504</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aaa8412919139ef413a4215ac6a290fae">vmaInvalidateAllocation</a>(</div>
+<div class="line"><a name="l03505"></a><span class="lineno"> 3505</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03506"></a><span class="lineno"> 3506</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03507"></a><span class="lineno"> 3507</span>&#160;    VkDeviceSize offset,</div>
+<div class="line"><a name="l03508"></a><span class="lineno"> 3508</span>&#160;    VkDeviceSize size);</div>
+<div class="line"><a name="l03509"></a><span class="lineno"> 3509</span>&#160; </div>
+<div class="line"><a name="l03524"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc"> 3524</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ac3dd00da721875ed99fa8a881922bdfc">vmaFlushAllocations</a>(</div>
+<div class="line"><a name="l03525"></a><span class="lineno"> 3525</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03526"></a><span class="lineno"> 3526</span>&#160;    uint32_t allocationCount,</div>
+<div class="line"><a name="l03527"></a><span class="lineno"> 3527</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) allocations,</div>
+<div class="line"><a name="l03528"></a><span class="lineno"> 3528</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) offsets,</div>
+<div class="line"><a name="l03529"></a><span class="lineno"> 3529</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) sizes);</div>
+<div class="line"><a name="l03530"></a><span class="lineno"> 3530</span>&#160; </div>
+<div class="line"><a name="l03545"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5"> 3545</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ab25b558d75f7378ec944a1522fdcc3c5">vmaInvalidateAllocations</a>(</div>
+<div class="line"><a name="l03546"></a><span class="lineno"> 3546</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03547"></a><span class="lineno"> 3547</span>&#160;    uint32_t allocationCount,</div>
+<div class="line"><a name="l03548"></a><span class="lineno"> 3548</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) allocations,</div>
+<div class="line"><a name="l03549"></a><span class="lineno"> 3549</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) offsets,</div>
+<div class="line"><a name="l03550"></a><span class="lineno"> 3550</span>&#160;    <span class="keyword">const</span> VkDeviceSize* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) sizes);</div>
+<div class="line"><a name="l03551"></a><span class="lineno"> 3551</span>&#160; </div>
+<div class="line"><a name="l03568"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98"> 3568</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a49329a7f030dafcf82f7b73334c22e98">vmaCheckCorruption</a>(<a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator, uint32_t memoryTypeBits);</div>
+<div class="line"><a name="l03569"></a><span class="lineno"> 3569</span>&#160; </div>
+<div class="line"><a name="l03576"></a><span class="lineno"> 3576</span>&#160;VK_DEFINE_HANDLE(<a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a>)</div>
+<div class="line"><a name="l03577"></a><span class="lineno"> 3577</span>&#160; </div>
+<div class="line"><a name="l03578"></a><span class="lineno"> 3578</span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c">VmaDefragmentationFlagBits</a> {</div>
+<div class="line"><a name="l03580"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33"> 3580</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50ca31af49446af2459284a568ce2f3fdd33">VMA_DEFRAGMENTATION_FLAG_INCREMENTAL</a> = 0x1,</div>
+<div class="line"><a name="l03581"></a><span class="lineno"> 3581</span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50cab87ec33154803bfeb5ac2b379f1d6a97">VMA_DEFRAGMENTATION_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF</div>
+<div class="line"><a name="l03582"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a13415cc0b443353a7b5abda300b833fc"> 3582</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a6552a65b71d16f378c6994b3ceaef50c">VmaDefragmentationFlagBits</a>;</div>
+<div class="line"><a name="l03583"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d"> 3583</a></span>&#160;<span class="keyword">typedef</span> VkFlags <a class="code" href="vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d">VmaDefragmentationFlags</a>;</div>
+<div class="line"><a name="l03584"></a><span class="lineno"> 3584</span>&#160; </div>
+<div class="line"><a name="l03589"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html"> 3589</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_info2.html">VmaDefragmentationInfo2</a> {</div>
+<div class="line"><a name="l03592"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a53e844ee5633e229cf6daf14b2d9fff9"> 3592</a></span>&#160;    <a class="code" href="vk__mem__alloc_8h.html#a88a77cef37e5d3c4fc9eb328885d048d">VmaDefragmentationFlags</a> <a class="code" href="struct_vma_defragmentation_info2.html#a53e844ee5633e229cf6daf14b2d9fff9">flags</a>;</div>
+<div class="line"><a name="l03595"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba"> 3595</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a3cf86ab32c1da779b4923d301a3056ba">allocationCount</a>;</div>
+<div class="line"><a name="l03604"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32"> 3604</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) <a class="code" href="struct_vma_defragmentation_info2.html#ab6d288f29d028156cf73542d630a2e32">pAllocations</a>;</div>
+<div class="line"><a name="l03610"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc"> 3610</a></span>&#160;    VkBool32* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) <a class="code" href="struct_vma_defragmentation_info2.html#a76d51a644dc7f5405d0cdd0025ecd0cc">pAllocationsChanged</a>;</div>
+<div class="line"><a name="l03613"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a7e70aa2a1081d849dcc7829b19d3ec9d"> 3613</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a7e70aa2a1081d849dcc7829b19d3ec9d">poolCount</a>;</div>
+<div class="line"><a name="l03629"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a3c9c6aa5c97d5670f8e362b3a6f3029b"> 3629</a></span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_pool.html">VmaPool</a> VMA_NOT_NULL * VMA_NULLABLE VMA_LEN_IF_NOT_NULL(poolCount) <a class="code" href="struct_vma_defragmentation_info2.html#a3c9c6aa5c97d5670f8e362b3a6f3029b">pPools</a>;</div>
+<div class="line"><a name="l03634"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a"> 3634</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_info2.html#af78e1ea40c22d85137b65f6b384a4d0a">maxCpuBytesToMove</a>;</div>
+<div class="line"><a name="l03639"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671"> 3639</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a94c2c7223d52878445a8cccce396b671">maxCpuAllocationsToMove</a>;</div>
+<div class="line"><a name="l03644"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08"> 3644</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_info2.html#a4ddbc898d0afe1518f863a3763628f08">maxGpuBytesToMove</a>;</div>
+<div class="line"><a name="l03649"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6"> 3649</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info2.html#a40d53d33e71ba0b66f844ed63c05a3f6">maxGpuAllocationsToMove</a>;</div>
+<div class="line"><a name="l03658"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd"> 3658</a></span>&#160;    VkCommandBuffer VMA_NULLABLE <a class="code" href="struct_vma_defragmentation_info2.html#a7f71f39590c5316771493d2333f9c1bd">commandBuffer</a>;</div>
+<div class="line"><a name="l03659"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937"> 3659</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad6daeffaa670ce6d11a203a6224c9937">VmaDefragmentationInfo2</a>;</div>
+<div class="line"><a name="l03660"></a><span class="lineno"> 3660</span>&#160; </div>
+<div class="line"><a name="l03661"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html"> 3661</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_pass_move_info.html">VmaDefragmentationPassMoveInfo</a> {</div>
+<div class="line"><a name="l03662"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html#ae885c861c2dd8d622e6c19e281d035cc"> 3662</a></span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL <a class="code" href="struct_vma_defragmentation_pass_move_info.html#ae885c861c2dd8d622e6c19e281d035cc">allocation</a>;</div>
+<div class="line"><a name="l03663"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html#a06eb0c8690aa0d3478a036753492e769"> 3663</a></span>&#160;    VkDeviceMemory VMA_NOT_NULL_NON_DISPATCHABLE <a class="code" href="struct_vma_defragmentation_pass_move_info.html#a06eb0c8690aa0d3478a036753492e769">memory</a>;</div>
+<div class="line"><a name="l03664"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_move_info.html#a8ab4508bc03625b0653c880576be96c6"> 3664</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_pass_move_info.html#a8ab4508bc03625b0653c880576be96c6">offset</a>;</div>
+<div class="line"><a name="l03665"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5"> 3665</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad6799e8e2b1527abfc84d33bc44aeaf5">VmaDefragmentationPassMoveInfo</a>;</div>
+<div class="line"><a name="l03666"></a><span class="lineno"> 3666</span>&#160; </div>
+<div class="line"><a name="l03671"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_info.html"> 3671</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_pass_info.html">VmaDefragmentationPassInfo</a> {</div>
+<div class="line"><a name="l03672"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_info.html#ac1086e657ba995f8d1f4e49b83dcfb6c"> 3672</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_pass_info.html#ac1086e657ba995f8d1f4e49b83dcfb6c">moveCount</a>;</div>
+<div class="line"><a name="l03673"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_pass_info.html#acbd42d4a3357999da130a95cd99a3792"> 3673</a></span>&#160;    <a class="code" href="struct_vma_defragmentation_pass_move_info.html">VmaDefragmentationPassMoveInfo</a>* VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(moveCount) <a class="code" href="struct_vma_defragmentation_pass_info.html#acbd42d4a3357999da130a95cd99a3792">pMoves</a>;</div>
+<div class="line"><a name="l03674"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e"> 3674</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a72aebd522242d56abea67b4f47f6549e">VmaDefragmentationPassInfo</a>;</div>
+<div class="line"><a name="l03675"></a><span class="lineno"> 3675</span>&#160; </div>
+<div class="line"><a name="l03680"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info.html"> 3680</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a> {</div>
+<div class="line"><a name="l03685"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d"> 3685</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d">maxBytesToMove</a>;</div>
+<div class="line"><a name="l03690"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc"> 3690</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc">maxAllocationsToMove</a>;</div>
+<div class="line"><a name="l03691"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa"> 3691</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#a2bf47f96bf92bed2a49461bd9af3acfa">VmaDefragmentationInfo</a>;</div>
+<div class="line"><a name="l03692"></a><span class="lineno"> 3692</span>&#160; </div>
+<div class="line"><a name="l03694"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html"> 3694</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a> {</div>
+<div class="line"><a name="l03696"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d"> 3696</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d">bytesMoved</a>;</div>
+<div class="line"><a name="l03698"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28"> 3698</a></span>&#160;    VkDeviceSize <a class="code" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28">bytesFreed</a>;</div>
+<div class="line"><a name="l03700"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9"> 3700</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9">allocationsMoved</a>;</div>
+<div class="line"><a name="l03702"></a><span class="lineno"><a class="line" href="struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b"> 3702</a></span>&#160;    uint32_t <a class="code" href="struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b">deviceMemoryBlocksFreed</a>;</div>
+<div class="line"><a name="l03703"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403"> 3703</a></span>&#160;} <a class="code" href="vk__mem__alloc_8h.html#ad94034192259c2e34a4d1c5e27810403">VmaDefragmentationStats</a>;</div>
+<div class="line"><a name="l03704"></a><span class="lineno"> 3704</span>&#160; </div>
+<div class="line"><a name="l03734"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a"> 3734</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a36ba776fd7fd5cb1e9359fdc0d8e6e8a">vmaDefragmentationBegin</a>(</div>
+<div class="line"><a name="l03735"></a><span class="lineno"> 3735</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03736"></a><span class="lineno"> 3736</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_defragmentation_info2.html">VmaDefragmentationInfo2</a>* VMA_NOT_NULL pInfo,</div>
+<div class="line"><a name="l03737"></a><span class="lineno"> 3737</span>&#160;    <a class="code" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a>* VMA_NULLABLE pStats,</div>
+<div class="line"><a name="l03738"></a><span class="lineno"> 3738</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE * VMA_NOT_NULL pContext);</div>
+<div class="line"><a name="l03739"></a><span class="lineno"> 3739</span>&#160; </div>
+<div class="line"><a name="l03745"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2"> 3745</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a8774e20e91e245aae959ba63efa15dd2">vmaDefragmentationEnd</a>(</div>
+<div class="line"><a name="l03746"></a><span class="lineno"> 3746</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03747"></a><span class="lineno"> 3747</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE context);</div>
+<div class="line"><a name="l03748"></a><span class="lineno"> 3748</span>&#160; </div>
+<div class="line"><a name="l03749"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b"> 3749</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ac0f01545b6262f7d4d128fc8f8e5c77b">vmaBeginDefragmentationPass</a>(</div>
+<div class="line"><a name="l03750"></a><span class="lineno"> 3750</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03751"></a><span class="lineno"> 3751</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE context,</div>
+<div class="line"><a name="l03752"></a><span class="lineno"> 3752</span>&#160;    <a class="code" href="struct_vma_defragmentation_pass_info.html">VmaDefragmentationPassInfo</a>* VMA_NOT_NULL pInfo</div>
+<div class="line"><a name="l03753"></a><span class="lineno"> 3753</span>&#160;);</div>
+<div class="line"><a name="l03754"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd"> 3754</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a1b9ffa538bed905af55c747cc48963bd">vmaEndDefragmentationPass</a>(</div>
+<div class="line"><a name="l03755"></a><span class="lineno"> 3755</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03756"></a><span class="lineno"> 3756</span>&#160;    <a class="code" href="struct_vma_defragmentation_context.html">VmaDefragmentationContext</a> VMA_NULLABLE context</div>
+<div class="line"><a name="l03757"></a><span class="lineno"> 3757</span>&#160;);</div>
+<div class="line"><a name="l03758"></a><span class="lineno"> 3758</span>&#160; </div>
+<div class="line"><a name="l03799"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac"> 3799</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a9f0f8f56db5f7f57fe4454f465142dac">vmaDefragment</a>(</div>
+<div class="line"><a name="l03800"></a><span class="lineno"> 3800</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03801"></a><span class="lineno"> 3801</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL * VMA_NOT_NULL VMA_LEN_IF_NOT_NULL(allocationCount) pAllocations,</div>
+<div class="line"><a name="l03802"></a><span class="lineno"> 3802</span>&#160;    <span class="keywordtype">size_t</span> allocationCount,</div>
+<div class="line"><a name="l03803"></a><span class="lineno"> 3803</span>&#160;    VkBool32* VMA_NULLABLE VMA_LEN_IF_NOT_NULL(allocationCount) pAllocationsChanged,</div>
+<div class="line"><a name="l03804"></a><span class="lineno"> 3804</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a>* VMA_NULLABLE pDefragmentationInfo,</div>
+<div class="line"><a name="l03805"></a><span class="lineno"> 3805</span>&#160;    <a class="code" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a>* VMA_NULLABLE pDefragmentationStats);</div>
+<div class="line"><a name="l03806"></a><span class="lineno"> 3806</span>&#160; </div>
+<div class="line"><a name="l03819"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470"> 3819</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a6b0929b914b60cf2d45cac4bf3547470">vmaBindBufferMemory</a>(</div>
+<div class="line"><a name="l03820"></a><span class="lineno"> 3820</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03821"></a><span class="lineno"> 3821</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03822"></a><span class="lineno"> 3822</span>&#160;    VkBuffer VMA_NOT_NULL_NON_DISPATCHABLE buffer);</div>
 <div class="line"><a name="l03823"></a><span class="lineno"> 3823</span>&#160; </div>
-<div class="line"><a name="l03835"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e"> 3835</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e">vmaDestroyImage</a>(</div>
-<div class="line"><a name="l03836"></a><span class="lineno"> 3836</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
-<div class="line"><a name="l03837"></a><span class="lineno"> 3837</span>&#160;    VkImage VMA_NULLABLE_NON_DISPATCHABLE image,</div>
-<div class="line"><a name="l03838"></a><span class="lineno"> 3838</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE allocation);</div>
-<div class="line"><a name="l03839"></a><span class="lineno"> 3839</span>&#160; </div>
-<div class="line"><a name="l03840"></a><span class="lineno"> 3840</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l03841"></a><span class="lineno"> 3841</span>&#160;}</div>
-<div class="line"><a name="l03842"></a><span class="lineno"> 3842</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03843"></a><span class="lineno"> 3843</span>&#160; </div>
-<div class="line"><a name="l03844"></a><span class="lineno"> 3844</span>&#160;<span class="preprocessor">#endif // AMD_VULKAN_MEMORY_ALLOCATOR_H</span></div>
-<div class="line"><a name="l03845"></a><span class="lineno"> 3845</span>&#160; </div>
-<div class="line"><a name="l03846"></a><span class="lineno"> 3846</span>&#160;<span class="comment">// For Visual Studio IntelliSense.</span></div>
-<div class="line"><a name="l03847"></a><span class="lineno"> 3847</span>&#160;<span class="preprocessor">#if defined(__cplusplus) &amp;&amp; defined(__INTELLISENSE__)</span></div>
-<div class="line"><a name="l03848"></a><span class="lineno"> 3848</span>&#160;<span class="preprocessor">#define VMA_IMPLEMENTATION</span></div>
-<div class="line"><a name="l03849"></a><span class="lineno"> 3849</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03850"></a><span class="lineno"> 3850</span>&#160; </div>
-<div class="line"><a name="l03851"></a><span class="lineno"> 3851</span>&#160;<span class="preprocessor">#ifdef VMA_IMPLEMENTATION</span></div>
-<div class="line"><a name="l03852"></a><span class="lineno"> 3852</span>&#160;<span class="preprocessor">#undef VMA_IMPLEMENTATION</span></div>
-<div class="line"><a name="l03853"></a><span class="lineno"> 3853</span>&#160; </div>
-<div class="line"><a name="l03854"></a><span class="lineno"> 3854</span>&#160;<span class="preprocessor">#include &lt;cstdint&gt;</span></div>
-<div class="line"><a name="l03855"></a><span class="lineno"> 3855</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
-<div class="line"><a name="l03856"></a><span class="lineno"> 3856</span>&#160;<span class="preprocessor">#include &lt;cstring&gt;</span></div>
-<div class="line"><a name="l03857"></a><span class="lineno"> 3857</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div>
-<div class="line"><a name="l03858"></a><span class="lineno"> 3858</span>&#160; </div>
-<div class="line"><a name="l03859"></a><span class="lineno"> 3859</span>&#160;<span class="comment">/*******************************************************************************</span></div>
-<div class="line"><a name="l03860"></a><span class="lineno"> 3860</span>&#160;<span class="comment">CONFIGURATION SECTION</span></div>
-<div class="line"><a name="l03861"></a><span class="lineno"> 3861</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l03862"></a><span class="lineno"> 3862</span>&#160;<span class="comment">Define some of these macros before each #include of this header or change them</span></div>
-<div class="line"><a name="l03863"></a><span class="lineno"> 3863</span>&#160;<span class="comment">here if you need other then default behavior depending on your environment.</span></div>
-<div class="line"><a name="l03864"></a><span class="lineno"> 3864</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l03865"></a><span class="lineno"> 3865</span>&#160; </div>
-<div class="line"><a name="l03866"></a><span class="lineno"> 3866</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l03867"></a><span class="lineno"> 3867</span>&#160;<span class="comment">Define this macro to 1 to make the library fetch pointers to Vulkan functions</span></div>
-<div class="line"><a name="l03868"></a><span class="lineno"> 3868</span>&#160;<span class="comment">internally, like:</span></div>
-<div class="line"><a name="l03869"></a><span class="lineno"> 3869</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l03870"></a><span class="lineno"> 3870</span>&#160;<span class="comment">    vulkanFunctions.vkAllocateMemory = &amp;vkAllocateMemory;</span></div>
-<div class="line"><a name="l03871"></a><span class="lineno"> 3871</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l03872"></a><span class="lineno"> 3872</span>&#160;<span class="preprocessor">#if !defined(VMA_STATIC_VULKAN_FUNCTIONS) &amp;&amp; !defined(VK_NO_PROTOTYPES)</span></div>
-<div class="line"><a name="l03873"></a><span class="lineno"> 3873</span>&#160;<span class="preprocessor">    #define VMA_STATIC_VULKAN_FUNCTIONS 1</span></div>
-<div class="line"><a name="l03874"></a><span class="lineno"> 3874</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03875"></a><span class="lineno"> 3875</span>&#160; </div>
-<div class="line"><a name="l03876"></a><span class="lineno"> 3876</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l03877"></a><span class="lineno"> 3877</span>&#160;<span class="comment">Define this macro to 1 to make the library fetch pointers to Vulkan functions</span></div>
-<div class="line"><a name="l03878"></a><span class="lineno"> 3878</span>&#160;<span class="comment">internally, like:</span></div>
-<div class="line"><a name="l03879"></a><span class="lineno"> 3879</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l03880"></a><span class="lineno"> 3880</span>&#160;<span class="comment">    vulkanFunctions.vkAllocateMemory = (PFN_vkAllocateMemory)vkGetDeviceProcAddr(m_hDevice, vkAllocateMemory);</span></div>
-<div class="line"><a name="l03881"></a><span class="lineno"> 3881</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l03882"></a><span class="lineno"> 3882</span>&#160;<span class="preprocessor">#if !defined(VMA_DYNAMIC_VULKAN_FUNCTIONS)</span></div>
-<div class="line"><a name="l03883"></a><span class="lineno"> 3883</span>&#160;<span class="preprocessor">    #define VMA_DYNAMIC_VULKAN_FUNCTIONS 1</span></div>
-<div class="line"><a name="l03884"></a><span class="lineno"> 3884</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03885"></a><span class="lineno"> 3885</span>&#160; </div>
-<div class="line"><a name="l03886"></a><span class="lineno"> 3886</span>&#160;<span class="comment">// Define this macro to 1 to make the library use STL containers instead of its own implementation.</span></div>
-<div class="line"><a name="l03887"></a><span class="lineno"> 3887</span>&#160;<span class="comment">//#define VMA_USE_STL_CONTAINERS 1</span></div>
-<div class="line"><a name="l03888"></a><span class="lineno"> 3888</span>&#160; </div>
-<div class="line"><a name="l03889"></a><span class="lineno"> 3889</span>&#160;<span class="comment">/* Set this macro to 1 to make the library including and using STL containers:</span></div>
-<div class="line"><a name="l03890"></a><span class="lineno"> 3890</span>&#160;<span class="comment">std::pair, std::vector, std::list, std::unordered_map.</span></div>
-<div class="line"><a name="l03891"></a><span class="lineno"> 3891</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l03892"></a><span class="lineno"> 3892</span>&#160;<span class="comment">Set it to 0 or undefined to make the library using its own implementation of</span></div>
-<div class="line"><a name="l03893"></a><span class="lineno"> 3893</span>&#160;<span class="comment">the containers.</span></div>
-<div class="line"><a name="l03894"></a><span class="lineno"> 3894</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l03895"></a><span class="lineno"> 3895</span>&#160;<span class="preprocessor">#if VMA_USE_STL_CONTAINERS</span></div>
-<div class="line"><a name="l03896"></a><span class="lineno"> 3896</span>&#160;<span class="preprocessor">   #define VMA_USE_STL_VECTOR 1</span></div>
-<div class="line"><a name="l03897"></a><span class="lineno"> 3897</span>&#160;<span class="preprocessor">   #define VMA_USE_STL_UNORDERED_MAP 1</span></div>
-<div class="line"><a name="l03898"></a><span class="lineno"> 3898</span>&#160;<span class="preprocessor">   #define VMA_USE_STL_LIST 1</span></div>
-<div class="line"><a name="l03899"></a><span class="lineno"> 3899</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03900"></a><span class="lineno"> 3900</span>&#160; </div>
-<div class="line"><a name="l03901"></a><span class="lineno"> 3901</span>&#160;<span class="preprocessor">#ifndef VMA_USE_STL_SHARED_MUTEX</span></div>
-<div class="line"><a name="l03902"></a><span class="lineno"> 3902</span>&#160;    <span class="comment">// Compiler conforms to C++17.</span></div>
-<div class="line"><a name="l03903"></a><span class="lineno"> 3903</span>&#160;<span class="preprocessor">    #if __cplusplus &gt;= 201703L</span></div>
-<div class="line"><a name="l03904"></a><span class="lineno"> 3904</span>&#160;<span class="preprocessor">        #define VMA_USE_STL_SHARED_MUTEX 1</span></div>
-<div class="line"><a name="l03905"></a><span class="lineno"> 3905</span>&#160;    <span class="comment">// Visual studio defines __cplusplus properly only when passed additional parameter: /Zc:__cplusplus</span></div>
-<div class="line"><a name="l03906"></a><span class="lineno"> 3906</span>&#160;    <span class="comment">// Otherwise it&#39;s always 199711L, despite shared_mutex works since Visual Studio 2015 Update 2.</span></div>
-<div class="line"><a name="l03907"></a><span class="lineno"> 3907</span>&#160;    <span class="comment">// See: https://blogs.msdn.microsoft.com/vcblog/2018/04/09/msvc-now-correctly-reports-__cplusplus/</span></div>
-<div class="line"><a name="l03908"></a><span class="lineno"> 3908</span>&#160;<span class="preprocessor">    #elif defined(_MSC_FULL_VER) &amp;&amp; _MSC_FULL_VER &gt;= 190023918 &amp;&amp; __cplusplus == 199711L &amp;&amp; _MSVC_LANG &gt;= 201703L</span></div>
-<div class="line"><a name="l03909"></a><span class="lineno"> 3909</span>&#160;<span class="preprocessor">        #define VMA_USE_STL_SHARED_MUTEX 1</span></div>
-<div class="line"><a name="l03910"></a><span class="lineno"> 3910</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l03911"></a><span class="lineno"> 3911</span>&#160;<span class="preprocessor">        #define VMA_USE_STL_SHARED_MUTEX 0</span></div>
-<div class="line"><a name="l03912"></a><span class="lineno"> 3912</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l03913"></a><span class="lineno"> 3913</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03914"></a><span class="lineno"> 3914</span>&#160; </div>
-<div class="line"><a name="l03915"></a><span class="lineno"> 3915</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l03916"></a><span class="lineno"> 3916</span>&#160;<span class="comment">THESE INCLUDES ARE NOT ENABLED BY DEFAULT.</span></div>
-<div class="line"><a name="l03917"></a><span class="lineno"> 3917</span>&#160;<span class="comment">Library has its own container implementation.</span></div>
-<div class="line"><a name="l03918"></a><span class="lineno"> 3918</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l03919"></a><span class="lineno"> 3919</span>&#160;<span class="preprocessor">#if VMA_USE_STL_VECTOR</span></div>
-<div class="line"><a name="l03920"></a><span class="lineno"> 3920</span>&#160;<span class="preprocessor">   #include &lt;vector&gt;</span></div>
-<div class="line"><a name="l03921"></a><span class="lineno"> 3921</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03922"></a><span class="lineno"> 3922</span>&#160; </div>
-<div class="line"><a name="l03923"></a><span class="lineno"> 3923</span>&#160;<span class="preprocessor">#if VMA_USE_STL_UNORDERED_MAP</span></div>
-<div class="line"><a name="l03924"></a><span class="lineno"> 3924</span>&#160;<span class="preprocessor">   #include &lt;unordered_map&gt;</span></div>
-<div class="line"><a name="l03925"></a><span class="lineno"> 3925</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03926"></a><span class="lineno"> 3926</span>&#160; </div>
-<div class="line"><a name="l03927"></a><span class="lineno"> 3927</span>&#160;<span class="preprocessor">#if VMA_USE_STL_LIST</span></div>
-<div class="line"><a name="l03928"></a><span class="lineno"> 3928</span>&#160;<span class="preprocessor">   #include &lt;list&gt;</span></div>
-<div class="line"><a name="l03929"></a><span class="lineno"> 3929</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03930"></a><span class="lineno"> 3930</span>&#160; </div>
-<div class="line"><a name="l03931"></a><span class="lineno"> 3931</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l03932"></a><span class="lineno"> 3932</span>&#160;<span class="comment">Following headers are used in this CONFIGURATION section only, so feel free to</span></div>
-<div class="line"><a name="l03933"></a><span class="lineno"> 3933</span>&#160;<span class="comment">remove them if not needed.</span></div>
-<div class="line"><a name="l03934"></a><span class="lineno"> 3934</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l03935"></a><span class="lineno"> 3935</span>&#160;<span class="preprocessor">#include &lt;cassert&gt;</span> <span class="comment">// for assert</span></div>
-<div class="line"><a name="l03936"></a><span class="lineno"> 3936</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span> <span class="comment">// for min, max</span></div>
-<div class="line"><a name="l03937"></a><span class="lineno"> 3937</span>&#160;<span class="preprocessor">#include &lt;mutex&gt;</span></div>
-<div class="line"><a name="l03938"></a><span class="lineno"> 3938</span>&#160; </div>
-<div class="line"><a name="l03939"></a><span class="lineno"> 3939</span>&#160;<span class="preprocessor">#ifndef VMA_NULL</span></div>
-<div class="line"><a name="l03940"></a><span class="lineno"> 3940</span>&#160;   <span class="comment">// Value used as null pointer. Define it to e.g.: nullptr, NULL, 0, (void*)0.</span></div>
-<div class="line"><a name="l03941"></a><span class="lineno"> 3941</span>&#160;<span class="preprocessor">   #define VMA_NULL   nullptr</span></div>
-<div class="line"><a name="l03942"></a><span class="lineno"> 3942</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03943"></a><span class="lineno"> 3943</span>&#160; </div>
-<div class="line"><a name="l03944"></a><span class="lineno"> 3944</span>&#160;<span class="preprocessor">#if defined(__ANDROID_API__) &amp;&amp; (__ANDROID_API__ &lt; 16)</span></div>
-<div class="line"><a name="l03945"></a><span class="lineno"> 3945</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
-<div class="line"><a name="l03946"></a><span class="lineno"> 3946</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
-<div class="line"><a name="l03947"></a><span class="lineno"> 3947</span>&#160;{</div>
-<div class="line"><a name="l03948"></a><span class="lineno"> 3948</span>&#160;    <span class="comment">// alignment must be &gt;= sizeof(void*)</span></div>
-<div class="line"><a name="l03949"></a><span class="lineno"> 3949</span>&#160;    <span class="keywordflow">if</span>(alignment &lt; <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*))</div>
-<div class="line"><a name="l03950"></a><span class="lineno"> 3950</span>&#160;    {</div>
-<div class="line"><a name="l03951"></a><span class="lineno"> 3951</span>&#160;        alignment = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*);</div>
-<div class="line"><a name="l03952"></a><span class="lineno"> 3952</span>&#160;    }</div>
+<div class="line"><a name="l03834"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a"> 3834</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a927c944f45e0f2941182abb6f608e64a">vmaBindBufferMemory2</a>(</div>
+<div class="line"><a name="l03835"></a><span class="lineno"> 3835</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03836"></a><span class="lineno"> 3836</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03837"></a><span class="lineno"> 3837</span>&#160;    VkDeviceSize allocationLocalOffset,</div>
+<div class="line"><a name="l03838"></a><span class="lineno"> 3838</span>&#160;    VkBuffer VMA_NOT_NULL_NON_DISPATCHABLE buffer,</div>
+<div class="line"><a name="l03839"></a><span class="lineno"> 3839</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">void</span>* VMA_NULLABLE pNext);</div>
+<div class="line"><a name="l03840"></a><span class="lineno"> 3840</span>&#160; </div>
+<div class="line"><a name="l03853"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5"> 3853</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a3d3ca45799923aa5d138e9e5f9eb2da5">vmaBindImageMemory</a>(</div>
+<div class="line"><a name="l03854"></a><span class="lineno"> 3854</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03855"></a><span class="lineno"> 3855</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03856"></a><span class="lineno"> 3856</span>&#160;    VkImage VMA_NOT_NULL_NON_DISPATCHABLE image);</div>
+<div class="line"><a name="l03857"></a><span class="lineno"> 3857</span>&#160; </div>
+<div class="line"><a name="l03868"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc"> 3868</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#aa8251ee81b0045a443e35b8e8aa021bc">vmaBindImageMemory2</a>(</div>
+<div class="line"><a name="l03869"></a><span class="lineno"> 3869</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03870"></a><span class="lineno"> 3870</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NOT_NULL allocation,</div>
+<div class="line"><a name="l03871"></a><span class="lineno"> 3871</span>&#160;    VkDeviceSize allocationLocalOffset,</div>
+<div class="line"><a name="l03872"></a><span class="lineno"> 3872</span>&#160;    VkImage VMA_NOT_NULL_NON_DISPATCHABLE image,</div>
+<div class="line"><a name="l03873"></a><span class="lineno"> 3873</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">void</span>* VMA_NULLABLE pNext);</div>
+<div class="line"><a name="l03874"></a><span class="lineno"> 3874</span>&#160; </div>
+<div class="line"><a name="l03901"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51"> 3901</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a>(</div>
+<div class="line"><a name="l03902"></a><span class="lineno"> 3902</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03903"></a><span class="lineno"> 3903</span>&#160;    <span class="keyword">const</span> VkBufferCreateInfo* VMA_NOT_NULL pBufferCreateInfo,</div>
+<div class="line"><a name="l03904"></a><span class="lineno"> 3904</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
+<div class="line"><a name="l03905"></a><span class="lineno"> 3905</span>&#160;    VkBuffer VMA_NULLABLE_NON_DISPATCHABLE * VMA_NOT_NULL pBuffer,</div>
+<div class="line"><a name="l03906"></a><span class="lineno"> 3906</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
+<div class="line"><a name="l03907"></a><span class="lineno"> 3907</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
+<div class="line"><a name="l03908"></a><span class="lineno"> 3908</span>&#160; </div>
+<div class="line"><a name="l03920"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77"> 3920</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a>(</div>
+<div class="line"><a name="l03921"></a><span class="lineno"> 3921</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03922"></a><span class="lineno"> 3922</span>&#160;    VkBuffer VMA_NULLABLE_NON_DISPATCHABLE buffer,</div>
+<div class="line"><a name="l03923"></a><span class="lineno"> 3923</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE allocation);</div>
+<div class="line"><a name="l03924"></a><span class="lineno"> 3924</span>&#160; </div>
+<div class="line"><a name="l03926"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73"> 3926</a></span>&#160;VMA_CALL_PRE VkResult VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#a02a94f25679275851a53e82eacbcfc73">vmaCreateImage</a>(</div>
+<div class="line"><a name="l03927"></a><span class="lineno"> 3927</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03928"></a><span class="lineno"> 3928</span>&#160;    <span class="keyword">const</span> VkImageCreateInfo* VMA_NOT_NULL pImageCreateInfo,</div>
+<div class="line"><a name="l03929"></a><span class="lineno"> 3929</span>&#160;    <span class="keyword">const</span> <a class="code" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>* VMA_NOT_NULL pAllocationCreateInfo,</div>
+<div class="line"><a name="l03930"></a><span class="lineno"> 3930</span>&#160;    VkImage VMA_NULLABLE_NON_DISPATCHABLE * VMA_NOT_NULL pImage,</div>
+<div class="line"><a name="l03931"></a><span class="lineno"> 3931</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE * VMA_NOT_NULL pAllocation,</div>
+<div class="line"><a name="l03932"></a><span class="lineno"> 3932</span>&#160;    <a class="code" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>* VMA_NULLABLE pAllocationInfo);</div>
+<div class="line"><a name="l03933"></a><span class="lineno"> 3933</span>&#160; </div>
+<div class="line"><a name="l03945"></a><span class="lineno"><a class="line" href="vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e"> 3945</a></span>&#160;VMA_CALL_PRE <span class="keywordtype">void</span> VMA_CALL_POST <a class="code" href="vk__mem__alloc_8h.html#ae50d2cb3b4a3bfd4dd40987234e50e7e">vmaDestroyImage</a>(</div>
+<div class="line"><a name="l03946"></a><span class="lineno"> 3946</span>&#160;    <a class="code" href="struct_vma_allocator.html">VmaAllocator</a> VMA_NOT_NULL allocator,</div>
+<div class="line"><a name="l03947"></a><span class="lineno"> 3947</span>&#160;    VkImage VMA_NULLABLE_NON_DISPATCHABLE image,</div>
+<div class="line"><a name="l03948"></a><span class="lineno"> 3948</span>&#160;    <a class="code" href="struct_vma_allocation.html">VmaAllocation</a> VMA_NULLABLE allocation);</div>
+<div class="line"><a name="l03949"></a><span class="lineno"> 3949</span>&#160; </div>
+<div class="line"><a name="l03950"></a><span class="lineno"> 3950</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l03951"></a><span class="lineno"> 3951</span>&#160;}</div>
+<div class="line"><a name="l03952"></a><span class="lineno"> 3952</span>&#160;<span class="preprocessor">#endif</span></div>
 <div class="line"><a name="l03953"></a><span class="lineno"> 3953</span>&#160; </div>
-<div class="line"><a name="l03954"></a><span class="lineno"> 3954</span>&#160;    <span class="keywordflow">return</span> memalign(alignment, size);</div>
-<div class="line"><a name="l03955"></a><span class="lineno"> 3955</span>&#160;}</div>
-<div class="line"><a name="l03956"></a><span class="lineno"> 3956</span>&#160;<span class="preprocessor">#elif defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) &amp;&amp; defined(__GLIBCXX__) &amp;&amp; !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC))</span></div>
-<div class="line"><a name="l03957"></a><span class="lineno"> 3957</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
-<div class="line"><a name="l03958"></a><span class="lineno"> 3958</span>&#160; </div>
-<div class="line"><a name="l03959"></a><span class="lineno"> 3959</span>&#160;<span class="preprocessor">#if defined(__APPLE__)</span></div>
-<div class="line"><a name="l03960"></a><span class="lineno"> 3960</span>&#160;<span class="preprocessor">#include &lt;AvailabilityMacros.h&gt;</span></div>
-<div class="line"><a name="l03961"></a><span class="lineno"> 3961</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03962"></a><span class="lineno"> 3962</span>&#160; </div>
-<div class="line"><a name="l03963"></a><span class="lineno"> 3963</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
-<div class="line"><a name="l03964"></a><span class="lineno"> 3964</span>&#160;{</div>
-<div class="line"><a name="l03965"></a><span class="lineno"> 3965</span>&#160;<span class="preprocessor">#if defined(__APPLE__) &amp;&amp; (defined(MAC_OS_X_VERSION_10_16) || defined(__IPHONE_14_0))</span></div>
-<div class="line"><a name="l03966"></a><span class="lineno"> 3966</span>&#160;<span class="preprocessor">#if MAC_OS_X_VERSION_MAX_ALLOWED &gt;= MAC_OS_X_VERSION_10_16 || __IPHONE_OS_VERSION_MAX_ALLOWED &gt;= __IPHONE_14_0</span></div>
-<div class="line"><a name="l03967"></a><span class="lineno"> 3967</span>&#160;    <span class="comment">// For C++14, usr/include/malloc/_malloc.h declares aligned_alloc()) only</span></div>
-<div class="line"><a name="l03968"></a><span class="lineno"> 3968</span>&#160;    <span class="comment">// with the MacOSX11.0 SDK in Xcode 12 (which is what adds </span></div>
-<div class="line"><a name="l03969"></a><span class="lineno"> 3969</span>&#160;    <span class="comment">// MAC_OS_X_VERSION_10_16), even though the function is marked</span></div>
-<div class="line"><a name="l03970"></a><span class="lineno"> 3970</span>&#160;    <span class="comment">// availabe for 10.15. That&#39;s why the preprocessor checks for 10.16 but</span></div>
-<div class="line"><a name="l03971"></a><span class="lineno"> 3971</span>&#160;    <span class="comment">// the __builtin_available checks for 10.15.</span></div>
-<div class="line"><a name="l03972"></a><span class="lineno"> 3972</span>&#160;    <span class="comment">// People who use C++17 could call aligned_alloc with the 10.15 SDK already.</span></div>
-<div class="line"><a name="l03973"></a><span class="lineno"> 3973</span>&#160;    <span class="keywordflow">if</span> (__builtin_available(macOS 10.15, iOS 13, *))</div>
-<div class="line"><a name="l03974"></a><span class="lineno"> 3974</span>&#160;        <span class="keywordflow">return</span> aligned_alloc(alignment, size);</div>
-<div class="line"><a name="l03975"></a><span class="lineno"> 3975</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03976"></a><span class="lineno"> 3976</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03977"></a><span class="lineno"> 3977</span>&#160;    <span class="comment">// alignment must be &gt;= sizeof(void*)</span></div>
-<div class="line"><a name="l03978"></a><span class="lineno"> 3978</span>&#160;    <span class="keywordflow">if</span>(alignment &lt; <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*))</div>
-<div class="line"><a name="l03979"></a><span class="lineno"> 3979</span>&#160;    {</div>
-<div class="line"><a name="l03980"></a><span class="lineno"> 3980</span>&#160;        alignment = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*);</div>
-<div class="line"><a name="l03981"></a><span class="lineno"> 3981</span>&#160;    }</div>
-<div class="line"><a name="l03982"></a><span class="lineno"> 3982</span>&#160; </div>
-<div class="line"><a name="l03983"></a><span class="lineno"> 3983</span>&#160;    <span class="keywordtype">void</span> *pointer;</div>
-<div class="line"><a name="l03984"></a><span class="lineno"> 3984</span>&#160;    <span class="keywordflow">if</span>(posix_memalign(&amp;pointer, alignment, size) == 0)</div>
-<div class="line"><a name="l03985"></a><span class="lineno"> 3985</span>&#160;        <span class="keywordflow">return</span> pointer;</div>
-<div class="line"><a name="l03986"></a><span class="lineno"> 3986</span>&#160;    <span class="keywordflow">return</span> VMA_NULL;</div>
-<div class="line"><a name="l03987"></a><span class="lineno"> 3987</span>&#160;}</div>
-<div class="line"><a name="l03988"></a><span class="lineno"> 3988</span>&#160;<span class="preprocessor">#elif defined(_WIN32)</span></div>
-<div class="line"><a name="l03989"></a><span class="lineno"> 3989</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
-<div class="line"><a name="l03990"></a><span class="lineno"> 3990</span>&#160;{</div>
-<div class="line"><a name="l03991"></a><span class="lineno"> 3991</span>&#160;    <span class="keywordflow">return</span> _aligned_malloc(size, alignment);</div>
-<div class="line"><a name="l03992"></a><span class="lineno"> 3992</span>&#160;}</div>
-<div class="line"><a name="l03993"></a><span class="lineno"> 3993</span>&#160;<span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03994"></a><span class="lineno"> 3994</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
-<div class="line"><a name="l03995"></a><span class="lineno"> 3995</span>&#160;{</div>
-<div class="line"><a name="l03996"></a><span class="lineno"> 3996</span>&#160;    <span class="keywordflow">return</span> aligned_alloc(alignment, size);</div>
-<div class="line"><a name="l03997"></a><span class="lineno"> 3997</span>&#160;}</div>
-<div class="line"><a name="l03998"></a><span class="lineno"> 3998</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03999"></a><span class="lineno"> 3999</span>&#160; </div>
-<div class="line"><a name="l04000"></a><span class="lineno"> 4000</span>&#160;<span class="comment">// If your compiler is not compatible with C++11 and definition of</span></div>
-<div class="line"><a name="l04001"></a><span class="lineno"> 4001</span>&#160;<span class="comment">// aligned_alloc() function is missing, uncommeting following line may help:</span></div>
-<div class="line"><a name="l04002"></a><span class="lineno"> 4002</span>&#160; </div>
-<div class="line"><a name="l04003"></a><span class="lineno"> 4003</span>&#160;<span class="comment">//#include &lt;malloc.h&gt;</span></div>
-<div class="line"><a name="l04004"></a><span class="lineno"> 4004</span>&#160; </div>
-<div class="line"><a name="l04005"></a><span class="lineno"> 4005</span>&#160;<span class="comment">// Normal assert to check for programmer&#39;s errors, especially in Debug configuration.</span></div>
-<div class="line"><a name="l04006"></a><span class="lineno"> 4006</span>&#160;<span class="preprocessor">#ifndef VMA_ASSERT</span></div>
-<div class="line"><a name="l04007"></a><span class="lineno"> 4007</span>&#160;<span class="preprocessor">   #ifdef NDEBUG</span></div>
-<div class="line"><a name="l04008"></a><span class="lineno"> 4008</span>&#160;<span class="preprocessor">       #define VMA_ASSERT(expr)</span></div>
-<div class="line"><a name="l04009"></a><span class="lineno"> 4009</span>&#160;<span class="preprocessor">   #else</span></div>
-<div class="line"><a name="l04010"></a><span class="lineno"> 4010</span>&#160;<span class="preprocessor">       #define VMA_ASSERT(expr)         assert(expr)</span></div>
-<div class="line"><a name="l04011"></a><span class="lineno"> 4011</span>&#160;<span class="preprocessor">   #endif</span></div>
-<div class="line"><a name="l04012"></a><span class="lineno"> 4012</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04013"></a><span class="lineno"> 4013</span>&#160; </div>
-<div class="line"><a name="l04014"></a><span class="lineno"> 4014</span>&#160;<span class="comment">// Assert that will be called very often, like inside data structures e.g. operator[].</span></div>
-<div class="line"><a name="l04015"></a><span class="lineno"> 4015</span>&#160;<span class="comment">// Making it non-empty can make program slow.</span></div>
-<div class="line"><a name="l04016"></a><span class="lineno"> 4016</span>&#160;<span class="preprocessor">#ifndef VMA_HEAVY_ASSERT</span></div>
-<div class="line"><a name="l04017"></a><span class="lineno"> 4017</span>&#160;<span class="preprocessor">   #ifdef NDEBUG</span></div>
-<div class="line"><a name="l04018"></a><span class="lineno"> 4018</span>&#160;<span class="preprocessor">       #define VMA_HEAVY_ASSERT(expr)</span></div>
-<div class="line"><a name="l04019"></a><span class="lineno"> 4019</span>&#160;<span class="preprocessor">   #else</span></div>
-<div class="line"><a name="l04020"></a><span class="lineno"> 4020</span>&#160;<span class="preprocessor">       #define VMA_HEAVY_ASSERT(expr)   //VMA_ASSERT(expr)</span></div>
-<div class="line"><a name="l04021"></a><span class="lineno"> 4021</span>&#160;<span class="preprocessor">   #endif</span></div>
-<div class="line"><a name="l04022"></a><span class="lineno"> 4022</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04023"></a><span class="lineno"> 4023</span>&#160; </div>
-<div class="line"><a name="l04024"></a><span class="lineno"> 4024</span>&#160;<span class="preprocessor">#ifndef VMA_ALIGN_OF</span></div>
-<div class="line"><a name="l04025"></a><span class="lineno"> 4025</span>&#160;<span class="preprocessor">   #define VMA_ALIGN_OF(type)       (__alignof(type))</span></div>
-<div class="line"><a name="l04026"></a><span class="lineno"> 4026</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04027"></a><span class="lineno"> 4027</span>&#160; </div>
-<div class="line"><a name="l04028"></a><span class="lineno"> 4028</span>&#160;<span class="preprocessor">#ifndef VMA_SYSTEM_ALIGNED_MALLOC</span></div>
-<div class="line"><a name="l04029"></a><span class="lineno"> 4029</span>&#160;<span class="preprocessor">   #define VMA_SYSTEM_ALIGNED_MALLOC(size, alignment) vma_aligned_alloc((alignment), (size))</span></div>
-<div class="line"><a name="l04030"></a><span class="lineno"> 4030</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04031"></a><span class="lineno"> 4031</span>&#160; </div>
-<div class="line"><a name="l04032"></a><span class="lineno"> 4032</span>&#160;<span class="preprocessor">#ifndef VMA_SYSTEM_FREE</span></div>
-<div class="line"><a name="l04033"></a><span class="lineno"> 4033</span>&#160;<span class="preprocessor">   #if defined(_WIN32)</span></div>
-<div class="line"><a name="l04034"></a><span class="lineno"> 4034</span>&#160;<span class="preprocessor">       #define VMA_SYSTEM_FREE(ptr)   _aligned_free(ptr)</span></div>
-<div class="line"><a name="l04035"></a><span class="lineno"> 4035</span>&#160;<span class="preprocessor">   #else</span></div>
-<div class="line"><a name="l04036"></a><span class="lineno"> 4036</span>&#160;<span class="preprocessor">       #define VMA_SYSTEM_FREE(ptr)   free(ptr)</span></div>
-<div class="line"><a name="l04037"></a><span class="lineno"> 4037</span>&#160;<span class="preprocessor">   #endif</span></div>
-<div class="line"><a name="l04038"></a><span class="lineno"> 4038</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04039"></a><span class="lineno"> 4039</span>&#160; </div>
-<div class="line"><a name="l04040"></a><span class="lineno"> 4040</span>&#160;<span class="preprocessor">#ifndef VMA_MIN</span></div>
-<div class="line"><a name="l04041"></a><span class="lineno"> 4041</span>&#160;<span class="preprocessor">   #define VMA_MIN(v1, v2)    (std::min((v1), (v2)))</span></div>
-<div class="line"><a name="l04042"></a><span class="lineno"> 4042</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04043"></a><span class="lineno"> 4043</span>&#160; </div>
-<div class="line"><a name="l04044"></a><span class="lineno"> 4044</span>&#160;<span class="preprocessor">#ifndef VMA_MAX</span></div>
-<div class="line"><a name="l04045"></a><span class="lineno"> 4045</span>&#160;<span class="preprocessor">   #define VMA_MAX(v1, v2)    (std::max((v1), (v2)))</span></div>
-<div class="line"><a name="l04046"></a><span class="lineno"> 4046</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04047"></a><span class="lineno"> 4047</span>&#160; </div>
-<div class="line"><a name="l04048"></a><span class="lineno"> 4048</span>&#160;<span class="preprocessor">#ifndef VMA_SWAP</span></div>
-<div class="line"><a name="l04049"></a><span class="lineno"> 4049</span>&#160;<span class="preprocessor">   #define VMA_SWAP(v1, v2)   std::swap((v1), (v2))</span></div>
-<div class="line"><a name="l04050"></a><span class="lineno"> 4050</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04051"></a><span class="lineno"> 4051</span>&#160; </div>
-<div class="line"><a name="l04052"></a><span class="lineno"> 4052</span>&#160;<span class="preprocessor">#ifndef VMA_SORT</span></div>
-<div class="line"><a name="l04053"></a><span class="lineno"> 4053</span>&#160;<span class="preprocessor">   #define VMA_SORT(beg, end, cmp)  std::sort(beg, end, cmp)</span></div>
-<div class="line"><a name="l04054"></a><span class="lineno"> 4054</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04055"></a><span class="lineno"> 4055</span>&#160; </div>
-<div class="line"><a name="l04056"></a><span class="lineno"> 4056</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_LOG</span></div>
-<div class="line"><a name="l04057"></a><span class="lineno"> 4057</span>&#160;<span class="preprocessor">   #define VMA_DEBUG_LOG(format, ...)</span></div>
-<div class="line"><a name="l04058"></a><span class="lineno"> 4058</span>&#160;   <span class="comment">/*</span></div>
-<div class="line"><a name="l04059"></a><span class="lineno"> 4059</span>&#160;<span class="comment">   #define VMA_DEBUG_LOG(format, ...) do { \</span></div>
-<div class="line"><a name="l04060"></a><span class="lineno"> 4060</span>&#160;<span class="comment">       printf(format, __VA_ARGS__); \</span></div>
-<div class="line"><a name="l04061"></a><span class="lineno"> 4061</span>&#160;<span class="comment">       printf(&quot;\n&quot;); \</span></div>
-<div class="line"><a name="l04062"></a><span class="lineno"> 4062</span>&#160;<span class="comment">   } while(false)</span></div>
-<div class="line"><a name="l04063"></a><span class="lineno"> 4063</span>&#160;<span class="comment">   */</span></div>
-<div class="line"><a name="l04064"></a><span class="lineno"> 4064</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04065"></a><span class="lineno"> 4065</span>&#160; </div>
-<div class="line"><a name="l04066"></a><span class="lineno"> 4066</span>&#160;<span class="comment">// Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.</span></div>
-<div class="line"><a name="l04067"></a><span class="lineno"> 4067</span>&#160;<span class="preprocessor">#if VMA_STATS_STRING_ENABLED</span></div>
-<div class="line"><a name="l04068"></a><span class="lineno"> 4068</span>&#160;    <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> VmaUint32ToStr(<span class="keywordtype">char</span>* outStr, <span class="keywordtype">size_t</span> strLen, uint32_t num)</div>
-<div class="line"><a name="l04069"></a><span class="lineno"> 4069</span>&#160;    {</div>
-<div class="line"><a name="l04070"></a><span class="lineno"> 4070</span>&#160;        snprintf(outStr, strLen, <span class="stringliteral">&quot;%u&quot;</span>, <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(num));</div>
-<div class="line"><a name="l04071"></a><span class="lineno"> 4071</span>&#160;    }</div>
-<div class="line"><a name="l04072"></a><span class="lineno"> 4072</span>&#160;    <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> VmaUint64ToStr(<span class="keywordtype">char</span>* outStr, <span class="keywordtype">size_t</span> strLen, uint64_t num)</div>
-<div class="line"><a name="l04073"></a><span class="lineno"> 4073</span>&#160;    {</div>
-<div class="line"><a name="l04074"></a><span class="lineno"> 4074</span>&#160;        snprintf(outStr, strLen, <span class="stringliteral">&quot;%llu&quot;</span>, <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span><span class="keyword">&gt;</span>(num));</div>
-<div class="line"><a name="l04075"></a><span class="lineno"> 4075</span>&#160;    }</div>
-<div class="line"><a name="l04076"></a><span class="lineno"> 4076</span>&#160;    <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> VmaPtrToStr(<span class="keywordtype">char</span>* outStr, <span class="keywordtype">size_t</span> strLen, <span class="keyword">const</span> <span class="keywordtype">void</span>* ptr)</div>
-<div class="line"><a name="l04077"></a><span class="lineno"> 4077</span>&#160;    {</div>
-<div class="line"><a name="l04078"></a><span class="lineno"> 4078</span>&#160;        snprintf(outStr, strLen, <span class="stringliteral">&quot;%p&quot;</span>, ptr);</div>
-<div class="line"><a name="l04079"></a><span class="lineno"> 4079</span>&#160;    }</div>
-<div class="line"><a name="l04080"></a><span class="lineno"> 4080</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04081"></a><span class="lineno"> 4081</span>&#160; </div>
-<div class="line"><a name="l04082"></a><span class="lineno"> 4082</span>&#160;<span class="preprocessor">#ifndef VMA_MUTEX</span></div>
-<div class="line"><a name="l04083"></a><span class="lineno"> 4083</span>&#160;    <span class="keyword">class </span>VmaMutex</div>
-<div class="line"><a name="l04084"></a><span class="lineno"> 4084</span>&#160;    {</div>
-<div class="line"><a name="l04085"></a><span class="lineno"> 4085</span>&#160;    <span class="keyword">public</span>:</div>
-<div class="line"><a name="l04086"></a><span class="lineno"> 4086</span>&#160;        <span class="keywordtype">void</span> Lock() { m_Mutex.lock(); }</div>
-<div class="line"><a name="l04087"></a><span class="lineno"> 4087</span>&#160;        <span class="keywordtype">void</span> Unlock() { m_Mutex.unlock(); }</div>
-<div class="line"><a name="l04088"></a><span class="lineno"> 4088</span>&#160;        <span class="keywordtype">bool</span> TryLock() { <span class="keywordflow">return</span> m_Mutex.try_lock(); }</div>
-<div class="line"><a name="l04089"></a><span class="lineno"> 4089</span>&#160;    <span class="keyword">private</span>:</div>
-<div class="line"><a name="l04090"></a><span class="lineno"> 4090</span>&#160;        std::mutex m_Mutex;</div>
-<div class="line"><a name="l04091"></a><span class="lineno"> 4091</span>&#160;    };</div>
-<div class="line"><a name="l04092"></a><span class="lineno"> 4092</span>&#160;<span class="preprocessor">    #define VMA_MUTEX VmaMutex</span></div>
-<div class="line"><a name="l04093"></a><span class="lineno"> 4093</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04094"></a><span class="lineno"> 4094</span>&#160; </div>
-<div class="line"><a name="l04095"></a><span class="lineno"> 4095</span>&#160;<span class="comment">// Read-write mutex, where &quot;read&quot; is shared access, &quot;write&quot; is exclusive access.</span></div>
-<div class="line"><a name="l04096"></a><span class="lineno"> 4096</span>&#160;<span class="preprocessor">#ifndef VMA_RW_MUTEX</span></div>
-<div class="line"><a name="l04097"></a><span class="lineno"> 4097</span>&#160;<span class="preprocessor">    #if VMA_USE_STL_SHARED_MUTEX</span></div>
-<div class="line"><a name="l04098"></a><span class="lineno"> 4098</span>&#160;        <span class="comment">// Use std::shared_mutex from C++17.</span></div>
-<div class="line"><a name="l04099"></a><span class="lineno"> 4099</span>&#160;<span class="preprocessor">        #include &lt;shared_mutex&gt;</span></div>
-<div class="line"><a name="l04100"></a><span class="lineno"> 4100</span>&#160;        <span class="keyword">class </span>VmaRWMutex</div>
-<div class="line"><a name="l04101"></a><span class="lineno"> 4101</span>&#160;        {</div>
-<div class="line"><a name="l04102"></a><span class="lineno"> 4102</span>&#160;        <span class="keyword">public</span>:</div>
-<div class="line"><a name="l04103"></a><span class="lineno"> 4103</span>&#160;            <span class="keywordtype">void</span> LockRead() { m_Mutex.lock_shared(); }</div>
-<div class="line"><a name="l04104"></a><span class="lineno"> 4104</span>&#160;            <span class="keywordtype">void</span> UnlockRead() { m_Mutex.unlock_shared(); }</div>
-<div class="line"><a name="l04105"></a><span class="lineno"> 4105</span>&#160;            <span class="keywordtype">bool</span> TryLockRead() { <span class="keywordflow">return</span> m_Mutex.try_lock_shared(); }</div>
-<div class="line"><a name="l04106"></a><span class="lineno"> 4106</span>&#160;            <span class="keywordtype">void</span> LockWrite() { m_Mutex.lock(); }</div>
-<div class="line"><a name="l04107"></a><span class="lineno"> 4107</span>&#160;            <span class="keywordtype">void</span> UnlockWrite() { m_Mutex.unlock(); }</div>
-<div class="line"><a name="l04108"></a><span class="lineno"> 4108</span>&#160;            <span class="keywordtype">bool</span> TryLockWrite() { <span class="keywordflow">return</span> m_Mutex.try_lock(); }</div>
-<div class="line"><a name="l04109"></a><span class="lineno"> 4109</span>&#160;        <span class="keyword">private</span>:</div>
-<div class="line"><a name="l04110"></a><span class="lineno"> 4110</span>&#160;            std::shared_mutex m_Mutex;</div>
-<div class="line"><a name="l04111"></a><span class="lineno"> 4111</span>&#160;        };</div>
-<div class="line"><a name="l04112"></a><span class="lineno"> 4112</span>&#160;<span class="preprocessor">        #define VMA_RW_MUTEX VmaRWMutex</span></div>
-<div class="line"><a name="l04113"></a><span class="lineno"> 4113</span>&#160;<span class="preprocessor">    #elif defined(_WIN32) &amp;&amp; defined(WINVER) &amp;&amp; WINVER &gt;= 0x0600</span></div>
-<div class="line"><a name="l04114"></a><span class="lineno"> 4114</span>&#160;        <span class="comment">// Use SRWLOCK from WinAPI.</span></div>
-<div class="line"><a name="l04115"></a><span class="lineno"> 4115</span>&#160;        <span class="comment">// Minimum supported client = Windows Vista, server = Windows Server 2008.</span></div>
-<div class="line"><a name="l04116"></a><span class="lineno"> 4116</span>&#160;        <span class="keyword">class </span>VmaRWMutex</div>
-<div class="line"><a name="l04117"></a><span class="lineno"> 4117</span>&#160;        {</div>
-<div class="line"><a name="l04118"></a><span class="lineno"> 4118</span>&#160;        <span class="keyword">public</span>:</div>
-<div class="line"><a name="l04119"></a><span class="lineno"> 4119</span>&#160;            VmaRWMutex() { InitializeSRWLock(&amp;m_Lock); }</div>
-<div class="line"><a name="l04120"></a><span class="lineno"> 4120</span>&#160;            <span class="keywordtype">void</span> LockRead() { AcquireSRWLockShared(&amp;m_Lock); }</div>
-<div class="line"><a name="l04121"></a><span class="lineno"> 4121</span>&#160;            <span class="keywordtype">void</span> UnlockRead() { ReleaseSRWLockShared(&amp;m_Lock); }</div>
-<div class="line"><a name="l04122"></a><span class="lineno"> 4122</span>&#160;            <span class="keywordtype">bool</span> TryLockRead() { <span class="keywordflow">return</span> TryAcquireSRWLockShared(&amp;m_Lock) != FALSE; }</div>
-<div class="line"><a name="l04123"></a><span class="lineno"> 4123</span>&#160;            <span class="keywordtype">void</span> LockWrite() { AcquireSRWLockExclusive(&amp;m_Lock); }</div>
-<div class="line"><a name="l04124"></a><span class="lineno"> 4124</span>&#160;            <span class="keywordtype">void</span> UnlockWrite() { ReleaseSRWLockExclusive(&amp;m_Lock); }</div>
-<div class="line"><a name="l04125"></a><span class="lineno"> 4125</span>&#160;            <span class="keywordtype">bool</span> TryLockWrite() { <span class="keywordflow">return</span> TryAcquireSRWLockExclusive(&amp;m_Lock) != FALSE; }</div>
-<div class="line"><a name="l04126"></a><span class="lineno"> 4126</span>&#160;        <span class="keyword">private</span>:</div>
-<div class="line"><a name="l04127"></a><span class="lineno"> 4127</span>&#160;            SRWLOCK m_Lock;</div>
-<div class="line"><a name="l04128"></a><span class="lineno"> 4128</span>&#160;        };</div>
-<div class="line"><a name="l04129"></a><span class="lineno"> 4129</span>&#160;<span class="preprocessor">        #define VMA_RW_MUTEX VmaRWMutex</span></div>
-<div class="line"><a name="l04130"></a><span class="lineno"> 4130</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l04131"></a><span class="lineno"> 4131</span>&#160;        <span class="comment">// Less efficient fallback: Use normal mutex.</span></div>
-<div class="line"><a name="l04132"></a><span class="lineno"> 4132</span>&#160;        <span class="keyword">class </span>VmaRWMutex</div>
-<div class="line"><a name="l04133"></a><span class="lineno"> 4133</span>&#160;        {</div>
-<div class="line"><a name="l04134"></a><span class="lineno"> 4134</span>&#160;        <span class="keyword">public</span>:</div>
-<div class="line"><a name="l04135"></a><span class="lineno"> 4135</span>&#160;            <span class="keywordtype">void</span> LockRead() { m_Mutex.Lock(); }</div>
-<div class="line"><a name="l04136"></a><span class="lineno"> 4136</span>&#160;            <span class="keywordtype">void</span> UnlockRead() { m_Mutex.Unlock(); }</div>
-<div class="line"><a name="l04137"></a><span class="lineno"> 4137</span>&#160;            <span class="keywordtype">bool</span> TryLockRead() { <span class="keywordflow">return</span> m_Mutex.TryLock(); }</div>
-<div class="line"><a name="l04138"></a><span class="lineno"> 4138</span>&#160;            <span class="keywordtype">void</span> LockWrite() { m_Mutex.Lock(); }</div>
-<div class="line"><a name="l04139"></a><span class="lineno"> 4139</span>&#160;            <span class="keywordtype">void</span> UnlockWrite() { m_Mutex.Unlock(); }</div>
-<div class="line"><a name="l04140"></a><span class="lineno"> 4140</span>&#160;            <span class="keywordtype">bool</span> TryLockWrite() { <span class="keywordflow">return</span> m_Mutex.TryLock(); }</div>
-<div class="line"><a name="l04141"></a><span class="lineno"> 4141</span>&#160;        <span class="keyword">private</span>:</div>
-<div class="line"><a name="l04142"></a><span class="lineno"> 4142</span>&#160;            VMA_MUTEX m_Mutex;</div>
-<div class="line"><a name="l04143"></a><span class="lineno"> 4143</span>&#160;        };</div>
-<div class="line"><a name="l04144"></a><span class="lineno"> 4144</span>&#160;<span class="preprocessor">        #define VMA_RW_MUTEX VmaRWMutex</span></div>
-<div class="line"><a name="l04145"></a><span class="lineno"> 4145</span>&#160;<span class="preprocessor">    #endif // #if VMA_USE_STL_SHARED_MUTEX</span></div>
-<div class="line"><a name="l04146"></a><span class="lineno"> 4146</span>&#160;<span class="preprocessor">#endif // #ifndef VMA_RW_MUTEX</span></div>
-<div class="line"><a name="l04147"></a><span class="lineno"> 4147</span>&#160; </div>
-<div class="line"><a name="l04148"></a><span class="lineno"> 4148</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l04149"></a><span class="lineno"> 4149</span>&#160;<span class="comment">If providing your own implementation, you need to implement a subset of std::atomic.</span></div>
-<div class="line"><a name="l04150"></a><span class="lineno"> 4150</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l04151"></a><span class="lineno"> 4151</span>&#160;<span class="preprocessor">#ifndef VMA_ATOMIC_UINT32</span></div>
-<div class="line"><a name="l04152"></a><span class="lineno"> 4152</span>&#160;<span class="preprocessor">    #include &lt;atomic&gt;</span></div>
-<div class="line"><a name="l04153"></a><span class="lineno"> 4153</span>&#160;<span class="preprocessor">    #define VMA_ATOMIC_UINT32 std::atomic&lt;uint32_t&gt;</span></div>
-<div class="line"><a name="l04154"></a><span class="lineno"> 4154</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04155"></a><span class="lineno"> 4155</span>&#160; </div>
-<div class="line"><a name="l04156"></a><span class="lineno"> 4156</span>&#160;<span class="preprocessor">#ifndef VMA_ATOMIC_UINT64</span></div>
-<div class="line"><a name="l04157"></a><span class="lineno"> 4157</span>&#160;<span class="preprocessor">    #include &lt;atomic&gt;</span></div>
-<div class="line"><a name="l04158"></a><span class="lineno"> 4158</span>&#160;<span class="preprocessor">    #define VMA_ATOMIC_UINT64 std::atomic&lt;uint64_t&gt;</span></div>
-<div class="line"><a name="l04159"></a><span class="lineno"> 4159</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04160"></a><span class="lineno"> 4160</span>&#160; </div>
-<div class="line"><a name="l04161"></a><span class="lineno"> 4161</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_ALWAYS_DEDICATED_MEMORY</span></div>
-<div class="line"><a name="l04162"></a><span class="lineno"> 4162</span>&#160; </div>
-<div class="line"><a name="l04166"></a><span class="lineno"> 4166</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_ALWAYS_DEDICATED_MEMORY (0)</span></div>
-<div class="line"><a name="l04167"></a><span class="lineno"> 4167</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04168"></a><span class="lineno"> 4168</span>&#160; </div>
-<div class="line"><a name="l04169"></a><span class="lineno"> 4169</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_ALIGNMENT</span></div>
-<div class="line"><a name="l04170"></a><span class="lineno"> 4170</span>&#160; </div>
-<div class="line"><a name="l04174"></a><span class="lineno"> 4174</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_ALIGNMENT (1)</span></div>
-<div class="line"><a name="l04175"></a><span class="lineno"> 4175</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04176"></a><span class="lineno"> 4176</span>&#160; </div>
-<div class="line"><a name="l04177"></a><span class="lineno"> 4177</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_MARGIN</span></div>
-<div class="line"><a name="l04178"></a><span class="lineno"> 4178</span>&#160; </div>
-<div class="line"><a name="l04182"></a><span class="lineno"> 4182</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_MARGIN (0)</span></div>
-<div class="line"><a name="l04183"></a><span class="lineno"> 4183</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04184"></a><span class="lineno"> 4184</span>&#160; </div>
-<div class="line"><a name="l04185"></a><span class="lineno"> 4185</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_INITIALIZE_ALLOCATIONS</span></div>
-<div class="line"><a name="l04186"></a><span class="lineno"> 4186</span>&#160; </div>
-<div class="line"><a name="l04190"></a><span class="lineno"> 4190</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_INITIALIZE_ALLOCATIONS (0)</span></div>
-<div class="line"><a name="l04191"></a><span class="lineno"> 4191</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04192"></a><span class="lineno"> 4192</span>&#160; </div>
-<div class="line"><a name="l04193"></a><span class="lineno"> 4193</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_DETECT_CORRUPTION</span></div>
-<div class="line"><a name="l04194"></a><span class="lineno"> 4194</span>&#160; </div>
-<div class="line"><a name="l04199"></a><span class="lineno"> 4199</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_DETECT_CORRUPTION (0)</span></div>
-<div class="line"><a name="l04200"></a><span class="lineno"> 4200</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04201"></a><span class="lineno"> 4201</span>&#160; </div>
-<div class="line"><a name="l04202"></a><span class="lineno"> 4202</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_GLOBAL_MUTEX</span></div>
-<div class="line"><a name="l04203"></a><span class="lineno"> 4203</span>&#160; </div>
-<div class="line"><a name="l04207"></a><span class="lineno"> 4207</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_GLOBAL_MUTEX (0)</span></div>
-<div class="line"><a name="l04208"></a><span class="lineno"> 4208</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04209"></a><span class="lineno"> 4209</span>&#160; </div>
-<div class="line"><a name="l04210"></a><span class="lineno"> 4210</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_MIN_BUFFER_IMAGE_GRANULARITY</span></div>
-<div class="line"><a name="l04211"></a><span class="lineno"> 4211</span>&#160; </div>
-<div class="line"><a name="l04215"></a><span class="lineno"> 4215</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_MIN_BUFFER_IMAGE_GRANULARITY (1)</span></div>
-<div class="line"><a name="l04216"></a><span class="lineno"> 4216</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04217"></a><span class="lineno"> 4217</span>&#160; </div>
-<div class="line"><a name="l04218"></a><span class="lineno"> 4218</span>&#160;<span class="preprocessor">#ifndef VMA_SMALL_HEAP_MAX_SIZE</span></div>
-<div class="line"><a name="l04219"></a><span class="lineno"> 4219</span>&#160;<span class="preprocessor">   #define VMA_SMALL_HEAP_MAX_SIZE (1024ull * 1024 * 1024)</span></div>
-<div class="line"><a name="l04221"></a><span class="lineno"> 4221</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04222"></a><span class="lineno"> 4222</span>&#160; </div>
-<div class="line"><a name="l04223"></a><span class="lineno"> 4223</span>&#160;<span class="preprocessor">#ifndef VMA_DEFAULT_LARGE_HEAP_BLOCK_SIZE</span></div>
-<div class="line"><a name="l04224"></a><span class="lineno"> 4224</span>&#160;<span class="preprocessor">   #define VMA_DEFAULT_LARGE_HEAP_BLOCK_SIZE (256ull * 1024 * 1024)</span></div>
-<div class="line"><a name="l04226"></a><span class="lineno"> 4226</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04227"></a><span class="lineno"> 4227</span>&#160; </div>
-<div class="line"><a name="l04228"></a><span class="lineno"> 4228</span>&#160;<span class="preprocessor">#ifndef VMA_CLASS_NO_COPY</span></div>
-<div class="line"><a name="l04229"></a><span class="lineno"> 4229</span>&#160;<span class="preprocessor">    #define VMA_CLASS_NO_COPY(className) \</span></div>
-<div class="line"><a name="l04230"></a><span class="lineno"> 4230</span>&#160;<span class="preprocessor">        private: \</span></div>
-<div class="line"><a name="l04231"></a><span class="lineno"> 4231</span>&#160;<span class="preprocessor">            className(const className&amp;) = delete; \</span></div>
-<div class="line"><a name="l04232"></a><span class="lineno"> 4232</span>&#160;<span class="preprocessor">            className&amp; operator=(const className&amp;) = delete;</span></div>
-<div class="line"><a name="l04233"></a><span class="lineno"> 4233</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04234"></a><span class="lineno"> 4234</span>&#160; </div>
-<div class="line"><a name="l04235"></a><span class="lineno"> 4235</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t VMA_FRAME_INDEX_LOST = UINT32_MAX;</div>
-<div class="line"><a name="l04236"></a><span class="lineno"> 4236</span>&#160; </div>
-<div class="line"><a name="l04237"></a><span class="lineno"> 4237</span>&#160;<span class="comment">// Decimal 2139416166, float NaN, little-endian binary 66 E6 84 7F.</span></div>
-<div class="line"><a name="l04238"></a><span class="lineno"> 4238</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t VMA_CORRUPTION_DETECTION_MAGIC_VALUE = 0x7F84E666;</div>
-<div class="line"><a name="l04239"></a><span class="lineno"> 4239</span>&#160; </div>
-<div class="line"><a name="l04240"></a><span class="lineno"> 4240</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint8_t VMA_ALLOCATION_FILL_PATTERN_CREATED   = 0xDC;</div>
-<div class="line"><a name="l04241"></a><span class="lineno"> 4241</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint8_t VMA_ALLOCATION_FILL_PATTERN_DESTROYED = 0xEF;</div>
-<div class="line"><a name="l04242"></a><span class="lineno"> 4242</span>&#160; </div>
-<div class="line"><a name="l04243"></a><span class="lineno"> 4243</span>&#160;<span class="comment">/*******************************************************************************</span></div>
-<div class="line"><a name="l04244"></a><span class="lineno"> 4244</span>&#160;<span class="comment">END OF CONFIGURATION</span></div>
-<div class="line"><a name="l04245"></a><span class="lineno"> 4245</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l04246"></a><span class="lineno"> 4246</span>&#160; </div>
-<div class="line"><a name="l04247"></a><span class="lineno"> 4247</span>&#160;<span class="comment">// # Copy of some Vulkan definitions so we don&#39;t need to check their existence just to handle few constants.</span></div>
-<div class="line"><a name="l04248"></a><span class="lineno"> 4248</span>&#160; </div>
-<div class="line"><a name="l04249"></a><span class="lineno"> 4249</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD_COPY = 0x00000040;</div>
-<div class="line"><a name="l04250"></a><span class="lineno"> 4250</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD_COPY = 0x00000080;</div>
-<div class="line"><a name="l04251"></a><span class="lineno"> 4251</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_COPY = 0x00020000;</div>
-<div class="line"><a name="l04252"></a><span class="lineno"> 4252</span>&#160; </div>
-<div class="line"><a name="l04253"></a><span class="lineno"> 4253</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t VMA_ALLOCATION_INTERNAL_STRATEGY_MIN_OFFSET = 0x10000000u;</div>
-<div class="line"><a name="l04254"></a><span class="lineno"> 4254</span>&#160; </div>
-<div class="line"><a name="l04255"></a><span class="lineno"> 4255</span>&#160;<span class="keyword">static</span> VkAllocationCallbacks VmaEmptyAllocationCallbacks = {</div>
-<div class="line"><a name="l04256"></a><span class="lineno"> 4256</span>&#160;    VMA_NULL, VMA_NULL, VMA_NULL, VMA_NULL, VMA_NULL, VMA_NULL };</div>
+<div class="line"><a name="l03954"></a><span class="lineno"> 3954</span>&#160;<span class="preprocessor">#endif // AMD_VULKAN_MEMORY_ALLOCATOR_H</span></div>
+<div class="line"><a name="l03955"></a><span class="lineno"> 3955</span>&#160; </div>
+<div class="line"><a name="l03956"></a><span class="lineno"> 3956</span>&#160;<span class="comment">// For Visual Studio IntelliSense.</span></div>
+<div class="line"><a name="l03957"></a><span class="lineno"> 3957</span>&#160;<span class="preprocessor">#if defined(__cplusplus) &amp;&amp; defined(__INTELLISENSE__)</span></div>
+<div class="line"><a name="l03958"></a><span class="lineno"> 3958</span>&#160;<span class="preprocessor">#define VMA_IMPLEMENTATION</span></div>
+<div class="line"><a name="l03959"></a><span class="lineno"> 3959</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l03960"></a><span class="lineno"> 3960</span>&#160; </div>
+<div class="line"><a name="l03961"></a><span class="lineno"> 3961</span>&#160;<span class="preprocessor">#ifdef VMA_IMPLEMENTATION</span></div>
+<div class="line"><a name="l03962"></a><span class="lineno"> 3962</span>&#160;<span class="preprocessor">#undef VMA_IMPLEMENTATION</span></div>
+<div class="line"><a name="l03963"></a><span class="lineno"> 3963</span>&#160; </div>
+<div class="line"><a name="l03964"></a><span class="lineno"> 3964</span>&#160;<span class="preprocessor">#include &lt;cstdint&gt;</span></div>
+<div class="line"><a name="l03965"></a><span class="lineno"> 3965</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
+<div class="line"><a name="l03966"></a><span class="lineno"> 3966</span>&#160;<span class="preprocessor">#include &lt;cstring&gt;</span></div>
+<div class="line"><a name="l03967"></a><span class="lineno"> 3967</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div>
+<div class="line"><a name="l03968"></a><span class="lineno"> 3968</span>&#160; </div>
+<div class="line"><a name="l03969"></a><span class="lineno"> 3969</span>&#160;<span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l03970"></a><span class="lineno"> 3970</span>&#160;<span class="comment">CONFIGURATION SECTION</span></div>
+<div class="line"><a name="l03971"></a><span class="lineno"> 3971</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l03972"></a><span class="lineno"> 3972</span>&#160;<span class="comment">Define some of these macros before each #include of this header or change them</span></div>
+<div class="line"><a name="l03973"></a><span class="lineno"> 3973</span>&#160;<span class="comment">here if you need other then default behavior depending on your environment.</span></div>
+<div class="line"><a name="l03974"></a><span class="lineno"> 3974</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l03975"></a><span class="lineno"> 3975</span>&#160; </div>
+<div class="line"><a name="l03976"></a><span class="lineno"> 3976</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l03977"></a><span class="lineno"> 3977</span>&#160;<span class="comment">Define this macro to 1 to make the library fetch pointers to Vulkan functions</span></div>
+<div class="line"><a name="l03978"></a><span class="lineno"> 3978</span>&#160;<span class="comment">internally, like:</span></div>
+<div class="line"><a name="l03979"></a><span class="lineno"> 3979</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l03980"></a><span class="lineno"> 3980</span>&#160;<span class="comment">    vulkanFunctions.vkAllocateMemory = &amp;vkAllocateMemory;</span></div>
+<div class="line"><a name="l03981"></a><span class="lineno"> 3981</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l03982"></a><span class="lineno"> 3982</span>&#160;<span class="preprocessor">#if !defined(VMA_STATIC_VULKAN_FUNCTIONS) &amp;&amp; !defined(VK_NO_PROTOTYPES)</span></div>
+<div class="line"><a name="l03983"></a><span class="lineno"> 3983</span>&#160;<span class="preprocessor">    #define VMA_STATIC_VULKAN_FUNCTIONS 1</span></div>
+<div class="line"><a name="l03984"></a><span class="lineno"> 3984</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l03985"></a><span class="lineno"> 3985</span>&#160; </div>
+<div class="line"><a name="l03986"></a><span class="lineno"> 3986</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l03987"></a><span class="lineno"> 3987</span>&#160;<span class="comment">Define this macro to 1 to make the library fetch pointers to Vulkan functions</span></div>
+<div class="line"><a name="l03988"></a><span class="lineno"> 3988</span>&#160;<span class="comment">internally, like:</span></div>
+<div class="line"><a name="l03989"></a><span class="lineno"> 3989</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l03990"></a><span class="lineno"> 3990</span>&#160;<span class="comment">    vulkanFunctions.vkAllocateMemory = (PFN_vkAllocateMemory)vkGetDeviceProcAddr(m_hDevice, vkAllocateMemory);</span></div>
+<div class="line"><a name="l03991"></a><span class="lineno"> 3991</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l03992"></a><span class="lineno"> 3992</span>&#160;<span class="preprocessor">#if !defined(VMA_DYNAMIC_VULKAN_FUNCTIONS)</span></div>
+<div class="line"><a name="l03993"></a><span class="lineno"> 3993</span>&#160;<span class="preprocessor">    #define VMA_DYNAMIC_VULKAN_FUNCTIONS 1</span></div>
+<div class="line"><a name="l03994"></a><span class="lineno"> 3994</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l03995"></a><span class="lineno"> 3995</span>&#160; </div>
+<div class="line"><a name="l03996"></a><span class="lineno"> 3996</span>&#160;<span class="comment">// Define this macro to 1 to make the library use STL containers instead of its own implementation.</span></div>
+<div class="line"><a name="l03997"></a><span class="lineno"> 3997</span>&#160;<span class="comment">//#define VMA_USE_STL_CONTAINERS 1</span></div>
+<div class="line"><a name="l03998"></a><span class="lineno"> 3998</span>&#160; </div>
+<div class="line"><a name="l03999"></a><span class="lineno"> 3999</span>&#160;<span class="comment">/* Set this macro to 1 to make the library including and using STL containers:</span></div>
+<div class="line"><a name="l04000"></a><span class="lineno"> 4000</span>&#160;<span class="comment">std::pair, std::vector, std::list, std::unordered_map.</span></div>
+<div class="line"><a name="l04001"></a><span class="lineno"> 4001</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l04002"></a><span class="lineno"> 4002</span>&#160;<span class="comment">Set it to 0 or undefined to make the library using its own implementation of</span></div>
+<div class="line"><a name="l04003"></a><span class="lineno"> 4003</span>&#160;<span class="comment">the containers.</span></div>
+<div class="line"><a name="l04004"></a><span class="lineno"> 4004</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l04005"></a><span class="lineno"> 4005</span>&#160;<span class="preprocessor">#if VMA_USE_STL_CONTAINERS</span></div>
+<div class="line"><a name="l04006"></a><span class="lineno"> 4006</span>&#160;<span class="preprocessor">   #define VMA_USE_STL_VECTOR 1</span></div>
+<div class="line"><a name="l04007"></a><span class="lineno"> 4007</span>&#160;<span class="preprocessor">   #define VMA_USE_STL_UNORDERED_MAP 1</span></div>
+<div class="line"><a name="l04008"></a><span class="lineno"> 4008</span>&#160;<span class="preprocessor">   #define VMA_USE_STL_LIST 1</span></div>
+<div class="line"><a name="l04009"></a><span class="lineno"> 4009</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04010"></a><span class="lineno"> 4010</span>&#160; </div>
+<div class="line"><a name="l04011"></a><span class="lineno"> 4011</span>&#160;<span class="preprocessor">#ifndef VMA_USE_STL_SHARED_MUTEX</span></div>
+<div class="line"><a name="l04012"></a><span class="lineno"> 4012</span>&#160;    <span class="comment">// Compiler conforms to C++17.</span></div>
+<div class="line"><a name="l04013"></a><span class="lineno"> 4013</span>&#160;<span class="preprocessor">    #if __cplusplus &gt;= 201703L</span></div>
+<div class="line"><a name="l04014"></a><span class="lineno"> 4014</span>&#160;<span class="preprocessor">        #define VMA_USE_STL_SHARED_MUTEX 1</span></div>
+<div class="line"><a name="l04015"></a><span class="lineno"> 4015</span>&#160;    <span class="comment">// Visual studio defines __cplusplus properly only when passed additional parameter: /Zc:__cplusplus</span></div>
+<div class="line"><a name="l04016"></a><span class="lineno"> 4016</span>&#160;    <span class="comment">// Otherwise it&#39;s always 199711L, despite shared_mutex works since Visual Studio 2015 Update 2.</span></div>
+<div class="line"><a name="l04017"></a><span class="lineno"> 4017</span>&#160;    <span class="comment">// See: https://blogs.msdn.microsoft.com/vcblog/2018/04/09/msvc-now-correctly-reports-__cplusplus/</span></div>
+<div class="line"><a name="l04018"></a><span class="lineno"> 4018</span>&#160;<span class="preprocessor">    #elif defined(_MSC_FULL_VER) &amp;&amp; _MSC_FULL_VER &gt;= 190023918 &amp;&amp; __cplusplus == 199711L &amp;&amp; _MSVC_LANG &gt;= 201703L</span></div>
+<div class="line"><a name="l04019"></a><span class="lineno"> 4019</span>&#160;<span class="preprocessor">        #define VMA_USE_STL_SHARED_MUTEX 1</span></div>
+<div class="line"><a name="l04020"></a><span class="lineno"> 4020</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l04021"></a><span class="lineno"> 4021</span>&#160;<span class="preprocessor">        #define VMA_USE_STL_SHARED_MUTEX 0</span></div>
+<div class="line"><a name="l04022"></a><span class="lineno"> 4022</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l04023"></a><span class="lineno"> 4023</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04024"></a><span class="lineno"> 4024</span>&#160; </div>
+<div class="line"><a name="l04025"></a><span class="lineno"> 4025</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l04026"></a><span class="lineno"> 4026</span>&#160;<span class="comment">THESE INCLUDES ARE NOT ENABLED BY DEFAULT.</span></div>
+<div class="line"><a name="l04027"></a><span class="lineno"> 4027</span>&#160;<span class="comment">Library has its own container implementation.</span></div>
+<div class="line"><a name="l04028"></a><span class="lineno"> 4028</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l04029"></a><span class="lineno"> 4029</span>&#160;<span class="preprocessor">#if VMA_USE_STL_VECTOR</span></div>
+<div class="line"><a name="l04030"></a><span class="lineno"> 4030</span>&#160;<span class="preprocessor">   #include &lt;vector&gt;</span></div>
+<div class="line"><a name="l04031"></a><span class="lineno"> 4031</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04032"></a><span class="lineno"> 4032</span>&#160; </div>
+<div class="line"><a name="l04033"></a><span class="lineno"> 4033</span>&#160;<span class="preprocessor">#if VMA_USE_STL_UNORDERED_MAP</span></div>
+<div class="line"><a name="l04034"></a><span class="lineno"> 4034</span>&#160;<span class="preprocessor">   #include &lt;unordered_map&gt;</span></div>
+<div class="line"><a name="l04035"></a><span class="lineno"> 4035</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04036"></a><span class="lineno"> 4036</span>&#160; </div>
+<div class="line"><a name="l04037"></a><span class="lineno"> 4037</span>&#160;<span class="preprocessor">#if VMA_USE_STL_LIST</span></div>
+<div class="line"><a name="l04038"></a><span class="lineno"> 4038</span>&#160;<span class="preprocessor">   #include &lt;list&gt;</span></div>
+<div class="line"><a name="l04039"></a><span class="lineno"> 4039</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04040"></a><span class="lineno"> 4040</span>&#160; </div>
+<div class="line"><a name="l04041"></a><span class="lineno"> 4041</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l04042"></a><span class="lineno"> 4042</span>&#160;<span class="comment">Following headers are used in this CONFIGURATION section only, so feel free to</span></div>
+<div class="line"><a name="l04043"></a><span class="lineno"> 4043</span>&#160;<span class="comment">remove them if not needed.</span></div>
+<div class="line"><a name="l04044"></a><span class="lineno"> 4044</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l04045"></a><span class="lineno"> 4045</span>&#160;<span class="preprocessor">#include &lt;cassert&gt;</span> <span class="comment">// for assert</span></div>
+<div class="line"><a name="l04046"></a><span class="lineno"> 4046</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span> <span class="comment">// for min, max</span></div>
+<div class="line"><a name="l04047"></a><span class="lineno"> 4047</span>&#160;<span class="preprocessor">#include &lt;mutex&gt;</span></div>
+<div class="line"><a name="l04048"></a><span class="lineno"> 4048</span>&#160; </div>
+<div class="line"><a name="l04049"></a><span class="lineno"> 4049</span>&#160;<span class="preprocessor">#ifndef VMA_NULL</span></div>
+<div class="line"><a name="l04050"></a><span class="lineno"> 4050</span>&#160;   <span class="comment">// Value used as null pointer. Define it to e.g.: nullptr, NULL, 0, (void*)0.</span></div>
+<div class="line"><a name="l04051"></a><span class="lineno"> 4051</span>&#160;<span class="preprocessor">   #define VMA_NULL   nullptr</span></div>
+<div class="line"><a name="l04052"></a><span class="lineno"> 4052</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04053"></a><span class="lineno"> 4053</span>&#160; </div>
+<div class="line"><a name="l04054"></a><span class="lineno"> 4054</span>&#160;<span class="preprocessor">#if defined(__ANDROID_API__) &amp;&amp; (__ANDROID_API__ &lt; 16)</span></div>
+<div class="line"><a name="l04055"></a><span class="lineno"> 4055</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
+<div class="line"><a name="l04056"></a><span class="lineno"> 4056</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
+<div class="line"><a name="l04057"></a><span class="lineno"> 4057</span>&#160;{</div>
+<div class="line"><a name="l04058"></a><span class="lineno"> 4058</span>&#160;    <span class="comment">// alignment must be &gt;= sizeof(void*)</span></div>
+<div class="line"><a name="l04059"></a><span class="lineno"> 4059</span>&#160;    <span class="keywordflow">if</span>(alignment &lt; <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*))</div>
+<div class="line"><a name="l04060"></a><span class="lineno"> 4060</span>&#160;    {</div>
+<div class="line"><a name="l04061"></a><span class="lineno"> 4061</span>&#160;        alignment = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*);</div>
+<div class="line"><a name="l04062"></a><span class="lineno"> 4062</span>&#160;    }</div>
+<div class="line"><a name="l04063"></a><span class="lineno"> 4063</span>&#160; </div>
+<div class="line"><a name="l04064"></a><span class="lineno"> 4064</span>&#160;    <span class="keywordflow">return</span> memalign(alignment, size);</div>
+<div class="line"><a name="l04065"></a><span class="lineno"> 4065</span>&#160;}</div>
+<div class="line"><a name="l04066"></a><span class="lineno"> 4066</span>&#160;<span class="preprocessor">#elif defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) &amp;&amp; defined(__GLIBCXX__) &amp;&amp; !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC))</span></div>
+<div class="line"><a name="l04067"></a><span class="lineno"> 4067</span>&#160;<span class="preprocessor">#include &lt;cstdlib&gt;</span></div>
+<div class="line"><a name="l04068"></a><span class="lineno"> 4068</span>&#160; </div>
+<div class="line"><a name="l04069"></a><span class="lineno"> 4069</span>&#160;<span class="preprocessor">#if defined(__APPLE__)</span></div>
+<div class="line"><a name="l04070"></a><span class="lineno"> 4070</span>&#160;<span class="preprocessor">#include &lt;AvailabilityMacros.h&gt;</span></div>
+<div class="line"><a name="l04071"></a><span class="lineno"> 4071</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04072"></a><span class="lineno"> 4072</span>&#160; </div>
+<div class="line"><a name="l04073"></a><span class="lineno"> 4073</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
+<div class="line"><a name="l04074"></a><span class="lineno"> 4074</span>&#160;{</div>
+<div class="line"><a name="l04075"></a><span class="lineno"> 4075</span>&#160;<span class="preprocessor">#if defined(__APPLE__) &amp;&amp; (defined(MAC_OS_X_VERSION_10_16) || defined(__IPHONE_14_0))</span></div>
+<div class="line"><a name="l04076"></a><span class="lineno"> 4076</span>&#160;<span class="preprocessor">#if MAC_OS_X_VERSION_MAX_ALLOWED &gt;= MAC_OS_X_VERSION_10_16 || __IPHONE_OS_VERSION_MAX_ALLOWED &gt;= __IPHONE_14_0</span></div>
+<div class="line"><a name="l04077"></a><span class="lineno"> 4077</span>&#160;    <span class="comment">// For C++14, usr/include/malloc/_malloc.h declares aligned_alloc()) only</span></div>
+<div class="line"><a name="l04078"></a><span class="lineno"> 4078</span>&#160;    <span class="comment">// with the MacOSX11.0 SDK in Xcode 12 (which is what adds </span></div>
+<div class="line"><a name="l04079"></a><span class="lineno"> 4079</span>&#160;    <span class="comment">// MAC_OS_X_VERSION_10_16), even though the function is marked</span></div>
+<div class="line"><a name="l04080"></a><span class="lineno"> 4080</span>&#160;    <span class="comment">// availabe for 10.15. That&#39;s why the preprocessor checks for 10.16 but</span></div>
+<div class="line"><a name="l04081"></a><span class="lineno"> 4081</span>&#160;    <span class="comment">// the __builtin_available checks for 10.15.</span></div>
+<div class="line"><a name="l04082"></a><span class="lineno"> 4082</span>&#160;    <span class="comment">// People who use C++17 could call aligned_alloc with the 10.15 SDK already.</span></div>
+<div class="line"><a name="l04083"></a><span class="lineno"> 4083</span>&#160;    <span class="keywordflow">if</span> (__builtin_available(macOS 10.15, iOS 13, *))</div>
+<div class="line"><a name="l04084"></a><span class="lineno"> 4084</span>&#160;        <span class="keywordflow">return</span> aligned_alloc(alignment, size);</div>
+<div class="line"><a name="l04085"></a><span class="lineno"> 4085</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04086"></a><span class="lineno"> 4086</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04087"></a><span class="lineno"> 4087</span>&#160;    <span class="comment">// alignment must be &gt;= sizeof(void*)</span></div>
+<div class="line"><a name="l04088"></a><span class="lineno"> 4088</span>&#160;    <span class="keywordflow">if</span>(alignment &lt; <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*))</div>
+<div class="line"><a name="l04089"></a><span class="lineno"> 4089</span>&#160;    {</div>
+<div class="line"><a name="l04090"></a><span class="lineno"> 4090</span>&#160;        alignment = <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*);</div>
+<div class="line"><a name="l04091"></a><span class="lineno"> 4091</span>&#160;    }</div>
+<div class="line"><a name="l04092"></a><span class="lineno"> 4092</span>&#160; </div>
+<div class="line"><a name="l04093"></a><span class="lineno"> 4093</span>&#160;    <span class="keywordtype">void</span> *pointer;</div>
+<div class="line"><a name="l04094"></a><span class="lineno"> 4094</span>&#160;    <span class="keywordflow">if</span>(posix_memalign(&amp;pointer, alignment, size) == 0)</div>
+<div class="line"><a name="l04095"></a><span class="lineno"> 4095</span>&#160;        <span class="keywordflow">return</span> pointer;</div>
+<div class="line"><a name="l04096"></a><span class="lineno"> 4096</span>&#160;    <span class="keywordflow">return</span> VMA_NULL;</div>
+<div class="line"><a name="l04097"></a><span class="lineno"> 4097</span>&#160;}</div>
+<div class="line"><a name="l04098"></a><span class="lineno"> 4098</span>&#160;<span class="preprocessor">#elif defined(_WIN32)</span></div>
+<div class="line"><a name="l04099"></a><span class="lineno"> 4099</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
+<div class="line"><a name="l04100"></a><span class="lineno"> 4100</span>&#160;{</div>
+<div class="line"><a name="l04101"></a><span class="lineno"> 4101</span>&#160;    <span class="keywordflow">return</span> _aligned_malloc(size, alignment);</div>
+<div class="line"><a name="l04102"></a><span class="lineno"> 4102</span>&#160;}</div>
+<div class="line"><a name="l04103"></a><span class="lineno"> 4103</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l04104"></a><span class="lineno"> 4104</span>&#160;<span class="keywordtype">void</span> *vma_aligned_alloc(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size)</div>
+<div class="line"><a name="l04105"></a><span class="lineno"> 4105</span>&#160;{</div>
+<div class="line"><a name="l04106"></a><span class="lineno"> 4106</span>&#160;    <span class="keywordflow">return</span> aligned_alloc(alignment, size);</div>
+<div class="line"><a name="l04107"></a><span class="lineno"> 4107</span>&#160;}</div>
+<div class="line"><a name="l04108"></a><span class="lineno"> 4108</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04109"></a><span class="lineno"> 4109</span>&#160; </div>
+<div class="line"><a name="l04110"></a><span class="lineno"> 4110</span>&#160;<span class="comment">// If your compiler is not compatible with C++11 and definition of</span></div>
+<div class="line"><a name="l04111"></a><span class="lineno"> 4111</span>&#160;<span class="comment">// aligned_alloc() function is missing, uncommeting following line may help:</span></div>
+<div class="line"><a name="l04112"></a><span class="lineno"> 4112</span>&#160; </div>
+<div class="line"><a name="l04113"></a><span class="lineno"> 4113</span>&#160;<span class="comment">//#include &lt;malloc.h&gt;</span></div>
+<div class="line"><a name="l04114"></a><span class="lineno"> 4114</span>&#160; </div>
+<div class="line"><a name="l04115"></a><span class="lineno"> 4115</span>&#160;<span class="comment">// Normal assert to check for programmer&#39;s errors, especially in Debug configuration.</span></div>
+<div class="line"><a name="l04116"></a><span class="lineno"> 4116</span>&#160;<span class="preprocessor">#ifndef VMA_ASSERT</span></div>
+<div class="line"><a name="l04117"></a><span class="lineno"> 4117</span>&#160;<span class="preprocessor">   #ifdef NDEBUG</span></div>
+<div class="line"><a name="l04118"></a><span class="lineno"> 4118</span>&#160;<span class="preprocessor">       #define VMA_ASSERT(expr)</span></div>
+<div class="line"><a name="l04119"></a><span class="lineno"> 4119</span>&#160;<span class="preprocessor">   #else</span></div>
+<div class="line"><a name="l04120"></a><span class="lineno"> 4120</span>&#160;<span class="preprocessor">       #define VMA_ASSERT(expr)         assert(expr)</span></div>
+<div class="line"><a name="l04121"></a><span class="lineno"> 4121</span>&#160;<span class="preprocessor">   #endif</span></div>
+<div class="line"><a name="l04122"></a><span class="lineno"> 4122</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04123"></a><span class="lineno"> 4123</span>&#160; </div>
+<div class="line"><a name="l04124"></a><span class="lineno"> 4124</span>&#160;<span class="comment">// Assert that will be called very often, like inside data structures e.g. operator[].</span></div>
+<div class="line"><a name="l04125"></a><span class="lineno"> 4125</span>&#160;<span class="comment">// Making it non-empty can make program slow.</span></div>
+<div class="line"><a name="l04126"></a><span class="lineno"> 4126</span>&#160;<span class="preprocessor">#ifndef VMA_HEAVY_ASSERT</span></div>
+<div class="line"><a name="l04127"></a><span class="lineno"> 4127</span>&#160;<span class="preprocessor">   #ifdef NDEBUG</span></div>
+<div class="line"><a name="l04128"></a><span class="lineno"> 4128</span>&#160;<span class="preprocessor">       #define VMA_HEAVY_ASSERT(expr)</span></div>
+<div class="line"><a name="l04129"></a><span class="lineno"> 4129</span>&#160;<span class="preprocessor">   #else</span></div>
+<div class="line"><a name="l04130"></a><span class="lineno"> 4130</span>&#160;<span class="preprocessor">       #define VMA_HEAVY_ASSERT(expr)   //VMA_ASSERT(expr)</span></div>
+<div class="line"><a name="l04131"></a><span class="lineno"> 4131</span>&#160;<span class="preprocessor">   #endif</span></div>
+<div class="line"><a name="l04132"></a><span class="lineno"> 4132</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04133"></a><span class="lineno"> 4133</span>&#160; </div>
+<div class="line"><a name="l04134"></a><span class="lineno"> 4134</span>&#160;<span class="preprocessor">#ifndef VMA_ALIGN_OF</span></div>
+<div class="line"><a name="l04135"></a><span class="lineno"> 4135</span>&#160;<span class="preprocessor">   #define VMA_ALIGN_OF(type)       (__alignof(type))</span></div>
+<div class="line"><a name="l04136"></a><span class="lineno"> 4136</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04137"></a><span class="lineno"> 4137</span>&#160; </div>
+<div class="line"><a name="l04138"></a><span class="lineno"> 4138</span>&#160;<span class="preprocessor">#ifndef VMA_SYSTEM_ALIGNED_MALLOC</span></div>
+<div class="line"><a name="l04139"></a><span class="lineno"> 4139</span>&#160;<span class="preprocessor">   #define VMA_SYSTEM_ALIGNED_MALLOC(size, alignment) vma_aligned_alloc((alignment), (size))</span></div>
+<div class="line"><a name="l04140"></a><span class="lineno"> 4140</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04141"></a><span class="lineno"> 4141</span>&#160; </div>
+<div class="line"><a name="l04142"></a><span class="lineno"> 4142</span>&#160;<span class="preprocessor">#ifndef VMA_SYSTEM_FREE</span></div>
+<div class="line"><a name="l04143"></a><span class="lineno"> 4143</span>&#160;<span class="preprocessor">   #if defined(_WIN32)</span></div>
+<div class="line"><a name="l04144"></a><span class="lineno"> 4144</span>&#160;<span class="preprocessor">       #define VMA_SYSTEM_FREE(ptr)   _aligned_free(ptr)</span></div>
+<div class="line"><a name="l04145"></a><span class="lineno"> 4145</span>&#160;<span class="preprocessor">   #else</span></div>
+<div class="line"><a name="l04146"></a><span class="lineno"> 4146</span>&#160;<span class="preprocessor">       #define VMA_SYSTEM_FREE(ptr)   free(ptr)</span></div>
+<div class="line"><a name="l04147"></a><span class="lineno"> 4147</span>&#160;<span class="preprocessor">   #endif</span></div>
+<div class="line"><a name="l04148"></a><span class="lineno"> 4148</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04149"></a><span class="lineno"> 4149</span>&#160; </div>
+<div class="line"><a name="l04150"></a><span class="lineno"> 4150</span>&#160;<span class="preprocessor">#ifndef VMA_MIN</span></div>
+<div class="line"><a name="l04151"></a><span class="lineno"> 4151</span>&#160;<span class="preprocessor">   #define VMA_MIN(v1, v2)    (std::min((v1), (v2)))</span></div>
+<div class="line"><a name="l04152"></a><span class="lineno"> 4152</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04153"></a><span class="lineno"> 4153</span>&#160; </div>
+<div class="line"><a name="l04154"></a><span class="lineno"> 4154</span>&#160;<span class="preprocessor">#ifndef VMA_MAX</span></div>
+<div class="line"><a name="l04155"></a><span class="lineno"> 4155</span>&#160;<span class="preprocessor">   #define VMA_MAX(v1, v2)    (std::max((v1), (v2)))</span></div>
+<div class="line"><a name="l04156"></a><span class="lineno"> 4156</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04157"></a><span class="lineno"> 4157</span>&#160; </div>
+<div class="line"><a name="l04158"></a><span class="lineno"> 4158</span>&#160;<span class="preprocessor">#ifndef VMA_SWAP</span></div>
+<div class="line"><a name="l04159"></a><span class="lineno"> 4159</span>&#160;<span class="preprocessor">   #define VMA_SWAP(v1, v2)   std::swap((v1), (v2))</span></div>
+<div class="line"><a name="l04160"></a><span class="lineno"> 4160</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04161"></a><span class="lineno"> 4161</span>&#160; </div>
+<div class="line"><a name="l04162"></a><span class="lineno"> 4162</span>&#160;<span class="preprocessor">#ifndef VMA_SORT</span></div>
+<div class="line"><a name="l04163"></a><span class="lineno"> 4163</span>&#160;<span class="preprocessor">   #define VMA_SORT(beg, end, cmp)  std::sort(beg, end, cmp)</span></div>
+<div class="line"><a name="l04164"></a><span class="lineno"> 4164</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04165"></a><span class="lineno"> 4165</span>&#160; </div>
+<div class="line"><a name="l04166"></a><span class="lineno"> 4166</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_LOG</span></div>
+<div class="line"><a name="l04167"></a><span class="lineno"> 4167</span>&#160;<span class="preprocessor">   #define VMA_DEBUG_LOG(format, ...)</span></div>
+<div class="line"><a name="l04168"></a><span class="lineno"> 4168</span>&#160;   <span class="comment">/*</span></div>
+<div class="line"><a name="l04169"></a><span class="lineno"> 4169</span>&#160;<span class="comment">   #define VMA_DEBUG_LOG(format, ...) do { \</span></div>
+<div class="line"><a name="l04170"></a><span class="lineno"> 4170</span>&#160;<span class="comment">       printf(format, __VA_ARGS__); \</span></div>
+<div class="line"><a name="l04171"></a><span class="lineno"> 4171</span>&#160;<span class="comment">       printf(&quot;\n&quot;); \</span></div>
+<div class="line"><a name="l04172"></a><span class="lineno"> 4172</span>&#160;<span class="comment">   } while(false)</span></div>
+<div class="line"><a name="l04173"></a><span class="lineno"> 4173</span>&#160;<span class="comment">   */</span></div>
+<div class="line"><a name="l04174"></a><span class="lineno"> 4174</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04175"></a><span class="lineno"> 4175</span>&#160; </div>
+<div class="line"><a name="l04176"></a><span class="lineno"> 4176</span>&#160;<span class="comment">// Define this macro to 1 to enable functions: vmaBuildStatsString, vmaFreeStatsString.</span></div>
+<div class="line"><a name="l04177"></a><span class="lineno"> 4177</span>&#160;<span class="preprocessor">#if VMA_STATS_STRING_ENABLED</span></div>
+<div class="line"><a name="l04178"></a><span class="lineno"> 4178</span>&#160;    <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> VmaUint32ToStr(<span class="keywordtype">char</span>* outStr, <span class="keywordtype">size_t</span> strLen, uint32_t num)</div>
+<div class="line"><a name="l04179"></a><span class="lineno"> 4179</span>&#160;    {</div>
+<div class="line"><a name="l04180"></a><span class="lineno"> 4180</span>&#160;        snprintf(outStr, strLen, <span class="stringliteral">&quot;%u&quot;</span>, <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span>(num));</div>
+<div class="line"><a name="l04181"></a><span class="lineno"> 4181</span>&#160;    }</div>
+<div class="line"><a name="l04182"></a><span class="lineno"> 4182</span>&#160;    <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> VmaUint64ToStr(<span class="keywordtype">char</span>* outStr, <span class="keywordtype">size_t</span> strLen, uint64_t num)</div>
+<div class="line"><a name="l04183"></a><span class="lineno"> 4183</span>&#160;    {</div>
+<div class="line"><a name="l04184"></a><span class="lineno"> 4184</span>&#160;        snprintf(outStr, strLen, <span class="stringliteral">&quot;%llu&quot;</span>, <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span><span class="keyword">&gt;</span>(num));</div>
+<div class="line"><a name="l04185"></a><span class="lineno"> 4185</span>&#160;    }</div>
+<div class="line"><a name="l04186"></a><span class="lineno"> 4186</span>&#160;    <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> VmaPtrToStr(<span class="keywordtype">char</span>* outStr, <span class="keywordtype">size_t</span> strLen, <span class="keyword">const</span> <span class="keywordtype">void</span>* ptr)</div>
+<div class="line"><a name="l04187"></a><span class="lineno"> 4187</span>&#160;    {</div>
+<div class="line"><a name="l04188"></a><span class="lineno"> 4188</span>&#160;        snprintf(outStr, strLen, <span class="stringliteral">&quot;%p&quot;</span>, ptr);</div>
+<div class="line"><a name="l04189"></a><span class="lineno"> 4189</span>&#160;    }</div>
+<div class="line"><a name="l04190"></a><span class="lineno"> 4190</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04191"></a><span class="lineno"> 4191</span>&#160; </div>
+<div class="line"><a name="l04192"></a><span class="lineno"> 4192</span>&#160;<span class="preprocessor">#ifndef VMA_MUTEX</span></div>
+<div class="line"><a name="l04193"></a><span class="lineno"> 4193</span>&#160;    <span class="keyword">class </span>VmaMutex</div>
+<div class="line"><a name="l04194"></a><span class="lineno"> 4194</span>&#160;    {</div>
+<div class="line"><a name="l04195"></a><span class="lineno"> 4195</span>&#160;    <span class="keyword">public</span>:</div>
+<div class="line"><a name="l04196"></a><span class="lineno"> 4196</span>&#160;        <span class="keywordtype">void</span> Lock() { m_Mutex.lock(); }</div>
+<div class="line"><a name="l04197"></a><span class="lineno"> 4197</span>&#160;        <span class="keywordtype">void</span> Unlock() { m_Mutex.unlock(); }</div>
+<div class="line"><a name="l04198"></a><span class="lineno"> 4198</span>&#160;        <span class="keywordtype">bool</span> TryLock() { <span class="keywordflow">return</span> m_Mutex.try_lock(); }</div>
+<div class="line"><a name="l04199"></a><span class="lineno"> 4199</span>&#160;    <span class="keyword">private</span>:</div>
+<div class="line"><a name="l04200"></a><span class="lineno"> 4200</span>&#160;        std::mutex m_Mutex;</div>
+<div class="line"><a name="l04201"></a><span class="lineno"> 4201</span>&#160;    };</div>
+<div class="line"><a name="l04202"></a><span class="lineno"> 4202</span>&#160;<span class="preprocessor">    #define VMA_MUTEX VmaMutex</span></div>
+<div class="line"><a name="l04203"></a><span class="lineno"> 4203</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04204"></a><span class="lineno"> 4204</span>&#160; </div>
+<div class="line"><a name="l04205"></a><span class="lineno"> 4205</span>&#160;<span class="comment">// Read-write mutex, where &quot;read&quot; is shared access, &quot;write&quot; is exclusive access.</span></div>
+<div class="line"><a name="l04206"></a><span class="lineno"> 4206</span>&#160;<span class="preprocessor">#ifndef VMA_RW_MUTEX</span></div>
+<div class="line"><a name="l04207"></a><span class="lineno"> 4207</span>&#160;<span class="preprocessor">    #if VMA_USE_STL_SHARED_MUTEX</span></div>
+<div class="line"><a name="l04208"></a><span class="lineno"> 4208</span>&#160;        <span class="comment">// Use std::shared_mutex from C++17.</span></div>
+<div class="line"><a name="l04209"></a><span class="lineno"> 4209</span>&#160;<span class="preprocessor">        #include &lt;shared_mutex&gt;</span></div>
+<div class="line"><a name="l04210"></a><span class="lineno"> 4210</span>&#160;        <span class="keyword">class </span>VmaRWMutex</div>
+<div class="line"><a name="l04211"></a><span class="lineno"> 4211</span>&#160;        {</div>
+<div class="line"><a name="l04212"></a><span class="lineno"> 4212</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l04213"></a><span class="lineno"> 4213</span>&#160;            <span class="keywordtype">void</span> LockRead() { m_Mutex.lock_shared(); }</div>
+<div class="line"><a name="l04214"></a><span class="lineno"> 4214</span>&#160;            <span class="keywordtype">void</span> UnlockRead() { m_Mutex.unlock_shared(); }</div>
+<div class="line"><a name="l04215"></a><span class="lineno"> 4215</span>&#160;            <span class="keywordtype">bool</span> TryLockRead() { <span class="keywordflow">return</span> m_Mutex.try_lock_shared(); }</div>
+<div class="line"><a name="l04216"></a><span class="lineno"> 4216</span>&#160;            <span class="keywordtype">void</span> LockWrite() { m_Mutex.lock(); }</div>
+<div class="line"><a name="l04217"></a><span class="lineno"> 4217</span>&#160;            <span class="keywordtype">void</span> UnlockWrite() { m_Mutex.unlock(); }</div>
+<div class="line"><a name="l04218"></a><span class="lineno"> 4218</span>&#160;            <span class="keywordtype">bool</span> TryLockWrite() { <span class="keywordflow">return</span> m_Mutex.try_lock(); }</div>
+<div class="line"><a name="l04219"></a><span class="lineno"> 4219</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l04220"></a><span class="lineno"> 4220</span>&#160;            std::shared_mutex m_Mutex;</div>
+<div class="line"><a name="l04221"></a><span class="lineno"> 4221</span>&#160;        };</div>
+<div class="line"><a name="l04222"></a><span class="lineno"> 4222</span>&#160;<span class="preprocessor">        #define VMA_RW_MUTEX VmaRWMutex</span></div>
+<div class="line"><a name="l04223"></a><span class="lineno"> 4223</span>&#160;<span class="preprocessor">    #elif defined(_WIN32) &amp;&amp; defined(WINVER) &amp;&amp; WINVER &gt;= 0x0600</span></div>
+<div class="line"><a name="l04224"></a><span class="lineno"> 4224</span>&#160;        <span class="comment">// Use SRWLOCK from WinAPI.</span></div>
+<div class="line"><a name="l04225"></a><span class="lineno"> 4225</span>&#160;        <span class="comment">// Minimum supported client = Windows Vista, server = Windows Server 2008.</span></div>
+<div class="line"><a name="l04226"></a><span class="lineno"> 4226</span>&#160;        <span class="keyword">class </span>VmaRWMutex</div>
+<div class="line"><a name="l04227"></a><span class="lineno"> 4227</span>&#160;        {</div>
+<div class="line"><a name="l04228"></a><span class="lineno"> 4228</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l04229"></a><span class="lineno"> 4229</span>&#160;            VmaRWMutex() { InitializeSRWLock(&amp;m_Lock); }</div>
+<div class="line"><a name="l04230"></a><span class="lineno"> 4230</span>&#160;            <span class="keywordtype">void</span> LockRead() { AcquireSRWLockShared(&amp;m_Lock); }</div>
+<div class="line"><a name="l04231"></a><span class="lineno"> 4231</span>&#160;            <span class="keywordtype">void</span> UnlockRead() { ReleaseSRWLockShared(&amp;m_Lock); }</div>
+<div class="line"><a name="l04232"></a><span class="lineno"> 4232</span>&#160;            <span class="keywordtype">bool</span> TryLockRead() { <span class="keywordflow">return</span> TryAcquireSRWLockShared(&amp;m_Lock) != FALSE; }</div>
+<div class="line"><a name="l04233"></a><span class="lineno"> 4233</span>&#160;            <span class="keywordtype">void</span> LockWrite() { AcquireSRWLockExclusive(&amp;m_Lock); }</div>
+<div class="line"><a name="l04234"></a><span class="lineno"> 4234</span>&#160;            <span class="keywordtype">void</span> UnlockWrite() { ReleaseSRWLockExclusive(&amp;m_Lock); }</div>
+<div class="line"><a name="l04235"></a><span class="lineno"> 4235</span>&#160;            <span class="keywordtype">bool</span> TryLockWrite() { <span class="keywordflow">return</span> TryAcquireSRWLockExclusive(&amp;m_Lock) != FALSE; }</div>
+<div class="line"><a name="l04236"></a><span class="lineno"> 4236</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l04237"></a><span class="lineno"> 4237</span>&#160;            SRWLOCK m_Lock;</div>
+<div class="line"><a name="l04238"></a><span class="lineno"> 4238</span>&#160;        };</div>
+<div class="line"><a name="l04239"></a><span class="lineno"> 4239</span>&#160;<span class="preprocessor">        #define VMA_RW_MUTEX VmaRWMutex</span></div>
+<div class="line"><a name="l04240"></a><span class="lineno"> 4240</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l04241"></a><span class="lineno"> 4241</span>&#160;        <span class="comment">// Less efficient fallback: Use normal mutex.</span></div>
+<div class="line"><a name="l04242"></a><span class="lineno"> 4242</span>&#160;        <span class="keyword">class </span>VmaRWMutex</div>
+<div class="line"><a name="l04243"></a><span class="lineno"> 4243</span>&#160;        {</div>
+<div class="line"><a name="l04244"></a><span class="lineno"> 4244</span>&#160;        <span class="keyword">public</span>:</div>
+<div class="line"><a name="l04245"></a><span class="lineno"> 4245</span>&#160;            <span class="keywordtype">void</span> LockRead() { m_Mutex.Lock(); }</div>
+<div class="line"><a name="l04246"></a><span class="lineno"> 4246</span>&#160;            <span class="keywordtype">void</span> UnlockRead() { m_Mutex.Unlock(); }</div>
+<div class="line"><a name="l04247"></a><span class="lineno"> 4247</span>&#160;            <span class="keywordtype">bool</span> TryLockRead() { <span class="keywordflow">return</span> m_Mutex.TryLock(); }</div>
+<div class="line"><a name="l04248"></a><span class="lineno"> 4248</span>&#160;            <span class="keywordtype">void</span> LockWrite() { m_Mutex.Lock(); }</div>
+<div class="line"><a name="l04249"></a><span class="lineno"> 4249</span>&#160;            <span class="keywordtype">void</span> UnlockWrite() { m_Mutex.Unlock(); }</div>
+<div class="line"><a name="l04250"></a><span class="lineno"> 4250</span>&#160;            <span class="keywordtype">bool</span> TryLockWrite() { <span class="keywordflow">return</span> m_Mutex.TryLock(); }</div>
+<div class="line"><a name="l04251"></a><span class="lineno"> 4251</span>&#160;        <span class="keyword">private</span>:</div>
+<div class="line"><a name="l04252"></a><span class="lineno"> 4252</span>&#160;            VMA_MUTEX m_Mutex;</div>
+<div class="line"><a name="l04253"></a><span class="lineno"> 4253</span>&#160;        };</div>
+<div class="line"><a name="l04254"></a><span class="lineno"> 4254</span>&#160;<span class="preprocessor">        #define VMA_RW_MUTEX VmaRWMutex</span></div>
+<div class="line"><a name="l04255"></a><span class="lineno"> 4255</span>&#160;<span class="preprocessor">    #endif // #if VMA_USE_STL_SHARED_MUTEX</span></div>
+<div class="line"><a name="l04256"></a><span class="lineno"> 4256</span>&#160;<span class="preprocessor">#endif // #ifndef VMA_RW_MUTEX</span></div>
 <div class="line"><a name="l04257"></a><span class="lineno"> 4257</span>&#160; </div>
-<div class="line"><a name="l04258"></a><span class="lineno"> 4258</span>&#160;<span class="comment">// Returns number of bits set to 1 in (v).</span></div>
-<div class="line"><a name="l04259"></a><span class="lineno"> 4259</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span> uint32_t VmaCountBitsSet(uint32_t v)</div>
-<div class="line"><a name="l04260"></a><span class="lineno"> 4260</span>&#160;{</div>
-<div class="line"><a name="l04261"></a><span class="lineno"> 4261</span>&#160;    uint32_t c = v - ((v &gt;&gt; 1) &amp; 0x55555555);</div>
-<div class="line"><a name="l04262"></a><span class="lineno"> 4262</span>&#160;    c = ((c &gt;&gt;  2) &amp; 0x33333333) + (c &amp; 0x33333333);</div>
-<div class="line"><a name="l04263"></a><span class="lineno"> 4263</span>&#160;    c = ((c &gt;&gt;  4) + c) &amp; 0x0F0F0F0F;</div>
-<div class="line"><a name="l04264"></a><span class="lineno"> 4264</span>&#160;    c = ((c &gt;&gt;  8) + c) &amp; 0x00FF00FF;</div>
-<div class="line"><a name="l04265"></a><span class="lineno"> 4265</span>&#160;    c = ((c &gt;&gt; 16) + c) &amp; 0x0000FFFF;</div>
-<div class="line"><a name="l04266"></a><span class="lineno"> 4266</span>&#160;    <span class="keywordflow">return</span> c;</div>
-<div class="line"><a name="l04267"></a><span class="lineno"> 4267</span>&#160;}</div>
-<div class="line"><a name="l04268"></a><span class="lineno"> 4268</span>&#160; </div>
-<div class="line"><a name="l04269"></a><span class="lineno"> 4269</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l04270"></a><span class="lineno"> 4270</span>&#160;<span class="comment">Returns true if given number is a power of two.</span></div>
-<div class="line"><a name="l04271"></a><span class="lineno"> 4271</span>&#160;<span class="comment">T must be unsigned integer number or signed integer but always nonnegative.</span></div>
-<div class="line"><a name="l04272"></a><span class="lineno"> 4272</span>&#160;<span class="comment">For 0 returns true.</span></div>
-<div class="line"><a name="l04273"></a><span class="lineno"> 4273</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l04274"></a><span class="lineno"> 4274</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l04275"></a><span class="lineno"> 4275</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> VmaIsPow2(T x)</div>
-<div class="line"><a name="l04276"></a><span class="lineno"> 4276</span>&#160;{</div>
-<div class="line"><a name="l04277"></a><span class="lineno"> 4277</span>&#160;    <span class="keywordflow">return</span> (x &amp; (x-1)) == 0;</div>
-<div class="line"><a name="l04278"></a><span class="lineno"> 4278</span>&#160;}</div>
-<div class="line"><a name="l04279"></a><span class="lineno"> 4279</span>&#160; </div>
-<div class="line"><a name="l04280"></a><span class="lineno"> 4280</span>&#160;<span class="comment">// Aligns given value up to nearest multiply of align value. For example: VmaAlignUp(11, 8) = 16.</span></div>
-<div class="line"><a name="l04281"></a><span class="lineno"> 4281</span>&#160;<span class="comment">// Use types like uint32_t, uint64_t as T.</span></div>
-<div class="line"><a name="l04282"></a><span class="lineno"> 4282</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l04283"></a><span class="lineno"> 4283</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span> T VmaAlignUp(T val, T alignment)</div>
-<div class="line"><a name="l04284"></a><span class="lineno"> 4284</span>&#160;{</div>
-<div class="line"><a name="l04285"></a><span class="lineno"> 4285</span>&#160;    VMA_HEAVY_ASSERT(VmaIsPow2(alignment));</div>
-<div class="line"><a name="l04286"></a><span class="lineno"> 4286</span>&#160;    <span class="keywordflow">return</span> (val + alignment - 1) &amp; ~(alignment - 1);</div>
-<div class="line"><a name="l04287"></a><span class="lineno"> 4287</span>&#160;}</div>
-<div class="line"><a name="l04288"></a><span class="lineno"> 4288</span>&#160;<span class="comment">// Aligns given value down to nearest multiply of align value. For example: VmaAlignUp(11, 8) = 8.</span></div>
-<div class="line"><a name="l04289"></a><span class="lineno"> 4289</span>&#160;<span class="comment">// Use types like uint32_t, uint64_t as T.</span></div>
-<div class="line"><a name="l04290"></a><span class="lineno"> 4290</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l04291"></a><span class="lineno"> 4291</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span> T VmaAlignDown(T val, T alignment)</div>
-<div class="line"><a name="l04292"></a><span class="lineno"> 4292</span>&#160;{</div>
-<div class="line"><a name="l04293"></a><span class="lineno"> 4293</span>&#160;    VMA_HEAVY_ASSERT(VmaIsPow2(alignment));</div>
-<div class="line"><a name="l04294"></a><span class="lineno"> 4294</span>&#160;    <span class="keywordflow">return</span> val &amp; ~(alignment - 1);</div>
-<div class="line"><a name="l04295"></a><span class="lineno"> 4295</span>&#160;}</div>
+<div class="line"><a name="l04258"></a><span class="lineno"> 4258</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l04259"></a><span class="lineno"> 4259</span>&#160;<span class="comment">If providing your own implementation, you need to implement a subset of std::atomic.</span></div>
+<div class="line"><a name="l04260"></a><span class="lineno"> 4260</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l04261"></a><span class="lineno"> 4261</span>&#160;<span class="preprocessor">#ifndef VMA_ATOMIC_UINT32</span></div>
+<div class="line"><a name="l04262"></a><span class="lineno"> 4262</span>&#160;<span class="preprocessor">    #include &lt;atomic&gt;</span></div>
+<div class="line"><a name="l04263"></a><span class="lineno"> 4263</span>&#160;<span class="preprocessor">    #define VMA_ATOMIC_UINT32 std::atomic&lt;uint32_t&gt;</span></div>
+<div class="line"><a name="l04264"></a><span class="lineno"> 4264</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04265"></a><span class="lineno"> 4265</span>&#160; </div>
+<div class="line"><a name="l04266"></a><span class="lineno"> 4266</span>&#160;<span class="preprocessor">#ifndef VMA_ATOMIC_UINT64</span></div>
+<div class="line"><a name="l04267"></a><span class="lineno"> 4267</span>&#160;<span class="preprocessor">    #include &lt;atomic&gt;</span></div>
+<div class="line"><a name="l04268"></a><span class="lineno"> 4268</span>&#160;<span class="preprocessor">    #define VMA_ATOMIC_UINT64 std::atomic&lt;uint64_t&gt;</span></div>
+<div class="line"><a name="l04269"></a><span class="lineno"> 4269</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04270"></a><span class="lineno"> 4270</span>&#160; </div>
+<div class="line"><a name="l04271"></a><span class="lineno"> 4271</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_ALWAYS_DEDICATED_MEMORY</span></div>
+<div class="line"><a name="l04272"></a><span class="lineno"> 4272</span>&#160; </div>
+<div class="line"><a name="l04276"></a><span class="lineno"> 4276</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_ALWAYS_DEDICATED_MEMORY (0)</span></div>
+<div class="line"><a name="l04277"></a><span class="lineno"> 4277</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04278"></a><span class="lineno"> 4278</span>&#160; </div>
+<div class="line"><a name="l04279"></a><span class="lineno"> 4279</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_ALIGNMENT</span></div>
+<div class="line"><a name="l04280"></a><span class="lineno"> 4280</span>&#160; </div>
+<div class="line"><a name="l04284"></a><span class="lineno"> 4284</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_ALIGNMENT (1)</span></div>
+<div class="line"><a name="l04285"></a><span class="lineno"> 4285</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04286"></a><span class="lineno"> 4286</span>&#160; </div>
+<div class="line"><a name="l04287"></a><span class="lineno"> 4287</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_MARGIN</span></div>
+<div class="line"><a name="l04288"></a><span class="lineno"> 4288</span>&#160; </div>
+<div class="line"><a name="l04292"></a><span class="lineno"> 4292</span>&#160;<span class="preprocessor">    #define VMA_DEBUG_MARGIN (0)</span></div>
+<div class="line"><a name="l04293"></a><span class="lineno"> 4293</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l04294"></a><span class="lineno"> 4294</span>&#160; </div>
+<div class="line"><a name="l04295"></a><span class="lineno"> 4295</span>&#160;<span class="preprocessor">#ifndef VMA_DEBUG_INITIALIZE_ALLOCATIONS</span></div>
 <div class="line"><a name="l04296"></a><span class="lineno"> 4296</span>&#160; </div>
-<div class="line"><a name="l04297"></a><span class="lineno"> 4297</span>&#160;<span class="comment">// Division with mathematical rounding to nearest number.</span></div>
-<div class="line"><a name="l04298"></a><span class="lineno"> 4298</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
-<div class="line"><a name="l04299"></a><span class="lineno"> 4299</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span> T VmaRoundDiv(T x, T y)</div>
-<div class="line"><a name="l04300"></a><span class="lineno"> 4300</span>&#160;{</div>
-<div class="line"><a name="l04301"></a><span class="lineno"> 4301</span>&#160;    <span class="keywordflow">return</span> (x + (y / (T)2)) / y;</div>
-<div class="line"><a name="l04302"></a><span class="lineno"> 4302</span>&#160;}</div>
-<div class="line"><a name="l04303"></a><span class="lineno"> 4303</span>&#160; </div>
-<div class="line"><a name="l04304"></a><span class="lineno"> 4304</span>&#160;<span class="comment">// Returns smallest power of 2 greater or equal to v.</span></div>
-<div class="line"><a name="l04305"></a><span class="lineno"> 4305</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span> uint32_t VmaNextPow2(uint32_t v)</div>
-<div class="line"><a name="l04306"></a><span class="lineno"> 4306</span>&#160;{</div>
-<div class="line"><a name="l04307"></a><span class="lineno"> 4307</span>&#160;    v--;</div>
-<div class="line"><a name="l04308"></a><span class="lineno"> 4308</span>&#160;    v |= v &gt;&gt; 1;</div>