VKCREATEPIPELINELAYO(3)

NAME
vkCreatePipelineLayout - Creates a new pipeline layout object.

C SPECIFICATION

    VkResult vkCreatePipelineLayout(
        VkDevice                                    device,
        const VkPipelineLayoutCreateInfo*           pCreateInfo,
        const VkAllocationCallbacks*                pAllocator,
        VkPipelineLayout*                           pPipelineLayout);

PARAMETERS

device
    The device with which to create the new pipeline layout object.

pCreateInfo
    A pointer to structure specifying the properties of the new pipeline layout.

pPipelineLayout
    Pointer to a variable to receive a handle to the new pipeline layout object.

DESCRIPTION

vkCreatePipelineLayout creates a new pipeline layout object for the device specified in device. The resulting pipeline layout object handle is written into the variable whose address is given in pPipelineLayout.

pCreateInfo is a pointer to an instance of a VkPipelineLayoutCreateInfo structure describing the new pipeline layout. The definition of VkPipelineLayoutCreateInfo is:

    typedef struct VkPipelineLayoutCreateInfo {
        VkStructureType                 sType;
        const void*                     pNext;
        VkPipelineLayoutCreateFlags     flags;
        uint32_t                        setLayoutCount;
        const VkDescriptorSetLayout*    pSetLayouts;
        uint32_t                        pushConstantRangeCount;
        const VkPushConstantRange*      pPushConstantRanges;
    } VkPipelineLayoutCreateInfo;

The sType member of the VkPipelineLayoutCreateInfo structure should be set to VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO. The pNext member is reserved for use by extensions and should be set to NULL.

The setLayoutCount member specifies the number of descriptor sets to include in the layout and pSetLayouts is a pointer to an array of setLayoutCount VkDescriptorSetLayout objects describing the sets, each created with vkCreateDescriptorSetLayout.

VALID USAGE

    • device must be a valid VkDevice handle

    • pCreateInfo must be a pointer to a valid VkPipelineLayoutCreateInfo structure

    • If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure

    • pPipelineLayout must be a pointer to a VkPipelineLayout handle

RETURN CODES

On success, this command returns

        • VK_SUCCESS

On failure, this command returns

        • VK_ERROR_OUT_OF_HOST_MEMORY

        • VK_ERROR_OUT_OF_DEVICE_MEMORY

SEE ALSO

vkCreateDescriptorSetLayout

COPYRIGHT

Copyright © 2014-2016 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.

AUTHOR

Khronos Group
    Author.