GPGMM
GPGMM, a General-Purpose GPU Memory Management Library
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Enumerations | Functions
gpgmm_vk.h File Reference
#include <vulkan/vulkan.h>
#include <cstdint>

Classes

struct  gpgmm::vk::GpAllocatorCreateInfo
 Used to create allocator. More...
 
struct  gpgmm::vk::GpResourceAllocationCreateInfo
 

Namespaces

namespace  gpgmm
 
namespace  gpgmm::vk
 

Macros

#define GPGMM_EXPORT
 

Enumerations

enum  gpgmm::vk::GpAllocatorCreateFlags { gpgmm::vk::GP_ALLOCATOR_CREATE_NONE = 0x0 , gpgmm::vk::GP_ALLOCATOR_CREATE_DISABLE_MEMORY_PREFETCH = 0x4 , gpgmm::vk::GP_ALLOCATOR_CREATE_ALWAYS_ON_DEMAND = 0x8 , gpgmm::vk::GP_ALLOCATOR_CREATE_ALWAYS_IN_BUDGET = 0x10 }
 Configures how allocators should be created. More...
 
enum  gpgmm::vk::GpAllocatorAlgorithm {
  gpgmm::vk::GP_ALLOCATOR_ALGORITHM_DEFAULT = 0 , gpgmm::vk::GP_ALLOCATOR_ALGORITHM_SLAB = 1 , gpgmm::vk::GP_ALLOCATOR_ALGORITHM_BUDDY_SYSTEM = 2 , gpgmm::vk::GP_ALLOCATOR_ALGORITHM_FIXED_POOL = 3 ,
  gpgmm::vk::GP_ALLOCATOR_ALGORITHM_SEGMENTED_POOL = 4
}
 
enum  gpgmm::vk::GpResourceAllocationCreateFlags { gpgmm::vk::GP_ALLOCATION_CREATE_NONE = 0x0 , gpgmm::vk::GP_ALLOCATION_CREATE_NEVER_ALLOCATE_MEMORY = 0x1 , gpgmm::vk::GP_ALLOCATION_CREATE_NEVER_SUBALLOCATE_MEMORY = 0x4 , gpgmm::vk::GP_ALLOCATION_CREATE_ALWAYS_PREFETCH_MEMORY = 0x8 }
 

Functions

GPGMM_EXPORT VkResult gpgmm::vk::gpCreateResourceAllocator (const GpAllocatorCreateInfo &info, GpResourceAllocator *allocatorOut)
 Create allocator used to create and manage video memory for the App specified device and instance.
 
GPGMM_EXPORT void gpgmm::vk::gpDestroyResourceAllocator (GpResourceAllocator allocator)
 Destroy allocator.
 
GPGMM_EXPORT VkResult gpgmm::vk::gpCreateBuffer (GpResourceAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, VkBuffer *pBuffer, const GpResourceAllocationCreateInfo *pAllocationCreateInfo, GpResourceAllocation *allocationOut)
 Create a buffer allocation.
 
GPGMM_EXPORT void gpgmm::vk::gpDestroyBuffer (GpResourceAllocator allocator, VkBuffer buffer, GpResourceAllocation allocation)
 Destroy buffer allocation.
 
GPGMM_EXPORT VkResult gpgmm::vk::gpCreateImage (GpResourceAllocator allocator, const VkImageCreateInfo *pImageCreateInfo, VkImage *pImage, const GpResourceAllocationCreateInfo *pAllocationCreateInfo, GpResourceAllocation *allocationOut)
 Create a image allocation.
 
GPGMM_EXPORT void gpgmm::vk::gpDestroyImage (GpResourceAllocator allocator, VkImage image, GpResourceAllocation allocation)
 Destroy image allocation.
 

Macro Definition Documentation

◆ GPGMM_EXPORT

#define GPGMM_EXPORT