blob: bcd054f546b3ff07f12bfc2d7d9a05cf6bdb325c [file] [log] [blame]
Ben Clayton654540e2019-02-01 13:08:23 +00001// Copyright 2019 The SwiftShader Authors. All Rights Reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// VkInstanceFuncs.h lists the vulkan driver per-instance functions.
16//
17// TODO: Generate this list.
18
19// VK_INSTANCE(<function name>, <return type>, <arguments>...)
Ben Claytonbb501062019-04-24 20:23:29 +010020VK_INSTANCE(vkAllocateCommandBuffers, VkResult, VkDevice, const VkCommandBufferAllocateInfo*, VkCommandBuffer*);
21VK_INSTANCE(vkAllocateDescriptorSets, VkResult, VkDevice, const VkDescriptorSetAllocateInfo*, VkDescriptorSet*);
Ben Clayton654540e2019-02-01 13:08:23 +000022VK_INSTANCE(vkAllocateMemory, VkResult, VkDevice, const VkMemoryAllocateInfo*, const VkAllocationCallbacks*,
Ben Claytonbb501062019-04-24 20:23:29 +010023 VkDeviceMemory*);
24VK_INSTANCE(vkBeginCommandBuffer, VkResult, VkCommandBuffer, const VkCommandBufferBeginInfo*);
25VK_INSTANCE(vkBindBufferMemory, VkResult, VkDevice, VkBuffer, VkDeviceMemory, VkDeviceSize);
Ben Clayton654540e2019-02-01 13:08:23 +000026VK_INSTANCE(vkCmdBindDescriptorSets, void, VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t,
Ben Claytonbb501062019-04-24 20:23:29 +010027 const VkDescriptorSet*, uint32_t, const uint32_t*);
28VK_INSTANCE(vkCmdBindPipeline, void, VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
29VK_INSTANCE(vkCmdDispatch, void, VkCommandBuffer, uint32_t, uint32_t, uint32_t);
30VK_INSTANCE(vkCreateBuffer, VkResult, VkDevice, const VkBufferCreateInfo*, const VkAllocationCallbacks*, VkBuffer*);
Ben Clayton654540e2019-02-01 13:08:23 +000031VK_INSTANCE(vkCreateCommandPool, VkResult, VkDevice, const VkCommandPoolCreateInfo*, const VkAllocationCallbacks*,
Ben Claytonbb501062019-04-24 20:23:29 +010032 VkCommandPool*);
Ben Clayton654540e2019-02-01 13:08:23 +000033VK_INSTANCE(vkCreateComputePipelines, VkResult, VkDevice, VkPipelineCache, uint32_t, const VkComputePipelineCreateInfo*,
Ben Claytonbb501062019-04-24 20:23:29 +010034 const VkAllocationCallbacks*, VkPipeline*);
Ben Clayton654540e2019-02-01 13:08:23 +000035VK_INSTANCE(vkCreateDescriptorPool, VkResult, VkDevice, const VkDescriptorPoolCreateInfo*, const VkAllocationCallbacks*,
Ben Claytonbb501062019-04-24 20:23:29 +010036 VkDescriptorPool*);
Ben Clayton654540e2019-02-01 13:08:23 +000037VK_INSTANCE(vkCreateDescriptorSetLayout, VkResult, VkDevice, const VkDescriptorSetLayoutCreateInfo*,
Ben Claytonbb501062019-04-24 20:23:29 +010038 const VkAllocationCallbacks*, VkDescriptorSetLayout*);
Ben Clayton654540e2019-02-01 13:08:23 +000039VK_INSTANCE(vkCreateDevice, VkResult, VkPhysicalDevice, const VkDeviceCreateInfo*, const VkAllocationCallbacks*,
Ben Claytonbb501062019-04-24 20:23:29 +010040 VkDevice*);
Ben Clayton654540e2019-02-01 13:08:23 +000041VK_INSTANCE(vkCreatePipelineLayout, VkResult, VkDevice, const VkPipelineLayoutCreateInfo*, const VkAllocationCallbacks*,
Ben Claytonbb501062019-04-24 20:23:29 +010042 VkPipelineLayout*);
Ben Clayton654540e2019-02-01 13:08:23 +000043VK_INSTANCE(vkCreateShaderModule, VkResult, VkDevice, const VkShaderModuleCreateInfo*, const VkAllocationCallbacks*,
Ben Claytonbb501062019-04-24 20:23:29 +010044 VkShaderModule*);
45VK_INSTANCE(vkDestroyDevice, VkResult, VkDevice, const VkAllocationCallbacks*);
46VK_INSTANCE(vkEndCommandBuffer, VkResult, VkCommandBuffer);
47VK_INSTANCE(vkEnumeratePhysicalDevices, VkResult, VkInstance, uint32_t*, VkPhysicalDevice*);
48VK_INSTANCE(vkGetDeviceQueue, void, VkDevice, uint32_t, uint32_t, VkQueue*);
49VK_INSTANCE(vkGetPhysicalDeviceMemoryProperties, void, VkPhysicalDevice, VkPhysicalDeviceMemoryProperties*);
50VK_INSTANCE(vkGetPhysicalDeviceProperties, void, VkPhysicalDevice, VkPhysicalDeviceProperties*);
51VK_INSTANCE(vkGetPhysicalDeviceQueueFamilyProperties, void, VkPhysicalDevice, uint32_t*, VkQueueFamilyProperties*);
52VK_INSTANCE(vkMapMemory, VkResult, VkDevice, VkDeviceMemory, VkDeviceSize, VkDeviceSize, VkMemoryMapFlags, void**);
53VK_INSTANCE(vkQueueSubmit, VkResult, VkQueue, uint32_t, const VkSubmitInfo*, VkFence);
54VK_INSTANCE(vkQueueWaitIdle, VkResult, VkQueue);
55VK_INSTANCE(vkUnmapMemory, void, VkDevice, VkDeviceMemory);
Ben Clayton654540e2019-02-01 13:08:23 +000056VK_INSTANCE(vkUpdateDescriptorSets, void, VkDevice, uint32_t, const VkWriteDescriptorSet*, uint32_t,
Ben Claytonbb501062019-04-24 20:23:29 +010057 const VkCopyDescriptorSet*);
58VK_INSTANCE(vkDeviceWaitIdle, VkResult, VkDevice);