| /* This file is generated by venus-protocol. See vn_protocol_renderer.h. */ |
| |
| /* |
| * Copyright 2022 Google LLC |
| * Copyright 2022 Collabora Ltd. |
| * SPDX-License-Identifier: MIT |
| */ |
| |
| #ifndef VN_PROTOCOL_RENDERER_UTIL_H |
| #define VN_PROTOCOL_RENDERER_UTIL_H |
| |
| #include "vn_protocol_renderer_info.h" |
| |
| struct vn_physical_device_proc_table { |
| PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT GetPhysicalDeviceCalibrateableTimeDomainsEXT; |
| PFN_vkGetPhysicalDeviceToolProperties GetPhysicalDeviceToolProperties; |
| }; |
| |
| struct vn_device_proc_table { |
| PFN_vkAllocateCommandBuffers AllocateCommandBuffers; |
| PFN_vkAllocateDescriptorSets AllocateDescriptorSets; |
| PFN_vkAllocateMemory AllocateMemory; |
| PFN_vkBeginCommandBuffer BeginCommandBuffer; |
| PFN_vkBindBufferMemory BindBufferMemory; |
| PFN_vkBindBufferMemory2 BindBufferMemory2; |
| PFN_vkBindImageMemory BindImageMemory; |
| PFN_vkBindImageMemory2 BindImageMemory2; |
| PFN_vkCmdBeginConditionalRenderingEXT CmdBeginConditionalRenderingEXT; |
| PFN_vkCmdBeginQuery CmdBeginQuery; |
| PFN_vkCmdBeginQueryIndexedEXT CmdBeginQueryIndexedEXT; |
| PFN_vkCmdBeginRenderPass CmdBeginRenderPass; |
| PFN_vkCmdBeginRenderPass2 CmdBeginRenderPass2; |
| PFN_vkCmdBeginRendering CmdBeginRendering; |
| PFN_vkCmdBeginTransformFeedbackEXT CmdBeginTransformFeedbackEXT; |
| PFN_vkCmdBindDescriptorSets CmdBindDescriptorSets; |
| PFN_vkCmdBindIndexBuffer CmdBindIndexBuffer; |
| PFN_vkCmdBindPipeline CmdBindPipeline; |
| PFN_vkCmdBindTransformFeedbackBuffersEXT CmdBindTransformFeedbackBuffersEXT; |
| PFN_vkCmdBindVertexBuffers CmdBindVertexBuffers; |
| PFN_vkCmdBindVertexBuffers2 CmdBindVertexBuffers2; |
| PFN_vkCmdBlitImage CmdBlitImage; |
| PFN_vkCmdBlitImage2 CmdBlitImage2; |
| PFN_vkCmdClearAttachments CmdClearAttachments; |
| PFN_vkCmdClearColorImage CmdClearColorImage; |
| PFN_vkCmdClearDepthStencilImage CmdClearDepthStencilImage; |
| PFN_vkCmdCopyBuffer CmdCopyBuffer; |
| PFN_vkCmdCopyBuffer2 CmdCopyBuffer2; |
| PFN_vkCmdCopyBufferToImage CmdCopyBufferToImage; |
| PFN_vkCmdCopyBufferToImage2 CmdCopyBufferToImage2; |
| PFN_vkCmdCopyImage CmdCopyImage; |
| PFN_vkCmdCopyImage2 CmdCopyImage2; |
| PFN_vkCmdCopyImageToBuffer CmdCopyImageToBuffer; |
| PFN_vkCmdCopyImageToBuffer2 CmdCopyImageToBuffer2; |
| PFN_vkCmdCopyQueryPoolResults CmdCopyQueryPoolResults; |
| PFN_vkCmdDispatch CmdDispatch; |
| PFN_vkCmdDispatchBase CmdDispatchBase; |
| PFN_vkCmdDispatchIndirect CmdDispatchIndirect; |
| PFN_vkCmdDraw CmdDraw; |
| PFN_vkCmdDrawIndexed CmdDrawIndexed; |
| PFN_vkCmdDrawIndexedIndirect CmdDrawIndexedIndirect; |
| PFN_vkCmdDrawIndexedIndirectCount CmdDrawIndexedIndirectCount; |
| PFN_vkCmdDrawIndirect CmdDrawIndirect; |
| PFN_vkCmdDrawIndirectByteCountEXT CmdDrawIndirectByteCountEXT; |
| PFN_vkCmdDrawIndirectCount CmdDrawIndirectCount; |
| PFN_vkCmdDrawMultiEXT CmdDrawMultiEXT; |
| PFN_vkCmdDrawMultiIndexedEXT CmdDrawMultiIndexedEXT; |
| PFN_vkCmdEndConditionalRenderingEXT CmdEndConditionalRenderingEXT; |
| PFN_vkCmdEndQuery CmdEndQuery; |
| PFN_vkCmdEndQueryIndexedEXT CmdEndQueryIndexedEXT; |
| PFN_vkCmdEndRenderPass CmdEndRenderPass; |
| PFN_vkCmdEndRenderPass2 CmdEndRenderPass2; |
| PFN_vkCmdEndRendering CmdEndRendering; |
| PFN_vkCmdEndTransformFeedbackEXT CmdEndTransformFeedbackEXT; |
| PFN_vkCmdExecuteCommands CmdExecuteCommands; |
| PFN_vkCmdFillBuffer CmdFillBuffer; |
| PFN_vkCmdNextSubpass CmdNextSubpass; |
| PFN_vkCmdNextSubpass2 CmdNextSubpass2; |
| PFN_vkCmdPipelineBarrier CmdPipelineBarrier; |
| PFN_vkCmdPipelineBarrier2 CmdPipelineBarrier2; |
| PFN_vkCmdPushConstants CmdPushConstants; |
| PFN_vkCmdPushDescriptorSetKHR CmdPushDescriptorSetKHR; |
| PFN_vkCmdPushDescriptorSetWithTemplateKHR CmdPushDescriptorSetWithTemplateKHR; |
| PFN_vkCmdResetEvent CmdResetEvent; |
| PFN_vkCmdResetEvent2 CmdResetEvent2; |
| PFN_vkCmdResetQueryPool CmdResetQueryPool; |
| PFN_vkCmdResolveImage CmdResolveImage; |
| PFN_vkCmdResolveImage2 CmdResolveImage2; |
| PFN_vkCmdSetBlendConstants CmdSetBlendConstants; |
| PFN_vkCmdSetCullMode CmdSetCullMode; |
| PFN_vkCmdSetDepthBias CmdSetDepthBias; |
| PFN_vkCmdSetDepthBiasEnable CmdSetDepthBiasEnable; |
| PFN_vkCmdSetDepthBounds CmdSetDepthBounds; |
| PFN_vkCmdSetDepthBoundsTestEnable CmdSetDepthBoundsTestEnable; |
| PFN_vkCmdSetDepthCompareOp CmdSetDepthCompareOp; |
| PFN_vkCmdSetDepthTestEnable CmdSetDepthTestEnable; |
| PFN_vkCmdSetDepthWriteEnable CmdSetDepthWriteEnable; |
| PFN_vkCmdSetDeviceMask CmdSetDeviceMask; |
| PFN_vkCmdSetEvent CmdSetEvent; |
| PFN_vkCmdSetEvent2 CmdSetEvent2; |
| PFN_vkCmdSetFrontFace CmdSetFrontFace; |
| PFN_vkCmdSetLineStippleEXT CmdSetLineStippleEXT; |
| PFN_vkCmdSetLineWidth CmdSetLineWidth; |
| PFN_vkCmdSetLogicOpEXT CmdSetLogicOpEXT; |
| PFN_vkCmdSetPatchControlPointsEXT CmdSetPatchControlPointsEXT; |
| PFN_vkCmdSetPrimitiveRestartEnable CmdSetPrimitiveRestartEnable; |
| PFN_vkCmdSetPrimitiveTopology CmdSetPrimitiveTopology; |
| PFN_vkCmdSetRasterizerDiscardEnable CmdSetRasterizerDiscardEnable; |
| PFN_vkCmdSetScissor CmdSetScissor; |
| PFN_vkCmdSetScissorWithCount CmdSetScissorWithCount; |
| PFN_vkCmdSetStencilCompareMask CmdSetStencilCompareMask; |
| PFN_vkCmdSetStencilOp CmdSetStencilOp; |
| PFN_vkCmdSetStencilReference CmdSetStencilReference; |
| PFN_vkCmdSetStencilTestEnable CmdSetStencilTestEnable; |
| PFN_vkCmdSetStencilWriteMask CmdSetStencilWriteMask; |
| PFN_vkCmdSetViewport CmdSetViewport; |
| PFN_vkCmdSetViewportWithCount CmdSetViewportWithCount; |
| PFN_vkCmdUpdateBuffer CmdUpdateBuffer; |
| PFN_vkCmdWaitEvents CmdWaitEvents; |
| PFN_vkCmdWaitEvents2 CmdWaitEvents2; |
| PFN_vkCmdWriteTimestamp CmdWriteTimestamp; |
| PFN_vkCmdWriteTimestamp2 CmdWriteTimestamp2; |
| PFN_vkCreateBuffer CreateBuffer; |
| PFN_vkCreateBufferView CreateBufferView; |
| PFN_vkCreateCommandPool CreateCommandPool; |
| PFN_vkCreateComputePipelines CreateComputePipelines; |
| PFN_vkCreateDescriptorPool CreateDescriptorPool; |
| PFN_vkCreateDescriptorSetLayout CreateDescriptorSetLayout; |
| PFN_vkCreateDescriptorUpdateTemplate CreateDescriptorUpdateTemplate; |
| PFN_vkCreateEvent CreateEvent; |
| PFN_vkCreateFence CreateFence; |
| PFN_vkCreateFramebuffer CreateFramebuffer; |
| PFN_vkCreateGraphicsPipelines CreateGraphicsPipelines; |
| PFN_vkCreateImage CreateImage; |
| PFN_vkCreateImageView CreateImageView; |
| PFN_vkCreatePipelineCache CreatePipelineCache; |
| PFN_vkCreatePipelineLayout CreatePipelineLayout; |
| PFN_vkCreatePrivateDataSlot CreatePrivateDataSlot; |
| PFN_vkCreateQueryPool CreateQueryPool; |
| PFN_vkCreateRenderPass CreateRenderPass; |
| PFN_vkCreateRenderPass2 CreateRenderPass2; |
| PFN_vkCreateSampler CreateSampler; |
| PFN_vkCreateSamplerYcbcrConversion CreateSamplerYcbcrConversion; |
| PFN_vkCreateSemaphore CreateSemaphore; |
| PFN_vkCreateShaderModule CreateShaderModule; |
| PFN_vkDestroyBuffer DestroyBuffer; |
| PFN_vkDestroyBufferView DestroyBufferView; |
| PFN_vkDestroyCommandPool DestroyCommandPool; |
| PFN_vkDestroyDescriptorPool DestroyDescriptorPool; |
| PFN_vkDestroyDescriptorSetLayout DestroyDescriptorSetLayout; |
| PFN_vkDestroyDescriptorUpdateTemplate DestroyDescriptorUpdateTemplate; |
| PFN_vkDestroyDevice DestroyDevice; |
| PFN_vkDestroyEvent DestroyEvent; |
| PFN_vkDestroyFence DestroyFence; |
| PFN_vkDestroyFramebuffer DestroyFramebuffer; |
| PFN_vkDestroyImage DestroyImage; |
| PFN_vkDestroyImageView DestroyImageView; |
| PFN_vkDestroyPipeline DestroyPipeline; |
| PFN_vkDestroyPipelineCache DestroyPipelineCache; |
| PFN_vkDestroyPipelineLayout DestroyPipelineLayout; |
| PFN_vkDestroyPrivateDataSlot DestroyPrivateDataSlot; |
| PFN_vkDestroyQueryPool DestroyQueryPool; |
| PFN_vkDestroyRenderPass DestroyRenderPass; |
| PFN_vkDestroySampler DestroySampler; |
| PFN_vkDestroySamplerYcbcrConversion DestroySamplerYcbcrConversion; |
| PFN_vkDestroySemaphore DestroySemaphore; |
| PFN_vkDestroyShaderModule DestroyShaderModule; |
| PFN_vkDeviceWaitIdle DeviceWaitIdle; |
| PFN_vkEndCommandBuffer EndCommandBuffer; |
| PFN_vkFlushMappedMemoryRanges FlushMappedMemoryRanges; |
| PFN_vkFreeCommandBuffers FreeCommandBuffers; |
| PFN_vkFreeDescriptorSets FreeDescriptorSets; |
| PFN_vkFreeMemory FreeMemory; |
| PFN_vkGetBufferDeviceAddress GetBufferDeviceAddress; |
| PFN_vkGetBufferMemoryRequirements GetBufferMemoryRequirements; |
| PFN_vkGetBufferMemoryRequirements2 GetBufferMemoryRequirements2; |
| PFN_vkGetBufferOpaqueCaptureAddress GetBufferOpaqueCaptureAddress; |
| PFN_vkGetCalibratedTimestampsEXT GetCalibratedTimestampsEXT; |
| PFN_vkGetDescriptorSetLayoutSupport GetDescriptorSetLayoutSupport; |
| PFN_vkGetDeviceBufferMemoryRequirements GetDeviceBufferMemoryRequirements; |
| PFN_vkGetDeviceGroupPeerMemoryFeatures GetDeviceGroupPeerMemoryFeatures; |
| PFN_vkGetDeviceImageMemoryRequirements GetDeviceImageMemoryRequirements; |
| PFN_vkGetDeviceImageSparseMemoryRequirements GetDeviceImageSparseMemoryRequirements; |
| PFN_vkGetDeviceMemoryCommitment GetDeviceMemoryCommitment; |
| PFN_vkGetDeviceMemoryOpaqueCaptureAddress GetDeviceMemoryOpaqueCaptureAddress; |
| PFN_vkGetDeviceProcAddr GetDeviceProcAddr; |
| PFN_vkGetDeviceQueue GetDeviceQueue; |
| PFN_vkGetDeviceQueue2 GetDeviceQueue2; |
| PFN_vkGetEventStatus GetEventStatus; |
| PFN_vkGetFenceFdKHR GetFenceFdKHR; |
| PFN_vkGetFenceStatus GetFenceStatus; |
| PFN_vkGetImageDrmFormatModifierPropertiesEXT GetImageDrmFormatModifierPropertiesEXT; |
| PFN_vkGetImageMemoryRequirements GetImageMemoryRequirements; |
| PFN_vkGetImageMemoryRequirements2 GetImageMemoryRequirements2; |
| PFN_vkGetImageSparseMemoryRequirements GetImageSparseMemoryRequirements; |
| PFN_vkGetImageSparseMemoryRequirements2 GetImageSparseMemoryRequirements2; |
| PFN_vkGetImageSubresourceLayout GetImageSubresourceLayout; |
| PFN_vkGetMemoryFdKHR GetMemoryFdKHR; |
| PFN_vkGetMemoryFdPropertiesKHR GetMemoryFdPropertiesKHR; |
| PFN_vkGetPipelineCacheData GetPipelineCacheData; |
| PFN_vkGetPrivateData GetPrivateData; |
| PFN_vkGetQueryPoolResults GetQueryPoolResults; |
| PFN_vkGetRenderAreaGranularity GetRenderAreaGranularity; |
| PFN_vkGetSemaphoreCounterValue GetSemaphoreCounterValue; |
| PFN_vkGetSemaphoreFdKHR GetSemaphoreFdKHR; |
| PFN_vkImportFenceFdKHR ImportFenceFdKHR; |
| PFN_vkImportSemaphoreFdKHR ImportSemaphoreFdKHR; |
| PFN_vkInvalidateMappedMemoryRanges InvalidateMappedMemoryRanges; |
| PFN_vkMapMemory MapMemory; |
| PFN_vkMergePipelineCaches MergePipelineCaches; |
| PFN_vkQueueBindSparse QueueBindSparse; |
| PFN_vkQueueSubmit QueueSubmit; |
| PFN_vkQueueSubmit2 QueueSubmit2; |
| PFN_vkQueueWaitIdle QueueWaitIdle; |
| PFN_vkResetCommandBuffer ResetCommandBuffer; |
| PFN_vkResetCommandPool ResetCommandPool; |
| PFN_vkResetDescriptorPool ResetDescriptorPool; |
| PFN_vkResetEvent ResetEvent; |
| PFN_vkResetFences ResetFences; |
| PFN_vkResetQueryPool ResetQueryPool; |
| PFN_vkSetEvent SetEvent; |
| PFN_vkSetPrivateData SetPrivateData; |
| PFN_vkSignalSemaphore SignalSemaphore; |
| PFN_vkTrimCommandPool TrimCommandPool; |
| PFN_vkUnmapMemory UnmapMemory; |
| PFN_vkUpdateDescriptorSetWithTemplate UpdateDescriptorSetWithTemplate; |
| PFN_vkUpdateDescriptorSets UpdateDescriptorSets; |
| PFN_vkWaitForFences WaitForFences; |
| PFN_vkWaitSemaphores WaitSemaphores; |
| }; |
| |
| static inline void |
| vn_util_init_physical_device_proc_table(VkInstance instance, |
| struct vn_physical_device_proc_table *proc_table) |
| { |
| #define VN_GIPA(instance, cmd) (PFN_ ## cmd)vkGetInstanceProcAddr(instance, #cmd) |
| proc_table->GetPhysicalDeviceCalibrateableTimeDomainsEXT = VN_GIPA(instance, vkGetPhysicalDeviceCalibrateableTimeDomainsEXT); |
| proc_table->GetPhysicalDeviceToolProperties = VN_GIPA(instance, vkGetPhysicalDeviceToolProperties); |
| if (!proc_table->GetPhysicalDeviceToolProperties) |
| proc_table->GetPhysicalDeviceToolProperties = VN_GIPA(instance, vkGetPhysicalDeviceToolPropertiesEXT); |
| #undef VN_GIPA |
| } |
| |
| |
| static inline void |
| vn_util_init_device_proc_table(VkDevice dev, |
| uint32_t api_version, |
| const struct vn_info_extension_table *ext_table, |
| struct vn_device_proc_table *proc_table) |
| { |
| #define VN_GDPA(dev, cmd) (PFN_ ## cmd)vkGetDeviceProcAddr(dev, #cmd) |
| proc_table->AllocateCommandBuffers = VN_GDPA(dev, vkAllocateCommandBuffers); |
| proc_table->AllocateDescriptorSets = VN_GDPA(dev, vkAllocateDescriptorSets); |
| proc_table->AllocateMemory = VN_GDPA(dev, vkAllocateMemory); |
| proc_table->BeginCommandBuffer = VN_GDPA(dev, vkBeginCommandBuffer); |
| proc_table->BindBufferMemory = VN_GDPA(dev, vkBindBufferMemory); |
| proc_table->BindBufferMemory2 = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkBindBufferMemory2) : |
| ext_table->KHR_bind_memory2 ? VN_GDPA(dev, vkBindBufferMemory2KHR) : |
| NULL; |
| proc_table->BindImageMemory = VN_GDPA(dev, vkBindImageMemory); |
| proc_table->BindImageMemory2 = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkBindImageMemory2) : |
| ext_table->KHR_bind_memory2 ? VN_GDPA(dev, vkBindImageMemory2KHR) : |
| NULL; |
| proc_table->CmdBeginConditionalRenderingEXT = |
| ext_table->EXT_conditional_rendering ? VN_GDPA(dev, vkCmdBeginConditionalRenderingEXT) : |
| NULL; |
| proc_table->CmdBeginQuery = VN_GDPA(dev, vkCmdBeginQuery); |
| proc_table->CmdBeginQueryIndexedEXT = |
| ext_table->EXT_transform_feedback ? VN_GDPA(dev, vkCmdBeginQueryIndexedEXT) : |
| NULL; |
| proc_table->CmdBeginRenderPass = VN_GDPA(dev, vkCmdBeginRenderPass); |
| proc_table->CmdBeginRenderPass2 = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkCmdBeginRenderPass2) : |
| ext_table->KHR_create_renderpass2 ? VN_GDPA(dev, vkCmdBeginRenderPass2KHR) : |
| NULL; |
| proc_table->CmdBeginRendering = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdBeginRendering) : |
| ext_table->KHR_dynamic_rendering ? VN_GDPA(dev, vkCmdBeginRenderingKHR) : |
| NULL; |
| proc_table->CmdBeginTransformFeedbackEXT = |
| ext_table->EXT_transform_feedback ? VN_GDPA(dev, vkCmdBeginTransformFeedbackEXT) : |
| NULL; |
| proc_table->CmdBindDescriptorSets = VN_GDPA(dev, vkCmdBindDescriptorSets); |
| proc_table->CmdBindIndexBuffer = VN_GDPA(dev, vkCmdBindIndexBuffer); |
| proc_table->CmdBindPipeline = VN_GDPA(dev, vkCmdBindPipeline); |
| proc_table->CmdBindTransformFeedbackBuffersEXT = |
| ext_table->EXT_transform_feedback ? VN_GDPA(dev, vkCmdBindTransformFeedbackBuffersEXT) : |
| NULL; |
| proc_table->CmdBindVertexBuffers = VN_GDPA(dev, vkCmdBindVertexBuffers); |
| proc_table->CmdBindVertexBuffers2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdBindVertexBuffers2) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdBindVertexBuffers2EXT) : |
| NULL; |
| proc_table->CmdBlitImage = VN_GDPA(dev, vkCmdBlitImage); |
| proc_table->CmdBlitImage2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdBlitImage2) : |
| ext_table->KHR_copy_commands2 ? VN_GDPA(dev, vkCmdBlitImage2KHR) : |
| NULL; |
| proc_table->CmdClearAttachments = VN_GDPA(dev, vkCmdClearAttachments); |
| proc_table->CmdClearColorImage = VN_GDPA(dev, vkCmdClearColorImage); |
| proc_table->CmdClearDepthStencilImage = VN_GDPA(dev, vkCmdClearDepthStencilImage); |
| proc_table->CmdCopyBuffer = VN_GDPA(dev, vkCmdCopyBuffer); |
| proc_table->CmdCopyBuffer2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdCopyBuffer2) : |
| ext_table->KHR_copy_commands2 ? VN_GDPA(dev, vkCmdCopyBuffer2KHR) : |
| NULL; |
| proc_table->CmdCopyBufferToImage = VN_GDPA(dev, vkCmdCopyBufferToImage); |
| proc_table->CmdCopyBufferToImage2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdCopyBufferToImage2) : |
| ext_table->KHR_copy_commands2 ? VN_GDPA(dev, vkCmdCopyBufferToImage2KHR) : |
| NULL; |
| proc_table->CmdCopyImage = VN_GDPA(dev, vkCmdCopyImage); |
| proc_table->CmdCopyImage2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdCopyImage2) : |
| ext_table->KHR_copy_commands2 ? VN_GDPA(dev, vkCmdCopyImage2KHR) : |
| NULL; |
| proc_table->CmdCopyImageToBuffer = VN_GDPA(dev, vkCmdCopyImageToBuffer); |
| proc_table->CmdCopyImageToBuffer2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdCopyImageToBuffer2) : |
| ext_table->KHR_copy_commands2 ? VN_GDPA(dev, vkCmdCopyImageToBuffer2KHR) : |
| NULL; |
| proc_table->CmdCopyQueryPoolResults = VN_GDPA(dev, vkCmdCopyQueryPoolResults); |
| proc_table->CmdDispatch = VN_GDPA(dev, vkCmdDispatch); |
| proc_table->CmdDispatchBase = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkCmdDispatchBase) : |
| ext_table->KHR_device_group ? VN_GDPA(dev, vkCmdDispatchBaseKHR) : |
| NULL; |
| proc_table->CmdDispatchIndirect = VN_GDPA(dev, vkCmdDispatchIndirect); |
| proc_table->CmdDraw = VN_GDPA(dev, vkCmdDraw); |
| proc_table->CmdDrawIndexed = VN_GDPA(dev, vkCmdDrawIndexed); |
| proc_table->CmdDrawIndexedIndirect = VN_GDPA(dev, vkCmdDrawIndexedIndirect); |
| proc_table->CmdDrawIndexedIndirectCount = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkCmdDrawIndexedIndirectCount) : |
| ext_table->KHR_draw_indirect_count ? VN_GDPA(dev, vkCmdDrawIndexedIndirectCountKHR) : |
| NULL; |
| proc_table->CmdDrawIndirect = VN_GDPA(dev, vkCmdDrawIndirect); |
| proc_table->CmdDrawIndirectByteCountEXT = |
| ext_table->EXT_transform_feedback ? VN_GDPA(dev, vkCmdDrawIndirectByteCountEXT) : |
| NULL; |
| proc_table->CmdDrawIndirectCount = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkCmdDrawIndirectCount) : |
| ext_table->KHR_draw_indirect_count ? VN_GDPA(dev, vkCmdDrawIndirectCountKHR) : |
| NULL; |
| proc_table->CmdDrawMultiEXT = |
| ext_table->EXT_multi_draw ? VN_GDPA(dev, vkCmdDrawMultiEXT) : |
| NULL; |
| proc_table->CmdDrawMultiIndexedEXT = |
| ext_table->EXT_multi_draw ? VN_GDPA(dev, vkCmdDrawMultiIndexedEXT) : |
| NULL; |
| proc_table->CmdEndConditionalRenderingEXT = |
| ext_table->EXT_conditional_rendering ? VN_GDPA(dev, vkCmdEndConditionalRenderingEXT) : |
| NULL; |
| proc_table->CmdEndQuery = VN_GDPA(dev, vkCmdEndQuery); |
| proc_table->CmdEndQueryIndexedEXT = |
| ext_table->EXT_transform_feedback ? VN_GDPA(dev, vkCmdEndQueryIndexedEXT) : |
| NULL; |
| proc_table->CmdEndRenderPass = VN_GDPA(dev, vkCmdEndRenderPass); |
| proc_table->CmdEndRenderPass2 = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkCmdEndRenderPass2) : |
| ext_table->KHR_create_renderpass2 ? VN_GDPA(dev, vkCmdEndRenderPass2KHR) : |
| NULL; |
| proc_table->CmdEndRendering = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdEndRendering) : |
| ext_table->KHR_dynamic_rendering ? VN_GDPA(dev, vkCmdEndRenderingKHR) : |
| NULL; |
| proc_table->CmdEndTransformFeedbackEXT = |
| ext_table->EXT_transform_feedback ? VN_GDPA(dev, vkCmdEndTransformFeedbackEXT) : |
| NULL; |
| proc_table->CmdExecuteCommands = VN_GDPA(dev, vkCmdExecuteCommands); |
| proc_table->CmdFillBuffer = VN_GDPA(dev, vkCmdFillBuffer); |
| proc_table->CmdNextSubpass = VN_GDPA(dev, vkCmdNextSubpass); |
| proc_table->CmdNextSubpass2 = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkCmdNextSubpass2) : |
| ext_table->KHR_create_renderpass2 ? VN_GDPA(dev, vkCmdNextSubpass2KHR) : |
| NULL; |
| proc_table->CmdPipelineBarrier = VN_GDPA(dev, vkCmdPipelineBarrier); |
| proc_table->CmdPipelineBarrier2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdPipelineBarrier2) : |
| ext_table->KHR_synchronization2 ? VN_GDPA(dev, vkCmdPipelineBarrier2KHR) : |
| NULL; |
| proc_table->CmdPushConstants = VN_GDPA(dev, vkCmdPushConstants); |
| proc_table->CmdPushDescriptorSetKHR = |
| ext_table->KHR_push_descriptor ? VN_GDPA(dev, vkCmdPushDescriptorSetKHR) : |
| NULL; |
| proc_table->CmdPushDescriptorSetWithTemplateKHR = |
| ext_table->KHR_push_descriptor ? VN_GDPA(dev, vkCmdPushDescriptorSetWithTemplateKHR) : |
| NULL; |
| proc_table->CmdResetEvent = VN_GDPA(dev, vkCmdResetEvent); |
| proc_table->CmdResetEvent2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdResetEvent2) : |
| ext_table->KHR_synchronization2 ? VN_GDPA(dev, vkCmdResetEvent2KHR) : |
| NULL; |
| proc_table->CmdResetQueryPool = VN_GDPA(dev, vkCmdResetQueryPool); |
| proc_table->CmdResolveImage = VN_GDPA(dev, vkCmdResolveImage); |
| proc_table->CmdResolveImage2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdResolveImage2) : |
| ext_table->KHR_copy_commands2 ? VN_GDPA(dev, vkCmdResolveImage2KHR) : |
| NULL; |
| proc_table->CmdSetBlendConstants = VN_GDPA(dev, vkCmdSetBlendConstants); |
| proc_table->CmdSetCullMode = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetCullMode) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetCullModeEXT) : |
| NULL; |
| proc_table->CmdSetDepthBias = VN_GDPA(dev, vkCmdSetDepthBias); |
| proc_table->CmdSetDepthBiasEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetDepthBiasEnable) : |
| ext_table->EXT_extended_dynamic_state2 ? VN_GDPA(dev, vkCmdSetDepthBiasEnableEXT) : |
| NULL; |
| proc_table->CmdSetDepthBounds = VN_GDPA(dev, vkCmdSetDepthBounds); |
| proc_table->CmdSetDepthBoundsTestEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetDepthBoundsTestEnable) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetDepthBoundsTestEnableEXT) : |
| NULL; |
| proc_table->CmdSetDepthCompareOp = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetDepthCompareOp) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetDepthCompareOpEXT) : |
| NULL; |
| proc_table->CmdSetDepthTestEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetDepthTestEnable) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetDepthTestEnableEXT) : |
| NULL; |
| proc_table->CmdSetDepthWriteEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetDepthWriteEnable) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetDepthWriteEnableEXT) : |
| NULL; |
| proc_table->CmdSetDeviceMask = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkCmdSetDeviceMask) : |
| ext_table->KHR_device_group ? VN_GDPA(dev, vkCmdSetDeviceMaskKHR) : |
| NULL; |
| proc_table->CmdSetEvent = VN_GDPA(dev, vkCmdSetEvent); |
| proc_table->CmdSetEvent2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetEvent2) : |
| ext_table->KHR_synchronization2 ? VN_GDPA(dev, vkCmdSetEvent2KHR) : |
| NULL; |
| proc_table->CmdSetFrontFace = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetFrontFace) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetFrontFaceEXT) : |
| NULL; |
| proc_table->CmdSetLineStippleEXT = |
| ext_table->EXT_line_rasterization ? VN_GDPA(dev, vkCmdSetLineStippleEXT) : |
| NULL; |
| proc_table->CmdSetLineWidth = VN_GDPA(dev, vkCmdSetLineWidth); |
| proc_table->CmdSetLogicOpEXT = |
| ext_table->EXT_extended_dynamic_state2 ? VN_GDPA(dev, vkCmdSetLogicOpEXT) : |
| NULL; |
| proc_table->CmdSetPatchControlPointsEXT = |
| ext_table->EXT_extended_dynamic_state2 ? VN_GDPA(dev, vkCmdSetPatchControlPointsEXT) : |
| NULL; |
| proc_table->CmdSetPrimitiveRestartEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetPrimitiveRestartEnable) : |
| ext_table->EXT_extended_dynamic_state2 ? VN_GDPA(dev, vkCmdSetPrimitiveRestartEnableEXT) : |
| NULL; |
| proc_table->CmdSetPrimitiveTopology = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetPrimitiveTopology) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetPrimitiveTopologyEXT) : |
| NULL; |
| proc_table->CmdSetRasterizerDiscardEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetRasterizerDiscardEnable) : |
| ext_table->EXT_extended_dynamic_state2 ? VN_GDPA(dev, vkCmdSetRasterizerDiscardEnableEXT) : |
| NULL; |
| proc_table->CmdSetScissor = VN_GDPA(dev, vkCmdSetScissor); |
| proc_table->CmdSetScissorWithCount = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetScissorWithCount) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetScissorWithCountEXT) : |
| NULL; |
| proc_table->CmdSetStencilCompareMask = VN_GDPA(dev, vkCmdSetStencilCompareMask); |
| proc_table->CmdSetStencilOp = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetStencilOp) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetStencilOpEXT) : |
| NULL; |
| proc_table->CmdSetStencilReference = VN_GDPA(dev, vkCmdSetStencilReference); |
| proc_table->CmdSetStencilTestEnable = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetStencilTestEnable) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetStencilTestEnableEXT) : |
| NULL; |
| proc_table->CmdSetStencilWriteMask = VN_GDPA(dev, vkCmdSetStencilWriteMask); |
| proc_table->CmdSetViewport = VN_GDPA(dev, vkCmdSetViewport); |
| proc_table->CmdSetViewportWithCount = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdSetViewportWithCount) : |
| ext_table->EXT_extended_dynamic_state ? VN_GDPA(dev, vkCmdSetViewportWithCountEXT) : |
| NULL; |
| proc_table->CmdUpdateBuffer = VN_GDPA(dev, vkCmdUpdateBuffer); |
| proc_table->CmdWaitEvents = VN_GDPA(dev, vkCmdWaitEvents); |
| proc_table->CmdWaitEvents2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdWaitEvents2) : |
| ext_table->KHR_synchronization2 ? VN_GDPA(dev, vkCmdWaitEvents2KHR) : |
| NULL; |
| proc_table->CmdWriteTimestamp = VN_GDPA(dev, vkCmdWriteTimestamp); |
| proc_table->CmdWriteTimestamp2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCmdWriteTimestamp2) : |
| ext_table->KHR_synchronization2 ? VN_GDPA(dev, vkCmdWriteTimestamp2KHR) : |
| NULL; |
| proc_table->CreateBuffer = VN_GDPA(dev, vkCreateBuffer); |
| proc_table->CreateBufferView = VN_GDPA(dev, vkCreateBufferView); |
| proc_table->CreateCommandPool = VN_GDPA(dev, vkCreateCommandPool); |
| proc_table->CreateComputePipelines = VN_GDPA(dev, vkCreateComputePipelines); |
| proc_table->CreateDescriptorPool = VN_GDPA(dev, vkCreateDescriptorPool); |
| proc_table->CreateDescriptorSetLayout = VN_GDPA(dev, vkCreateDescriptorSetLayout); |
| proc_table->CreateDescriptorUpdateTemplate = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkCreateDescriptorUpdateTemplate) : |
| ext_table->KHR_descriptor_update_template ? VN_GDPA(dev, vkCreateDescriptorUpdateTemplateKHR) : |
| NULL; |
| proc_table->CreateEvent = VN_GDPA(dev, vkCreateEvent); |
| proc_table->CreateFence = VN_GDPA(dev, vkCreateFence); |
| proc_table->CreateFramebuffer = VN_GDPA(dev, vkCreateFramebuffer); |
| proc_table->CreateGraphicsPipelines = VN_GDPA(dev, vkCreateGraphicsPipelines); |
| proc_table->CreateImage = VN_GDPA(dev, vkCreateImage); |
| proc_table->CreateImageView = VN_GDPA(dev, vkCreateImageView); |
| proc_table->CreatePipelineCache = VN_GDPA(dev, vkCreatePipelineCache); |
| proc_table->CreatePipelineLayout = VN_GDPA(dev, vkCreatePipelineLayout); |
| proc_table->CreatePrivateDataSlot = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkCreatePrivateDataSlot) : |
| ext_table->EXT_private_data ? VN_GDPA(dev, vkCreatePrivateDataSlotEXT) : |
| NULL; |
| proc_table->CreateQueryPool = VN_GDPA(dev, vkCreateQueryPool); |
| proc_table->CreateRenderPass = VN_GDPA(dev, vkCreateRenderPass); |
| proc_table->CreateRenderPass2 = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkCreateRenderPass2) : |
| ext_table->KHR_create_renderpass2 ? VN_GDPA(dev, vkCreateRenderPass2KHR) : |
| NULL; |
| proc_table->CreateSampler = VN_GDPA(dev, vkCreateSampler); |
| proc_table->CreateSamplerYcbcrConversion = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkCreateSamplerYcbcrConversion) : |
| ext_table->KHR_sampler_ycbcr_conversion ? VN_GDPA(dev, vkCreateSamplerYcbcrConversionKHR) : |
| NULL; |
| proc_table->CreateSemaphore = VN_GDPA(dev, vkCreateSemaphore); |
| proc_table->CreateShaderModule = VN_GDPA(dev, vkCreateShaderModule); |
| proc_table->DestroyBuffer = VN_GDPA(dev, vkDestroyBuffer); |
| proc_table->DestroyBufferView = VN_GDPA(dev, vkDestroyBufferView); |
| proc_table->DestroyCommandPool = VN_GDPA(dev, vkDestroyCommandPool); |
| proc_table->DestroyDescriptorPool = VN_GDPA(dev, vkDestroyDescriptorPool); |
| proc_table->DestroyDescriptorSetLayout = VN_GDPA(dev, vkDestroyDescriptorSetLayout); |
| proc_table->DestroyDescriptorUpdateTemplate = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkDestroyDescriptorUpdateTemplate) : |
| ext_table->KHR_descriptor_update_template ? VN_GDPA(dev, vkDestroyDescriptorUpdateTemplateKHR) : |
| NULL; |
| proc_table->DestroyDevice = VN_GDPA(dev, vkDestroyDevice); |
| proc_table->DestroyEvent = VN_GDPA(dev, vkDestroyEvent); |
| proc_table->DestroyFence = VN_GDPA(dev, vkDestroyFence); |
| proc_table->DestroyFramebuffer = VN_GDPA(dev, vkDestroyFramebuffer); |
| proc_table->DestroyImage = VN_GDPA(dev, vkDestroyImage); |
| proc_table->DestroyImageView = VN_GDPA(dev, vkDestroyImageView); |
| proc_table->DestroyPipeline = VN_GDPA(dev, vkDestroyPipeline); |
| proc_table->DestroyPipelineCache = VN_GDPA(dev, vkDestroyPipelineCache); |
| proc_table->DestroyPipelineLayout = VN_GDPA(dev, vkDestroyPipelineLayout); |
| proc_table->DestroyPrivateDataSlot = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkDestroyPrivateDataSlot) : |
| ext_table->EXT_private_data ? VN_GDPA(dev, vkDestroyPrivateDataSlotEXT) : |
| NULL; |
| proc_table->DestroyQueryPool = VN_GDPA(dev, vkDestroyQueryPool); |
| proc_table->DestroyRenderPass = VN_GDPA(dev, vkDestroyRenderPass); |
| proc_table->DestroySampler = VN_GDPA(dev, vkDestroySampler); |
| proc_table->DestroySamplerYcbcrConversion = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkDestroySamplerYcbcrConversion) : |
| ext_table->KHR_sampler_ycbcr_conversion ? VN_GDPA(dev, vkDestroySamplerYcbcrConversionKHR) : |
| NULL; |
| proc_table->DestroySemaphore = VN_GDPA(dev, vkDestroySemaphore); |
| proc_table->DestroyShaderModule = VN_GDPA(dev, vkDestroyShaderModule); |
| proc_table->DeviceWaitIdle = VN_GDPA(dev, vkDeviceWaitIdle); |
| proc_table->EndCommandBuffer = VN_GDPA(dev, vkEndCommandBuffer); |
| proc_table->FlushMappedMemoryRanges = VN_GDPA(dev, vkFlushMappedMemoryRanges); |
| proc_table->FreeCommandBuffers = VN_GDPA(dev, vkFreeCommandBuffers); |
| proc_table->FreeDescriptorSets = VN_GDPA(dev, vkFreeDescriptorSets); |
| proc_table->FreeMemory = VN_GDPA(dev, vkFreeMemory); |
| proc_table->GetBufferDeviceAddress = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkGetBufferDeviceAddress) : |
| ext_table->KHR_buffer_device_address ? VN_GDPA(dev, vkGetBufferDeviceAddressKHR) : |
| NULL; |
| proc_table->GetBufferMemoryRequirements = VN_GDPA(dev, vkGetBufferMemoryRequirements); |
| proc_table->GetBufferMemoryRequirements2 = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkGetBufferMemoryRequirements2) : |
| ext_table->KHR_get_memory_requirements2 ? VN_GDPA(dev, vkGetBufferMemoryRequirements2KHR) : |
| NULL; |
| proc_table->GetBufferOpaqueCaptureAddress = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkGetBufferOpaqueCaptureAddress) : |
| ext_table->KHR_buffer_device_address ? VN_GDPA(dev, vkGetBufferOpaqueCaptureAddressKHR) : |
| NULL; |
| proc_table->GetCalibratedTimestampsEXT = |
| ext_table->EXT_calibrated_timestamps ? VN_GDPA(dev, vkGetCalibratedTimestampsEXT) : |
| NULL; |
| proc_table->GetDescriptorSetLayoutSupport = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkGetDescriptorSetLayoutSupport) : |
| ext_table->KHR_maintenance3 ? VN_GDPA(dev, vkGetDescriptorSetLayoutSupportKHR) : |
| NULL; |
| proc_table->GetDeviceBufferMemoryRequirements = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkGetDeviceBufferMemoryRequirements) : |
| ext_table->KHR_maintenance4 ? VN_GDPA(dev, vkGetDeviceBufferMemoryRequirementsKHR) : |
| NULL; |
| proc_table->GetDeviceGroupPeerMemoryFeatures = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkGetDeviceGroupPeerMemoryFeatures) : |
| ext_table->KHR_device_group ? VN_GDPA(dev, vkGetDeviceGroupPeerMemoryFeaturesKHR) : |
| NULL; |
| proc_table->GetDeviceImageMemoryRequirements = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkGetDeviceImageMemoryRequirements) : |
| ext_table->KHR_maintenance4 ? VN_GDPA(dev, vkGetDeviceImageMemoryRequirementsKHR) : |
| NULL; |
| proc_table->GetDeviceImageSparseMemoryRequirements = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkGetDeviceImageSparseMemoryRequirements) : |
| ext_table->KHR_maintenance4 ? VN_GDPA(dev, vkGetDeviceImageSparseMemoryRequirementsKHR) : |
| NULL; |
| proc_table->GetDeviceMemoryCommitment = VN_GDPA(dev, vkGetDeviceMemoryCommitment); |
| proc_table->GetDeviceMemoryOpaqueCaptureAddress = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkGetDeviceMemoryOpaqueCaptureAddress) : |
| ext_table->KHR_buffer_device_address ? VN_GDPA(dev, vkGetDeviceMemoryOpaqueCaptureAddressKHR) : |
| NULL; |
| proc_table->GetDeviceProcAddr = VN_GDPA(dev, vkGetDeviceProcAddr); |
| proc_table->GetDeviceQueue = VN_GDPA(dev, vkGetDeviceQueue); |
| proc_table->GetDeviceQueue2 = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkGetDeviceQueue2) : |
| NULL; |
| proc_table->GetEventStatus = VN_GDPA(dev, vkGetEventStatus); |
| proc_table->GetFenceFdKHR = |
| ext_table->KHR_external_fence_fd ? VN_GDPA(dev, vkGetFenceFdKHR) : |
| NULL; |
| proc_table->GetFenceStatus = VN_GDPA(dev, vkGetFenceStatus); |
| proc_table->GetImageDrmFormatModifierPropertiesEXT = |
| ext_table->EXT_image_drm_format_modifier ? VN_GDPA(dev, vkGetImageDrmFormatModifierPropertiesEXT) : |
| NULL; |
| proc_table->GetImageMemoryRequirements = VN_GDPA(dev, vkGetImageMemoryRequirements); |
| proc_table->GetImageMemoryRequirements2 = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkGetImageMemoryRequirements2) : |
| ext_table->KHR_get_memory_requirements2 ? VN_GDPA(dev, vkGetImageMemoryRequirements2KHR) : |
| NULL; |
| proc_table->GetImageSparseMemoryRequirements = VN_GDPA(dev, vkGetImageSparseMemoryRequirements); |
| proc_table->GetImageSparseMemoryRequirements2 = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkGetImageSparseMemoryRequirements2) : |
| ext_table->KHR_get_memory_requirements2 ? VN_GDPA(dev, vkGetImageSparseMemoryRequirements2KHR) : |
| NULL; |
| proc_table->GetImageSubresourceLayout = VN_GDPA(dev, vkGetImageSubresourceLayout); |
| proc_table->GetMemoryFdKHR = |
| ext_table->KHR_external_memory_fd ? VN_GDPA(dev, vkGetMemoryFdKHR) : |
| NULL; |
| proc_table->GetMemoryFdPropertiesKHR = |
| ext_table->KHR_external_memory_fd ? VN_GDPA(dev, vkGetMemoryFdPropertiesKHR) : |
| NULL; |
| proc_table->GetPipelineCacheData = VN_GDPA(dev, vkGetPipelineCacheData); |
| proc_table->GetPrivateData = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkGetPrivateData) : |
| ext_table->EXT_private_data ? VN_GDPA(dev, vkGetPrivateDataEXT) : |
| NULL; |
| proc_table->GetQueryPoolResults = VN_GDPA(dev, vkGetQueryPoolResults); |
| proc_table->GetRenderAreaGranularity = VN_GDPA(dev, vkGetRenderAreaGranularity); |
| proc_table->GetSemaphoreCounterValue = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkGetSemaphoreCounterValue) : |
| ext_table->KHR_timeline_semaphore ? VN_GDPA(dev, vkGetSemaphoreCounterValueKHR) : |
| NULL; |
| proc_table->GetSemaphoreFdKHR = |
| ext_table->KHR_external_semaphore_fd ? VN_GDPA(dev, vkGetSemaphoreFdKHR) : |
| NULL; |
| proc_table->ImportFenceFdKHR = |
| ext_table->KHR_external_fence_fd ? VN_GDPA(dev, vkImportFenceFdKHR) : |
| NULL; |
| proc_table->ImportSemaphoreFdKHR = |
| ext_table->KHR_external_semaphore_fd ? VN_GDPA(dev, vkImportSemaphoreFdKHR) : |
| NULL; |
| proc_table->InvalidateMappedMemoryRanges = VN_GDPA(dev, vkInvalidateMappedMemoryRanges); |
| proc_table->MapMemory = VN_GDPA(dev, vkMapMemory); |
| proc_table->MergePipelineCaches = VN_GDPA(dev, vkMergePipelineCaches); |
| proc_table->QueueBindSparse = VN_GDPA(dev, vkQueueBindSparse); |
| proc_table->QueueSubmit = VN_GDPA(dev, vkQueueSubmit); |
| proc_table->QueueSubmit2 = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkQueueSubmit2) : |
| ext_table->KHR_synchronization2 ? VN_GDPA(dev, vkQueueSubmit2KHR) : |
| NULL; |
| proc_table->QueueWaitIdle = VN_GDPA(dev, vkQueueWaitIdle); |
| proc_table->ResetCommandBuffer = VN_GDPA(dev, vkResetCommandBuffer); |
| proc_table->ResetCommandPool = VN_GDPA(dev, vkResetCommandPool); |
| proc_table->ResetDescriptorPool = VN_GDPA(dev, vkResetDescriptorPool); |
| proc_table->ResetEvent = VN_GDPA(dev, vkResetEvent); |
| proc_table->ResetFences = VN_GDPA(dev, vkResetFences); |
| proc_table->ResetQueryPool = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkResetQueryPool) : |
| ext_table->EXT_host_query_reset ? VN_GDPA(dev, vkResetQueryPoolEXT) : |
| NULL; |
| proc_table->SetEvent = VN_GDPA(dev, vkSetEvent); |
| proc_table->SetPrivateData = |
| api_version >= VK_API_VERSION_1_3 ? VN_GDPA(dev, vkSetPrivateData) : |
| ext_table->EXT_private_data ? VN_GDPA(dev, vkSetPrivateDataEXT) : |
| NULL; |
| proc_table->SignalSemaphore = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkSignalSemaphore) : |
| ext_table->KHR_timeline_semaphore ? VN_GDPA(dev, vkSignalSemaphoreKHR) : |
| NULL; |
| proc_table->TrimCommandPool = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkTrimCommandPool) : |
| ext_table->KHR_maintenance1 ? VN_GDPA(dev, vkTrimCommandPoolKHR) : |
| NULL; |
| proc_table->UnmapMemory = VN_GDPA(dev, vkUnmapMemory); |
| proc_table->UpdateDescriptorSetWithTemplate = |
| api_version >= VK_API_VERSION_1_1 ? VN_GDPA(dev, vkUpdateDescriptorSetWithTemplate) : |
| ext_table->KHR_descriptor_update_template ? VN_GDPA(dev, vkUpdateDescriptorSetWithTemplateKHR) : |
| NULL; |
| proc_table->UpdateDescriptorSets = VN_GDPA(dev, vkUpdateDescriptorSets); |
| proc_table->WaitForFences = VN_GDPA(dev, vkWaitForFences); |
| proc_table->WaitSemaphores = |
| api_version >= VK_API_VERSION_1_2 ? VN_GDPA(dev, vkWaitSemaphores) : |
| ext_table->KHR_timeline_semaphore ? VN_GDPA(dev, vkWaitSemaphoresKHR) : |
| NULL; |
| #undef VN_GDPA |
| } |
| |
| #endif /* VN_PROTOCOL_RENDERER_UTIL_H */ |