vulkan
Safe HaskellNone
LanguageHaskell2010

Vulkan.Core10.ComputePipeline

Synopsis

Documentation

createComputePipelines Source #

Arguments

:: MonadIO io 
=> Device

device is the logical device that creates the compute pipelines.

-> PipelineCache

pipelineCache is either NULL_HANDLE, indicating that pipeline caching is disabled, or to enable caching, the handle of a valid PipelineCache object. The implementation must not access this object outside of the duration of this command.

-> ("createInfos" ::: Vector (SomeStruct ComputePipelineCreateInfo))

pCreateInfos is a pointer to an array of ComputePipelineCreateInfo structures.

-> ("allocator" ::: Maybe AllocationCallbacks)

pAllocator controls host memory allocation as described in the Memory Allocation chapter.

-> io (Result, "pipelines" ::: Vector Pipeline) 

vkCreateComputePipelines - Creates a new compute pipeline object

Description

Pipelines are created and returned as described for Multiple Pipeline Creation.

Valid Usage

Valid Usage (Implicit)

  • device must be a valid Device handle
  • If pipelineCache is not NULL_HANDLE, pipelineCache must be a valid PipelineCache handle
  • pCreateInfos must be a valid pointer to an array of createInfoCount valid ComputePipelineCreateInfo structures
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid AllocationCallbacks structure
  • pPipelines must be a valid pointer to an array of createInfoCount Pipeline handles
  • createInfoCount must be greater than 0
  • If pipelineCache is a valid handle, it must have been created, allocated, or retrieved from device

Return Codes

Success
Failure

See Also

VK_VERSION_1_0, AllocationCallbacks, ComputePipelineCreateInfo, Device, Pipeline, PipelineCache

withComputePipelines :: MonadIO io => Device -> PipelineCache -> Vector (SomeStruct ComputePipelineCreateInfo) -> Maybe AllocationCallbacks -> (io (Result, Vector Pipeline) -> ((Result, Vector Pipeline) -> io ()) -> r) -> r Source #

A convenience wrapper to make a compatible pair of calls to createComputePipelines and destroyPipeline

To ensure that destroyPipeline is always called: pass bracket (or the allocate function from your favourite resource management library) as the last argument. To just extract the pair pass (,) as the last argument.

destroyPipeline Source #

Arguments

:: MonadIO io 
=> Device

device is the logical device that destroys the pipeline.

-> Pipeline

pipeline is the handle of the pipeline to destroy.

-> ("allocator" ::: Maybe AllocationCallbacks)

pAllocator controls host memory allocation as described in the Memory Allocation chapter.

-> io () 

vkDestroyPipeline - Destroy a pipeline object

Valid Usage

  • All submitted commands that refer to pipeline must have completed execution
  • If AllocationCallbacks were provided when pipeline was created, a compatible set of callbacks must be provided here
  • If no AllocationCallbacks were provided when pipeline was created, pAllocator must be NULL

Valid Usage (Implicit)

  • device must be a valid Device handle
  • If pipeline is not NULL_HANDLE, pipeline must be a valid Pipeline handle
  • If pAllocator is not NULL, pAllocator must be a valid pointer to a valid AllocationCallbacks structure
  • If pipeline is a valid handle, it must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to pipeline must be externally synchronized

See Also

VK_VERSION_1_0, AllocationCallbacks, Device, Pipeline

data SpecializationMapEntry Source #

VkSpecializationMapEntry - Structure specifying a specialization map entry

Description

If a constantID value is not a specialization constant ID used in the shader, that map entry does not affect the behavior of the pipeline.

Valid Usage

  • For a constantID specialization constant declared in a shader, size must match the byte size of the constantID. If the specialization constant is of type boolean, size must be the byte size of Bool32

See Also

VK_VERSION_1_0, SpecializationInfo

Constructors

SpecializationMapEntry 

Fields

  • constantID :: Word32

    constantID is the ID of the specialization constant in SPIR-V.

  • offset :: Word32

    offset is the byte offset of the specialization constant value within the supplied data buffer.

  • size :: Word64

    size is the byte size of the specialization constant value within the supplied data buffer.

Instances

Instances details
Eq SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

Storable SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

Show SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

FromCStruct SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

ToCStruct SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

Zero SpecializationMapEntry Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

data SpecializationInfo Source #

VkSpecializationInfo - Structure specifying specialization information

Valid Usage

  • The offset member of each element of pMapEntries must be less than dataSize
  • The size member of each element of pMapEntries must be less than or equal to dataSize minus offset
  • The constantID value of each element of pMapEntries must be unique within pMapEntries

Valid Usage (Implicit)

  • If mapEntryCount is not 0, pMapEntries must be a valid pointer to an array of mapEntryCount valid SpecializationMapEntry structures
  • If dataSize is not 0, pData must be a valid pointer to an array of dataSize bytes

See Also

VK_VERSION_1_0, DataGraphPipelineShaderModuleCreateInfoARM, PipelineShaderStageCreateInfo, ShaderCreateInfoEXT, SpecializationMapEntry

