// Copyright (c) 2014-2016 Khronos Group. This work is licensed under a // Creative Commons Attribution 4.0 International License; see // http://creativecommons.org/licenses/by/4.0/ vkGetDeviceProcAddr(3) ====================== Name ---- vkGetDeviceProcAddr - Return a function pointer for a command C Specification --------------- // refBegin vkGetDeviceProcAddr Return a function pointer for a command In order to support systems with multiple Vulkan implementations comprising heterogeneous collections of hardware and software, the function pointers returned by fname:vkGetInstanceProcAddr may: point to dispatch code, which calls a different real implementation for different sname:VkDevice objects (and objects created from them). The overhead of this internal dispatch can: be avoided by obtaining device-specific function pointers for any commands that use a device or device-child object as their dispatchable object. Such function pointers can: be obtained with the command: include::../protos/vkGetDeviceProcAddr.txt[] Parameters ---------- * pname:device is the logical device that provides the function pointer. * pname:pName is the name of any Vulkan command whose first parameter is one of ** sname:VkDevice ** sname:VkQueue ** sname:VkCommandBuffer Description ----------- The returned function pointer is of type tlink:PFN_vkVoidFunction, and must be cast to the type of the command being queried. If pname:pName is not the name of one of these Vulkan commands, and is not the name of an extension command belonging to an extension enabled for pname:device, then fname:vkGetDeviceProcAddr will return `NULL`. include::../validity/protos/vkGetDeviceProcAddr.txt[] See Also -------- slink:VkDevice Document Notes -------------- For more information, see the Vulkan Specification at URL https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#vkGetDeviceProcAddr This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification,not directly. include::footer.txt[]