null_driver_gen.cpp revision cf25c4174dca708032ea83ac7ae2baad9e575b29
104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall/* 204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* Copyright 2015 The Android Open Source Project 304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* 404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* Licensed under the Apache License, Version 2.0 (the "License"); 504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* you may not use this file except in compliance with the License. 604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* You may obtain a copy of the License at 704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* 804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* http://www.apache.org/licenses/LICENSE-2.0 904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* 1004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* Unless required by applicable law or agreed to in writing, software 1104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* distributed under the License is distributed on an "AS IS" BASIS, 1204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* See the License for the specific language governing permissions and 1404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall* limitations under the License. 1504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall*/ 1604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 1704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall// This file is generated. Do not edit manually! 1804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall// To regenerate: $ apic template ../api/vulkan.api null_driver_gen.cpp.tmpl 1904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall// Requires apic from https://android.googlesource.com/platform/tools/gpu/. 2004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#include <algorithm> 2204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall#include "null_driver.h" 2304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallusing namespace null_driver; 2504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallnamespace { 2704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 2804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallstruct NameProcEntry { 2904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* name; 3004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall PFN_vkVoidFunction proc; 3104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall}; 3204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 3304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Halltemplate <size_t N> 34cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse HallPFN_vkVoidFunction LookupProcAddr(const NameProcEntry (&table)[N], 3504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall const char* name) { 3604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall auto entry = std::lower_bound(table, table + N, name, 3704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall [](const NameProcEntry& e, const char* n) { 3804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall return strcmp(e.name, n) < 0; 3904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall }); 4004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall if (entry != (table + N) && strcmp(entry->name, name) == 0) 4104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall return entry->proc; 4204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall return nullptr; 4304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} 4404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 45cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall// The reinterpret_cast<..>(static_cast<..>(..)) business is there to ensure 46cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall// that the function declaration in null_driver.h matches the function pointer 47cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall// type in vulkan.h. If we just used reinterpret_cast<>, the compiler wouldn't 48cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall// tell us if there's a mistake in null_driver.h. A better solution would be to 49cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall// generate the declarations in null_driver.h. 5004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallconst NameProcEntry kInstanceProcTbl[] = { 5104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall // clang-format off 52cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateDevice", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateDevice>(CreateDevice))}, 53cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyInstance", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyInstance>(DestroyInstance))}, 54cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkEnumerateDeviceExtensionProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkEnumerateDeviceExtensionProperties>(EnumerateDeviceExtensionProperties))}, 55cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkEnumerateDeviceLayerProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkEnumerateDeviceLayerProperties>(EnumerateDeviceLayerProperties))}, 56cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkEnumeratePhysicalDevices", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkEnumeratePhysicalDevices>(EnumeratePhysicalDevices))}, 57cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetInstanceProcAddr", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetInstanceProcAddr>(GetInstanceProcAddr))}, 58cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceFeatures", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceFeatures>(GetPhysicalDeviceFeatures))}, 59cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceFormatProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceFormatProperties>(GetPhysicalDeviceFormatProperties))}, 60cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceImageFormatProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceImageFormatProperties>(GetPhysicalDeviceImageFormatProperties))}, 61cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceMemoryProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceMemoryProperties>(GetPhysicalDeviceMemoryProperties))}, 62cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceProperties>(GetPhysicalDeviceProperties))}, 63cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceQueueFamilyProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceQueueFamilyProperties>(GetPhysicalDeviceQueueFamilyProperties))}, 64cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPhysicalDeviceSparseImageFormatProperties", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPhysicalDeviceSparseImageFormatProperties>(GetPhysicalDeviceSparseImageFormatProperties))}, 6504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall // clang-format on 6604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall}; 6704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 6804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallconst NameProcEntry kDeviceProcTbl[] = { 6904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall // clang-format off 70cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkAllocDescriptorSets", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkAllocDescriptorSets>(AllocDescriptorSets))}, 71cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkAllocMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkAllocMemory>(AllocMemory))}, 72cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkBeginCommandBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkBeginCommandBuffer>(BeginCommandBuffer))}, 73cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkBindBufferMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkBindBufferMemory>(BindBufferMemory))}, 74cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkBindImageMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkBindImageMemory>(BindImageMemory))}, 75cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBeginQuery", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBeginQuery>(CmdBeginQuery))}, 76cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBeginRenderPass", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBeginRenderPass>(CmdBeginRenderPass))}, 77cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBindDescriptorSets", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBindDescriptorSets>(CmdBindDescriptorSets))}, 78cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBindIndexBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBindIndexBuffer>(CmdBindIndexBuffer))}, 79cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBindPipeline", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBindPipeline>(CmdBindPipeline))}, 80cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBindVertexBuffers", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBindVertexBuffers>(CmdBindVertexBuffers))}, 81cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdBlitImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdBlitImage>(CmdBlitImage))}, 82cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdClearColorAttachment", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdClearColorAttachment>(CmdClearColorAttachment))}, 83cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdClearColorImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdClearColorImage>(CmdClearColorImage))}, 84cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdClearDepthStencilAttachment", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdClearDepthStencilAttachment>(CmdClearDepthStencilAttachment))}, 85cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdClearDepthStencilImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdClearDepthStencilImage>(CmdClearDepthStencilImage))}, 86cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdCopyBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdCopyBuffer>(CmdCopyBuffer))}, 87cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdCopyBufferToImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdCopyBufferToImage>(CmdCopyBufferToImage))}, 88cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdCopyImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdCopyImage>(CmdCopyImage))}, 89cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdCopyImageToBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdCopyImageToBuffer>(CmdCopyImageToBuffer))}, 90cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdCopyQueryPoolResults", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdCopyQueryPoolResults>(CmdCopyQueryPoolResults))}, 91cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdDispatch", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdDispatch>(CmdDispatch))}, 92cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdDispatchIndirect", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdDispatchIndirect>(CmdDispatchIndirect))}, 93cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdDraw", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdDraw>(CmdDraw))}, 94cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdDrawIndexed", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdDrawIndexed>(CmdDrawIndexed))}, 95cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdDrawIndexedIndirect", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdDrawIndexedIndirect>(CmdDrawIndexedIndirect))}, 96cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdDrawIndirect", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdDrawIndirect>(CmdDrawIndirect))}, 97cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdEndQuery", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdEndQuery>(CmdEndQuery))}, 98cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdEndRenderPass", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdEndRenderPass>(CmdEndRenderPass))}, 99cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdExecuteCommands", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdExecuteCommands>(CmdExecuteCommands))}, 100cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdFillBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdFillBuffer>(CmdFillBuffer))}, 101cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdNextSubpass", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdNextSubpass>(CmdNextSubpass))}, 102cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdPipelineBarrier", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdPipelineBarrier>(CmdPipelineBarrier))}, 103cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdPushConstants", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdPushConstants>(CmdPushConstants))}, 104cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdResetEvent", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdResetEvent>(CmdResetEvent))}, 105cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdResetQueryPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdResetQueryPool>(CmdResetQueryPool))}, 106cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdResolveImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdResolveImage>(CmdResolveImage))}, 107cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetBlendConstants", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetBlendConstants>(CmdSetBlendConstants))}, 108cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetDepthBias", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetDepthBias>(CmdSetDepthBias))}, 109cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetDepthBounds", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetDepthBounds>(CmdSetDepthBounds))}, 110cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetEvent", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetEvent>(CmdSetEvent))}, 111cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetLineWidth", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetLineWidth>(CmdSetLineWidth))}, 112cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetScissor", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetScissor>(CmdSetScissor))}, 113cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetStencilCompareMask", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetStencilCompareMask>(CmdSetStencilCompareMask))}, 114cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetStencilReference", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetStencilReference>(CmdSetStencilReference))}, 115cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetStencilWriteMask", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetStencilWriteMask>(CmdSetStencilWriteMask))}, 116cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdSetViewport", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdSetViewport>(CmdSetViewport))}, 117cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdUpdateBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdUpdateBuffer>(CmdUpdateBuffer))}, 118cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdWaitEvents", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdWaitEvents>(CmdWaitEvents))}, 119cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCmdWriteTimestamp", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCmdWriteTimestamp>(CmdWriteTimestamp))}, 120cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateBuffer>(CreateBuffer))}, 121cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateBufferView", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateBufferView>(CreateBufferView))}, 122cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateCommandBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateCommandBuffer>(CreateCommandBuffer))}, 123cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateCommandPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateCommandPool>(CreateCommandPool))}, 124cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateComputePipelines", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateComputePipelines>(CreateComputePipelines))}, 125cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateDescriptorPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateDescriptorPool>(CreateDescriptorPool))}, 126cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateDescriptorSetLayout", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateDescriptorSetLayout>(CreateDescriptorSetLayout))}, 127cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateEvent", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateEvent>(CreateEvent))}, 128cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateFence", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateFence>(CreateFence))}, 129cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateFramebuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateFramebuffer>(CreateFramebuffer))}, 130cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateGraphicsPipelines", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateGraphicsPipelines>(CreateGraphicsPipelines))}, 131cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateImage>(CreateImage))}, 132cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateImageView", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateImageView>(CreateImageView))}, 133cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreatePipelineCache", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreatePipelineCache>(CreatePipelineCache))}, 134cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreatePipelineLayout", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreatePipelineLayout>(CreatePipelineLayout))}, 135cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateQueryPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateQueryPool>(CreateQueryPool))}, 136cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateRenderPass", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateRenderPass>(CreateRenderPass))}, 137cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateSampler", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateSampler>(CreateSampler))}, 138cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateSemaphore", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateSemaphore>(CreateSemaphore))}, 139cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateShader", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateShader>(CreateShader))}, 140cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkCreateShaderModule", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkCreateShaderModule>(CreateShaderModule))}, 141cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyBuffer>(DestroyBuffer))}, 142cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyBufferView", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyBufferView>(DestroyBufferView))}, 143cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyCommandBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyCommandBuffer>(DestroyCommandBuffer))}, 144cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyCommandPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyCommandPool>(DestroyCommandPool))}, 145cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyDescriptorPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyDescriptorPool>(DestroyDescriptorPool))}, 146cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyDescriptorSetLayout", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyDescriptorSetLayout>(DestroyDescriptorSetLayout))}, 147cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyDevice", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyDevice>(DestroyDevice))}, 148cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyEvent", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyEvent>(DestroyEvent))}, 149cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyFence", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyFence>(DestroyFence))}, 150cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyFramebuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyFramebuffer>(DestroyFramebuffer))}, 151cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyImage", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyImage>(DestroyImage))}, 152cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyImageView", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyImageView>(DestroyImageView))}, 153cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyPipeline", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyPipeline>(DestroyPipeline))}, 154cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyPipelineCache", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyPipelineCache>(DestroyPipelineCache))}, 155cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyPipelineLayout", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyPipelineLayout>(DestroyPipelineLayout))}, 156cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyQueryPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyQueryPool>(DestroyQueryPool))}, 157cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyRenderPass", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyRenderPass>(DestroyRenderPass))}, 158cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroySampler", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroySampler>(DestroySampler))}, 159cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroySemaphore", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroySemaphore>(DestroySemaphore))}, 160cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyShader", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyShader>(DestroyShader))}, 161cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDestroyShaderModule", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDestroyShaderModule>(DestroyShaderModule))}, 162cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkDeviceWaitIdle", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkDeviceWaitIdle>(DeviceWaitIdle))}, 163cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkEndCommandBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkEndCommandBuffer>(EndCommandBuffer))}, 164cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkFlushMappedMemoryRanges", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkFlushMappedMemoryRanges>(FlushMappedMemoryRanges))}, 165cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkFreeDescriptorSets", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkFreeDescriptorSets>(FreeDescriptorSets))}, 166cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkFreeMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkFreeMemory>(FreeMemory))}, 167cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetBufferMemoryRequirements", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetBufferMemoryRequirements>(GetBufferMemoryRequirements))}, 168cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetDeviceMemoryCommitment", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetDeviceMemoryCommitment>(GetDeviceMemoryCommitment))}, 169cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetDeviceProcAddr", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetDeviceProcAddr>(GetDeviceProcAddr))}, 170cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetDeviceQueue", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetDeviceQueue>(GetDeviceQueue))}, 171cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetEventStatus", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetEventStatus>(GetEventStatus))}, 172cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetFenceStatus", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetFenceStatus>(GetFenceStatus))}, 173cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetImageMemoryRequirements", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetImageMemoryRequirements>(GetImageMemoryRequirements))}, 174cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetImageSparseMemoryRequirements", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetImageSparseMemoryRequirements>(GetImageSparseMemoryRequirements))}, 175cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetImageSubresourceLayout", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetImageSubresourceLayout>(GetImageSubresourceLayout))}, 176cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPipelineCacheData", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPipelineCacheData>(GetPipelineCacheData))}, 177cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetPipelineCacheSize", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetPipelineCacheSize>(GetPipelineCacheSize))}, 178cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetQueryPoolResults", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetQueryPoolResults>(GetQueryPoolResults))}, 179cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkGetRenderAreaGranularity", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkGetRenderAreaGranularity>(GetRenderAreaGranularity))}, 180cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkInvalidateMappedMemoryRanges", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkInvalidateMappedMemoryRanges>(InvalidateMappedMemoryRanges))}, 181cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkMapMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkMapMemory>(MapMemory))}, 182cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkMergePipelineCaches", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkMergePipelineCaches>(MergePipelineCaches))}, 183cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueBindSparseBufferMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueBindSparseBufferMemory>(QueueBindSparseBufferMemory))}, 184cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueBindSparseImageMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueBindSparseImageMemory>(QueueBindSparseImageMemory))}, 185cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueBindSparseImageOpaqueMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueBindSparseImageOpaqueMemory>(QueueBindSparseImageOpaqueMemory))}, 186cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueSignalSemaphore", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueSignalSemaphore>(QueueSignalSemaphore))}, 187cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueSubmit", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueSubmit>(QueueSubmit))}, 188cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueWaitIdle", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueWaitIdle>(QueueWaitIdle))}, 189cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkQueueWaitSemaphore", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkQueueWaitSemaphore>(QueueWaitSemaphore))}, 190cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkResetCommandBuffer", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkResetCommandBuffer>(ResetCommandBuffer))}, 191cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkResetCommandPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkResetCommandPool>(ResetCommandPool))}, 192cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkResetDescriptorPool", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkResetDescriptorPool>(ResetDescriptorPool))}, 193cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkResetEvent", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkResetEvent>(ResetEvent))}, 194cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkResetFences", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkResetFences>(ResetFences))}, 195cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkSetEvent", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkSetEvent>(SetEvent))}, 196cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkUnmapMemory", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkUnmapMemory>(UnmapMemory))}, 197cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkUpdateDescriptorSets", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkUpdateDescriptorSets>(UpdateDescriptorSets))}, 198cf25c4174dca708032ea83ac7ae2baad9e575b29Jesse Hall {"vkWaitForFences", reinterpret_cast<PFN_vkVoidFunction>(static_cast<PFN_vkWaitForFences>(WaitForFences))}, 19904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall // clang-format on 20004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall}; 20104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} // namespace 20304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hallnamespace null_driver { 20504f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 20604f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallPFN_vkVoidFunction LookupInstanceProcAddr(const char* name) { 20704f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall return LookupProcAddr(kInstanceProcTbl, name); 20804f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} 20904f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21004f4f4746481571148eaf3aaf768ee5c6dccec9dJesse HallPFN_vkVoidFunction LookupDeviceProcAddr(const char* name) { 21104f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall return LookupProcAddr(kDeviceProcTbl, name); 21204f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} 21304f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall 21404f4f4746481571148eaf3aaf768ee5c6dccec9dJesse Hall} // namespace null_driver 215