]> git.tdb.fi Git - libs/gl.git/blob - source/backends/vulkan/vulkan.cpp
Check the flat qualifier from the correct member
[libs/gl.git] / source / backends / vulkan / vulkan.cpp
1 #include <msp/graphics/vulkancontext_platform.h>
2 #include "vulkan.h"
3
4 namespace Msp {
5 namespace GL {
6
7 VulkanFunctions::VulkanFunctions(const Graphics::VulkanContext &c):
8         context(c),
9         device(context.get_private().device),
10         physicalDevice(context.get_private().physical_device),
11         graphicsQueue(context.get_private().graphics_queue),
12         // 5
13         vkGetPhysicalDeviceProperties(context.get_function<PFN_vkGetPhysicalDeviceProperties>("vkGetPhysicalDeviceProperties")),
14         // 6
15         vkCreateCommandPool(context.get_function<PFN_vkCreateCommandPool>("vkCreateCommandPool")),
16         vkResetCommandPool(context.get_function<PFN_vkResetCommandPool>("vkResetCommandPool")),
17         vkDestroyCommandPool(context.get_function<PFN_vkDestroyCommandPool>("vkDestroyCommandPool")),
18         vkAllocateCommandBuffers(context.get_function<PFN_vkAllocateCommandBuffers>("vkAllocateCommandBuffers")),
19         vkBeginCommandBuffer(context.get_function<PFN_vkBeginCommandBuffer>("vkBeginCommandBuffer")),
20         vkEndCommandBuffer(context.get_function<PFN_vkEndCommandBuffer>("vkEndCommandBuffer")),
21         vkQueueSubmit(context.get_function<PFN_vkQueueSubmit>("vkQueueSubmit")),
22         vkCmdExecuteCommands(context.get_function<PFN_vkCmdExecuteCommands>("vkCmdExecuteCommands")),
23         // 7
24         vkCreateFence(context.get_function<PFN_vkCreateFence>("vkCreateFence")),
25         vkDestroyFence(context.get_function<PFN_vkDestroyFence>("vkDestroyFence")),
26         vkGetFenceStatus(context.get_function<PFN_vkGetFenceStatus>("vkGetFenceStatus")),
27         vkResetFences(context.get_function<PFN_vkResetFences>("vkResetFences")),
28         vkWaitForFences(context.get_function<PFN_vkWaitForFences>("vkWaitForFences")),
29         vkCreateSemaphore(context.get_function<PFN_vkCreateSemaphore>("vkCreateSemaphore")),
30         vkDestroySemaphore(context.get_function<PFN_vkDestroySemaphore>("vkDestroySemaphore")),
31         vkCmdPipelineBarrier(context.get_function<PFN_vkCmdPipelineBarrier>("vkCmdPipelineBarrier")),
32         vkQueueWaitIdle(context.get_function<PFN_vkQueueWaitIdle>("vkQueueWaitIdle")),
33         // 8
34         vkCreateRenderPass(context.get_function<PFN_vkCreateRenderPass>("vkCreateRenderPass")),
35         vkCreateRenderPass2(context.get_function<PFN_vkCreateRenderPass2>("vkCreateRenderPass2")),
36         vkDestroyRenderPass(context.get_function<PFN_vkDestroyRenderPass>("vkDestroyRenderPass")),
37         vkCreateFramebuffer(context.get_function<PFN_vkCreateFramebuffer>("vkCreateFramebuffer")),
38         vkDestroyFramebuffer(context.get_function<PFN_vkDestroyFramebuffer>("vkDestroyFramebuffer")),
39         vkCmdBeginRenderPass(context.get_function<PFN_vkCmdBeginRenderPass>("vkCmdBeginRenderPass")),
40         vkCmdEndRenderPass(context.get_function<PFN_vkCmdEndRenderPass>("vkCmdEndRenderPass")),
41         // 9
42         vkCreateShaderModule(context.get_function<PFN_vkCreateShaderModule>("vkCreateShaderModule")),
43         vkDestroyShaderModule(context.get_function<PFN_vkDestroyShaderModule>("vkDestroyShaderModule")),
44         // 10
45         vkCreateComputePipelines(context.get_function<PFN_vkCreateComputePipelines>("vkCreateComputePipelines")),
46         vkCreateGraphicsPipelines(context.get_function<PFN_vkCreateGraphicsPipelines>("vkCreateGraphicsPipelines")),
47         vkDestroyPipeline(context.get_function<PFN_vkDestroyPipeline>("vkDestroyPipeline")),
48         vkCmdBindPipeline(context.get_function<PFN_vkCmdBindPipeline>("vkCmdBindPipeline")),
49         // 11
50         vkGetPhysicalDeviceMemoryProperties(context.get_function<PFN_vkGetPhysicalDeviceMemoryProperties>("vkGetPhysicalDeviceMemoryProperties")),
51         vkAllocateMemory(context.get_function<PFN_vkAllocateMemory>("vkAllocateMemory")),
52         vkFreeMemory(context.get_function<PFN_vkFreeMemory>("vkFreeMemory")),
53         vkMapMemory(context.get_function<PFN_vkMapMemory>("vkMapMemory")),
54         vkUnmapMemory(context.get_function<PFN_vkUnmapMemory>("vkUnmapMemory")),
55         // 12
56         vkCreateBuffer(context.get_function<PFN_vkCreateBuffer>("vkCreateBuffer")),
57         vkDestroyBuffer(context.get_function<PFN_vkDestroyBuffer>("vkDestroyBuffer")),
58         vkCreateImage(context.get_function<PFN_vkCreateImage>("vkCreateImage")),
59         vkDestroyImage(context.get_function<PFN_vkDestroyImage>("vkDestroyImage")),
60         vkCreateImageView(context.get_function<PFN_vkCreateImageView>("vkCreateImageView")),
61         vkDestroyImageView(context.get_function<PFN_vkDestroyImageView>("vkDestroyImageView")),
62         vkGetBufferMemoryRequirements(context.get_function<PFN_vkGetBufferMemoryRequirements>("vkGetBufferMemoryRequirements")),
63         vkGetImageMemoryRequirements(context.get_function<PFN_vkGetImageMemoryRequirements>("vkGetImageMemoryRequirements")),
64         vkBindBufferMemory(context.get_function<PFN_vkBindBufferMemory>("vkBindBufferMemory")),
65         vkBindImageMemory(context.get_function<PFN_vkBindImageMemory>("vkBindImageMemory")),
66         // 13
67         vkCreateSampler(context.get_function<PFN_vkCreateSampler>("vkCreateSampler")),
68         vkDestroySampler(context.get_function<PFN_vkDestroySampler>("vkDestroySampler")),
69         // 14
70         vkCreateDescriptorSetLayout(context.get_function<PFN_vkCreateDescriptorSetLayout>("vkCreateDescriptorSetLayout")),
71         vkDestroyDescriptorSetLayout(context.get_function<PFN_vkDestroyDescriptorSetLayout>("vkDestroyDescriptorSetLayout")),
72         vkCreatePipelineLayout(context.get_function<PFN_vkCreatePipelineLayout>("vkCreatePipelineLayout")),
73         vkDestroyPipelineLayout(context.get_function<PFN_vkDestroyPipelineLayout>("vkDestroyPipelineLayout")),
74         vkCreateDescriptorPool(context.get_function<PFN_vkCreateDescriptorPool>("vkCreateDescriptorPool")),
75         vkDestroyDescriptorPool(context.get_function<PFN_vkDestroyDescriptorPool>("vkDestroyDescriptorPool")),
76         vkAllocateDescriptorSets(context.get_function<PFN_vkAllocateDescriptorSets>("vkAllocateDescriptorSets")),
77         vkUpdateDescriptorSets(context.get_function<PFN_vkUpdateDescriptorSets>("vkUpdateDescriptorSets")),
78         vkCmdBindDescriptorSets(context.get_function<PFN_vkCmdBindDescriptorSets>("vkCmdBindDescriptorSets")),
79         vkCmdPushConstants(context.get_function<PFN_vkCmdPushConstants>("vkCmdPushConstants")),
80         // 19
81         vkCmdCopyBuffer(context.get_function<PFN_vkCmdCopyBuffer>("vkCmdCopyBuffer")),
82         vkCmdCopyBufferToImage(context.get_function<PFN_vkCmdCopyBufferToImage>("vkCmdCopyBufferToImage")),
83         vkCmdBlitImage(context.get_function<PFN_vkCmdBlitImage>("vkCmdBlitImage")),
84         // 20
85         vkCmdBindIndexBuffer(context.get_function<PFN_vkCmdBindIndexBuffer>("vkCmdBindIndexBuffer")),
86         vkCmdDrawIndexed(context.get_function<PFN_vkCmdDrawIndexed>("vkCmdDrawIndexed")),
87         // 21
88         vkCmdBindVertexBuffers(context.get_function<PFN_vkCmdBindVertexBuffers>("vkCmdBindVertexBuffers")),
89         // 24
90         vkCmdSetViewport(context.get_function<PFN_vkCmdSetViewport>("vkCmdSetViewport")),
91         // 26
92         vkCmdSetScissor(context.get_function<PFN_vkCmdSetScissor>("vkCmdSetScissor")),
93         // 28
94         vkCmdDispatch(context.get_function<PFN_vkCmdDispatch>("vkCmdDispatch")),
95         // 30
96         vkGetPhysicalDeviceSurfaceCapabilities(context.get_function<PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR>("vkGetPhysicalDeviceSurfaceCapabilitiesKHR")),
97         vkGetPhysicalDeviceSurfaceFormats(context.get_function<PFN_vkGetPhysicalDeviceSurfaceFormatsKHR>("vkGetPhysicalDeviceSurfaceFormatsKHR")),
98         vkGetPhysicalDeviceSurfacePresentModes(context.get_function<PFN_vkGetPhysicalDeviceSurfacePresentModesKHR>("vkGetPhysicalDeviceSurfacePresentModesKHR")),
99         vkCreateSwapchain(context.get_function<PFN_vkCreateSwapchainKHR>("vkCreateSwapchainKHR")),
100         vkDestroySwapchain(context.get_function<PFN_vkDestroySwapchainKHR>("vkDestroySwapchainKHR")),
101         vkGetSwapchainImages(context.get_function<PFN_vkGetSwapchainImagesKHR>("vkGetSwapchainImagesKHR")),
102         vkAcquireNextImage(context.get_function<PFN_vkAcquireNextImageKHR>("vkAcquireNextImageKHR")),
103         vkQueuePresent(context.get_function<PFN_vkQueuePresentKHR>("vkQueuePresentKHR")),
104         // 39
105         vkGetPhysicalDeviceFormatProperties(context.get_function<PFN_vkGetPhysicalDeviceFormatProperties>("vkGetPhysicalDeviceFormatProperties")),
106         // 45
107         vkSetDebugUtilsObjectName(context.get_function<PFN_vkSetDebugUtilsObjectNameEXT>("vkSetDebugUtilsObjectNameEXT"))
108 { }
109
110 } // namespace GL
111 } // namespace Msp