Lugdunum
0.1.0
Main Page
+
Namespaces
Namespace List
+
Namespace Members
+
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
+
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
v
Variables
Typedefs
Enumerations
Enumerator
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
:
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
~
+
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
~
+
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
v
w
x
y
Typedefs
Enumerations
+
Related Functions
:
b
c
d
g
l
p
s
w
+
Files
File List
+
File Members
+
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
+
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
+
Macros
d
f
l
n
s
v
w
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
include
lug
Graphics
Vulkan
API
CommandBuffer.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
CommandBuffer;
13
}
// Builder
14
15
class
Buffer;
16
class
CommandPool;
17
class
DescriptorSet;
18
class
Framebuffer;
19
class
GraphicsPipeline;
20
class
Image;
21
class
PipelineLayout;
22
class
RenderPass;
23
24
class
LUG_GRAPHICS_API
CommandBuffer
{
25
friend
class
Builder::CommandBuffer
;
26
27
public
:
28
CommandBuffer
() =
default
;
29
30
CommandBuffer
(
const
CommandBuffer
&) =
delete
;
31
CommandBuffer
(
CommandBuffer
&&
CommandBuffer
);
32
33
CommandBuffer
& operator=(
const
CommandBuffer
&) =
delete
;
34
CommandBuffer
& operator=(
CommandBuffer
&&
CommandBuffer
);
35
36
~
CommandBuffer
();
37
38
explicit
operator
VkCommandBuffer()
const
{
39
return
_commandBuffer;
40
}
41
42
const
CommandPool
* getCommandPool()
const
;
43
44
// Add begin, end, etc
45
bool
begin(VkCommandBufferUsageFlags flags = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT)
const
;
46
bool
end()
const
;
47
48
#include <
lug/Graphics/Vulkan/API/CommandBuffer/Buffer.inl
>
49
#include <
lug/Graphics/Vulkan/API/CommandBuffer/DescriptorSet.inl
>
50
#include <
lug/Graphics/Vulkan/API/CommandBuffer/Image.inl
>
51
#include <
lug/Graphics/Vulkan/API/CommandBuffer/RenderPass.inl
>
52
#include <
lug/Graphics/Vulkan/API/CommandBuffer/Pipeline.inl
>
53
54
bool
reset(
bool
releaseRessources =
false
)
const
;
55
void
destroy();
56
57
private
:
58
explicit
CommandBuffer
(VkCommandBuffer commandBuffer,
const
CommandPool
* commandPool);
59
60
private
:
61
VkCommandBuffer _commandBuffer{VK_NULL_HANDLE};
62
63
const
CommandPool
* _commandPool{
nullptr
};
64
};
65
66
#include <
lug/Graphics/Vulkan/API/CommandBuffer.inl
>
67
68
}
// API
69
}
// Vulkan
70
}
// Graphics
71
}
// lug
LUG_GRAPHICS_API
#define LUG_GRAPHICS_API
Definition:
Export.hpp:11
Buffer.inl
CommandBuffer.inl
Vulkan
Definition:
Vulkan.hpp:155
DescriptorSet.inl
Image.inl
Vulkan.hpp
lug::Graphics::Vulkan::API::Builder::CommandBuffer
Definition:
CommandBuffer.hpp:18
lug
Definition:
Application.hpp:11
lug::Graphics::Vulkan::API::CommandBuffer
Definition:
CommandBuffer.hpp:24
lug::Graphics::Vulkan::API::CommandPool
Definition:
CommandPool.hpp:18
Pipeline.inl
Export.hpp
RenderPass.inl
Generated by
1.8.13