VKGETDEVICEPROCADDR(3)

NAME
vkGetDeviceProcAddr - Return a function pointer for a command

C SPECIFICATION

In order to support systems with multiple Vulkan implementations comprising heterogeneous collections of hardware and software, the function pointers returned by vkGetInstanceProcAddr may point to dispatch code, which calls a different real implementation for different 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:

    PFN_vkVoidFunction vkGetDeviceProcAddr(
        VkDevice                                    device,
        const char*                                 pName);

PARAMETERS

    • device is the logical device that provides the function pointer.

    • pName is the name of any Vulkan command whose first parameter is one of

        • VkDevice

        • VkQueue

        • VkCommandBuffer

DESCRIPTION

The returned function pointer is of type PFN_vkVoidFunction, and must be cast to the type of the command being queried.

If 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 device, then vkGetDeviceProcAddr will return NULL.

VALID USAGE

    • device must be a valid VkDevice handle

    • pName must be a null-terminated string

SEE ALSO

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.

COPYRIGHT

Copyright (c) 2014-2016 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.

AUTHOR

Khronos Group
    Author.