Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
DescriptorSet.hpp
1
#pragma once
2
3
#include "DescriptorSetLayout.hpp"
4
#include "Formats.hpp"
5
6
namespace
Grindstone::GraphicsAPI {
11
class
DescriptorSet
{
12
public
:
13
struct
Binding
{
14
void
* itemPtr;
15
uint32_t count = 1;
16
17
Binding
() =
default
;
18
Binding
(
const
Binding
& binding) =
default
;
19
Binding
(
Binding
&& binding) =
default
;
20
Binding
& operator=(
const
Binding
& binding) =
default
;
21
Binding
(
void
* itemPtr) : itemPtr(itemPtr), count(1) {}
22
Binding
(
void
* itemPtr, uint32_t count) : itemPtr(itemPtr), count(count) {}
23
};
24
25
struct
CreateInfo
{
26
const
char
* debugName =
nullptr
;
27
DescriptorSetLayout
* layout =
nullptr
;
28
Binding
* bindings =
nullptr
;
29
uint32_t bindingCount = 0;
30
};
31
public
:
32
virtual
void
ChangeBindings(
DescriptorSet::Binding
* bindings, uint32_t bindingCount, uint32_t bindingOffset = 0) = 0;
33
};
34
}
Grindstone::GraphicsAPI::DescriptorSetLayout
Definition
DescriptorSetLayout.hpp:11
Grindstone::GraphicsAPI::DescriptorSet
Definition
DescriptorSet.hpp:11
Grindstone::GraphicsAPI::DescriptorSet::Binding
Definition
DescriptorSet.hpp:13
Grindstone::GraphicsAPI::DescriptorSet::CreateInfo
Definition
DescriptorSet.hpp:25
sources
code
Common
Graphics
DescriptorSet.hpp
Generated by
1.12.0