Class Queue#

Inheritance Relationships#

Derived Type#

Class Documentation#

class Queue#

Subclassed by TRAP::Graphics::API::VulkanQueue

Public Functions

virtual ~Queue()#

Destructor.

consteval Queue(const Queue&) noexcept = delete#

Copy constructor.

consteval Queue &operator=(const Queue&) noexcept = delete#

Copy assignment operator.

constexpr Queue(Queue&&) noexcept = default#

Move constructor.

Queue &operator=(Queue&&) noexcept = default#

Move assignment operator.

virtual void WaitQueueIdle() const = 0#

Wait for the queue to finish all submitted commands.

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

Submit work to the queue.

Parameters:

descQueue submit description.

constexpr RendererAPI::QueueType GetQueueType() const noexcept#

Retrieve the queue type.

Returns:

Queue type.

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

Queue an image for presentation.

Remark

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

Parameters:

descQueue presentation description.

Returns:

Presentation status.

Public Static Functions

static TRAP::Ref<Queue> Create(const RendererAPI::QueueDesc &desc)#

Create a new queue from the given description.

Parameters:

descQueue description.

Returns:

Created queue.

Protected Functions

explicit Queue(RendererAPI::QueueType queueType)#

Constructor.

Protected Attributes

RendererAPI::QueueType m_type = RendererAPI::QueueType::Graphics#