class VmaBlockMetadata_Linear
Defined at line 6637 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
Allocations and their references in internal data structure look like this:
if(m_2ndVectorMode == SECOND_VECTOR_EMPTY):
0 +-------+
| |
| |
| |
+-------+
| Alloc | 1st[m_1stNullItemsBeginCount]
+-------+
| Alloc | 1st[m_1stNullItemsBeginCount + 1]
+-------+
| ... |
+-------+
| Alloc | 1st[1st.size() - 1]
+-------+
| |
| |
| |
GetSize() +-------+
if(m_2ndVectorMode == SECOND_VECTOR_RING_BUFFER):
0 +-------+
| Alloc | 2nd[0]
+-------+
| Alloc | 2nd[1]
+-------+
| ... |
+-------+
| Alloc | 2nd[2nd.size() - 1]
+-------+
| |
| |
| |
+-------+
| Alloc | 1st[m_1stNullItemsBeginCount]
+-------+
| Alloc | 1st[m_1stNullItemsBeginCount + 1]
+-------+
| ... |
+-------+
| Alloc | 1st[1st.size() - 1]
+-------+
| |
GetSize() +-------+
if(m_2ndVectorMode == SECOND_VECTOR_DOUBLE_STACK):
0 +-------+
| |
| |
| |
+-------+
| Alloc | 1st[m_1stNullItemsBeginCount]
+-------+
| Alloc | 1st[m_1stNullItemsBeginCount + 1]
+-------+
| ... |
+-------+
| Alloc | 1st[1st.size() - 1]
+-------+
| |
| |
| |
+-------+
| Alloc | 2nd[2nd.size() - 1]
+-------+
| ... |
+-------+
| Alloc | 2nd[1]
+-------+
| Alloc | 2nd[0]
GetSize() +-------+
Public Methods
VkDeviceSize GetSumFreeSize ()
Defined at line 6647 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
bool IsEmpty ()
Defined at line 6649 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void VmaBlockMetadata_Linear (VmaAllocator hAllocator)
/////////////////////////////////////////////////////////////////////////////
class VmaBlockMetadata_Linear
Defined at line 9977 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void ~VmaBlockMetadata_Linear ()
Defined at line 9990 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void Init (VkDeviceSize size)
Defined at line 9994 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
bool Validate ()
Defined at line 10000 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
size_t GetAllocationCount ()
Defined at line 10127 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
VkDeviceSize GetUnusedRangeSizeMax ()
Defined at line 10133 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void CalcAllocationStatInfo (VmaStatInfo & outInfo)
Defined at line 10197 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void AddPoolStats (VmaPoolStats & inoutStats)
Defined at line 10390 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void PrintDetailedMap (class VmaJsonWriter & json)
Defined at line 10563 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
bool CreateAllocationRequest (uint32_t currentFrameIndex, uint32_t frameInUseCount, VkDeviceSize bufferImageGranularity, VkDeviceSize allocSize, VkDeviceSize allocAlignment, bool upperAddress, VmaSuballocationType allocType, bool canMakeOtherLost, uint32_t strategy, VmaAllocationRequest * pAllocationRequest)
Defined at line 10879 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
bool MakeRequestedAllocationsLost (uint32_t currentFrameIndex, uint32_t frameInUseCount, VmaAllocationRequest * pAllocationRequest)
Defined at line 11295 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
uint32_t MakeAllocationsLost (uint32_t currentFrameIndex, uint32_t frameInUseCount)
Defined at line 11359 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
VkResult CheckCorruption (const void * pBlockData)
Defined at line 11403 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void Alloc (const VmaAllocationRequest & request, VmaSuballocationType type, VkDeviceSize allocSize, VmaAllocation hAllocation)
Defined at line 11446 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void Free (const VmaAllocation allocation)
Defined at line 11513 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h
void FreeAtOffset (VkDeviceSize offset)
Defined at line 11518 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h