#include "gpu/vulkan/vulkan_command_buffer.h"
#include "base/logging.h"
#include "gpu/vulkan/vulkan_command_pool.h"
#include "gpu/vulkan/vulkan_device_queue.h"
#include "gpu/vulkan/vulkan_function_pointers.h"
#include "gpu/vulkan/vulkan_util.h"
namespace gpu {
namespace {
VkPipelineStageFlags GetPipelineStageFlags(
const VulkanDeviceQueue* device_queue,
const VkImageLayout layout) { … }
VkAccessFlags GetAccessMask(const VkImageLayout layout) { … }
}
VulkanCommandBuffer::VulkanCommandBuffer(VulkanDeviceQueue* device_queue,
VulkanCommandPool* command_pool,
bool primary)
: … { … }
VulkanCommandBuffer::~VulkanCommandBuffer() { … }
bool VulkanCommandBuffer::Initialize() { … }
void VulkanCommandBuffer::Destroy() { … }
bool VulkanCommandBuffer::Submit(uint32_t num_wait_semaphores,
VkSemaphore* wait_semaphores,
uint32_t num_signal_semaphores,
VkSemaphore* signal_semaphores,
bool allow_protected_memory) { … }
void VulkanCommandBuffer::Enqueue(VkCommandBuffer primary_command_buffer) { … }
void VulkanCommandBuffer::Clear() { … }
void VulkanCommandBuffer::Wait(uint64_t timeout) { … }
bool VulkanCommandBuffer::SubmissionFinished() { … }
void VulkanCommandBuffer::TransitionImageLayout(
VkImage image,
VkImageLayout old_layout,
VkImageLayout new_layout,
uint32_t src_queue_family_index,
uint32_t dst_queue_family_index) { … }
void VulkanCommandBuffer::CopyBufferToImage(VkBuffer buffer,
VkImage image,
uint32_t buffer_width,
uint32_t buffer_height,
uint32_t width,
uint32_t height,
uint64_t buffer_offset) { … }
void VulkanCommandBuffer::CopyImageToBuffer(VkBuffer buffer,
VkImage image,
uint32_t buffer_width,
uint32_t buffer_height,
uint32_t width,
uint32_t height,
uint64_t buffer_offset) { … }
void VulkanCommandBuffer::PostExecution() { … }
void VulkanCommandBuffer::ResetIfDirty() { … }
CommandBufferRecorderBase::~CommandBufferRecorderBase() { … }
ScopedMultiUseCommandBufferRecorder::ScopedMultiUseCommandBufferRecorder(
VulkanCommandBuffer& command_buffer)
: … { … }
ScopedSingleUseCommandBufferRecorder::ScopedSingleUseCommandBufferRecorder(
VulkanCommandBuffer& command_buffer)
: … { … }
}