15#include "VulkanMemoryAllocator/include/vk_mem_alloc.h"
23 if (dev ==
nullptr && ctx == VK_NULL_HANDLE) {
27 device = dev ==
nullptr ? ctx->deviceHandle() : dev;
128 VkMappedMemoryRange mappedRange = {};
129 mappedRange.sType = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE;
130 mappedRange.memory =
memory;
131 mappedRange.offset =
offset;
132 mappedRange.size =
size;
133 return vkFlushMappedMemoryRanges(
device, 1, &mappedRange);
152 VkMappedMemoryRange mappedRange = {};
153 mappedRange.sType = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE;
154 mappedRange.memory =
memory;
155 mappedRange.offset =
offset;
156 mappedRange.size =
size;
157 return vkInvalidateMappedMemoryRanges(
device, 1, &mappedRange);
VkContext * currentContext()
static VkSystem * instance()
VkResult bind(VkDeviceSize offset=0)
void copyTo(void *data, VkDeviceSize size)
VkResult flush(VkDeviceSize size=VK_WHOLE_SIZE, VkDeviceSize offset=0)
VkResult map(VkDeviceSize size=VK_WHOLE_SIZE, VkDeviceSize offset=0)
Buffer(VkDevice dev=nullptr)
VkResult invalidate(VkDeviceSize size=VK_WHOLE_SIZE, VkDeviceSize offset=0)
VkDescriptorBufferInfo descriptor
void setupDescriptor(VkDeviceSize size=VK_WHOLE_SIZE, VkDeviceSize offset=0)