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
6namespace Grindstone::GraphicsAPI {
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}
Definition DescriptorSetLayout.hpp:11
Definition DescriptorSet.hpp:11