• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
3 */
4virtual PFN_vkVoidFunction	getDeviceProcAddr								(VkDevice device, const char* pName) const = 0;
5virtual void				destroyDevice									(VkDevice device, const VkAllocationCallbacks* pAllocator) const = 0;
6virtual void				getDeviceQueue									(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue* pQueue) const = 0;
7virtual VkResult			queueSubmit										(VkQueue queue, uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence) const = 0;
8virtual VkResult			queueWaitIdle									(VkQueue queue) const = 0;
9virtual VkResult			deviceWaitIdle									(VkDevice device) const = 0;
10virtual VkResult			allocateMemory									(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory) const = 0;
11virtual void				freeMemory										(VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator) const = 0;
12virtual VkResult			mapMemory										(VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData) const = 0;
13virtual void				unmapMemory										(VkDevice device, VkDeviceMemory memory) const = 0;
14virtual VkResult			flushMappedMemoryRanges							(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const = 0;
15virtual VkResult			invalidateMappedMemoryRanges					(VkDevice device, uint32_t memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const = 0;
16virtual void				getDeviceMemoryCommitment						(VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes) const = 0;
17virtual VkResult			bindBufferMemory								(VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset) const = 0;
18virtual VkResult			bindImageMemory									(VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset) const = 0;
19virtual void				getBufferMemoryRequirements						(VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements) const = 0;
20virtual void				getImageMemoryRequirements						(VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements) const = 0;
21virtual void				getImageSparseMemoryRequirements				(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const = 0;
22virtual VkResult			queueBindSparse									(VkQueue queue, uint32_t bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence) const = 0;
23virtual VkResult			createFence										(VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const = 0;
24virtual void				destroyFence									(VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator) const = 0;
25virtual VkResult			resetFences										(VkDevice device, uint32_t fenceCount, const VkFence* pFences) const = 0;
26virtual VkResult			getFenceStatus									(VkDevice device, VkFence fence) const = 0;
27virtual VkResult			waitForFences									(VkDevice device, uint32_t fenceCount, const VkFence* pFences, VkBool32 waitAll, uint64_t timeout) const = 0;
28virtual VkResult			createSemaphore									(VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore) const = 0;
29virtual void				destroySemaphore								(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator) const = 0;
30virtual VkResult			createEvent										(VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent) const = 0;
31virtual void				destroyEvent									(VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator) const = 0;
32virtual VkResult			getEventStatus									(VkDevice device, VkEvent event) const = 0;
33virtual VkResult			setEvent										(VkDevice device, VkEvent event) const = 0;
34virtual VkResult			resetEvent										(VkDevice device, VkEvent event) const = 0;
35virtual VkResult			createQueryPool									(VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool) const = 0;
36virtual void				destroyQueryPool								(VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator) const = 0;
37virtual VkResult			getQueryPoolResults								(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, size_t dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags) const = 0;
38virtual VkResult			createBuffer									(VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer) const = 0;
39virtual void				destroyBuffer									(VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator) const = 0;
40virtual VkResult			createBufferView								(VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView) const = 0;
41virtual void				destroyBufferView								(VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator) const = 0;
42virtual VkResult			createImage										(VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage) const = 0;
43virtual void				destroyImage									(VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator) const = 0;
44virtual void				getImageSubresourceLayout						(VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout) const = 0;
45virtual VkResult			createImageView									(VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView) const = 0;
46virtual void				destroyImageView								(VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator) const = 0;
47virtual VkResult			createShaderModule								(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule) const = 0;
48virtual void				destroyShaderModule								(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator) const = 0;
49virtual VkResult			createPipelineCache								(VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache) const = 0;
50virtual void				destroyPipelineCache							(VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator) const = 0;
51virtual VkResult			getPipelineCacheData							(VkDevice device, VkPipelineCache pipelineCache, size_t* pDataSize, void* pData) const = 0;
52virtual VkResult			mergePipelineCaches								(VkDevice device, VkPipelineCache dstCache, uint32_t srcCacheCount, const VkPipelineCache* pSrcCaches) const = 0;
53virtual VkResult			createGraphicsPipelines							(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
54virtual VkResult			createComputePipelines							(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
55virtual void				destroyPipeline									(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator) const = 0;
56virtual VkResult			createPipelineLayout							(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout) const = 0;
57virtual void				destroyPipelineLayout							(VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator) const = 0;
58virtual VkResult			createSampler									(VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler) const = 0;
59virtual void				destroySampler									(VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator) const = 0;
60virtual VkResult			createDescriptorSetLayout						(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout) const = 0;
61virtual void				destroyDescriptorSetLayout						(VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator) const = 0;
62virtual VkResult			createDescriptorPool							(VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool) const = 0;
63virtual void				destroyDescriptorPool							(VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator) const = 0;
64virtual VkResult			resetDescriptorPool								(VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags) const = 0;
65virtual VkResult			allocateDescriptorSets							(VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets) const = 0;
66virtual VkResult			freeDescriptorSets								(VkDevice device, VkDescriptorPool descriptorPool, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets) const = 0;
67virtual void				updateDescriptorSets							(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies) const = 0;
68virtual VkResult			createFramebuffer								(VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer) const = 0;
69virtual void				destroyFramebuffer								(VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator) const = 0;
70virtual VkResult			createRenderPass								(VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) const = 0;
71virtual void				destroyRenderPass								(VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator) const = 0;
72virtual void				getRenderAreaGranularity						(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity) const = 0;
73virtual VkResult			createCommandPool								(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool) const = 0;
74virtual void				destroyCommandPool								(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator) const = 0;
75virtual VkResult			resetCommandPool								(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags) const = 0;
76virtual VkResult			allocateCommandBuffers							(VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers) const = 0;
77virtual void				freeCommandBuffers								(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers) const = 0;
78virtual VkResult			beginCommandBuffer								(VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo) const = 0;
79virtual VkResult			endCommandBuffer								(VkCommandBuffer commandBuffer) const = 0;
80virtual VkResult			resetCommandBuffer								(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) const = 0;
81virtual void				cmdBindPipeline									(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline) const = 0;
82virtual void				cmdSetViewport									(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewport* pViewports) const = 0;
83virtual void				cmdSetScissor									(VkCommandBuffer commandBuffer, uint32_t firstScissor, uint32_t scissorCount, const VkRect2D* pScissors) const = 0;
84virtual void				cmdSetLineWidth									(VkCommandBuffer commandBuffer, float lineWidth) const = 0;
85virtual void				cmdSetDepthBias									(VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor) const = 0;
86virtual void				cmdSetBlendConstants							(VkCommandBuffer commandBuffer, const float blendConstants[4]) const = 0;
87virtual void				cmdSetDepthBounds								(VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds) const = 0;
88virtual void				cmdSetStencilCompareMask						(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t compareMask) const = 0;
89virtual void				cmdSetStencilWriteMask							(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t writeMask) const = 0;
90virtual void				cmdSetStencilReference							(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, uint32_t reference) const = 0;
91virtual void				cmdBindDescriptorSets							(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t firstSet, uint32_t descriptorSetCount, const VkDescriptorSet* pDescriptorSets, uint32_t dynamicOffsetCount, const uint32_t* pDynamicOffsets) const = 0;
92virtual void				cmdBindIndexBuffer								(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType) const = 0;
93virtual void				cmdBindVertexBuffers							(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets) const = 0;
94virtual void				cmdDraw											(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) const = 0;
95virtual void				cmdDrawIndexed									(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance) const = 0;
96virtual void				cmdDrawIndirect									(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride) const = 0;
97virtual void				cmdDrawIndexedIndirect							(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride) const = 0;
98virtual void				cmdDispatch										(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ) const = 0;
99virtual void				cmdDispatchIndirect								(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset) const = 0;
100virtual void				cmdCopyBuffer									(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions) const = 0;
101virtual void				cmdCopyImage									(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions) const = 0;
102virtual void				cmdBlitImage									(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageBlit* pRegions, VkFilter filter) const = 0;
103virtual void				cmdCopyBufferToImage							(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkBufferImageCopy* pRegions) const = 0;
104virtual void				cmdCopyImageToBuffer							(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferImageCopy* pRegions) const = 0;
105virtual void				cmdUpdateBuffer									(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData) const = 0;
106virtual void				cmdFillBuffer									(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data) const = 0;
107virtual void				cmdClearColorImage								(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, uint32_t rangeCount, const VkImageSubresourceRange* pRanges) const = 0;
108virtual void				cmdClearDepthStencilImage						(VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, uint32_t rangeCount, const VkImageSubresourceRange* pRanges) const = 0;
109virtual void				cmdClearAttachments								(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkClearAttachment* pAttachments, uint32_t rectCount, const VkClearRect* pRects) const = 0;
110virtual void				cmdResolveImage									(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions) const = 0;
111virtual void				cmdSetEvent										(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const = 0;
112virtual void				cmdResetEvent									(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const = 0;
113virtual void				cmdWaitEvents									(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const = 0;
114virtual void				cmdPipelineBarrier								(VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const = 0;
115virtual void				cmdBeginQuery									(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags) const = 0;
116virtual void				cmdEndQuery										(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query) const = 0;
117virtual void				cmdResetQueryPool								(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount) const = 0;
118virtual void				cmdWriteTimestamp								(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t query) const = 0;
119virtual void				cmdCopyQueryPoolResults							(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags) const = 0;
120virtual void				cmdPushConstants								(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues) const = 0;
121virtual void				cmdBeginRenderPass								(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents) const = 0;
122virtual void				cmdNextSubpass									(VkCommandBuffer commandBuffer, VkSubpassContents contents) const = 0;
123virtual void				cmdEndRenderPass								(VkCommandBuffer commandBuffer) const = 0;
124virtual void				cmdExecuteCommands								(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer* pCommandBuffers) const = 0;
125virtual VkResult			bindBufferMemory2								(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos) const = 0;
126virtual VkResult			bindImageMemory2								(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos) const = 0;
127virtual void				getDeviceGroupPeerMemoryFeatures				(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) const = 0;
128virtual void				cmdSetDeviceMask								(VkCommandBuffer commandBuffer, uint32_t deviceMask) const = 0;
129virtual void				cmdDispatchBase									(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ) const = 0;
130virtual void				getImageMemoryRequirements2						(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
131virtual void				getBufferMemoryRequirements2					(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
132virtual void				getImageSparseMemoryRequirements2				(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements) const = 0;
133virtual void				trimCommandPool									(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags) const = 0;
134virtual void				getDeviceQueue2									(VkDevice device, const VkDeviceQueueInfo2* pQueueInfo, VkQueue* pQueue) const = 0;
135virtual VkResult			createSamplerYcbcrConversion					(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion) const = 0;
136virtual void				destroySamplerYcbcrConversion					(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator) const = 0;
137virtual VkResult			createDescriptorUpdateTemplate					(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate) const = 0;
138virtual void				destroyDescriptorUpdateTemplate					(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) const = 0;
139virtual void				updateDescriptorSetWithTemplate					(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData) const = 0;
140virtual void				getDescriptorSetLayoutSupport					(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport) const = 0;
141virtual void				cmdDrawIndirectCount							(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) const = 0;
142virtual void				cmdDrawIndexedIndirectCount						(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) const = 0;
143virtual VkResult			createRenderPass2								(VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) const = 0;
144virtual void				cmdBeginRenderPass2								(VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, const VkSubpassBeginInfo* pSubpassBeginInfo) const = 0;
145virtual void				cmdNextSubpass2									(VkCommandBuffer commandBuffer, const VkSubpassBeginInfo* pSubpassBeginInfo, const VkSubpassEndInfo* pSubpassEndInfo) const = 0;
146virtual void				cmdEndRenderPass2								(VkCommandBuffer commandBuffer, const VkSubpassEndInfo* pSubpassEndInfo) const = 0;
147virtual void				resetQueryPool									(VkDevice device, VkQueryPool queryPool, uint32_t firstQuery, uint32_t queryCount) const = 0;
148virtual VkResult			getSemaphoreCounterValue						(VkDevice device, VkSemaphore semaphore, uint64_t* pValue) const = 0;
149virtual VkResult			waitSemaphores									(VkDevice device, const VkSemaphoreWaitInfo* pWaitInfo, uint64_t timeout) const = 0;
150virtual VkResult			signalSemaphore									(VkDevice device, const VkSemaphoreSignalInfo* pSignalInfo) const = 0;
151virtual VkDeviceAddress		getBufferDeviceAddress							(VkDevice device, const VkBufferDeviceAddressInfo* pInfo) const = 0;
152virtual uint64_t			getBufferOpaqueCaptureAddress					(VkDevice device, const VkBufferDeviceAddressInfo* pInfo) const = 0;
153virtual uint64_t			getDeviceMemoryOpaqueCaptureAddress				(VkDevice device, const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo) const = 0;
154virtual VkResult			createSwapchainKHR								(VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain) const = 0;
155virtual void				destroySwapchainKHR								(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) const = 0;
156virtual VkResult			getSwapchainImagesKHR							(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pSwapchainImageCount, VkImage* pSwapchainImages) const = 0;
157virtual VkResult			acquireNextImageKHR								(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout, VkSemaphore semaphore, VkFence fence, uint32_t* pImageIndex) const = 0;
158virtual VkResult			queuePresentKHR									(VkQueue queue, const VkPresentInfoKHR* pPresentInfo) const = 0;
159virtual VkResult			getDeviceGroupPresentCapabilitiesKHR			(VkDevice device, VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities) const = 0;
160virtual VkResult			getDeviceGroupSurfacePresentModesKHR			(VkDevice device, VkSurfaceKHR surface, VkDeviceGroupPresentModeFlagsKHR* pModes) const = 0;
161virtual VkResult			acquireNextImage2KHR							(VkDevice device, const VkAcquireNextImageInfoKHR* pAcquireInfo, uint32_t* pImageIndex) const = 0;
162virtual VkResult			createSharedSwapchainsKHR						(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains) const = 0;
163virtual void				cmdBeginRenderingKHR							(VkCommandBuffer commandBuffer, const VkRenderingInfoKHR* pRenderingInfo) const = 0;
164virtual void				cmdEndRenderingKHR								(VkCommandBuffer commandBuffer) const = 0;
165virtual VkResult			getMemoryFdKHR									(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int* pFd) const = 0;
166virtual VkResult			getMemoryFdPropertiesKHR						(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, int fd, VkMemoryFdPropertiesKHR* pMemoryFdProperties) const = 0;
167virtual VkResult			importSemaphoreFdKHR							(VkDevice device, const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo) const = 0;
168virtual VkResult			getSemaphoreFdKHR								(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int* pFd) const = 0;
169virtual void				cmdPushDescriptorSetKHR							(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) const = 0;
170virtual void				cmdPushDescriptorSetWithTemplateKHR				(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplate descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData) const = 0;
171virtual VkResult			getSwapchainStatusKHR							(VkDevice device, VkSwapchainKHR swapchain) const = 0;
172virtual VkResult			importFenceFdKHR								(VkDevice device, const VkImportFenceFdInfoKHR* pImportFenceFdInfo) const = 0;
173virtual VkResult			getFenceFdKHR									(VkDevice device, const VkFenceGetFdInfoKHR* pGetFdInfo, int* pFd) const = 0;
174virtual VkResult			acquireProfilingLockKHR							(VkDevice device, const VkAcquireProfilingLockInfoKHR* pInfo) const = 0;
175virtual void				releaseProfilingLockKHR							(VkDevice device) const = 0;
176virtual void				cmdSetFragmentShadingRateKHR					(VkCommandBuffer commandBuffer, const VkExtent2D* pFragmentSize, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) const = 0;
177virtual VkResult			waitForPresentKHR								(VkDevice device, VkSwapchainKHR swapchain, uint64_t presentId, uint64_t timeout) const = 0;
178virtual VkResult			createDeferredOperationKHR						(VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation) const = 0;
179virtual void				destroyDeferredOperationKHR						(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator) const = 0;
180virtual uint32_t			getDeferredOperationMaxConcurrencyKHR			(VkDevice device, VkDeferredOperationKHR operation) const = 0;
181virtual VkResult			getDeferredOperationResultKHR					(VkDevice device, VkDeferredOperationKHR operation) const = 0;
182virtual VkResult			deferredOperationJoinKHR						(VkDevice device, VkDeferredOperationKHR operation) const = 0;
183virtual VkResult			getPipelineExecutablePropertiesKHR				(VkDevice device, const VkPipelineInfoKHR* pPipelineInfo, uint32_t* pExecutableCount, VkPipelineExecutablePropertiesKHR* pProperties) const = 0;
184virtual VkResult			getPipelineExecutableStatisticsKHR				(VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pStatisticCount, VkPipelineExecutableStatisticKHR* pStatistics) const = 0;
185virtual VkResult			getPipelineExecutableInternalRepresentationsKHR	(VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations) const = 0;
186virtual void				cmdSetEvent2KHR									(VkCommandBuffer commandBuffer, VkEvent event, const VkDependencyInfoKHR* pDependencyInfo) const = 0;
187virtual void				cmdResetEvent2KHR								(VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags2KHR stageMask) const = 0;
188virtual void				cmdWaitEvents2KHR								(VkCommandBuffer commandBuffer, uint32_t eventCount, const VkEvent* pEvents, const VkDependencyInfoKHR* pDependencyInfos) const = 0;
189virtual void				cmdPipelineBarrier2KHR							(VkCommandBuffer commandBuffer, const VkDependencyInfoKHR* pDependencyInfo) const = 0;
190virtual void				cmdWriteTimestamp2KHR							(VkCommandBuffer commandBuffer, VkPipelineStageFlags2KHR stage, VkQueryPool queryPool, uint32_t query) const = 0;
191virtual VkResult			queueSubmit2KHR									(VkQueue queue, uint32_t submitCount, const VkSubmitInfo2KHR* pSubmits, VkFence fence) const = 0;
192virtual void				cmdWriteBufferMarker2AMD						(VkCommandBuffer commandBuffer, VkPipelineStageFlags2KHR stage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker) const = 0;
193virtual void				getQueueCheckpointData2NV						(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData) const = 0;
194virtual void				cmdCopyBuffer2KHR								(VkCommandBuffer commandBuffer, const VkCopyBufferInfo2KHR* pCopyBufferInfo) const = 0;
195virtual void				cmdCopyImage2KHR								(VkCommandBuffer commandBuffer, const VkCopyImageInfo2KHR* pCopyImageInfo) const = 0;
196virtual void				cmdCopyBufferToImage2KHR						(VkCommandBuffer commandBuffer, const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo) const = 0;
197virtual void				cmdCopyImageToBuffer2KHR						(VkCommandBuffer commandBuffer, const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo) const = 0;
198virtual void				cmdBlitImage2KHR								(VkCommandBuffer commandBuffer, const VkBlitImageInfo2KHR* pBlitImageInfo) const = 0;
199virtual void				cmdResolveImage2KHR								(VkCommandBuffer commandBuffer, const VkResolveImageInfo2KHR* pResolveImageInfo) const = 0;
200virtual void				getDeviceBufferMemoryRequirementsKHR			(VkDevice device, const VkDeviceBufferMemoryRequirementsKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
201virtual void				getDeviceImageMemoryRequirementsKHR				(VkDevice device, const VkDeviceImageMemoryRequirementsKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
202virtual void				getDeviceImageSparseMemoryRequirementsKHR		(VkDevice device, const VkDeviceImageMemoryRequirementsKHR* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements) const = 0;
203virtual VkResult			debugMarkerSetObjectTagEXT						(VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo) const = 0;
204virtual VkResult			debugMarkerSetObjectNameEXT						(VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo) const = 0;
205virtual void				cmdDebugMarkerBeginEXT							(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const = 0;
206virtual void				cmdDebugMarkerEndEXT							(VkCommandBuffer commandBuffer) const = 0;
207virtual void				cmdDebugMarkerInsertEXT							(VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const = 0;
208virtual void				cmdBindTransformFeedbackBuffersEXT				(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes) const = 0;
209virtual void				cmdBeginTransformFeedbackEXT					(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets) const = 0;
210virtual void				cmdEndTransformFeedbackEXT						(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer* pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets) const = 0;
211virtual void				cmdBeginQueryIndexedEXT							(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags flags, uint32_t index) const = 0;
212virtual void				cmdEndQueryIndexedEXT							(VkCommandBuffer commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index) const = 0;
213virtual void				cmdDrawIndirectByteCountEXT						(VkCommandBuffer commandBuffer, uint32_t instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride) const = 0;
214virtual VkResult			createCuModuleNVX								(VkDevice device, const VkCuModuleCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCuModuleNVX* pModule) const = 0;
215virtual VkResult			createCuFunctionNVX								(VkDevice device, const VkCuFunctionCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCuFunctionNVX* pFunction) const = 0;
216virtual void				destroyCuModuleNVX								(VkDevice device, VkCuModuleNVX module, const VkAllocationCallbacks* pAllocator) const = 0;
217virtual void				destroyCuFunctionNVX							(VkDevice device, VkCuFunctionNVX function, const VkAllocationCallbacks* pAllocator) const = 0;
218virtual void				cmdCuLaunchKernelNVX							(VkCommandBuffer commandBuffer, const VkCuLaunchInfoNVX* pLaunchInfo) const = 0;
219virtual uint32_t			getImageViewHandleNVX							(VkDevice device, const VkImageViewHandleInfoNVX* pInfo) const = 0;
220virtual VkResult			getImageViewAddressNVX							(VkDevice device, VkImageView imageView, VkImageViewAddressPropertiesNVX* pProperties) const = 0;
221virtual void				cmdDrawIndirectCountAMD							(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) const = 0;
222virtual void				cmdDrawIndexedIndirectCountAMD					(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) const = 0;
223virtual VkResult			getShaderInfoAMD								(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t* pInfoSize, void* pInfo) const = 0;
224virtual void				cmdBeginConditionalRenderingEXT					(VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin) const = 0;
225virtual void				cmdEndConditionalRenderingEXT					(VkCommandBuffer commandBuffer) const = 0;
226virtual void				cmdSetViewportWScalingNV						(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportWScalingNV* pViewportWScalings) const = 0;
227virtual VkResult			displayPowerControlEXT							(VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo) const = 0;
228virtual VkResult			registerDeviceEventEXT							(VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const = 0;
229virtual VkResult			registerDisplayEventEXT							(VkDevice device, VkDisplayKHR display, const VkDisplayEventInfoEXT* pDisplayEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const = 0;
230virtual VkResult			getSwapchainCounterEXT							(VkDevice device, VkSwapchainKHR swapchain, VkSurfaceCounterFlagBitsEXT counter, uint64_t* pCounterValue) const = 0;
231virtual VkResult			getRefreshCycleDurationGOOGLE					(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) const = 0;
232virtual VkResult			getPastPresentationTimingGOOGLE					(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) const = 0;
233virtual void				cmdSetDiscardRectangleEXT						(VkCommandBuffer commandBuffer, uint32_t firstDiscardRectangle, uint32_t discardRectangleCount, const VkRect2D* pDiscardRectangles) const = 0;
234virtual void				setHdrMetadataEXT								(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR* pSwapchains, const VkHdrMetadataEXT* pMetadata) const = 0;
235virtual VkResult			setDebugUtilsObjectNameEXT						(VkDevice device, const VkDebugUtilsObjectNameInfoEXT* pNameInfo) const = 0;
236virtual VkResult			setDebugUtilsObjectTagEXT						(VkDevice device, const VkDebugUtilsObjectTagInfoEXT* pTagInfo) const = 0;
237virtual void				queueBeginDebugUtilsLabelEXT					(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo) const = 0;
238virtual void				queueEndDebugUtilsLabelEXT						(VkQueue queue) const = 0;
239virtual void				queueInsertDebugUtilsLabelEXT					(VkQueue queue, const VkDebugUtilsLabelEXT* pLabelInfo) const = 0;
240virtual void				cmdBeginDebugUtilsLabelEXT						(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo) const = 0;
241virtual void				cmdEndDebugUtilsLabelEXT						(VkCommandBuffer commandBuffer) const = 0;
242virtual void				cmdInsertDebugUtilsLabelEXT						(VkCommandBuffer commandBuffer, const VkDebugUtilsLabelEXT* pLabelInfo) const = 0;
243virtual void				cmdSetSampleLocationsEXT						(VkCommandBuffer commandBuffer, const VkSampleLocationsInfoEXT* pSampleLocationsInfo) const = 0;
244virtual VkResult			getImageDrmFormatModifierPropertiesEXT			(VkDevice device, VkImage image, VkImageDrmFormatModifierPropertiesEXT* pProperties) const = 0;
245virtual VkResult			createValidationCacheEXT						(VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkValidationCacheEXT* pValidationCache) const = 0;
246virtual void				destroyValidationCacheEXT						(VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator) const = 0;
247virtual VkResult			mergeValidationCachesEXT						(VkDevice device, VkValidationCacheEXT dstCache, uint32_t srcCacheCount, const VkValidationCacheEXT* pSrcCaches) const = 0;
248virtual VkResult			getValidationCacheDataEXT						(VkDevice device, VkValidationCacheEXT validationCache, size_t* pDataSize, void* pData) const = 0;
249virtual void				cmdBindShadingRateImageNV						(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) const = 0;
250virtual void				cmdSetViewportShadingRatePaletteNV				(VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes) const = 0;
251virtual void				cmdSetCoarseSampleOrderNV						(VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, uint32_t customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders) const = 0;
252virtual VkResult			createAccelerationStructureNV					(VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure) const = 0;
253virtual void				destroyAccelerationStructureNV					(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator) const = 0;
254virtual void				getAccelerationStructureMemoryRequirementsNV	(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements) const = 0;
255virtual VkResult			bindAccelerationStructureMemoryNV				(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos) const = 0;
256virtual void				cmdBuildAccelerationStructureNV					(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset) const = 0;
257virtual void				cmdCopyAccelerationStructureNV					(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeKHR mode) const = 0;
258virtual void				cmdTraceRaysNV									(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth) const = 0;
259virtual VkResult			createRayTracingPipelinesNV						(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
260virtual VkResult			getRayTracingShaderGroupHandlesKHR				(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData) const = 0;
261virtual VkResult			getRayTracingShaderGroupHandlesNV				(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData) const = 0;
262virtual VkResult			getAccelerationStructureHandleNV				(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData) const = 0;
263virtual void				cmdWriteAccelerationStructuresPropertiesNV		(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) const = 0;
264virtual VkResult			compileDeferredNV								(VkDevice device, VkPipeline pipeline, uint32_t shader) const = 0;
265virtual VkResult			getMemoryHostPointerPropertiesEXT				(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties) const = 0;
266virtual void				cmdWriteBufferMarkerAMD							(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker) const = 0;
267virtual VkResult			getCalibratedTimestampsEXT						(VkDevice device, uint32_t timestampCount, const VkCalibratedTimestampInfoEXT* pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation) const = 0;
268virtual void				cmdDrawMeshTasksNV								(VkCommandBuffer commandBuffer, uint32_t taskCount, uint32_t firstTask) const = 0;
269virtual void				cmdDrawMeshTasksIndirectNV						(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride) const = 0;
270virtual void				cmdDrawMeshTasksIndirectCountNV					(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride) const = 0;
271virtual void				cmdSetExclusiveScissorNV						(VkCommandBuffer commandBuffer, uint32_t firstExclusiveScissor, uint32_t exclusiveScissorCount, const VkRect2D* pExclusiveScissors) const = 0;
272virtual void				cmdSetCheckpointNV								(VkCommandBuffer commandBuffer, const void* pCheckpointMarker) const = 0;
273virtual void				getQueueCheckpointDataNV						(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData) const = 0;
274virtual VkResult			initializePerformanceApiINTEL					(VkDevice device, const VkInitializePerformanceApiInfoINTEL* pInitializeInfo) const = 0;
275virtual void				uninitializePerformanceApiINTEL					(VkDevice device) const = 0;
276virtual VkResult			cmdSetPerformanceMarkerINTEL					(VkCommandBuffer commandBuffer, const VkPerformanceMarkerInfoINTEL* pMarkerInfo) const = 0;
277virtual VkResult			cmdSetPerformanceStreamMarkerINTEL				(VkCommandBuffer commandBuffer, const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo) const = 0;
278virtual VkResult			cmdSetPerformanceOverrideINTEL					(VkCommandBuffer commandBuffer, const VkPerformanceOverrideInfoINTEL* pOverrideInfo) const = 0;
279virtual VkResult			acquirePerformanceConfigurationINTEL			(VkDevice device, const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo, VkPerformanceConfigurationINTEL* pConfiguration) const = 0;
280virtual VkResult			releasePerformanceConfigurationINTEL			(VkDevice device, VkPerformanceConfigurationINTEL configuration) const = 0;
281virtual VkResult			queueSetPerformanceConfigurationINTEL			(VkQueue queue, VkPerformanceConfigurationINTEL configuration) const = 0;
282virtual VkResult			getPerformanceParameterINTEL					(VkDevice device, VkPerformanceParameterTypeINTEL parameter, VkPerformanceValueINTEL* pValue) const = 0;
283virtual void				setLocalDimmingAMD								(VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable) const = 0;
284virtual VkDeviceAddress		getBufferDeviceAddressEXT						(VkDevice device, const VkBufferDeviceAddressInfo* pInfo) const = 0;
285virtual void				cmdSetLineStippleEXT							(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor, uint16_t lineStipplePattern) const = 0;
286virtual void				cmdSetCullModeEXT								(VkCommandBuffer commandBuffer, VkCullModeFlags cullMode) const = 0;
287virtual void				cmdSetFrontFaceEXT								(VkCommandBuffer commandBuffer, VkFrontFace frontFace) const = 0;
288virtual void				cmdSetPrimitiveTopologyEXT						(VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology) const = 0;
289virtual void				cmdSetViewportWithCountEXT						(VkCommandBuffer commandBuffer, uint32_t viewportCount, const VkViewport* pViewports) const = 0;
290virtual void				cmdSetScissorWithCountEXT						(VkCommandBuffer commandBuffer, uint32_t scissorCount, const VkRect2D* pScissors) const = 0;
291virtual void				cmdBindVertexBuffers2EXT						(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes, const VkDeviceSize* pStrides) const = 0;
292virtual void				cmdSetDepthTestEnableEXT						(VkCommandBuffer commandBuffer, VkBool32 depthTestEnable) const = 0;
293virtual void				cmdSetDepthWriteEnableEXT						(VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable) const = 0;
294virtual void				cmdSetDepthCompareOpEXT							(VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp) const = 0;
295virtual void				cmdSetDepthBoundsTestEnableEXT					(VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable) const = 0;
296virtual void				cmdSetStencilTestEnableEXT						(VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable) const = 0;
297virtual void				cmdSetStencilOpEXT								(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp) const = 0;
298virtual void				getGeneratedCommandsMemoryRequirementsNV		(VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
299virtual void				cmdPreprocessGeneratedCommandsNV				(VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const = 0;
300virtual void				cmdExecuteGeneratedCommandsNV					(VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const = 0;
301virtual void				cmdBindPipelineShaderGroupNV					(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex) const = 0;
302virtual VkResult			createIndirectCommandsLayoutNV					(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) const = 0;
303virtual void				destroyIndirectCommandsLayoutNV					(VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const = 0;
304virtual VkResult			createPrivateDataSlotEXT						(VkDevice device, const VkPrivateDataSlotCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlotEXT* pPrivateDataSlot) const = 0;
305virtual void				destroyPrivateDataSlotEXT						(VkDevice device, VkPrivateDataSlotEXT privateDataSlot, const VkAllocationCallbacks* pAllocator) const = 0;
306virtual VkResult			setPrivateDataEXT								(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t data) const = 0;
307virtual void				getPrivateDataEXT								(VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlotEXT privateDataSlot, uint64_t* pData) const = 0;
308virtual void				cmdSetFragmentShadingRateEnumNV					(VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) const = 0;
309virtual void				cmdSetVertexInputEXT							(VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions) const = 0;
310virtual VkResult			getDeviceSubpassShadingMaxWorkgroupSizeHUAWEI	(VkDevice device, VkRenderPass renderpass, VkExtent2D* pMaxWorkgroupSize) const = 0;
311virtual void				cmdSubpassShadingHUAWEI							(VkCommandBuffer commandBuffer) const = 0;
312virtual void				cmdBindInvocationMaskHUAWEI						(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) const = 0;
313virtual VkResult			getMemoryRemoteAddressNV						(VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress) const = 0;
314virtual void				cmdSetPatchControlPointsEXT						(VkCommandBuffer commandBuffer, uint32_t patchControlPoints) const = 0;
315virtual void				cmdSetRasterizerDiscardEnableEXT				(VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable) const = 0;
316virtual void				cmdSetDepthBiasEnableEXT						(VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable) const = 0;
317virtual void				cmdSetLogicOpEXT								(VkCommandBuffer commandBuffer, VkLogicOp logicOp) const = 0;
318virtual void				cmdSetPrimitiveRestartEnableEXT					(VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable) const = 0;
319virtual void				cmdSetColorWriteEnableEXT						(VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables) const = 0;
320virtual void				cmdDrawMultiEXT									(VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawInfoEXT* pVertexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride) const = 0;
321virtual void				cmdDrawMultiIndexedEXT							(VkCommandBuffer commandBuffer, uint32_t drawCount, const VkMultiDrawIndexedInfoEXT* pIndexInfo, uint32_t instanceCount, uint32_t firstInstance, uint32_t stride, const int32_t* pVertexOffset) const = 0;
322virtual void				setDeviceMemoryPriorityEXT						(VkDevice device, VkDeviceMemory memory, float priority) const = 0;
323virtual VkResult			getOHOSNativeBufferPropertiesOpenHarmony		(VkDevice device, const struct OH_NativeBuffer* buffer, VkOHOSNativeBufferPropertiesOpenHarmony* pProperties) const = 0;
324virtual VkResult			getMemoryOHOSNativeBufferOpenHarmony			(VkDevice device, const VkMemoryGetOHOSNativeBufferInfoOpenHarmony* pInfo, struct OH_NativeBuffer** pBuffer) const = 0;
325virtual VkResult			createAccelerationStructureKHR					(VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const = 0;
326virtual void				destroyAccelerationStructureKHR					(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) const = 0;
327virtual void				cmdBuildAccelerationStructuresKHR				(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) const = 0;
328virtual void				cmdBuildAccelerationStructuresIndirectKHR		(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkDeviceAddress* pIndirectDeviceAddresses, const uint32_t* pIndirectStrides, const uint32_t* const* ppMaxPrimitiveCounts) const = 0;
329virtual VkResult			buildAccelerationStructuresKHR					(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) const = 0;
330virtual VkResult			copyAccelerationStructureKHR					(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureInfoKHR* pInfo) const = 0;
331virtual VkResult			copyAccelerationStructureToMemoryKHR			(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const = 0;
332virtual VkResult			copyMemoryToAccelerationStructureKHR			(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const = 0;
333virtual VkResult			writeAccelerationStructuresPropertiesKHR		(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, size_t dataSize, void* pData, size_t stride) const = 0;
334virtual void				cmdCopyAccelerationStructureKHR					(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo) const = 0;
335virtual void				cmdCopyAccelerationStructureToMemoryKHR			(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const = 0;
336virtual void				cmdCopyMemoryToAccelerationStructureKHR			(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const = 0;
337virtual VkDeviceAddress		getAccelerationStructureDeviceAddressKHR		(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo) const = 0;
338virtual void				cmdWriteAccelerationStructuresPropertiesKHR		(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) const = 0;
339virtual void				getDeviceAccelerationStructureCompatibilityKHR	(VkDevice device, const VkAccelerationStructureVersionInfoKHR* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility) const = 0;
340virtual void				getAccelerationStructureBuildSizesKHR			(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkAccelerationStructureBuildGeometryInfoKHR* pBuildInfo, const uint32_t* pMaxPrimitiveCounts, VkAccelerationStructureBuildSizesInfoKHR* pSizeInfo) const = 0;
341virtual void				cmdTraceRaysKHR									(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth) const = 0;
342virtual VkResult			createRayTracingPipelinesKHR					(VkDevice device, VkDeferredOperationKHR deferredOperation, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
343virtual VkResult			getRayTracingCaptureReplayShaderGroupHandlesKHR	(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData) const = 0;
344virtual void				cmdTraceRaysIndirectKHR							(VkCommandBuffer commandBuffer, const VkStridedDeviceAddressRegionKHR* pRaygenShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pMissShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pHitShaderBindingTable, const VkStridedDeviceAddressRegionKHR* pCallableShaderBindingTable, VkDeviceAddress indirectDeviceAddress) const = 0;
345virtual VkDeviceSize		getRayTracingShaderGroupStackSizeKHR			(VkDevice device, VkPipeline pipeline, uint32_t group, VkShaderGroupShaderKHR groupShader) const = 0;
346virtual void				cmdSetRayTracingPipelineStackSizeKHR			(VkCommandBuffer commandBuffer, uint32_t pipelineStackSize) const = 0;
347virtual VkResult			getAndroidHardwareBufferPropertiesANDROID		(VkDevice device, const struct pt::AndroidHardwareBufferPtr buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties) const = 0;
348virtual VkResult			getMemoryAndroidHardwareBufferANDROID			(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct pt::AndroidHardwareBufferPtr* pBuffer) const = 0;
349virtual VkResult			createVideoSessionKHR							(VkDevice device, const VkVideoSessionCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkVideoSessionKHR* pVideoSession) const = 0;
350virtual void				destroyVideoSessionKHR							(VkDevice device, VkVideoSessionKHR videoSession, const VkAllocationCallbacks* pAllocator) const = 0;
351virtual VkResult			getVideoSessionMemoryRequirementsKHR			(VkDevice device, VkVideoSessionKHR videoSession, uint32_t* pVideoSessionMemoryRequirementsCount, VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements) const = 0;
352virtual VkResult			bindVideoSessionMemoryKHR						(VkDevice device, VkVideoSessionKHR videoSession, uint32_t videoSessionBindMemoryCount, const VkVideoBindMemoryKHR* pVideoSessionBindMemories) const = 0;
353virtual VkResult			createVideoSessionParametersKHR					(VkDevice device, const VkVideoSessionParametersCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkVideoSessionParametersKHR* pVideoSessionParameters) const = 0;
354virtual VkResult			updateVideoSessionParametersKHR					(VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo) const = 0;
355virtual void				destroyVideoSessionParametersKHR				(VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkAllocationCallbacks* pAllocator) const = 0;
356virtual void				cmdBeginVideoCodingKHR							(VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo) const = 0;
357virtual void				cmdEndVideoCodingKHR							(VkCommandBuffer commandBuffer, const VkVideoEndCodingInfoKHR* pEndCodingInfo) const = 0;
358virtual void				cmdControlVideoCodingKHR						(VkCommandBuffer commandBuffer, const VkVideoCodingControlInfoKHR* pCodingControlInfo) const = 0;
359virtual void				cmdDecodeVideoKHR								(VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo) const = 0;
360virtual void				cmdEncodeVideoKHR								(VkCommandBuffer commandBuffer, const VkVideoEncodeInfoKHR* pEncodeInfo) const = 0;
361virtual VkResult			getMemoryZirconHandleFUCHSIA					(VkDevice device, const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo, pt::zx_handle_t* pZirconHandle) const = 0;
362virtual VkResult			getMemoryZirconHandlePropertiesFUCHSIA			(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, pt::zx_handle_t zirconHandle, VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties) const = 0;
363virtual VkResult			importSemaphoreZirconHandleFUCHSIA				(VkDevice device, const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo) const = 0;
364virtual VkResult			getSemaphoreZirconHandleFUCHSIA					(VkDevice device, const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo, pt::zx_handle_t* pZirconHandle) const = 0;
365virtual VkResult			createBufferCollectionFUCHSIA					(VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferCollectionFUCHSIA* pCollection) const = 0;
366virtual VkResult			setBufferCollectionImageConstraintsFUCHSIA		(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo) const = 0;
367virtual VkResult			setBufferCollectionBufferConstraintsFUCHSIA		(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo) const = 0;
368virtual void				destroyBufferCollectionFUCHSIA					(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks* pAllocator) const = 0;
369virtual VkResult			getBufferCollectionPropertiesFUCHSIA			(VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA* pProperties) const = 0;
370virtual VkResult			getMemoryWin32HandleKHR							(VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const = 0;
371virtual VkResult			getMemoryWin32HandlePropertiesKHR				(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, pt::Win32Handle handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) const = 0;
372virtual VkResult			importSemaphoreWin32HandleKHR					(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) const = 0;
373virtual VkResult			getSemaphoreWin32HandleKHR						(VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const = 0;
374virtual VkResult			importFenceWin32HandleKHR						(VkDevice device, const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo) const = 0;
375virtual VkResult			getFenceWin32HandleKHR							(VkDevice device, const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const = 0;
376virtual VkResult			getMemoryWin32HandleNV							(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, pt::Win32Handle* pHandle) const = 0;
377virtual VkResult			acquireFullScreenExclusiveModeEXT				(VkDevice device, VkSwapchainKHR swapchain) const = 0;
378virtual VkResult			releaseFullScreenExclusiveModeEXT				(VkDevice device, VkSwapchainKHR swapchain) const = 0;
379virtual VkResult			getDeviceGroupSurfacePresentModes2EXT			(VkDevice device, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkDeviceGroupPresentModeFlagsKHR* pModes) const = 0;
380