Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
VkCV Framework
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Monitor
Service Desk
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Vulkan2021
VkCV Framework
Merge requests
!97
Resolve "Dokumentation vervollständigen"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Resolve "Dokumentation vervollständigen"
96-dokumentation-vervollstandigen
into
develop
Overview
0
Commits
73
Pipelines
36
Changes
29
Merged
Tobias Frisch
requested to merge
96-dokumentation-vervollstandigen
into
develop
3 years ago
Overview
0
Commits
73
Pipelines
36
Changes
1
Expand
Closes
#96 (closed)
Edited
2 years ago
by
Tobias Frisch
0
0
Merge request reports
Compare
version 11
version 73
6dd52585
2 years ago
version 72
07eda6f6
2 years ago
version 71
2afbdfa2
2 years ago
version 70
823231d9
2 years ago
version 69
ca8ac2af
2 years ago
version 68
fdd0aa40
2 years ago
version 67
fc2a5e2c
2 years ago
version 66
f266bf15
2 years ago
version 65
1c2d345d
2 years ago
version 64
d566e90a
2 years ago
version 63
cd8bbcb1
2 years ago
version 62
593a404a
2 years ago
version 61
daebb5ba
2 years ago
version 60
a0c5eb5d
2 years ago
version 59
200c03e6
2 years ago
version 58
89f60c8d
2 years ago
version 57
160c8569
2 years ago
version 56
5abd98b4
2 years ago
version 55
a7511257
2 years ago
version 54
2c69a94f
2 years ago
version 53
eb2bd24b
2 years ago
version 52
da2340bf
2 years ago
version 51
9ae9cba2
3 years ago
version 50
c67838e3
3 years ago
version 49
ff55b3fe
3 years ago
version 48
870d8b8e
3 years ago
version 47
4dd24090
3 years ago
version 46
fe3c7d13
3 years ago
version 45
91be097e
3 years ago
version 44
3fdb48d2
3 years ago
version 43
3d180763
3 years ago
version 42
0809cf99
3 years ago
version 41
2bf5952e
3 years ago
version 40
c04513d2
3 years ago
version 39
6d6de61d
3 years ago
version 38
6d6de61d
3 years ago
version 37
f1160029
3 years ago
version 36
dde9087e
3 years ago
version 35
92423ec8
3 years ago
version 34
baf01583
3 years ago
version 33
e2d919a5
3 years ago
version 32
33e7642c
3 years ago
version 31
ae2b37a2
3 years ago
version 30
c7580f46
3 years ago
version 29
b48ebd4f
3 years ago
version 28
263f83d8
3 years ago
version 27
39120499
3 years ago
version 26
eb6c1276
3 years ago
version 25
5a42edf7
3 years ago
version 24
b48f6de4
3 years ago
version 23
165dcc32
3 years ago
version 22
929cfc95
3 years ago
version 21
a5ef4a73
3 years ago
version 20
f91a59d3
3 years ago
version 19
6640083a
3 years ago
version 18
7d2bea42
3 years ago
version 17
3d26ebba
3 years ago
version 16
d15f3c38
3 years ago
version 15
f892820c
3 years ago
version 14
f892820c
3 years ago
version 13
f892820c
3 years ago
version 12
f892820c
3 years ago
version 11
d200f29b
3 years ago
version 10
544ae45d
3 years ago
version 9
ef9dd3a7
3 years ago
version 8
e9dfe29e
3 years ago
version 7
e77fb594
3 years ago
version 6
685dc4e9
3 years ago
version 5
ce188d2a
3 years ago
version 4
7d3d0d2a
3 years ago
version 3
5c5e8a97
3 years ago
version 2
17cffd50
3 years ago
version 1
0db3faab
3 years ago
develop (base)
and
version 12
latest version
2d1cf7a4
73 commits,
2 years ago
version 73
6dd52585
72 commits,
2 years ago
version 72
07eda6f6
71 commits,
2 years ago
version 71
2afbdfa2
70 commits,
2 years ago
version 70
823231d9
69 commits,
2 years ago
version 69
ca8ac2af
68 commits,
2 years ago
version 68
fdd0aa40
67 commits,
2 years ago
version 67
fc2a5e2c
66 commits,
2 years ago
version 66
f266bf15
65 commits,
2 years ago
version 65
1c2d345d
64 commits,
2 years ago
version 64
d566e90a
63 commits,
2 years ago
version 63
cd8bbcb1
62 commits,
2 years ago
version 62
593a404a
61 commits,
2 years ago
version 61
daebb5ba
60 commits,
2 years ago
version 60
a0c5eb5d
59 commits,
2 years ago
version 59
200c03e6
58 commits,
2 years ago
version 58
89f60c8d
57 commits,
2 years ago
version 57
160c8569
56 commits,
2 years ago
version 56
5abd98b4
55 commits,
2 years ago
version 55
a7511257
53 commits,
2 years ago
version 54
2c69a94f
52 commits,
2 years ago
version 53
eb2bd24b
51 commits,
2 years ago
version 52
da2340bf
50 commits,
2 years ago
version 51
9ae9cba2
48 commits,
3 years ago
version 50
c67838e3
47 commits,
3 years ago
version 49
ff55b3fe
46 commits,
3 years ago
version 48
870d8b8e
45 commits,
3 years ago
version 47
4dd24090
44 commits,
3 years ago
version 46
fe3c7d13
43 commits,
3 years ago
version 45
91be097e
42 commits,
3 years ago
version 44
3fdb48d2
41 commits,
3 years ago
version 43
3d180763
40 commits,
3 years ago
version 42
0809cf99
39 commits,
3 years ago
version 41
2bf5952e
38 commits,
3 years ago
version 40
c04513d2
37 commits,
3 years ago
version 39
6d6de61d
36 commits,
3 years ago
version 38
6d6de61d
36 commits,
3 years ago
version 37
f1160029
35 commits,
3 years ago
version 36
dde9087e
34 commits,
3 years ago
version 35
92423ec8
33 commits,
3 years ago
version 34
baf01583
32 commits,
3 years ago
version 33
e2d919a5
31 commits,
3 years ago
version 32
33e7642c
30 commits,
3 years ago
version 31
ae2b37a2
29 commits,
3 years ago
version 30
c7580f46
28 commits,
3 years ago
version 29
b48ebd4f
27 commits,
3 years ago
version 28
263f83d8
26 commits,
3 years ago
version 27
39120499
25 commits,
3 years ago
version 26
eb6c1276
24 commits,
3 years ago
version 25
5a42edf7
23 commits,
3 years ago
version 24
b48f6de4
22 commits,
3 years ago
version 23
165dcc32
21 commits,
3 years ago
version 22
929cfc95
20 commits,
3 years ago
version 21
a5ef4a73
19 commits,
3 years ago
version 20
f91a59d3
18 commits,
3 years ago
version 19
6640083a
17 commits,
3 years ago
version 18
7d2bea42
16 commits,
3 years ago
version 17
3d26ebba
15 commits,
3 years ago
version 16
d15f3c38
14 commits,
3 years ago
version 15
f892820c
13 commits,
3 years ago
version 14
f892820c
13 commits,
3 years ago
version 13
f892820c
13 commits,
3 years ago
version 12
f892820c
13 commits,
3 years ago
version 11
d200f29b
12 commits,
3 years ago
version 10
544ae45d
10 commits,
3 years ago
version 9
ef9dd3a7
9 commits,
3 years ago
version 8
e9dfe29e
8 commits,
3 years ago
version 7
e77fb594
7 commits,
3 years ago
version 6
685dc4e9
6 commits,
3 years ago
version 5
ce188d2a
5 commits,
3 years ago
version 4
7d3d0d2a
4 commits,
3 years ago
version 3
5c5e8a97
3 commits,
3 years ago
version 2
17cffd50
2 commits,
3 years ago
version 1
0db3faab
1 commit,
3 years ago
Show latest version
1 file
+
45
−
4
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
include/vkcv/QueueManager.hpp
+
45
−
4
Options
@@ -14,23 +14,64 @@ namespace vkcv {
class
QueueManager
{
public:
/**
* creates a QueueManager with the given queue pairs
* @param device device that holds the queues that are specified in the queue pairs
* @param queuePairsGraphics graphic queue pairs of queueFamily and queueIndex
* @param queuePairsCompute compute queue pairs of queueFamily and queueIndex
* @param queuePairsTransfer transfer queue pairs of queueFamily and queueIndex
* @return a QueueManager with the specified queuePairs
*/
static
QueueManager
create
(
vk
::
Device
device
,
std
::
vector
<
std
::
pair
<
int
,
int
>>
&
queuePairsGraphics
,
std
::
vector
<
std
::
pair
<
int
,
int
>>
&
queuePairsCompute
,
std
::
vector
<
std
::
pair
<
int
,
int
>>
&
queuePairsTransfer
);
/**
* returns the default presentQueue. Recommended to use the presentQueue in the Swapchain
* @return a default presentQueue
*/
[[
nodiscard
]]
const
Queue
&
getPresentQueue
()
const
;
/**
* returns all queues with the graphics flag
* @return vector of graphic queues
*/
[[
nodiscard
]]
const
std
::
vector
<
Queue
>
&
getGraphicsQueues
()
const
;
/**
* returns all queues with the compute flag
* @return vector of compute queues
*/
[[
nodiscard
]]
const
std
::
vector
<
Queue
>
&
getComputeQueues
()
const
;
/**
* returns all queues with the transfer flag
* @return vector of transfer queues
*/
[[
nodiscard
]]
const
std
::
vector
<
Queue
>
&
getTransferQueues
()
const
;
/**
* Given the @p physicalDevice and the @p queuePriorities, the @p queueCreateInfos are computed. First, the requested
* queues are sorted by priority depending on the availability of queues in the queue families of the given
* @p physicalDevice. Then check, if all requested queues are creatable. If so, the @p queueCreateInfos will be computed.
* Furthermore, lists of index pairs (queueFamilyIndex, queueIndex) for later referencing of the separate queues will
* be computed.
* @param[in] physicalDevice The physical device
* @param[in] queuePriorities The queue priorities used for the computation of @p queueCreateInfos
* @param[in] queueFlags The queue flags requesting the queues
* @param[in,out] queueCreateInfos The queue create info structures to be created
* @param[in,out] queuePairsGraphics The list of index pairs (queueFamilyIndex, queueIndex) of queues of type
* vk::QueueFlagBits::eGraphics
* @param[in,out] queuePairsCompute The list of index pairs (queueFamilyIndex, queueIndex) of queues of type
* vk::QueueFlagBits::eCompute
* @param[in,out] queuePairsTransfer The list of index pairs (queueFamilyIndex, queueIndex) of queues of type
* vk::QueueFlagBits::eTransfer
* @throws std::runtime_error If the requested queues from @p queueFlags are not creatable due to insufficient availability.
*/
static
void
queueCreateInfosQueueHandles
(
vk
::
PhysicalDevice
&
physicalDevice
,
const
std
::
vector
<
float
>
&
queuePriorities
,
const
std
::
vector
<
vk
::
QueueFlagBits
>
&
queueFlags
,
Loading