Constructors

SpecializationInfo 

Fields

data PipelineShaderStageCreateInfo (es :: [Type]) Source #

VkPipelineShaderStageCreateInfo - Structure specifying parameters of a newly created pipeline shader stage

Description

If module is not NULL_HANDLE, the shader code used by the pipeline is defined by module. If module is NULL_HANDLE, the shader code is defined by the chained ShaderModuleCreateInfo if present.

If the shaderModuleIdentifier feature is enabled, applications can omit shader code for stage and instead provide a module identifier. This is done by including a PipelineShaderStageModuleIdentifierCreateInfoEXT structure with identifierSize not equal to 0 in the pNext chain. A shader stage created in this way is equivalent to one created using a shader module with the same identifier. The identifier allows an implementation to look up a pipeline without consuming a valid SPIR-V module. If a pipeline is not found, pipeline compilation is not possible and the implementation must fail as specified by PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT.

When an identifier is used in lieu of a shader module, implementations may fail pipeline compilation with PIPELINE_COMPILE_REQUIRED for any reason.

The rationale for the relaxed requirement on implementations to return a pipeline with PipelineShaderStageModuleIdentifierCreateInfoEXT is that layers or tools may intercept pipeline creation calls and require the full SPIR-V context to operate correctly. ICDs are not expected to fail pipeline compilation if the pipeline exists in a cache somewhere.

Applications can use identifiers when creating pipelines with PIPELINE_CREATE_LIBRARY_BIT_KHR. When creating such pipelines, SUCCESS may be returned, but subsequently fail when referencing the pipeline in a PipelineLibraryCreateInfoKHR struct. Applications must allow pipeline compilation to fail during link steps with PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT as it may not be possible to determine if a pipeline can be created from identifiers until the link step.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, ComputePipelineCreateInfo, ExecutionGraphPipelineCreateInfoAMDX, GraphicsPipelineCreateInfo, GraphicsShaderGroupCreateInfoNV, PipelineShaderStageCreateFlags, RayTracingPipelineCreateInfoKHR, RayTracingPipelineCreateInfoNV, ShaderModule, ShaderStageFlagBits, SpecializationInfo, StructureType

Constructors

PipelineShaderStageCreateInfo 

Fields

Instances

Instances details
Extensible PipelineShaderStageCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). PipelineShaderStageCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). PipelineShaderStageCreateInfo ds -> Chain es -> PipelineShaderStageCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends PipelineShaderStageCreateInfo e => b) -> Maybe b Source #

