XII Release 0.1.0
Loading...
Searching...
No Matches
xiiVulkanAllocationCreateFlags Struct Reference

Flags used to configure Vulkan memory allocation behavior. More...

#include <MemoryAllocatorVulkan.h>

Classes

struct  Bits
 

Public Types

enum  Enum : StorageType {
  Dedicated = 0x00000001 , NeverAllocate = 0x00000002 , Mapped = 0x00000004 , UserDataCopy = 0x00000008 ,
  UpperAddress = 0x00000010 , StrategyMinMemory = 0x00000020 , StrategyMinTime = 0x00000040 , StrategyFirstFit = 0x00000200 ,
  StrategyCanAlias = 0x00000400 , StrategyWithinBudget = 0x00000800 , StrategyHostSequential = 0x00001000 , StrategyHostRandom = 0x00002000 ,
  Default = 0U
}
 
using StorageType = xiiUInt32
 

Detailed Description

Flags used to configure Vulkan memory allocation behavior.

These flags guide the Vulkan Memory Allocator (VMA) or custom allocation logic in selecting memory types, strategies, and mapping behavior.

Member Enumeration Documentation

◆ Enum

Enumerator
Dedicated 

Allocate memory as a dedicated block (not suballocated).

NeverAllocate 

Fail allocation if no suitable memory is available; do not create new blocks.

Mapped 

Keep memory persistently mapped after allocation.

UserDataCopy 

Copy user data into internal allocation metadata.

UpperAddress 

Prefer higher virtual addresses (useful for debugging or layout).

StrategyMinMemory 

Minimize total memory usage across allocations.

StrategyMinTime 

Minimize allocation time (fastest strategy).

StrategyFirstFit 

Use first-fit strategy for suballocation.

StrategyCanAlias 

Allow aliasing between allocations (requires manual synchronization).

StrategyWithinBudget 

Respect memory budget constraints during allocation.

StrategyHostSequential 

Optimize for sequential host access (e.g., streaming uploads).

StrategyHostRandom 

Optimize for random host access (e.g., sparse updates).

Default 

No flags set; use default allocator behavior.


The documentation for this struct was generated from the following file: