vulkan-3.23: Bindings to the Vulkan graphics API.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Synopsis

Documentation

newtype PipelineCreationFeedbackFlagBits Source #

VkPipelineCreationFeedbackFlagBits - Bitmask specifying pipeline or pipeline stage creation feedback

See Also

VK_EXT_pipeline_creation_feedback, VK_VERSION_1_3, PipelineCreationFeedback, PipelineCreationFeedbackCreateInfo, PipelineCreationFeedbackFlags

Bundled Patterns

pattern PIPELINE_CREATION_FEEDBACK_VALID_BIT :: PipelineCreationFeedbackFlagBits

PIPELINE_CREATION_FEEDBACK_VALID_BIT indicates that the feedback information is valid.

pattern PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT :: PipelineCreationFeedbackFlagBits

PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT indicates that a readily usable pipeline or pipeline stage was found in the pipelineCache specified by the application in the pipeline creation command.

An implementation should set the PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT bit if it was able to avoid the large majority of pipeline or pipeline stage creation work by using the pipelineCache parameter of createGraphicsPipelines, createRayTracingPipelinesKHR, createRayTracingPipelinesNV, or createComputePipelines. When an implementation sets this bit for the entire pipeline, it may leave it unset for any stage.

Note

Implementations are encouraged to provide a meaningful signal to applications using this bit. The intention is to communicate to the application that the pipeline or pipeline stage was created “as fast as it gets” using the pipeline cache provided by the application. If an implementation uses an internal cache, it is discouraged from setting this bit as the feedback would be unactionable.

pattern PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT :: PipelineCreationFeedbackFlagBits

PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT indicates that the base pipeline specified by the basePipelineHandle or basePipelineIndex member of the Vk*PipelineCreateInfo structure was used to accelerate the creation of the pipeline.

An implementation should set the PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT bit if it was able to avoid a significant amount of work by using the base pipeline.

Note

While “significant amount of work” is subjective, implementations are encouraged to provide a meaningful signal to applications using this bit. For example, a 1% reduction in duration may not warrant setting this bit, while a 50% reduction would.

Instances

Instances details
Bits PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Methods

(.&.) :: PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits #

(.|.) :: PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits #

xor :: PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits #

complement :: PipelineCreationFeedbackFlagBits -> PipelineCreationFeedbackFlagBits #

shift :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

rotate :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

zeroBits :: PipelineCreationFeedbackFlagBits #

bit :: Int -> PipelineCreationFeedbackFlagBits #

setBit :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

clearBit :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

complementBit :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

testBit :: PipelineCreationFeedbackFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineCreationFeedbackFlagBits -> Maybe Int #

bitSize :: PipelineCreationFeedbackFlagBits -> Int #

isSigned :: PipelineCreationFeedbackFlagBits -> Bool #

shiftL :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

unsafeShiftL :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

shiftR :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

unsafeShiftR :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

rotateL :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

rotateR :: PipelineCreationFeedbackFlagBits -> Int -> PipelineCreationFeedbackFlagBits #

popCount :: PipelineCreationFeedbackFlagBits -> Int #

FiniteBits PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Storable PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Read PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Show PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Eq PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Ord PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits

Zero PipelineCreationFeedbackFlagBits Source # 
Instance details

Defined in Vulkan.Core13.Enums.PipelineCreationFeedbackFlagBits