Lugdunum  0.1.0
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
lug::Graphics::Vulkan::API::Builder::RenderPass Class Reference

#include <RenderPass.hpp>

Collaboration diagram for lug::Graphics::Vulkan::API::Builder::RenderPass:
[legend]

Classes

struct  AttachmentReference
 
struct  SubpassDependency
 
struct  SubpassDescription
 
struct  SubpassResources
 

Public Types

using AttachmentIndex = const VkAttachmentDescription *
 
using SubpassIndex = const VkSubpassDescription *
 

Public Member Functions

 RenderPass (const API::Device &device)
 
 RenderPass (const RenderPass &)=delete
 
 RenderPass (RenderPass &&)=delete
 
RenderPassoperator= (const RenderPass &)=delete
 
RenderPassoperator= (RenderPass &&)=delete
 
 ~RenderPass ()=default
 
AttachmentIndex addAttachment (const VkAttachmentDescription &attachmentDescription)
 
SubpassIndex addSubpass (const SubpassDescription &subpassDescription)
 
void addSubpassDependency (const SubpassDependency &subpassDependency)
 
bool build (API::RenderPass &instance, VkResult *returnResult=nullptr)
 
std::unique_ptr< API::RenderPassbuild (VkResult *returnResult=nullptr)
 

Private Attributes

const API::Device_device
 
std::list< VkAttachmentDescription > _attachments
 
std::list< VkSubpassDescription > _subpasses
 
std::list< SubpassResources_subpassesResources
 
std::list< VkSubpassDependency > _dependencies
 

Detailed Description

Definition at line 16 of file RenderPass.hpp.

Member Typedef Documentation

◆ AttachmentIndex

Definition at line 18 of file RenderPass.hpp.

◆ SubpassIndex

Definition at line 19 of file RenderPass.hpp.

Constructor & Destructor Documentation

◆ RenderPass() [1/3]

lug::Graphics::Vulkan::API::Builder::RenderPass::RenderPass ( const API::Device device)

Definition at line 14 of file RenderPass.cpp.

◆ RenderPass() [2/3]

lug::Graphics::Vulkan::API::Builder::RenderPass::RenderPass ( const RenderPass )
delete

◆ RenderPass() [3/3]

lug::Graphics::Vulkan::API::Builder::RenderPass::RenderPass ( RenderPass &&  )
delete

◆ ~RenderPass()

lug::Graphics::Vulkan::API::Builder::RenderPass::~RenderPass ( )
default

Member Function Documentation

◆ operator=() [1/2]

RenderPass& lug::Graphics::Vulkan::API::Builder::RenderPass::operator= ( const RenderPass )
delete

◆ operator=() [2/2]

RenderPass& lug::Graphics::Vulkan::API::Builder::RenderPass::operator= ( RenderPass &&  )
delete

◆ addAttachment()

RenderPass::AttachmentIndex lug::Graphics::Vulkan::API::Builder::RenderPass::addAttachment ( const VkAttachmentDescription &  attachmentDescription)

Definition at line 16 of file RenderPass.cpp.

◆ addSubpass()

RenderPass::SubpassIndex lug::Graphics::Vulkan::API::Builder::RenderPass::addSubpass ( const SubpassDescription subpassDescription)

Definition at line 21 of file RenderPass.cpp.

◆ addSubpassDependency()

void lug::Graphics::Vulkan::API::Builder::RenderPass::addSubpassDependency ( const SubpassDependency subpassDependency)

Definition at line 94 of file RenderPass.cpp.

◆ build() [1/2]

bool lug::Graphics::Vulkan::API::Builder::RenderPass::build ( API::RenderPass instance,
VkResult *  returnResult = nullptr 
)

Definition at line 122 of file RenderPass.cpp.

◆ build() [2/2]

std::unique_ptr< API::RenderPass > lug::Graphics::Vulkan::API::Builder::RenderPass::build ( VkResult *  returnResult = nullptr)

Definition at line 156 of file RenderPass.cpp.

Member Data Documentation

◆ _device

const API::Device& lug::Graphics::Vulkan::API::Builder::RenderPass::_device
private

Definition at line 75 of file RenderPass.hpp.

◆ _attachments

std::list<VkAttachmentDescription> lug::Graphics::Vulkan::API::Builder::RenderPass::_attachments
private

Definition at line 77 of file RenderPass.hpp.

◆ _subpasses

std::list<VkSubpassDescription> lug::Graphics::Vulkan::API::Builder::RenderPass::_subpasses
private

Definition at line 78 of file RenderPass.hpp.

◆ _subpassesResources

std::list<SubpassResources> lug::Graphics::Vulkan::API::Builder::RenderPass::_subpassesResources
private

Definition at line 79 of file RenderPass.hpp.

◆ _dependencies

std::list<VkSubpassDependency> lug::Graphics::Vulkan::API::Builder::RenderPass::_dependencies
private

Definition at line 80 of file RenderPass.hpp.


The documentation for this class was generated from the following files: