|
| VulkanQueue (const VulkanDevice &device, QueueType type, QueuePriority priority, unsigned family_id, unsigned queue_id) |
|
| VulkanQueue (const VulkanQueue &other)=delete |
|
| VulkanQueue (VulkanQueue &&other) noexcept=delete |
|
VulkanQueue & | operator= (const VulkanQueue &other)=delete |
|
VulkanQueue & | operator= (VulkanQueue &&other) noexcept=delete |
|
const VulkanDevice & | device () const noexcept |
| Gets the parent VulkanDevice that provides the queue.
|
|
const VkCommandPool & | commandPool () const noexcept |
| Gets a reference to the command pool used to allocate command buffers.
|
|
unsigned | familyId () const noexcept |
| Gets the family ID of the queue.
|
|
unsigned | queueId () const noexcept |
| Gets the queue ID of the queue.
|
|
const VkSemaphore & | timelineSemaphore () const noexcept |
| Gets the internal semaphore used to synchronize the queue.
|
|
bool | isBound () const noexcept override |
| Checks whether the queue is currently bound to the parent device.
|
|
QueuePriority | priority () const noexcept override |
| Gets the priority of the queue.
|
|
QueueType | type () const noexcept override |
| Gets the type of the queue.
|
|
void | bind () const noexcept override |
| Binds the queue to the parent device.
|
|
void | release () const noexcept override |
| Releases the queue from the parent device.
|
|
void | waitFor (std::size_t fence) const noexcept override |
| Waits for fence value fence to complete on the command queue.
|
|
std::size_t | currentFence () const noexcept override |
| Gets the latest fence inserted into the queue.
|
|
std::shared_ptr< VulkanCommandBuffer > | createCommandBuffer (bool begin_recording, bool secondary) const noexcept override |
| Creates a command buffer that can be used to allocate commands on the queue.
|
|
std::size_t | submit (std::shared_ptr< const VulkanCommandBuffer > command_buffer, std::span< VkSemaphore > wait_for_semaphores, std::span< VkPipelineStageFlags > wait_for_stages, std::span< VkSemaphore > signal_semaphores={}) const |
| Submits a single command buffer and inserts a fence to wait for it.
|
|
std::size_t | submit (const std::vector< std::shared_ptr< const VulkanCommandBuffer > > &command_buffers, std::span< VkSemaphore > wait_for_semaphores, std::span< VkPipelineStageFlags > wait_for_stages, std::span< VkSemaphore > signal_semaphores={}) const |
| Submits a set of command buffers and inserts a fence to wait for them.
|
|
std::size_t | submit (std::shared_ptr< VulkanCommandBuffer > command_buffer) const noexcept override |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
std::size_t | submit (std::shared_ptr< const VulkanCommandBuffer > command_buffer) const noexcept override |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
std::size_t | submit (const std::vector< std::shared_ptr< const VulkanCommandBuffer > > &command_buffers) const noexcept override |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
std::size_t | submit (const std::vector< std::shared_ptr< VulkanCommandBuffer > > &command_buffers) const noexcept override |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
Public Member Functions inherited from spark::render::CommandQueue< VulkanCommandBuffer > |
virtual std::size_t | submit (std::shared_ptr< command_buffer_type > command_buffer) const noexcept=0 |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
virtual std::size_t | submit (std::shared_ptr< const command_buffer_type > command_buffer) const noexcept=0 |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
virtual std::size_t | submit (const std::vector< std::shared_ptr< const command_buffer_type > > &command_buffers) const noexcept=0 |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
virtual std::size_t | submit (const std::vector< std::shared_ptr< command_buffer_type > > &command_buffers) const noexcept=0 |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
Public Member Functions inherited from spark::render::ICommandQueue |
std::shared_ptr< ICommandBuffer > | createCommandBuffer (bool begin_recording=false, bool secondary=false) const noexcept |
| Creates a command buffer that can be used to allocate commands on the queue.
|
|
std::size_t | submit (std::shared_ptr< ICommandBuffer > command_buffer) const noexcept |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
std::size_t | submit (std::shared_ptr< const ICommandBuffer > command_buffer) const noexcept |
| Submits a single command buffer to the queue and inserts a fence to wait for it.
|
|
std::size_t | submit (const std::vector< std::shared_ptr< const ICommandBuffer > > &command_buffers) const noexcept |
| Submits multiple command buffers to the queue and inserts a fence to wait for them.
|
|
std::size_t | submit (const std::vector< std::shared_ptr< ICommandBuffer > > &command_buffers) const noexcept |
| Submits multiple command buffers to the queue and inserts a fence to wait for them.
|
|
| Resource (VkQueue handle) noexcept |
| Initializes the managed resource with the given handle.
|
|
| Resource (const Resource &other)=delete |
|
| Resource (Resource &&other) noexcept=delete |
|
Resource & | operator= (const Resource &other)=delete |
|
Resource & | operator= (Resource &&other) noexcept=delete |
|
const VkQueue & | handle () const final |
| Gets the managed resource handle.
|
|
Vulkan implementation of ICommandQueue.