Class VulkanQueue#

Inheritance Relationships#

Base Type#

Class Documentation#

class VulkanQueue : public TRAP::Graphics::Queue#

Public Functions

explicit VulkanQueue(const RendererAPI::QueueDesc &desc)#

Constructor.

Parameters:

descQueue description.

~VulkanQueue() override#

Destructor.

consteval VulkanQueue(const VulkanQueue&) noexcept = delete#

Copy constructor.

consteval VulkanQueue &operator=(const VulkanQueue&) = delete#

Copy assignment operator.

VulkanQueue(VulkanQueue&&) noexcept = default#

Move constructor.

consteval VulkanQueue &operator=(VulkanQueue&&) = delete#

Move assignment operator.

constexpr VkQueue GetVkQueue() const noexcept#

Retrieve the Vulkan queue handle.

Returns:

Vulkan queue handle.

constexpr u8 GetQueueFamilyIndex() const noexcept#

Retrieve the queue family index.

Returns:

Queue family index.

constexpr u8 GetQueueIndex() const noexcept#

Retrieve the queue index.

Returns:

Queue index.

constexpr u32 GetFlags() const noexcept#

Retrieve the queue flags. Indicates capabilities of the queue.

Returns:

Queue flags.

constexpr f32 GetTimestampPeriod() const noexcept#

Retrieve the number of nanoseconds required for a timestamp to be incremented by 1.

Returns:

Nanoseconds per timestamp increment.

constexpr f64 GetTimestampFrequency() const noexcept#

Retrieve the number of ticks per second required to increment a timestamp by 1.

Returns:

Ticks per second.

virtual void WaitQueueIdle() const override#

Wait for the queue to finish all submitted commands.

virtual void Submit(const RendererAPI::QueueSubmitDesc &desc) const override#

Submit work to the queue.

Parameters:

descQueue submit description.

virtual RendererAPI::PresentStatus Present(const RendererAPI::QueuePresentDesc &desc) const override#

Queue an image for presentation.

Remark

Headless mode: This function is not available in headless mode.

Parameters:

descQueue presentation description.

Returns:

Presentation status.