Lugdunum
0.1.0
include
lug
Graphics
Vulkan
API
DescriptorSetLayout.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <memory>
4
5
#include <
lug/Graphics/Export.hpp
>
6
#include <
lug/Graphics/Vulkan/Vulkan.hpp
>
7
8
namespace
lug
{
9
namespace
Graphics {
10
namespace
Vulkan
{
11
namespace
API {
12
13
namespace
Builder {
14
class
DescriptorSetLayout;
15
}
// Builder
16
17
class
Device;
18
19
class
LUG_GRAPHICS_API
DescriptorSetLayout
{
20
friend
class
Builder::DescriptorSetLayout
;
21
22
public
:
23
DescriptorSetLayout
() =
default
;
24
25
DescriptorSetLayout
(
const
DescriptorSetLayout
&) =
delete
;
26
DescriptorSetLayout
(
DescriptorSetLayout
&& device);
27
28
DescriptorSetLayout
& operator=(
const
DescriptorSetLayout
&) =
delete
;
29
DescriptorSetLayout
& operator=(
DescriptorSetLayout
&& device);
30
31
~
DescriptorSetLayout
();
32
33
explicit
operator
VkDescriptorSetLayout()
const
{
34
return
_descriptorSetLayout;
35
}
36
42
const
Device
* getDevice()
const
;
43
44
void
destroy();
45
46
private
:
47
explicit
DescriptorSetLayout
(VkDescriptorSetLayout
DescriptorSetLayout
,
const
Device
* device);
48
49
private
:
50
VkDescriptorSetLayout _descriptorSetLayout{VK_NULL_HANDLE};
51
const
Device
* _device{
nullptr
};
52
};
53
54
#include <
lug/Graphics/Vulkan/API/DescriptorSetLayout.inl
>
55
56
}
// API
57
}
// Vulkan
58
}
// Graphics
59
}
// lug
lug::Graphics::Vulkan::API::DescriptorSetLayout
Definition:
DescriptorSetLayout.hpp:19
LUG_GRAPHICS_API
#define LUG_GRAPHICS_API
Definition:
Export.hpp:11
Vulkan
Definition:
Vulkan.hpp:155
lug::Graphics::Vulkan::API::Builder::DescriptorSetLayout
Definition:
DescriptorSetLayout.hpp:17
lug::Graphics::Vulkan::API::Device
Definition:
Device.hpp:16
Vulkan.hpp
lug
Definition:
Application.hpp:11
DescriptorSetLayout.inl
Export.hpp
Generated by
1.8.13