1 #ifndef MSP_GL_BUFFER_BACKEND_H_
2 #define MSP_GL_BUFFER_BACKEND_H_
4 #include <msp/core/noncopyable.h>
12 class VulkanBuffer: public NonCopyable
14 friend class Synchronizer;
15 friend class VulkanPipelineState;
16 friend class VulkanVertexSetup;
21 unsigned memory_id = 0;
22 void *mapped_address = 0;
23 std::string debug_name;
26 VulkanBuffer(VulkanBuffer &&);
30 void sub_data(std::size_t, std::size_t, const void *);
32 unsigned get_multiplicity() const;
38 void set_debug_name(const std::string &);
39 void set_vulkan_object_name() const;
42 using BufferBackend = VulkanBuffer;