Files
basalt/include/vulkan/basalt_buffer.h

23 lines
512 B
C++

#pragma once
#include "vulkan/basalt_pipeline.h"
namespace basalt
{
class Buffer
{
public:
Buffer(basalt::Device& device, u64 num_bytes, VkBufferUsageFlagBits usage_flags,
VkMemoryPropertyFlags props= VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | VK_MEMORY_PROPERTY_HOST_COHERENT_BIT,
VkSharingMode sharing_mode = VK_SHARING_MODE_EXCLUSIVE);
~Buffer();
void* map ();
void unmap ();
void* mapped_ptr;
VkBuffer buffer;
VkDeviceMemory memory;
basalt::Device* device;
size_t size = 0;
};
}