VKCMDRESETEVENT(3)

NAME
vkCmdResetEvent - Reset an event object to non-signaled state

C SPECIFICATION

To set the state of an event to unsignaled from a device, call:

    void vkCmdResetEvent(
        VkCommandBuffer                             commandBuffer,
        VkEvent                                     event,
        VkPipelineStageFlags                        stageMask);

PARAMETERS

    • commandBuffer is the command buffer into which the command is recorded.

    • event is the event that will be unsignaled.

    • stageMask specifies the source stage mask used to determine when the event is unsignaled.

DESCRIPTION

When vkCmdResetEvent is submitted to a queue, it defines an execution dependency on commands that were submitted before it, and defines an event unsignal operation which resets the event to the unsignaled state.

The first synchronization scope includes every command previously submitted to the same queue, including those in the same command buffer and batch. The synchronization scope is limited to operations on the pipeline stages determined by the source stage mask specified by stageMask.

The second synchronization scope includes only the event unsignal operation.

If event is already in the unsignaled state when vkCmdResetEvent is executed on the device, then vkCmdResetEvent has no effect, no event unsignal operation occurs, and no execution dependency is generated. Valid Usage

    • stageMask must not include VK_PIPELINE_STAGE_HOST_BIT

    • If the geometry shaders feature is not enabled, stageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT

    • If the tessellation shaders feature is not enabled, stageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT

    • When this command executes, event must not be waited on by a vkCmdWaitEvents command that is currently executing
Valid Usage (Implicit)

    • commandBuffer must be a valid VkCommandBuffer handle

    • event must be a valid VkEvent handle

    • stageMask must be a valid combination of VkPipelineStageFlagBits values

    • stageMask must not be 0

    • commandBuffer must be in the recording state

    • The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations

    • This command must only be called outside of a render pass instance

    • Both of commandBuffer, and event must have been created, allocated, or retrieved from the same VkDevice
Host Synchronization

    • Host access to commandBuffer must be externally synchronized

    • Host access to the VkCommandPool that commandBuffer was allocated from must be externally synchronized
Command Properties
Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type
Primary Secondary | Outside | Graphics compute |

SEE ALSO

VkCommandBuffer, VkEvent, VkPipelineStageFlags

DOCUMENT NOTES

For more information, see the Vulkan Specification at URL

https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#vkCmdResetEvent

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.