HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
VE_Memory.h File Reference
#include "VE_API.h"
#include "VE_Result.h"
#include "VE_Instance.h"
#include <vk_mem_alloc.h>
#include <UT/UT_NonCopyable.h>
+ Include dependency graph for VE_Memory.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  VE_VmaAllocation
 
class  VE_VmaMappableAllocation
 
class  VE_VmaMemoryAllocator
 
struct  VE_VmaMemoryAllocator::Allocation< R >
 
struct  VE_VmaMemoryAllocator::MappableAllocation< R >
 
class  VE_Memory
 
class  VE_MemoryAllocator
 

Typedefs

using VE_MemFlags = uint32_t
 

Enumerations

enum  VE_MemType {
  VE_MEM_AUTO = 0, VE_MEM_MAPPABLE_UPLOAD, VE_MEM_MAPPABLE_UPLOAD_DEVICE_LOCAL, VE_MEM_MAPPABLE_HOST_CACHED,
  VE_MEM_OPENGL_EXPORTABLE
}
 
enum  VE_MemFlagBits { FLAG_COHERENT = 1 << 0, FLAG_DEDICATED = 1 << 1 }
 

Functions

VE_API VE_Result< VmaAllocator > VEcreateVmaAllocator (VkInstance, VkPhysicalDevice, VkDevice, uint32_t req_ver, VmaAllocatorCreateFlags flags)
 
VE_API void VEdestroyVmaAllocator (VmaAllocator)
 
VE_API
VkExternalMemoryHandleTypeFlags 
VEgetExternalMemoryHandleType ()
 Returns the platform specific external memory handle type. More...
 

Typedef Documentation

using VE_MemFlags = uint32_t

Definition at line 36 of file VE_Memory.h.

Enumeration Type Documentation

Enumerator
FLAG_COHERENT 
FLAG_DEDICATED 

Definition at line 31 of file VE_Memory.h.

enum VE_MemType
Enumerator
VE_MEM_AUTO 
VE_MEM_MAPPABLE_UPLOAD 
VE_MEM_MAPPABLE_UPLOAD_DEVICE_LOCAL 
VE_MEM_MAPPABLE_HOST_CACHED 
VE_MEM_OPENGL_EXPORTABLE 

Definition at line 22 of file VE_Memory.h.

Function Documentation

VE_API VE_Result<VmaAllocator> VEcreateVmaAllocator ( VkInstance  ,
VkPhysicalDevice  ,
VkDevice  ,
uint32_t  req_ver,
VmaAllocatorCreateFlags  flags 
)

This is a low level function to create a raw VmaAllocator object, in case the caller wants direct access to the Vma API. It is recommended to use VE_MemoryAllocator unless you have good reason not to.

VE_API void VEdestroyVmaAllocator ( VmaAllocator  )
VE_API VkExternalMemoryHandleTypeFlags VEgetExternalMemoryHandleType ( )

Returns the platform specific external memory handle type.