| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Graphics.Vulkan.Core10.CommandPool
- newtype VkCommandPoolCreateFlagBits = VkCommandPoolCreateFlagBits VkFlags
- pattern VK_COMMAND_POOL_CREATE_TRANSIENT_BIT :: VkCommandPoolCreateFlagBits
- pattern VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT :: VkCommandPoolCreateFlagBits
- newtype VkCommandPoolResetFlagBits = VkCommandPoolResetFlagBits VkFlags
- pattern VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT :: VkCommandPoolResetFlagBits
- type VkCommandPool = Ptr VkCommandPool_T
- vkCreateCommandPool :: ("device" ::: VkDevice) -> ("pCreateInfo" ::: Ptr VkCommandPoolCreateInfo) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pCommandPool" ::: Ptr VkCommandPool) -> IO VkResult
- vkDestroyCommandPool :: ("device" ::: VkDevice) -> ("commandPool" ::: VkCommandPool) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> IO ()
- vkResetCommandPool :: ("device" ::: VkDevice) -> ("commandPool" ::: VkCommandPool) -> ("flags" ::: VkCommandPoolResetFlags) -> IO VkResult
- data VkCommandPoolCreateInfo = VkCommandPoolCreateInfo {}
- type VkCommandPoolCreateFlags = VkCommandPoolCreateFlagBits
- type VkCommandPoolResetFlags = VkCommandPoolResetFlagBits
Documentation
newtype VkCommandPoolCreateFlagBits Source #
VkCommandPoolCreateFlagBits - Bitmask specifying usage behavior for a command pool
See Also
Constructors
| VkCommandPoolCreateFlagBits VkFlags |
Instances
pattern VK_COMMAND_POOL_CREATE_TRANSIENT_BIT :: VkCommandPoolCreateFlagBits Source #
VK_COMMAND_POOL_CREATE_TRANSIENT_BIT specifies that command buffers
allocated from the pool will be short-lived, meaning that they will be
reset or freed in a relatively short timeframe. This flag may be used
by the implementation to control memory allocation behavior within the
pool.
pattern VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT :: VkCommandPoolCreateFlagBits Source #
VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT allows any command
buffer allocated from a pool to be individually reset to the
initial state; either by
calling vkResetCommandBuffer, or
via the implicit reset when calling
vkBeginCommandBuffer. If this
flag is not set on a pool, then vkResetCommandBuffer must not be
called for any command buffer allocated from that pool.
newtype VkCommandPoolResetFlagBits Source #
VkCommandPoolResetFlagBits - Bitmask controlling behavior of a command pool reset
See Also
Constructors
| VkCommandPoolResetFlagBits VkFlags |
Instances
pattern VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT :: VkCommandPoolResetFlagBits Source #
VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT specifies that resetting a
command pool recycles all of the resources from the command pool back to
the system.
type VkCommandPool = Ptr VkCommandPool_T Source #
VkCommandPool - Opaque handle to a command pool object
Description
See Also
VkCommandBufferAllocateInfo,
vkCreateCommandPool, vkDestroyCommandPool,
vkFreeCommandBuffers,
vkResetCommandPool,
vkTrimCommandPool,
vkTrimCommandPoolKHR
vkCreateCommandPool :: ("device" ::: VkDevice) -> ("pCreateInfo" ::: Ptr VkCommandPoolCreateInfo) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> ("pCommandPool" ::: Ptr VkCommandPool) -> IO VkResult Source #
vkCreateCommandPool - Create a new command pool object
Parameters
deviceis the logical device that creates the command pool.
pCreateInfocontains information used to create the command pool.pAllocatorcontrols host memory allocation as described in the Memory Allocation chapter.pCommandPoolpoints to aVkCommandPoolhandle in which the created pool is returned.
Description
Valid Usage (Implicit)
devicemust be a validVkDevicehandle
pCreateInfomust be a valid pointer to a validVkCommandPoolCreateInfostructure- If
pAllocatoris notNULL,pAllocatormust be a valid pointer to a validVkAllocationCallbacksstructure pCommandPoolmust be a valid pointer to aVkCommandPoolhandle
Return Codes
- Success
- -
VK_SUCCESS
- Failure
- -
VK_ERROR_OUT_OF_HOST_MEMORYVK_ERROR_OUT_OF_DEVICE_MEMORY
See Also
VkAllocationCallbacks,
VkCommandPool, VkCommandPoolCreateInfo,
VkDevice
vkDestroyCommandPool :: ("device" ::: VkDevice) -> ("commandPool" ::: VkCommandPool) -> ("pAllocator" ::: Ptr VkAllocationCallbacks) -> IO () Source #
vkDestroyCommandPool - Destroy a command pool object
Parameters
deviceis the logical device that destroys the command pool.
commandPoolis the handle of the command pool to destroy.pAllocatorcontrols host memory allocation as described in the Memory Allocation chapter.
Description
When a pool is destroyed, all command buffers allocated from the pool are freed.
Any primary command buffer allocated from another VkCommandPool that
is in the
recording or executable state
and has a secondary command buffer allocated from commandPool recorded
into it, becomes
invalid.
Valid Usage
- All
VkCommandBufferobjects allocated fromcommandPoolmust not be in the pending state.
- If
VkAllocationCallbackswere provided whencommandPoolwas created, a compatible set of callbacks must be provided here - If no
VkAllocationCallbackswere provided whencommandPoolwas created,pAllocatormust beNULL
Valid Usage (Implicit)
devicemust be a validVkDevicehandle
- If
commandPoolis notVK_NULL_HANDLE,commandPoolmust be a validVkCommandPoolhandle - If
pAllocatoris notNULL,pAllocatormust be a valid pointer to a validVkAllocationCallbacksstructure - If
commandPoolis a valid handle, it must have been created, allocated, or retrieved fromdevice
Host Synchronization
- Host access to
commandPoolmust be externally synchronized
See Also
vkResetCommandPool :: ("device" ::: VkDevice) -> ("commandPool" ::: VkCommandPool) -> ("flags" ::: VkCommandPoolResetFlags) -> IO VkResult Source #
vkResetCommandPool - Reset a command pool
Parameters
deviceis the logical device that owns the command pool.
commandPoolis the command pool to reset.flagsis a bitmask ofVkCommandPoolResetFlagBitscontrolling the reset operation.
Description
Resetting a command pool recycles all of the resources from all of the command buffers allocated from the command pool back to the command pool. All command buffers that have been allocated from the command pool are put in the initial state.
Any primary command buffer allocated from another VkCommandPool that
is in the
recording or executable state
and has a secondary command buffer allocated from commandPool recorded
into it, becomes
invalid.
Valid Usage
- All
VkCommandBufferobjects allocated fromcommandPoolmust not be in the pending state
Valid Usage (Implicit)
devicemust be a validVkDevicehandle
commandPoolmust be a validVkCommandPoolhandleflagsmust be a valid combination ofVkCommandPoolResetFlagBitsvaluescommandPoolmust have been created, allocated, or retrieved fromdevice
Host Synchronization
- Host access to
commandPoolmust be externally synchronized
Return Codes
- Success
- -
VK_SUCCESS
- Failure
- -
VK_ERROR_OUT_OF_HOST_MEMORYVK_ERROR_OUT_OF_DEVICE_MEMORY
See Also
data VkCommandPoolCreateInfo Source #
VkCommandPoolCreateInfo - Structure specifying parameters of a newly created command pool
Description
Valid Usage
queueFamilyIndexmust be the index of a queue family available in the calling command’sdeviceparameter
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO
pNextmust beNULLflagsmust be a valid combination ofVkCommandPoolCreateFlagBitsvalues
See Also
VkCommandPoolCreateFlags,
VkStructureType, vkCreateCommandPool
Constructors
| VkCommandPoolCreateInfo | |
Fields
| |
type VkCommandPoolCreateFlags = VkCommandPoolCreateFlagBits Source #
VkCommandPoolCreateFlags - Bitmask of VkCommandPoolCreateFlagBits
Description
VkCommandPoolCreateFlags is a bitmask type for setting a mask of zero
or more VkCommandPoolCreateFlagBits.
See Also
type VkCommandPoolResetFlags = VkCommandPoolResetFlagBits Source #
VkCommandPoolResetFlags - Bitmask of VkCommandPoolResetFlagBits
Description
VkCommandPoolResetFlags is a bitmask type for setting a mask of zero
or more VkCommandPoolResetFlagBits.