add vulkan streambuffer implementation

This commit is contained in:
niki
2022-01-16 02:58:11 +01:00
parent d09f834bf3
commit 4d7fe75001
3 changed files with 107 additions and 0 deletions
@@ -0,0 +1,33 @@
#ifndef LOVE_GRAPHICS_VULKAN_STREAMBUFFER_H
#define LOVE_GRAPHICS_VULKAN_STREAMBUFFER_H
#include "modules/graphics/StreamBuffer.h"
#include "vulkan/vulkan.h"
namespace love {
namespace graphics {
namespace vulkan {
class StreamBuffer : public love::graphics::StreamBuffer {
public:
StreamBuffer(VkDevice device, VkPhysicalDevice physicalDevice, BufferUsage mode, size_t size);
MapInfo map(size_t minsize) override;
size_t unmap(size_t usedSize) override;
void markUsed(size_t usedSize) override;
ptrdiff_t getHandle() const override {
return 0;
}
private:
VkDevice device;
VkBuffer buffer;
VkDeviceMemory bufferMemory;
void* mappedMemory;
};
}
}
}
#endif