C Specification

The VkPastPresentationTimingPropertiesEXT structure is defined as:

// Provided by VK_EXT_present_timing
typedef struct VkPastPresentationTimingPropertiesEXT {
    VkStructureType                 sType;
    void*                           pNext;
    uint64_t                        timingPropertiesCounter;
    uint64_t                        timeDomainsCounter;
    uint32_t                        presentationTimingCount;
    VkPastPresentationTimingEXT*    pPresentationTimings;
} VkPastPresentationTimingPropertiesEXT;

Members

  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • timingPropertiesCounter is a 64-bit unsigned integer set by the implementation to the current value of the swapchain’s internal timing properties counter.

  • timeDomainsCounter is a 64-bit unsigned integer set by the implementation to the current value of the swapchain’s internal time domains list counter.

  • presentationTimingCount is an integer related to the number of VkPastPresentationTimingEXT structures available or queried, as described below.

  • pPresentationTimings is NULL or a pointer to an array of VkPastPresentationTimingEXT structures.

Description

When calling vkGetPastPresentationTimingEXT, if pPresentationTimings is NULL, then the number of available timing records for the given swapchain is returned in presentationTimingCount. Otherwise, presentationTimingCount must specify the number of elements in the pPresentationTimings array, and on return is overwritten with the number of structures actually written to pPresentationTimings.

if VK_PAST_PRESENTATION_TIMING_ALLOW_PARTIAL_RESULTS_BIT_EXT is specified in VkPastPresentationTimingInfoEXT::flags, vkGetPastPresentationTimingEXT may return incomplete results, containing only information for a subset of the requested present stages. Further calls to vkGetPastPresentationTimingEXT will keep providing all available results for a previously incomplete entry until it is complete.

The implementation must return a VkPastPresentationTimingEXT for every vkQueuePresentKHR referencing swapchain where a non-zero VkPresentTimingInfoEXT::presentStageQueries was specified and at least one present stage has available results.

Valid Usage (Implicit)

See Also

Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0