Vulkan-Docs/doc/specs/vulkan/man/vkGetDeviceProcAddr.txt

72 lines
2.0 KiB
Plaintext

// 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[]