Lugdunum
0.1.0
include
lug
Graphics
Vulkan
API
DescriptorPool.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
lug/Graphics/Export.hpp
>
4
#include <
lug/Graphics/Vulkan/Vulkan.hpp
>
5
6
namespace
lug
{
7
namespace
Graphics {
8
namespace
Vulkan
{
9
namespace
API {
10
11
namespace
Builder {
12
class
DescriptorPool;
13
}
// Builder
14
15
class
Device;
16
17
class
LUG_GRAPHICS_API
DescriptorPool
{
18
friend
class
Builder::DescriptorPool
;
19
20
public
:
21
DescriptorPool
() =
default
;
22
23
DescriptorPool
(
const
DescriptorPool
&) =
delete
;
24
// Warning: Don't move DescriptorPool after creating a DescriptorSet
25
DescriptorPool
(
DescriptorPool
&&
DescriptorPool
);
26
27
DescriptorPool
& operator=(
const
DescriptorPool
&) =
delete
;
28
// Warning: Don't move DescriptorPool after creating a DescriptorSet
29
DescriptorPool
& operator=(
DescriptorPool
&&
DescriptorPool
);
30
31
~
DescriptorPool
();
32
33
explicit
operator
VkDescriptorPool()
const
{
34
return
_descriptorPool;
35
}
36
37
void
destroy();
38
39
private
:
40
explicit
DescriptorPool
(VkDescriptorPool
descriptorPool
,
const
Device
*device);
41
42
private
:
43
VkDescriptorPool _descriptorPool{VK_NULL_HANDLE};
44
const
Device
* _device{
nullptr
};
45
};
46
47
}
// API
48
}
// Vulkan
49
}
// Graphics
50
}
// lug
LUG_GRAPHICS_API
#define LUG_GRAPHICS_API
Definition:
Export.hpp:11
lug::Graphics::Vulkan::API::Builder::DescriptorPool
Definition:
DescriptorPool.hpp:17
Vulkan
Definition:
Vulkan.hpp:155
lug::Graphics::Vulkan::API::Device
Definition:
Device.hpp:16
lug::Graphics::Vulkan::Render::DescriptorSetPool::descriptorPool
API::DescriptorPool descriptorPool
Definition:
DescriptorSetPool.cpp:9
Vulkan.hpp
lug
Definition:
Application.hpp:11
Export.hpp
lug::Graphics::Vulkan::API::DescriptorPool
Definition:
DescriptorPool.hpp:17
Generated by
1.8.13