Lugdunum  0.1.0
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
lug::Graphics::Vulkan::API::PipelineLayout Class Reference

#include <PipelineLayout.hpp>

Collaboration diagram for lug::Graphics::Vulkan::API::PipelineLayout:
[legend]

Public Member Functions

 PipelineLayout ()=default
 
 PipelineLayout (const PipelineLayout &)=delete
 
 PipelineLayout (PipelineLayout &&device)
 
PipelineLayoutoperator= (const PipelineLayout &)=delete
 
PipelineLayoutoperator= (PipelineLayout &&device)
 
 ~PipelineLayout ()
 
 operator VkPipelineLayout () const
 
const std::vector< DescriptorSetLayout > & getDescriptorSetLayouts () const
 Gets the DescriptorSetLayouts of the PipelineLayout. The PipelineLayout owns these DescriptorSetLayouts. More...
 
const DevicegetDevice () const
 Gets the device assiciated with this PipelineLayout. More...
 
void destroy ()
 

Private Member Functions

 PipelineLayout (VkPipelineLayout pipelineLayout, const Device *device, std::vector< DescriptorSetLayout > descriptorSetLayouts)
 

Private Attributes

VkPipelineLayout _pipelineLayout {VK_NULL_HANDLE}
 
const Device_device {nullptr}
 
std::vector< DescriptorSetLayout_descriptorSetLayouts {}
 

Friends

class Builder::PipelineLayout
 

Detailed Description

Definition at line 21 of file PipelineLayout.hpp.

Constructor & Destructor Documentation

◆ PipelineLayout() [1/4]

lug::Graphics::Vulkan::API::PipelineLayout::PipelineLayout ( )
default

◆ PipelineLayout() [2/4]

lug::Graphics::Vulkan::API::PipelineLayout::PipelineLayout ( const PipelineLayout )
delete

◆ PipelineLayout() [3/4]

lug::Graphics::Vulkan::API::PipelineLayout::PipelineLayout ( PipelineLayout &&  device)

Definition at line 16 of file PipelineLayout.cpp.

◆ ~PipelineLayout()

lug::Graphics::Vulkan::API::PipelineLayout::~PipelineLayout ( )

Definition at line 40 of file PipelineLayout.cpp.

◆ PipelineLayout() [4/4]

lug::Graphics::Vulkan::API::PipelineLayout::PipelineLayout ( VkPipelineLayout  pipelineLayout,
const Device device,
std::vector< DescriptorSetLayout descriptorSetLayouts 
)
explicitprivate

Definition at line 10 of file PipelineLayout.cpp.

Member Function Documentation

◆ operator=() [1/2]

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

◆ operator=() [2/2]

PipelineLayout & lug::Graphics::Vulkan::API::PipelineLayout::operator= ( PipelineLayout &&  device)

Definition at line 26 of file PipelineLayout.cpp.

◆ operator VkPipelineLayout()

lug::Graphics::Vulkan::API::PipelineLayout::operator VkPipelineLayout ( ) const
inlineexplicit

Definition at line 35 of file PipelineLayout.hpp.

◆ getDescriptorSetLayouts()

const std::vector< DescriptorSetLayout > & PipelineLayout::getDescriptorSetLayouts ( ) const
inline

Gets the DescriptorSetLayouts of the PipelineLayout. The PipelineLayout owns these DescriptorSetLayouts.

Returns
The DescriptorSetLayouts.

Definition at line 1 of file PipelineLayout.inl.

◆ getDevice()

const Device * PipelineLayout::getDevice ( ) const
inline

Gets the device assiciated with this PipelineLayout.

Returns
The device.

Definition at line 5 of file PipelineLayout.inl.

◆ destroy()

void lug::Graphics::Vulkan::API::PipelineLayout::destroy ( )

Definition at line 44 of file PipelineLayout.cpp.

Friends And Related Function Documentation

◆ Builder::PipelineLayout

friend class Builder::PipelineLayout
friend

Definition at line 22 of file PipelineLayout.hpp.

Member Data Documentation

◆ _pipelineLayout

VkPipelineLayout lug::Graphics::Vulkan::API::PipelineLayout::_pipelineLayout {VK_NULL_HANDLE}
private

Definition at line 64 of file PipelineLayout.hpp.

◆ _device

const Device* lug::Graphics::Vulkan::API::PipelineLayout::_device {nullptr}
private

Definition at line 65 of file PipelineLayout.hpp.

◆ _descriptorSetLayouts

std::vector<DescriptorSetLayout> lug::Graphics::Vulkan::API::PipelineLayout::_descriptorSetLayouts {}
private

Definition at line 67 of file PipelineLayout.hpp.


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