renderer_vulkan/wrapper: Add device memory handle

This commit is contained in:
ReinUsesLisp 2020-03-31 20:58:08 -03:00
parent 397f53dea1
commit 3a63ae0658
1 changed files with 15 additions and 0 deletions

View File

@ -600,6 +600,21 @@ public:
void BindMemory(VkDeviceMemory memory, VkDeviceSize offset) const; void BindMemory(VkDeviceMemory memory, VkDeviceSize offset) const;
}; };
class DeviceMemory : public Handle<VkDeviceMemory, VkDevice, DeviceDispatch> {
using Handle<VkDeviceMemory, VkDevice, DeviceDispatch>::Handle;
public:
u8* Map(VkDeviceSize offset, VkDeviceSize size) const {
void* data;
Check(dld->vkMapMemory(owner, handle, offset, size, 0, &data));
return static_cast<u8*>(data);
}
void Unmap() const noexcept {
dld->vkUnmapMemory(owner, handle);
}
};
class DescriptorPool : public Handle<VkDescriptorPool, VkDevice, DeviceDispatch> { class DescriptorPool : public Handle<VkDescriptorPool, VkDevice, DeviceDispatch> {
using Handle<VkDescriptorPool, VkDevice, DeviceDispatch>::Handle; using Handle<VkDescriptorPool, VkDevice, DeviceDispatch>::Handle;