# Enum Class VulkanPipelineStageFlag

java.lang.Object
java.lang.Enum<VulkanPipelineStageFlag>
com.io7m.jcoronado.api.VulkanPipelineStageFlag

All Implemented Interfaces:
  `VulkanEnumBitmaskType`, `Serializable`, `Comparable<VulkanPipelineStageFlag>`, `Constable`

public enum VulkanPipelineStageFlag extends Enum<VulkanPipelineStageFlag> implements VulkanEnumBitmaskType
Bitmask specifying pipeline stages.

See Also:
  - "VkPipelineStageFlagBits"

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `VK_PIPELINE_STAGE_ALL_COMMANDS_BIT`
  VK_PIPELINE_STAGE_ALL_COMMANDS_BIT is equivalent to the logical OR of every other pipeline stage flag that is supported on the queue it is used with.
  `VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT`
  VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT specifies the execution of all graphics pipeline stages.
  `VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT`
  VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT specifies the final stage in the pipeline where operations generated by all commands complete execution.
  `VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT`
  VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT specifies the stage of the pipeline after blending where the final color values are output from the pipeline.
  `VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX`
  VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX specifies the stage of the pipeline where device-side generation of commands via vkCmdProcessCommandsNVX is handled.
  `VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT`
  VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT specifies the execution of a compute shader.
  `VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT`
  VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT specifies the stage of the pipeline where Draw/DispatchIndirect data structures are consumed.
  `VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT`
  VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT specifies the stage of the pipeline where early fragment tests (depth and stencil tests before fragment shading) are performed.
  `VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT`
  VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT specifies the fragment shader stage.
  `VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT`
  VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT specifies the geometry shader stage.
  `VK_PIPELINE_STAGE_HOST_BIT`
  VK_PIPELINE_STAGE_HOST_BIT specifies a pseudo-stage indicating execution on the host of reads/writes of device memory.
  `VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT`
  VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT specifies the stage of the pipeline where late fragment tests (depth and stencil tests after fragment shading) are performed.
  `VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT`
  VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT specifies the tessellation control shader stage.
  `VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT`
  VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT specifies the tessellation evaluation shader stage.
  `VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT`
  VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT specifies the stage of the pipeline where any commands are initially received by the queue.
  `VK_PIPELINE_STAGE_TRANSFER_BIT`
  VK_PIPELINE_STAGE_TRANSFER_BIT specifies the execution of copy commands.
  `VK_PIPELINE_STAGE_VERTEX_INPUT_BIT`
  VK_PIPELINE_STAGE_VERTEX_INPUT_BIT specifies the stage of the pipeline where vertex and index buffers are consumed.
  `VK_PIPELINE_STAGE_VERTEX_SHADER_BIT`
  VK_PIPELINE_STAGE_VERTEX_SHADER_BIT specifies the vertex shader stage.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `value()`
  `static VulkanPipelineStageFlag`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static VulkanPipelineStageFlag[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

  ### Methods inherited from class java.lang.Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT
    VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT specifies the stage of the pipeline where any commands are initially received by the queue.

  - ### VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT
    VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT specifies the stage of the pipeline where Draw/DispatchIndirect data structures are consumed. This stage also includes reading commands written by vkCmdProcessCommandsNVX.

  - ### VK_PIPELINE_STAGE_VERTEX_INPUT_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_VERTEX_INPUT_BIT
    VK_PIPELINE_STAGE_VERTEX_INPUT_BIT specifies the stage of the pipeline where vertex and index buffers are consumed.

  - ### VK_PIPELINE_STAGE_VERTEX_SHADER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_VERTEX_SHADER_BIT
    VK_PIPELINE_STAGE_VERTEX_SHADER_BIT specifies the vertex shader stage.

  - ### VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT
    VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT specifies the tessellation control shader stage.

  - ### VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
    VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT specifies the tessellation evaluation shader stage.

  - ### VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT
    VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT specifies the geometry shader stage.

  - ### VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT
    VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT specifies the fragment shader stage.

  - ### VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT
    VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT specifies the stage of the pipeline where early fragment tests (depth and stencil tests before fragment shading) are performed. This stage also includes subpass load operations for framebuffer attachments with a depth/stencil format.

  - ### VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT
    VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT specifies the stage of the pipeline where late fragment tests (depth and stencil tests after fragment shading) are performed. This stage also includes subpass store operations for framebuffer attachments with a depth/stencil format.

  - ### VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT
    VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT specifies the stage of the pipeline after blending where the final color values are output from the pipeline. This stage also includes subpass load and store operations and multisample resolve operations for framebuffer attachments with a color format.

  - ### VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT
    VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT specifies the execution of a compute shader.

  - ### VK_PIPELINE_STAGE_TRANSFER_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_TRANSFER_BIT
    VK_PIPELINE_STAGE_TRANSFER_BIT specifies the execution of copy commands. This includes the operations resulting from all copy commands, clear commands (with the exception of vkCmdClearAttachments), and vkCmdCopyQueryPoolResults.

  - ### VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT
    VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT specifies the final stage in the pipeline where operations generated by all commands complete execution.

  - ### VK_PIPELINE_STAGE_HOST_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_HOST_BIT
    VK_PIPELINE_STAGE_HOST_BIT specifies a pseudo-stage indicating execution on the host of reads/writes of device memory. This stage is not invoked by any commands recorded in a command buffer.

  - ### VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT
    VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT specifies the execution of all graphics pipeline stages.

  - ### VK_PIPELINE_STAGE_ALL_COMMANDS_BIT

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_ALL_COMMANDS_BIT
    VK_PIPELINE_STAGE_ALL_COMMANDS_BIT is equivalent to the logical OR of every other pipeline stage flag that is supported on the queue it is used with.

  - ### VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX

    public static final VulkanPipelineStageFlag VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX
    VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX specifies the stage of the pipeline where device-side generation of commands via vkCmdProcessCommandsNVX is handled.

- ## Method Details

  - ### values

    public static VulkanPipelineStageFlag[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static VulkanPipelineStageFlag valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null

  - ### value

    public int value()
    Specified by:
      `value` in interface `VulkanEnumBitmaskType`
    Returns:
      The integer value of the constant