aboutsummaryrefslogtreecommitdiff
path: root/src/vulkan/transfer_buffer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/vulkan/transfer_buffer.cc')
-rw-r--r--src/vulkan/transfer_buffer.cc30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/vulkan/transfer_buffer.cc b/src/vulkan/transfer_buffer.cc
index d5e813b..a0b25ab 100644
--- a/src/vulkan/transfer_buffer.cc
+++ b/src/vulkan/transfer_buffer.cc
@@ -45,7 +45,20 @@ TransferBuffer::TransferBuffer(
const VkPhysicalDeviceMemoryProperties& properties)
: Resource(device, size_in_bytes, properties) {}
-TransferBuffer::~TransferBuffer() = default;
+TransferBuffer::~TransferBuffer() {
+ if (view_ != VK_NULL_HANDLE) {
+ device_->GetPtrs()->vkDestroyBufferView(device_->GetDevice(), view_,
+ nullptr);
+ }
+
+ if (memory_ != VK_NULL_HANDLE) {
+ UnMapMemory(memory_);
+ device_->GetPtrs()->vkFreeMemory(device_->GetDevice(), memory_, nullptr);
+ }
+
+ if (buffer_ != VK_NULL_HANDLE)
+ device_->GetPtrs()->vkDestroyBuffer(device_->GetDevice(), buffer_, nullptr);
+}
Result TransferBuffer::Initialize(const VkBufferUsageFlags usage) {
Result r = CreateVkBuffer(&buffer_, usage);
@@ -100,21 +113,6 @@ Result TransferBuffer::CopyToHost(CommandBuffer* command) {
return {};
}
-void TransferBuffer::Shutdown() {
- if (view_ != VK_NULL_HANDLE) {
- device_->GetPtrs()->vkDestroyBufferView(device_->GetDevice(), view_,
- nullptr);
- }
-
- if (memory_ != VK_NULL_HANDLE) {
- UnMapMemory(memory_);
- device_->GetPtrs()->vkFreeMemory(device_->GetDevice(), memory_, nullptr);
- }
-
- if (buffer_ != VK_NULL_HANDLE)
- device_->GetPtrs()->vkDestroyBuffer(device_->GetDevice(), buffer_, nullptr);
-}
-
void TransferBuffer::UpdateMemoryWithRawData(
const std::vector<uint8_t>& raw_data) {
size_t effective_size =