]> git.tdb.fi Git - libs/gl.git/blob - source/backends/vulkan/module_backend.h
Initial implementation of Vulkan backend
[libs/gl.git] / source / backends / vulkan / module_backend.h
1 #ifndef MSP_GL_MODULE_BACKEND_H_
2 #define MSP_GL_MODULE_BACKEND_H_
3
4 #include "handles.h"
5
6 namespace Msp {
7 namespace GL {
8
9 class Device;
10
11 class VulkanSpirVModule
12 {
13         friend class VulkanProgram;
14
15 protected:
16         Device &device;
17         VkShaderModule handle = 0;
18
19         VulkanSpirVModule();
20         VulkanSpirVModule(VulkanSpirVModule &&);
21         ~VulkanSpirVModule();
22
23         void create();
24 };
25
26 using SpirVModuleBackend = VulkanSpirVModule;
27
28 unsigned get_vulkan_stage(unsigned);
29
30 } // namespace GL
31 } // namespace Msp
32
33 #endif