aboutsummaryrefslogtreecommitdiff
path: root/src/vulkan/transfer_buffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/vulkan/transfer_buffer.h')
-rw-r--r--src/vulkan/transfer_buffer.h8
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