Lugdunum
0.1.0
src
lug
Graphics
Vulkan
API
DescriptorPool.cpp
Go to the documentation of this file.
1
#include <
lug/Graphics/Vulkan/API/DescriptorPool.hpp
>
2
3
#include <
lug/Graphics/Vulkan/API/Device.hpp
>
4
5
namespace
lug
{
6
namespace
Graphics {
7
namespace
Vulkan
{
8
namespace
API {
9
10
DescriptorPool::DescriptorPool
(VkDescriptorPool
descriptorPool
,
const
Device
* device) : _descriptorPool(descriptorPool), _device(device) {}
11
12
DescriptorPool::DescriptorPool
(
DescriptorPool
&&
descriptorPool
) {
13
_descriptorPool
=
descriptorPool
.
_descriptorPool
;
14
_device
=
descriptorPool
.
_device
;
15
16
descriptorPool
.
_descriptorPool
= VK_NULL_HANDLE;
17
descriptorPool
.
_device
=
nullptr
;
18
}
19
20
DescriptorPool
&
DescriptorPool::operator=
(
DescriptorPool
&&
descriptorPool
) {
21
destroy
();
22
23
_descriptorPool
=
descriptorPool
.
_descriptorPool
;
24
_device
=
descriptorPool
.
_device
;
25
26
descriptorPool
.
_descriptorPool
= VK_NULL_HANDLE;
27
descriptorPool
.
_device
=
nullptr
;
28
29
return
*
this
;
30
}
31
32
DescriptorPool::~DescriptorPool
() {
33
destroy
();
34
}
35
36
void
DescriptorPool::destroy
() {
37
if
(
_descriptorPool
!= VK_NULL_HANDLE) {
38
vkDestroyDescriptorPool(static_cast<VkDevice>(*
_device
),
_descriptorPool
,
nullptr
);
39
_descriptorPool
= VK_NULL_HANDLE;
40
}
41
42
_device
=
nullptr
;
43
}
44
45
}
// API
46
}
// Vulkan
47
}
// Graphics
48
}
// lug
lug::Graphics::Vulkan::API::DescriptorPool::operator=
DescriptorPool & operator=(const DescriptorPool &)=delete
DescriptorPool.hpp
Device.hpp
lug::Graphics::Vulkan::API::DescriptorPool::destroy
void destroy()
Definition:
DescriptorPool.cpp:36
Vulkan
Definition:
Vulkan.hpp:155
lug::Graphics::Vulkan::API::DescriptorPool::~DescriptorPool
~DescriptorPool()
Definition:
DescriptorPool.cpp:32
lug::Graphics::Vulkan::API::Device
Definition:
Device.hpp:16
lug::Graphics::Vulkan::API::DescriptorPool::DescriptorPool
DescriptorPool()=default
lug::Graphics::Vulkan::API::DescriptorPool::_device
const Device * _device
Definition:
DescriptorPool.hpp:44
lug::Graphics::Vulkan::Render::DescriptorSetPool::descriptorPool
API::DescriptorPool descriptorPool
Definition:
DescriptorSetPool.cpp:9
lug
Definition:
Application.hpp:11
lug::Graphics::Vulkan::API::DescriptorPool::_descriptorPool
VkDescriptorPool _descriptorPool
Definition:
DescriptorPool.hpp:43
lug::Graphics::Vulkan::API::DescriptorPool
Definition:
DescriptorPool.hpp:17
Generated by
1.8.13