diff options
Diffstat (limited to 'src/vulkan/transfer_buffer.h')
-rw-r--r-- | src/vulkan/transfer_buffer.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/vulkan/transfer_buffer.h b/src/vulkan/transfer_buffer.h index 764c364..2c0a51d 100644 --- a/src/vulkan/transfer_buffer.h +++ b/src/vulkan/transfer_buffer.h @@ -19,6 +19,7 @@ #include "amber/result.h" #include "amber/vulkan_header.h" +#include "src/format.h" #include "src/vulkan/resource.h" namespace amber { @@ -30,10 +31,11 @@ class Device; /// Wrapper around a Vulkan VkBuffer object. class TransferBuffer : public Resource { public: - TransferBuffer(Device* device, uint32_t size_in_bytes); + TransferBuffer(Device* device, uint32_t size_in_bytes, Format* format); ~TransferBuffer() override; Result Initialize(const VkBufferUsageFlags usage); + const VkBufferView* GetVkBufferView() const { return &view_; } VkBuffer GetVkBuffer() const { return buffer_; } @@ -44,11 +46,11 @@ class TransferBuffer : public Resource { /// device to the host. void CopyToHost(CommandBuffer* command_buffer) override; - void UpdateMemoryWithRawData(const std::vector<uint8_t>& raw_data); - private: VkBuffer buffer_ = VK_NULL_HANDLE; VkDeviceMemory memory_ = VK_NULL_HANDLE; + VkBufferView view_ = VK_NULL_HANDLE; + VkFormat format_ = VK_FORMAT_UNDEFINED; }; } // namespace vulkan |