Show (Chain es) => Show (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

(Extendss PipelineShaderStageCreateInfo es, PeekChain es) => FromCStruct (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

(Extendss PipelineShaderStageCreateInfo es, PokeChain es) => ToCStruct (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

es ~ ('[] :: [Type]) => Zero (PipelineShaderStageCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

data ComputePipelineCreateInfo (es :: [Type]) Source #

VkComputePipelineCreateInfo - Structure specifying parameters of a newly created compute pipeline

Description

The parameters basePipelineHandle and basePipelineIndex are described in more detail in Pipeline Derivatives.

If the pNext chain includes a PipelineCreateFlags2CreateInfo structure, PipelineCreateFlags2CreateInfo::flags from that structure is used instead of flags from this structure.

Valid Usage

Valid Usage (Implicit)

See Also

VK_VERSION_1_0, Pipeline, PipelineCreateFlags, PipelineLayout, PipelineShaderStageCreateInfo, StructureType, createComputePipelines, getPipelineIndirectMemoryRequirementsNV

Constructors

ComputePipelineCreateInfo 

Fields

Instances

Instances details
Extensible ComputePipelineCreateInfo Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

Methods

extensibleTypeName :: String Source #

getNext :: forall (es :: [Type]). ComputePipelineCreateInfo es -> Chain es Source #

setNext :: forall (ds :: [Type]) (es :: [Type]). ComputePipelineCreateInfo ds -> Chain es -> ComputePipelineCreateInfo es Source #

extends :: forall e b proxy. Typeable e => proxy e -> (Extends ComputePipelineCreateInfo e => b) -> Maybe b Source #

Show (Chain es) => Show (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

(Extendss ComputePipelineCreateInfo es, PeekChain es) => FromCStruct (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

(Extendss ComputePipelineCreateInfo es, PokeChain es) => ToCStruct (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

es ~ ('[] :: [Type]) => Zero (ComputePipelineCreateInfo es) Source # 
Instance details

Defined in Vulkan.Core10.ComputePipeline

newtype Pipeline Source #

Constructors

Pipeline Word64 

Instances

Instances details
Eq Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Ord Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Storable Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Show Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

HasObjectType Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

IsHandle Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Zero Pipeline Source # 
Instance details

Defined in Vulkan.Core10.Handles

Methods

zero :: Pipeline Source #

newtype ShaderStageFlagBits Source #

VkShaderStageFlagBits - Bitmask specifying a pipeline stage

Description

SHADER_STAGE_ALL_GRAPHICS only includes the original five graphics stages included in Vulkan 1.0, and not any stages added by extensions. Thus, it may not have the desired effect in all cases.

See Also

VK_VERSION_1_0, PipelineShaderStageCreateInfo, ShaderCreateInfoEXT, ShaderStageFlags, cmdBindShadersEXT, getShaderInfoAMD

Instances

Instances details
Bits ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

FiniteBits ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Eq ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Ord ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Storable ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Read ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Show ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

Zero ShaderStageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.ShaderStageFlagBits

newtype PipelineCreateFlagBits Source #

VkPipelineCreateFlagBits - Bitmask controlling how a pipeline is created

Description

It is valid to set both PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT and PIPELINE_CREATE_DERIVATIVE_BIT. This allows a pipeline to be both a parent and possibly a child in a pipeline hierarchy. See Pipeline Derivatives for more information.

When an implementation is looking up a pipeline in a pipeline cache, if that pipeline is being created using linked libraries, implementations should always return an equivalent pipeline created with PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT if available, whether or not that bit was specified.

Using PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT (or not) when linking pipeline libraries is intended as a performance tradeoff between host and device. If the bit is omitted, linking should be faster and produce a pipeline more rapidly, but performance of the pipeline on the target device may be reduced. If the bit is included, linking may be slower but should produce a pipeline with device performance comparable to a monolithically created pipeline. Using both options can allow latency-sensitive applications to generate a suboptimal but usable pipeline quickly, and then perform an optimal link in the background, substituting the result for the suboptimally linked pipeline as soon as it is available.

See Also

VK_VERSION_1_0, PipelineCreateFlags

Bundled Patterns

pattern PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DEFER_COMPILE_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DERIVATIVE_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_DISPATCH_BASE_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_LIBRARY_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT :: PipelineCreateFlagBits 
pattern PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: PipelineCreateFlagBits 

Instances

Instances details
Bits PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

FiniteBits PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Eq PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Ord PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Storable PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Read PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Show PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

Zero PipelineCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineCreateFlagBits

newtype PipelineShaderStageCreateFlagBits Source #

VkPipelineShaderStageCreateFlagBits - Bitmask controlling how a pipeline shader stage is created

Description

If PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT and PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT are specified and minSubgroupSize does not equal maxSubgroupSize and no required subgroup size is specified, then the only way to guarantee that the 'X' dimension of the local workgroup size is a multiple of SubgroupSize is to make it a multiple of maxSubgroupSize. Under these conditions, you are guaranteed full subgroups but not any particular subgroup size.

See Also

VK_VERSION_1_0, PipelineShaderStageCreateFlags

Instances

Instances details
Bits PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Methods

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

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

xor :: PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits #

complement :: PipelineShaderStageCreateFlagBits -> PipelineShaderStageCreateFlagBits #

shift :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

rotate :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

zeroBits :: PipelineShaderStageCreateFlagBits #

bit :: Int -> PipelineShaderStageCreateFlagBits #

setBit :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

clearBit :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

complementBit :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

testBit :: PipelineShaderStageCreateFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineShaderStageCreateFlagBits -> Maybe Int #

bitSize :: PipelineShaderStageCreateFlagBits -> Int #

isSigned :: PipelineShaderStageCreateFlagBits -> Bool #

shiftL :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

unsafeShiftL :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

shiftR :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

unsafeShiftR :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

rotateL :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

rotateR :: PipelineShaderStageCreateFlagBits -> Int -> PipelineShaderStageCreateFlagBits #

popCount :: PipelineShaderStageCreateFlagBits -> Int #

FiniteBits PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Eq PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Ord PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Storable PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Read PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Show PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

Zero PipelineShaderStageCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineShaderStageCreateFlagBits

newtype PipelineLayoutCreateFlagBits Source #

VkPipelineLayoutCreateFlagBits - Pipeline layout creation flag bits

Description

See Also

VK_EXT_graphics_pipeline_library, PipelineLayoutCreateFlags

Instances

Instances details
Bits PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Methods

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

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

xor :: PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits #

complement :: PipelineLayoutCreateFlagBits -> PipelineLayoutCreateFlagBits #

shift :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

rotate :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

zeroBits :: PipelineLayoutCreateFlagBits #

bit :: Int -> PipelineLayoutCreateFlagBits #

setBit :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

clearBit :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

complementBit :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

testBit :: PipelineLayoutCreateFlagBits -> Int -> Bool #

bitSizeMaybe :: PipelineLayoutCreateFlagBits -> Maybe Int #

bitSize :: PipelineLayoutCreateFlagBits -> Int #

isSigned :: PipelineLayoutCreateFlagBits -> Bool #

shiftL :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

unsafeShiftL :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

shiftR :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

unsafeShiftR :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

rotateL :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

rotateR :: PipelineLayoutCreateFlagBits -> Int -> PipelineLayoutCreateFlagBits #

popCount :: PipelineLayoutCreateFlagBits -> Int #

FiniteBits PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Eq PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Ord PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Storable PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Read PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Show PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits

Zero PipelineLayoutCreateFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.PipelineLayoutCreateFlagBits