class VmaBlockMetadata_Buddy

Defined at line 6767 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

- GetSize() is the original size of allocated memory block.

- m_UsableSize is this size aligned down to a power of two.

All allocations and calculations happen relative to m_UsableSize.

- GetUnusableSize() is the difference between them.

It is repoted as separate, unused range, not available for allocations.

Node at level 0 has size = m_UsableSize.

Each next level contains nodes with size 2 times smaller than current level.

m_LevelCount is the maximum number of levels to use in the current object.

Public Methods

size_t GetAllocationCount ()

Defined at line 6776 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

VkDeviceSize GetSumFreeSize ()

Defined at line 6777 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

bool IsEmpty ()

Defined at line 6779 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

VkResult CheckCorruption (const void * pBlockData)

Defined at line 6807 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void Free (const VmaAllocation allocation)

Defined at line 6815 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void FreeAtOffset (VkDeviceSize offset)

Defined at line 6816 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void VmaBlockMetadata_Buddy (VmaAllocator hAllocator)

/////////////////////////////////////////////////////////////////////////////

class VmaBlockMetadata_Buddy

Defined at line 11724 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void ~VmaBlockMetadata_Buddy ()

Defined at line 11734 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void Init (VkDeviceSize size)

Defined at line 11739 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

bool Validate ()

Defined at line 11764 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

VkDeviceSize GetUnusedRangeSizeMax ()

Defined at line 11807 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void CalcAllocationStatInfo (VmaStatInfo & outInfo)

Defined at line 11819 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void AddPoolStats (VmaPoolStats & inoutStats)

Defined at line 11843 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h

void PrintDetailedMap (class VmaJsonWriter & json)

Defined at line 11862 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 11889 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 11941 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 11953 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 11962 of file ../../src/ui/lib/escher/third_party/VulkanMemoryAllocator/vk_mem_alloc.h