SPARK  0.1.0
A general purpose game engine written in C++.
Loading...
Searching...
No Matches
spark::render::vk::VulkanInputAttachmentMapping Class Referencefinal

Vulkan implementation of IInputAttachmentMapping. More...

#include <VulkanInputAttachmentMapping.h>

Inheritance diagram for spark::render::vk::VulkanInputAttachmentMapping:
spark::render::InputAttachmentMapping< VulkanRenderPass >

Classes

struct  Impl
 

Public Member Functions

 VulkanInputAttachmentMapping ()
 Initializes a default VulkanInputAttachmentMapping.
 
 VulkanInputAttachmentMapping (const VulkanRenderPass &render_pass, const RenderTarget &render_target, unsigned location)
 Initializes a VulkanInputAttachmentMapping.
 
 VulkanInputAttachmentMapping (const VulkanInputAttachmentMapping &other)
 
 VulkanInputAttachmentMapping (VulkanInputAttachmentMapping &&other) noexcept
 
VulkanInputAttachmentMappingoperator= (const VulkanInputAttachmentMapping &other)
 
VulkanInputAttachmentMappingoperator= (VulkanInputAttachmentMapping &&other) noexcept
 
const VulkanRenderPasssource () const noexcept override
 Gets the source of the input attachment render target.
 
const RenderTargetrenderTarget () const noexcept override
 Gets a reference to the render target mapped to this input attachment.
 
unsigned location () const noexcept override
 Gets the location of the input attachment, the render target will be bound to.
 

Additional Inherited Members

- Public Types inherited from spark::render::InputAttachmentMapping< VulkanRenderPass >
using InputAttachmentMappingSource
 

Detailed Description

Vulkan implementation of IInputAttachmentMapping.

Constructor & Destructor Documentation

◆ VulkanInputAttachmentMapping()

spark::render::vk::VulkanInputAttachmentMapping::VulkanInputAttachmentMapping ( const VulkanRenderPass & render_pass,
const RenderTarget & render_target,
unsigned location )
explicit

Initializes a VulkanInputAttachmentMapping.

Parameters
render_passThe VulkanRenderPass to fetch the input attachment from.
render_targetThe RenderTarget of the RenderPass that is used for the input attachment.
locationThe location to bind the input attachment to.

Member Function Documentation

◆ location()

unsigned spark::render::vk::VulkanInputAttachmentMapping::location ( ) const
nodiscardoverridevirtualnoexcept

Gets the location of the input attachment, the render target will be bound to.

Returns
The location of the input attachment, the render target will be bound to.

The locations of all input attachments for a frame buffer must be within a continuous domain, starting at 0. A frame buffer validates the locations when it is initialized and will raise an exception, if a location is either not mapped or assigned multiple times.

Implements spark::render::InputAttachmentMapping< VulkanRenderPass >.

◆ renderTarget()

const RenderTarget & spark::render::vk::VulkanInputAttachmentMapping::renderTarget ( ) const
nodiscardoverridevirtualnoexcept

Gets a reference to the render target mapped to this input attachment.

Returns
A RenderTarget mapped to this input attachment.

Implements spark::render::InputAttachmentMapping< VulkanRenderPass >.

◆ source()

const VulkanRenderPass * spark::render::vk::VulkanInputAttachmentMapping::source ( ) const
nodiscardoverridevirtualnoexcept

Gets the source of the input attachment render target.

Returns
The InputAttachmentMappingSource of the input attachment render target.

Implements spark::render::InputAttachmentMapping< VulkanRenderPass >.